// File: /workspace/github_c_makefile_star2_O1/hfiguiere[P]exifprobe/maker_canon.c
// Function: canon_shotinfo
unsigned long
canon_shotinfo(FILE *inptr,unsigned short byteorder,char *tagprefix,
                            unsigned long offset,unsigned long dirlength,int indent)
{
    unsigned long count;
    unsigned long end_offset;
    unsigned short length,value;
    int i;
    int chpr = 0;

    end_offset = offset + dirlength;
    length = read_ushort(inptr,byteorder,offset);
    if(PRINT_SECTION)
    {
        chpr += printf(" length %lu",dirlength);
        if(length != dirlength)
        {
            chpr = newline(chpr);
            PUSHCOLOR(RED);
            print_tag_address(SECTION,offset,indent,"@");
            chpr += printf("# WARNING: length %u from segment does not match length %lu from directory",
                        length,dirlength);
            POPCOLOR();
        }
    }
    chpr = newline(chpr);

    if((PRINT_ENTRY))
    {
        offset += 2;
        count = (dirlength / sizeof(unsigned short)) - 1;

        for(i = 1; i <= count; ++i)
        {
            value = read_ushort(inptr,byteorder,offset);
            print_tag_address(ENTRY,offset,indent,"@");
            if((PRINT_TAGINFO))
                chpr += printf("%s",tagprefix);
            offset += 2;
            switch(i)
            {
                case 1:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"Unknown");
                    if((PRINT_VALUE))
                        chpr += printf(" = %#x%u",value,value);
                    break;
                case 2:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"ISO");
                    if((PRINT_VALUE))
                        chpr += printf(" = %u",value);
                    break;
                case 3:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"Unknown");
                    if((PRINT_VALUE))
                        chpr += printf(" = %#x%u",value,value);
                    break;
                case 4:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"Unknown");
                    if((PRINT_VALUE))
                        chpr += printf(" = %#x%u",value,value);
                    break;
                case 5:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"Unknown");
                    if((PRINT_VALUE))
                        chpr += printf(" = %#x%u",value,value);
                    break;
                case 6: 
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"ExposureCompensation**");
                    if((PRINT_VALUE))
                        chpr += printf(" = %u",value);
                    break;
                case 7:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"WhiteBalance");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",value);
                        print_startvalue();
                        switch(value)
                        {
                            case 0: chpr += printf("Auto"); break;
                            case 1: chpr += printf("Sunny"); break;
                            case 2: chpr += printf("Cloudy"); break;
                            case 3: chpr += printf("Tungsten"); break;
                            case 4: chpr += printf("Fluorescent"); break;
                            case 5: chpr += printf("Flash"); break;
                            case 6: chpr += printf("Custom"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 8:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"Unknown");
                    if((PRINT_VALUE))
                        chpr += printf(" = %#x%u",value,value);
                    break;
                case 9:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"SequenceNumber");
                    if((PRINT_VALUE))
                        chpr += printf(" = %u",value);
                    break;
                case 10:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"Unknown");
                    if((PRINT_VALUE))
                        chpr += printf(" = %#x%u",value,value);
                    break;
                case 11:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"Unknown");
                    if((PRINT_VALUE))
                        chpr += printf(" = %#x%u",value,value);
                    break;
                case 12:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"Unknown");
                    if((PRINT_VALUE))
                        chpr += printf(" = %#x%u",value,value);
                    break;
                case 13:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"Unknown");
                    if((PRINT_VALUE))
                        chpr += printf(" = %#x%u",value,value);
                    break;
                case 14:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"AFPositionUsed");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %#x",value);
                        print_startvalue();
                        if(value & 0xf000)
                        {
                            switch(value & 0x7)
                            {
                                case 0: chpr += printf("none (MF)"); break;
                                case 1: chpr += printf("right"); break;
                                case 2: chpr += printf("center"); break;
                                case 3: chpr += printf("center+right"); break;
                                case 4: chpr += printf("left"); break;
                                case 5: chpr += printf("left+right"); break;
                                case 6: chpr += printf("left+center"); break;
                                case 7: chpr += printf("all"); break;
                                default: printred("undefined"); break;
                            }
                            chpr += printf(" of %d points",(value & 0xf000) >> 12);
                        }
                        else
                            chpr += printf("MF");
                        print_endvalue();
                    }
                    break;
                case 15:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"FlashBias");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %#x",value);
                        print_startvalue();
                        switch(value)
                        {
                            case 0xffc0: chpr += printf("-2 EV"); break;
                            case 0xffcc: chpr += printf("-1.67 EV"); break;
                            case 0xffd0: chpr += printf("-1.50 EV"); break;
                            case 0xffd4: chpr += printf("-1.33 EV"); break;
                            case 0xffe0: chpr += printf("-1 EV"); break;
                            case 0xffec: chpr += printf("-0.67 EV"); break;
                            case 0xfff0: chpr += printf("-0.50 EV"); break;
                            case 0xfff4: chpr += printf("-0.33 EV"); break;
                            case 0x0000: chpr += printf("0 EV"); break;
                            case 0x000c: chpr += printf("+0.33 EV"); break;
                            case 0x0010: chpr += printf("+0.50 EV"); break;
                            case 0x0014: chpr += printf("+0.67 EV"); break;
                            case 0x0020: chpr += printf("+1 EV"); break;
                            case 0x002c: chpr += printf("+1.33 EV"); break;
                            case 0x0030: chpr += printf("+1.50 EV"); break;
                            case 0x0034: chpr += printf("+1.67 EV"); break;
                            case 0x0040: chpr += printf("+2 EV"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 16:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"AutoExposureBracketing**");
                    if((PRINT_VALUE))
                        chpr += printf(" = %u",value);
                    break;
                case 17:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"AEBracketValue**");
                    if((PRINT_VALUE))
                        chpr += printf(" = %u",value);
                    break;
                case 18:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"Unknown");
                    if((PRINT_VALUE))
                        chpr += printf(" = %#x%u",value,value);
                    break;
                case 19:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"FocusDistanceMax**");
                    if((PRINT_VALUE))
                        chpr += printf(" = %u mm",value);
                    break;
                case 20:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"FocusDistanceMin**");
                    if((PRINT_VALUE))
                        chpr += printf(" = %u mm",value);
                    break;
                case 21:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"ApertureValue**");
                    if((PRINT_VALUE))
                        chpr += printf(" = %u",value);
                    break;
                case 22:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"ExposureTime**");
                    if((PRINT_VALUE))
                        chpr += printf(" = %u",value);
                    break;
                case 24:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"BulbDuration**");
                    if((PRINT_VALUE))
                        chpr += printf(" = %u",value);
                    break;
                case 27:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"AutoRotate**");
                    if((PRINT_VALUE))
                        chpr += printf(" = %u",value);
                    break;
                case 29:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"SelfTimer2**");
                    if((PRINT_VALUE))
                        chpr += printf(" = %u",value);
                    break;
                default:
                    if((PRINT_TAGINFO))
                        chpr += printf(".%02d_%-28.28s",i,"Undefined");
                    if((PRINT_VALUE))
                        chpr += printf(" = %#x%u",value,value);
                    break;
            }
            chpr = newline(chpr);
        }
    }
    setcharsprinted(chpr);
    return(end_offset);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
movl %r9d, 0x4(%rsp)
movq %r8, %r12
movq %rcx, %r13
movq %rdx, 0x20(%rsp)
movl %esi, %ebx
movq %rdi, 0x30(%rsp)
movq %rcx, %rdx
callq 0x4574
movl %eax, %ebp
leaq 0x20a76(%rip), %rax     # 0x58180
xorl %edi, %edi
testb $0x4, 0x2(%rax)
je 0x37765
leaq 0x11001(%rip), %rdi     # 0x4871a
movq %r12, %rsi
xorl %eax, %eax
callq 0x3120
movl %eax, %edi
movzwl %bp, %r14d
cmpq %r12, %r14
je 0x37765
callq 0x16b56
movl %eax, %ebp
leaq 0x99a0(%rip), %rcx      # 0x410dc
movl $0x40000, %edi          # imm = 0x40000
movq %r13, %rsi
movl 0x4(%rsp), %edx
callq 0x5605
leaq 0x15699(%rip), %rdi     # 0x4cded
movl %r14d, %esi
movq %r12, %rdx
xorl %eax, %eax
callq 0x3120
movl %eax, %edi
addl %ebp, %edi
callq 0x16b56
movl %eax, %r15d
leaq 0x20a0c(%rip), %rax     # 0x58180
testl $0x4003333, (%rax)      # imm = 0x4003333
movq %r13, 0x18(%rsp)
je 0x37792
movq %r12, %rax
shrq %rax
movq %rax, 0x28(%rsp)
cmpq $0x1, %rax
jne 0x377b1
addq 0x18(%rsp), %r12
movl %r15d, %edi
callq 0x17530
movq %r12, %rax
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
addq $0x2, %r13
movl $0x1, %r14d
movzwl %bx, %eax
movl %eax, 0x14(%rsp)
movl 0x4(%rsp), %ebp
movq %r12, 0x8(%rsp)
movq 0x30(%rsp), %rdi
movl 0x14(%rsp), %esi
movq %r13, %rdx
callq 0x4574
movl %eax, %ebx
movl $0x4003333, %edi        # imm = 0x4003333
movq %r13, %rsi
movl %ebp, %edx
leaq 0x98ed(%rip), %rcx      # 0x410dc
callq 0x5605
leaq 0x20985(%rip), %rax     # 0x58180
movzwl (%rax), %eax
testl $0x3003, %eax           # imm = 0x3003
je 0x3781b
leaq 0x988b(%rip), %rdi      # 0x41097
movq 0x20(%rsp), %rsi
xorl %eax, %eax
callq 0x3120
addl %eax, %r15d
leaq 0x2095e(%rip), %rax     # 0x58180
movq (%rax), %rax
leal -0x1(%r14), %ecx
cmpl $0x1c, %ecx
ja 0x37ce8
leaq 0x14f5b(%rip), %rdx     # 0x4c794
movslq (%rdx,%rcx,4), %rcx
addq %rdx, %rcx
jmpq *%rcx
testl $0x3003, %eax           # imm = 0x3003
je 0x37d0a
leaq 0x15943(%rip), %rdi     # 0x4d197
leaq 0x12e0b(%rip), %rdx     # 0x4a666
movl $0x1, %esi
jmp 0x37d00
testl $0x3003, %eax           # imm = 0x3003
je 0x37a19
leaq 0x15920(%rip), %rdi     # 0x4d197
leaq 0x15a56(%rip), %rdx     # 0x4d2d4
movl $0x13, %esi
jmp 0x37a0f
testl $0x3003, %eax           # imm = 0x3003
je 0x37cc9
leaq 0x158fd(%rip), %rdi     # 0x4d197
leaq 0x15a69(%rip), %rdx     # 0x4d30a
movl $0x16, %esi
jmp 0x37cbf
testl $0x3003, %eax           # imm = 0x3003
je 0x378cf
leaq 0x158de(%rip), %rdi     # 0x4d197
leaq 0x1591b(%rip), %rdx     # 0x4d1db
movl $0xe, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %r15d
leaq 0x208aa(%rip), %rax     # 0x58180
testb $0x30, (%rax)
je 0x37df3
movzwl %bx, %ebp
leaq 0x117db(%rip), %rdi     # 0x490c4
movl %ebp, %esi
xorl %eax, %eax
callq 0x3120
movl %eax, %ebx
addl %r15d, %ebx
xorl %eax, %eax
callq 0x95d2
cmpl $0x1000, %ebp           # imm = 0x1000
jae 0x37d58
leaq 0x1218b(%rip), %rdi     # 0x49a9c
xorl %eax, %eax
callq 0x3120
movl %eax, %r15d
addl %ebx, %r15d
jmp 0x37d90
testl $0x3003, %eax           # imm = 0x3003
je 0x37cc9
leaq 0x15862(%rip), %rdi     # 0x4d197
leaq 0x159ec(%rip), %rdx     # 0x4d328
movl $0x1b, %esi
jmp 0x37cbf
testl $0x3003, %eax           # imm = 0x3003
je 0x37d0a
leaq 0x1583f(%rip), %rdi     # 0x4d197
leaq 0x12d07(%rip), %rdx     # 0x4a666
movl $0xb, %esi
jmp 0x37d00
testl $0x3003, %eax           # imm = 0x3003
je 0x37d0a
leaq 0x1581c(%rip), %rdi     # 0x4d197
leaq 0x12ce4(%rip), %rdx     # 0x4a666
movl $0x3, %esi
jmp 0x37d00
testl $0x3003, %eax           # imm = 0x3003
je 0x37d0a
leaq 0x157f9(%rip), %rdi     # 0x4d197
leaq 0x12cc1(%rip), %rdx     # 0x4a666
movl $0x5, %esi
jmp 0x37d00
testl $0x3003, %eax           # imm = 0x3003
je 0x37cc9
leaq 0x157d6(%rip), %rdi     # 0x4d197
leaq 0x15951(%rip), %rdx     # 0x4d319
movl $0x18, %esi
jmp 0x37cbf
testl $0x3003, %eax           # imm = 0x3003
je 0x37d0a
leaq 0x157b3(%rip), %rdi     # 0x4d197
leaq 0x12c7b(%rip), %rdx     # 0x4a666
movl $0xd, %esi
jmp 0x37d00
testl $0x3003, %eax           # imm = 0x3003
je 0x37a19
leaq 0x15794(%rip), %rdi     # 0x4d197
leaq 0x158dd(%rip), %rdx     # 0x4d2e7
movl $0x14, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %r15d
leaq 0x20760(%rip), %rax     # 0x58180
testb $0x30, (%rax)
je 0x37d2c
movzwl %bx, %esi
leaq 0x10f5d(%rip), %rdi     # 0x48990
jmp 0x37cdf
testl $0x3003, %eax           # imm = 0x3003
je 0x37cc9
leaq 0x1574d(%rip), %rdi     # 0x4d197
leaq 0x1575e(%rip), %rdx     # 0x4d1af
movl $0x6, %esi
jmp 0x37cbf
testl $0x3003, %eax           # imm = 0x3003
je 0x37d0a
leaq 0x1572a(%rip), %rdi     # 0x4d197
leaq 0x12bf2(%rip), %rdx     # 0x4a666
movl $0xc, %esi
jmp 0x37d00
testl $0x3003, %eax           # imm = 0x3003
je 0x37d0a
leaq 0x15707(%rip), %rdi     # 0x4d197
leaq 0x12bcf(%rip), %rdx     # 0x4a666
movl $0x4, %esi
jmp 0x37d00
testl $0x3003, %eax           # imm = 0x3003
je 0x37cc9
leaq 0x156e4(%rip), %rdi     # 0x4d197
leaq 0x11b41(%rip), %rdx     # 0x495fb
movl $0x2, %esi
jmp 0x37cbf
testl $0x3003, %eax           # imm = 0x3003
je 0x37cc9
leaq 0x156c1(%rip), %rdi     # 0x4d197
leaq 0x15858(%rip), %rdx     # 0x4d335
movl $0x1d, %esi
jmp 0x37cbf
testl $0x3003, %eax           # imm = 0x3003
je 0x37b0b
leaq 0x156a2(%rip), %rdi     # 0x4d197
leaq 0xb6ef(%rip), %rdx      # 0x431eb
movl $0x7, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %r15d
leaq 0x2066e(%rip), %rax     # 0x58180
testb $0x30, (%rax)
je 0x37d4e
movzwl %bx, %r12d
leaq 0xd434(%rip), %rdi      # 0x44f5a
movl %r12d, %esi
xorl %eax, %eax
callq 0x3120
movl %eax, %ebp
addl %r15d, %ebp
xorl %eax, %eax
callq 0x95d2
cmpw $0x6, %bx
ja 0x37db4
leaq 0x14d3f(%rip), %rax     # 0x4c88c
movslq (%rax,%r12,4), %rcx
addq %rax, %rcx
jmpq *%rcx
leaq 0x13c5d(%rip), %rdi     # 0x4b7ba
jmp 0x37ddb
testl $0x3003, %eax           # imm = 0x3003
je 0x37d0a
leaq 0x15623(%rip), %rdi     # 0x4d197
leaq 0x12aeb(%rip), %rdx     # 0x4a666
movl $0x8, %esi
jmp 0x37d00
testl $0x3003, %eax           # imm = 0x3003
je 0x37ba9
leaq 0x15604(%rip), %rdi     # 0x4d197
leaq 0x12f55(%rip), %rdx     # 0x4aaef
movl $0xf, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %r15d
leaq 0x205d0(%rip), %rax     # 0x58180
testb $0x30, (%rax)
je 0x37d2c
movzwl %bx, %esi
leaq 0x11501(%rip), %rdi     # 0x490c4
xorl %eax, %eax
callq 0x3120
addl %r15d, %eax
movl %eax, %r15d
xorl %eax, %eax
callq 0x95d2
leal 0x40(%rbx), %eax
rolw $0xe, %ax
cmpw $0x20, %ax
ja 0x37e4d
movzwl %ax, %eax
leaq 0x14c16(%rip), %rcx     # 0x4c808
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x15624(%rip), %rdi     # 0x4d226
jmp 0x37ea1
testl $0x3003, %eax           # imm = 0x3003
je 0x37cc9
leaq 0x1557e(%rip), %rdi     # 0x4d197
leaq 0x1568a(%rip), %rdx     # 0x4d2aa
movl $0x10, %esi
jmp 0x37cbf
testl $0x3003, %eax           # imm = 0x3003
je 0x37d0a
leaq 0x1555b(%rip), %rdi     # 0x4d197
leaq 0x12a23(%rip), %rdx     # 0x4a666
movl $0xa, %esi
jmp 0x37d00
testl $0x3003, %eax           # imm = 0x3003
je 0x37cc9
leaq 0x1553c(%rip), %rdi     # 0x4d197
leaq 0x1556a(%rip), %rdx     # 0x4d1cc
movl $0x9, %esi
jmp 0x37cbf
testl $0x3003, %eax           # imm = 0x3003
je 0x37d0a
leaq 0x1551c(%rip), %rdi     # 0x4d197
leaq 0x129e4(%rip), %rdx     # 0x4a666
movl $0x12, %esi
jmp 0x37d00
testl $0x3003, %eax           # imm = 0x3003
je 0x37cc9
leaq 0x15500(%rip), %rdi     # 0x4d197
leaq 0x15625(%rip), %rdx     # 0x4d2c3
movl $0x11, %esi
jmp 0x37cbf
testl $0x3003, %eax           # imm = 0x3003
je 0x37cc9
leaq 0x154e4(%rip), %rdi     # 0x4d197
leaq 0x15640(%rip), %rdx     # 0x4d2fa
movl $0x15, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %r15d
leaq 0x204b0(%rip), %rax     # 0x58180
testb $0x30, (%rax)
je 0x37d2c
movzwl %bx, %esi
leaq 0xd27b(%rip), %rdi      # 0x44f5a
xorl %eax, %eax
callq 0x3120
jmp 0x37d29
testl $0x3003, %eax           # imm = 0x3003
je 0x37d0a
leaq 0x154a1(%rip), %rdi     # 0x4d197
movl %r14d, %esi
leaq 0x10c86(%rip), %rdx     # 0x48986
xorl %eax, %eax
callq 0x3120
addl %eax, %r15d
leaq 0x2046f(%rip), %rax     # 0x58180
testb $0x30, (%rax)
je 0x37d2c
movzwl %bx, %edx
leaq 0x15486(%rip), %rdi     # 0x4d1a6
movl %edx, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %r15d
movl %r15d, %edi
callq 0x16b56
movl %eax, %r15d
incq %r14
addq $0x2, %r13
cmpq %r14, 0x28(%rsp)
jne 0x377cb
jmp 0x37792
movq 0x8(%rsp), %r12
jmp 0x37df3
movl %ebp, %eax
andl $0x7, %eax
leaq 0x14f58(%rip), %rcx     # 0x4ccbc
movslq (%rcx,%rax,4), %rdi
addq %rcx, %rdi
xorl %eax, %eax
callq 0x3120
movl %eax, %r15d
shrl $0xc, %ebp
leaq 0x15499(%rip), %rdi     # 0x4d218
movl %ebp, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebx
addl %r15d, %ebx
movl %ebx, %r15d
movl 0x4(%rsp), %ebp
jmp 0x37eab
leaq 0x135f1(%rip), %rdi     # 0x4b391
jmp 0x37ddb
leaq 0x16199(%rip), %rdi     # 0x4df42
jmp 0x37ddb
leaq 0x161b3(%rip), %rdi     # 0x4df65
jmp 0x37ddb
leaq 0x1106e(%rip), %rdi     # 0x48e29
callq 0x5c33
jmp 0x37de4
leaq 0x153fd(%rip), %rdi     # 0x4d1c6
jmp 0x37ddb
leaq 0x1407a(%rip), %rdi     # 0x4be4c
jmp 0x37ddb
leaq 0x161ff(%rip), %rdi     # 0x4dfda
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movq 0x8(%rsp), %r12
xorl %eax, %eax
callq 0x95f3
movl %ebp, %r15d
movl 0x4(%rsp), %ebp
jmp 0x37d2c
leaq 0x15486(%rip), %rdi     # 0x4d289
jmp 0x37ea1
leaq 0x15462(%rip), %rdi     # 0x4d271
jmp 0x37ea1
leaq 0x1542c(%rip), %rdi     # 0x4d247
jmp 0x37ea1
leaq 0x1545c(%rip), %rdi     # 0x4d283
jmp 0x37ea1
leaq 0x153fc(%rip), %rdi     # 0x4d22c
jmp 0x37ea1
leaq 0x15414(%rip), %rdi     # 0x4d24d
jmp 0x37ea1
leaq 0x15438(%rip), %rdi     # 0x4d27a
jmp 0x37ea1
leaq 0x153f3(%rip), %rdi     # 0x4d23e
jmp 0x37ea1
leaq 0x10fd5(%rip), %rdi     # 0x48e29
callq 0x5c33
jmp 0x37eab
leaq 0x153d3(%rip), %rdi     # 0x4d235
jmp 0x37ea1
leaq 0x153eb(%rip), %rdi     # 0x4d256
jmp 0x37ea1
leaq 0x153eb(%rip), %rdi     # 0x4d25f
jmp 0x37ea1
leaq 0x15415(%rip), %rdi     # 0x4d292
jmp 0x37ea1
leaq 0x15415(%rip), %rdi     # 0x4d29b
jmp 0x37ea1
leaq 0x153d9(%rip), %rdi     # 0x4d268
jmp 0x37ea1
leaq 0x153dd(%rip), %rdi     # 0x4d275
jmp 0x37ea1
leaq 0x15403(%rip), %rdi     # 0x4d2a4
xorl %eax, %eax
callq 0x3120
addl %eax, %r15d
xorl %eax, %eax
callq 0x95f3
jmp 0x37d2c