// File: /workspace/github_c_makefile_star2_O0/hfiguiere[P]exifprobe/maker_minolta.c
// Function: maker_minolta1_tagname
char *
maker_minolta1_tagname(unsigned short tag,int model)
{
    char *tagname = CNULL;

    /* The Minolta MakerNote of TIFF format images have a JPEG        */
    /* thumbnail with a defective SOI marker (0x00f8). In fact,       */
    /* Minolta JPEG_SOI is often missing the high "0xff".             */

    if(tagname == NULL)
    {
        switch(tag)
        {
            case 0x0000: tagname = "Version"; break;
            case 0x0001: tagname = "CameraSettings"; break;
            case 0x0003: tagname = "CameraSettings"; break;
            case 0x0040: tagname = "ImageByteSize"; break;
            case 0x0081: tagname = "JpegThumbnail"; break;
            case 0x0088: tagname = "JpegThumbnailOffset"; break;
            case 0x0089: tagname = "JpegThumbnailLength"; break;
            case 0x0101: tagname = "ColorMode"; break;
            case 0x0102: tagname = "ImageQuality"; break;
            case 0x0103: if(model == MINOLTA_DIMAGE7Hi)
                              tagname = "ImageQuality";
                         else
                              tagname = "ImageSize";
                         break;
            /* The following tagname appears valid for at least the   */
            /* F200, thanks to Harald Puhl (h.puhl@ki-ag.com)         */
            case 0x0104: tagname = "FlashCompensation"; break;
            case 0x0200: tagname = "SpecialMode"; break;

    /* The following tag names appear valid for the F100 and "X" but  */
    /* do not appear to be used for any other Minolta model. They are */
    /* essentially the Sanyo tag set, used here based upon guesswork; */
    /* some Minolta and Sanyo cameras are said to use the same chip,  */
    /* and some F100 and "X" images I've seen contain almost exactly  */
    /* this set of tags (as described by John Hawkins for Sanyo       */
    /* DSC-MZ2 notes). The Quality, Macro, SpecialMode and PrintIM    */
    /* tags are reasonably certain to be correct (they "decode"       */
    /* properly). The remaining names are less certain, and no        */
    /* attempt is made to decode them in minolta1_interpret_value()/  */

            case 0x0201: tagname = "Quality"; break;
            case 0x0202: tagname = "Macro"; break;
            case 0x0204: tagname = "DigiZoom"; break;
            case 0x0207: tagname = "SoftwareRelease"; break;
            case 0x0208: tagname = "PictInfo"; break;
            case 0x0209: tagname = "CameraID"; break;
            case 0x020e: tagname = "SeqShotMethod"; break;
            case 0x020f: tagname = "WideRange"; break;
            case 0x0210: tagname = "ColorAdjMode"; break;
            case 0x0213: tagname = "QuickShot"; break;
            case 0x0214: tagname = "SelfTimer"; break;
            case 0x0216: tagname = "VoiceMemo"; break;
            case 0x0217: tagname = "RecordShutterRel"; break;
            case 0x0218: tagname = "FlickerReduce"; break;
            case 0x0219: tagname = "OpticalZoom"; break;
            case 0x021b: tagname = "DigitalZoom"; break;
            case 0x021d: tagname = "LightSourceSpecial"; break;
            case 0x021e: tagname = "Resaved"; break;
            case 0x021f: tagname = "SceneSelect"; break;
            case 0x0223: tagname = "ManualFocusDist"; break; /* ###%%% not seen */
            case 0x0224: tagname = "SeqShotIntvl"; break; /* ###%%% not seen */
            case 0x0225: tagname = "FlashMode"; break; /* ###%%% not seen */
            case 0x0e00: tagname = "PrintIM"; break;
            case 0x0f00: tagname = "Data"; break;
            default: break;
        }
    }
    setnotetagset(1);
    return(tagname);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movw %di, %ax
movw %ax, -0x2(%rbp)
movl %esi, -0x8(%rbp)
movq $0x0, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x4e77c
movzwl -0x2(%rbp), %eax
movl %eax, -0x14(%rbp)
testl %eax, %eax
je 0x4e543
jmp 0x4e316
movl -0x14(%rbp), %eax
subl $0x1, %eax
je 0x4e553
jmp 0x4e324
movl -0x14(%rbp), %eax
subl $0x3, %eax
je 0x4e563
jmp 0x4e332
movl -0x14(%rbp), %eax
subl $0x40, %eax
je 0x4e573
jmp 0x4e340
movl -0x14(%rbp), %eax
subl $0x81, %eax
je 0x4e583
jmp 0x4e350
movl -0x14(%rbp), %eax
subl $0x88, %eax
je 0x4e593
jmp 0x4e360
movl -0x14(%rbp), %eax
subl $0x89, %eax
je 0x4e5a3
jmp 0x4e370
movl -0x14(%rbp), %eax
subl $0x101, %eax            # imm = 0x101
je 0x4e5b3
jmp 0x4e380
movl -0x14(%rbp), %eax
subl $0x102, %eax            # imm = 0x102
je 0x4e5c3
jmp 0x4e390
movl -0x14(%rbp), %eax
subl $0x103, %eax            # imm = 0x103
je 0x4e5d3
jmp 0x4e3a0
movl -0x14(%rbp), %eax
subl $0x104, %eax            # imm = 0x104
je 0x4e5f6
jmp 0x4e3b0
movl -0x14(%rbp), %eax
subl $0x200, %eax            # imm = 0x200
je 0x4e606
jmp 0x4e3c0
movl -0x14(%rbp), %eax
subl $0x201, %eax            # imm = 0x201
je 0x4e616
jmp 0x4e3d0
movl -0x14(%rbp), %eax
subl $0x202, %eax            # imm = 0x202
je 0x4e626
jmp 0x4e3e0
movl -0x14(%rbp), %eax
subl $0x204, %eax            # imm = 0x204
je 0x4e636
jmp 0x4e3f0
movl -0x14(%rbp), %eax
subl $0x207, %eax            # imm = 0x207
je 0x4e646
jmp 0x4e400
movl -0x14(%rbp), %eax
subl $0x208, %eax            # imm = 0x208
je 0x4e656
jmp 0x4e410
movl -0x14(%rbp), %eax
subl $0x209, %eax            # imm = 0x209
je 0x4e666
jmp 0x4e420
movl -0x14(%rbp), %eax
subl $0x20e, %eax            # imm = 0x20E
je 0x4e676
jmp 0x4e430
movl -0x14(%rbp), %eax
subl $0x20f, %eax            # imm = 0x20F
je 0x4e686
jmp 0x4e440
movl -0x14(%rbp), %eax
subl $0x210, %eax            # imm = 0x210
je 0x4e696
jmp 0x4e450
movl -0x14(%rbp), %eax
subl $0x213, %eax            # imm = 0x213
je 0x4e6a6
jmp 0x4e460
movl -0x14(%rbp), %eax
subl $0x214, %eax            # imm = 0x214
je 0x4e6b6
jmp 0x4e470
movl -0x14(%rbp), %eax
subl $0x216, %eax            # imm = 0x216
je 0x4e6c6
jmp 0x4e480
movl -0x14(%rbp), %eax
subl $0x217, %eax            # imm = 0x217
je 0x4e6d6
jmp 0x4e490
movl -0x14(%rbp), %eax
subl $0x218, %eax            # imm = 0x218
je 0x4e6e6
jmp 0x4e4a0
movl -0x14(%rbp), %eax
subl $0x219, %eax            # imm = 0x219
je 0x4e6f6
jmp 0x4e4b0
movl -0x14(%rbp), %eax
subl $0x21b, %eax            # imm = 0x21B
je 0x4e703
jmp 0x4e4c0
movl -0x14(%rbp), %eax
subl $0x21d, %eax            # imm = 0x21D
je 0x4e710
jmp 0x4e4d0
movl -0x14(%rbp), %eax
subl $0x21e, %eax            # imm = 0x21E
je 0x4e71d
jmp 0x4e4e0
movl -0x14(%rbp), %eax
subl $0x21f, %eax            # imm = 0x21F
je 0x4e72a
jmp 0x4e4f0
movl -0x14(%rbp), %eax
subl $0x223, %eax            # imm = 0x223
je 0x4e737
jmp 0x4e500
movl -0x14(%rbp), %eax
subl $0x224, %eax            # imm = 0x224
je 0x4e744
jmp 0x4e510
movl -0x14(%rbp), %eax
subl $0x225, %eax            # imm = 0x225
je 0x4e751
jmp 0x4e520
movl -0x14(%rbp), %eax
subl $0xe00, %eax            # imm = 0xE00
je 0x4e75e
jmp 0x4e530
movl -0x14(%rbp), %eax
subl $0xf00, %eax            # imm = 0xF00
je 0x4e76b
jmp 0x4e778
leaq 0x175b8(%rip), %rax     # 0x65b02
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x18136(%rip), %rax     # 0x66690
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x18126(%rip), %rax     # 0x66690
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fc06(%rip), %rax     # 0x6e180
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x181e3(%rip), %rax     # 0x6676d
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1f716(%rip), %rax     # 0x6dcb0
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1f6f2(%rip), %rax     # 0x6dc9c
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1d865(%rip), %rax     # 0x6be1f
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fbc4(%rip), %rax     # 0x6e18e
movq %rax, -0x10(%rbp)
jmp 0x4e77a
cmpl $0x3, -0x8(%rbp)
jne 0x4e5e6
leaq 0x1fbae(%rip), %rax     # 0x6e18e
movq %rax, -0x10(%rbp)
jmp 0x4e5f1
leaq 0x2281e(%rip), %rax     # 0x70e0b
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb9e(%rip), %rax     # 0x6e19b
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1e7eb(%rip), %rax     # 0x6cdf8
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb76(%rip), %rax     # 0x6e193
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1a5fa(%rip), %rax     # 0x68c27
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb70(%rip), %rax     # 0x6e1ad
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1e7e1(%rip), %rax     # 0x6ce2e
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb59(%rip), %rax     # 0x6e1b6
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1e7a7(%rip), %rax     # 0x6ce14
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb42(%rip), %rax     # 0x6e1bf
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb40(%rip), %rax     # 0x6e1cd
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb3a(%rip), %rax     # 0x6e1d7
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb37(%rip), %rax     # 0x6e1e4
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb31(%rip), %rax     # 0x6e1ee
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb2b(%rip), %rax     # 0x6e1f8
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb25(%rip), %rax     # 0x6e202
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb26(%rip), %rax     # 0x6e213
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb24(%rip), %rax     # 0x6e221
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1e19c(%rip), %rax     # 0x6c8a6
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb16(%rip), %rax     # 0x6e22d
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb1c(%rip), %rax     # 0x6e240
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb17(%rip), %rax     # 0x6e248
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb16(%rip), %rax     # 0x6e254
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1fb19(%rip), %rax     # 0x6e264
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x1e9e6(%rip), %rax     # 0x6d13e
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x17365(%rip), %rax     # 0x65aca
movq %rax, -0x10(%rbp)
jmp 0x4e77a
leaq 0x18871(%rip), %rax     # 0x66fe3
movq %rax, -0x10(%rbp)
jmp 0x4e77a
jmp 0x4e77a
jmp 0x4e77c
movl $0x1, %edi
callq 0x28100
movq -0x10(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq