// File: /workspace/github_c_makefile_star2_O0/Matthias-Wandel[P]imgcomp/src/exif.c
// Function: ShowImageInfo
void ShowImageInfo(int ShowFileInfo)
{
    if (ShowFileInfo){
        printf("File name    : %s\n",ImageInfo.FileName);
        printf("File size    : %d bytes\n",ImageInfo.FileSize);
    }

    if (ImageInfo.CameraMake[0]){
        printf("Camera make  : %s\n",ImageInfo.CameraMake);
        printf("Camera model : %s\n",ImageInfo.CameraModel);
    }
    if (ImageInfo.DateTime[0]){
        printf("Date/Time    : %s\n",ImageInfo.DateTime);
    }
    printf("Resolution   : %d x %d\n",ImageInfo.Width, ImageInfo.Height);

    if (ImageInfo.Orientation > 1 && ImageInfo.Orientation <=8){
        // Only print orientation if one was supplied, and if its not 1 (normal orientation)
        printf("Orientation  : %s\n", OrientTab[ImageInfo.Orientation]);
    }

    if (ImageInfo.FlashUsed >= 0){
        if (ImageInfo.FlashUsed & 1){    
            printf("Flash used   : Yes");
            switch (ImageInfo.FlashUsed){
	            case 0x5: printf(" (Strobe light not detected)"); break;
	            case 0x7: printf(" (Strobe light detected) "); break;
	            case 0x9: printf(" (manual)"); break;
	            case 0xd: printf(" (manual, return light not detected)"); break;
	            case 0xf: printf(" (manual, return light  detected)"); break;
	            case 0x19:printf(" (auto)"); break;
	            case 0x1d:printf(" (auto, return light not detected)"); break;
	            case 0x1f:printf(" (auto, return light detected)"); break;
	            case 0x41:printf(" (red eye reduction mode)"); break;
	            case 0x45:printf(" (red eye reduction mode return light not detected)"); break;
	            case 0x47:printf(" (red eye reduction mode return light  detected)"); break;
	            case 0x49:printf(" (manual, red eye reduction mode)"); break;
	            case 0x4d:printf(" (manual, red eye reduction mode, return light not detected)"); break;
	            case 0x4f:printf(" (red eye reduction mode, return light detected)"); break;
	            case 0x59:printf(" (auto, red eye reduction mode)"); break;
	            case 0x5d:printf(" (auto, red eye reduction mode, return light not detected)"); break;
	            case 0x5f:printf(" (auto, red eye reduction mode, return light detected)"); break;
            }
        }else{
            printf("Flash used   : No");
            switch (ImageInfo.FlashUsed){
	            case 0x18:printf(" (auto)"); break;
            }
        }
        printf("\n");
    }


    if (ImageInfo.FocalLength){
        printf("Focal length : %4.1fmm",(double)ImageInfo.FocalLength);
        if (ImageInfo.FocalLength35mmEquiv){
            printf("  (35mm equivalent: %dmm)", ImageInfo.FocalLength35mmEquiv);
        }
        printf("\n");
    }

    if (ImageInfo.DigitalZoomRatio > 1){
        // Digital zoom used.  Shame on you!
        printf("Digital Zoom : %1.3fx\n", (double)ImageInfo.DigitalZoomRatio);
    }

    if (ImageInfo.ExposureTime){
        if (ImageInfo.ExposureTime < 0.010){
            printf("Exposure time: %6.4f s ",(double)ImageInfo.ExposureTime);
        }else{
            printf("Exposure time: %5.3f s ",(double)ImageInfo.ExposureTime);
        }
        if (ImageInfo.ExposureTime <= 0.5){
            printf(" (1/%d)",(int)(0.5 + 1/ImageInfo.ExposureTime));
        }
        printf("\n");
    }
    if (ImageInfo.ApertureFNumber){
        printf("Aperture     : f/%3.1f\n",(double)ImageInfo.ApertureFNumber);
    }
    if (ImageInfo.Distance){
        if (ImageInfo.Distance < 0){
            printf("Focus dist.  : Infinite\n");
        }else{
            printf("Focus dist.  : %4.2fm\n",(double)ImageInfo.Distance);
        }
    }

    if (ImageInfo.ISOequivalent){
        printf("ISO equiv.   : %2d\n",(int)ImageInfo.ISOequivalent);
    }

    if (ImageInfo.ExposureBias){
        // If exposure bias was specified, but set to zero, presumably its no bias at all,
        // so only show it if its nonzero.
        printf("Exposure bias: %4.2f\n",(double)ImageInfo.ExposureBias);
    }
        
    switch(ImageInfo.Whitebalance) {
        case 1:
            printf("Whitebalance : Manual\n");
            break;
        case 0:
            printf("Whitebalance : Auto\n");
            break;
    }

    //Quercus: 17-1-2004 Added LightSource, some cams return this, whitebalance or both
    switch(ImageInfo.LightSource) {
        case 1:
            printf("Light Source : Daylight\n");
            break;
        case 2:
            printf("Light Source : Fluorescent\n");
            break;
        case 3:
            printf("Light Source : Incandescent\n");
            break;
        case 4:
            printf("Light Source : Flash\n");
            break;
        case 9:
            printf("Light Source : Fine weather\n");
            break;
        case 11:
            printf("Light Source : Shade\n");
            break;
        default:; //Quercus: 17-1-2004 There are many more modes for this, check Exif2.2 specs
            // If it just says 'unknown' or we don't know it, then
            // don't bother showing it - it doesn't add any useful information.
    }

    if (ImageInfo.MeteringMode > 0){ // 05-jan-2001 vcs
        printf("Metering Mode: ");
        switch(ImageInfo.MeteringMode) {
        case 1: printf("average\n"); break;
        case 2: printf("center weight\n"); break;
        case 3: printf("spot\n"); break;
        case 4: printf("multi spot\n");  break;
        case 5: printf("pattern\n"); break;
        case 6: printf("partial\n");  break;
        case 255: printf("other\n");  break;
        default: printf("unknown (%d)\n",ImageInfo.MeteringMode); break;
        }
    }

    if (ImageInfo.ExposureProgram){ // 05-jan-2001 vcs
        switch(ImageInfo.ExposureProgram) {
        case 1:
            printf("Exposure     : Manual\n");
            break;
        case 2:
            printf("Exposure     : program (auto)\n");
            break;
        case 3:
            printf("Exposure     : aperture priority (semi-auto)\n");
            break;
        case 4:
            printf("Exposure     : shutter priority (semi-auto)\n");
            break;
        case 5:
            printf("Exposure     : Creative Program (based towards depth of field)\n"); 
            break;
        case 6:
            printf("Exposure     : Action program (based towards fast shutter speed)\n");
            break;
        case 7:
            printf("Exposure     : Portrait Mode\n");
            break;
        case 8:
            printf("Exposure     : LandscapeMode \n");
            break;
        default:
            break;
        }
    }
    switch(ImageInfo.ExposureMode){
        case 0: // Automatic (not worth cluttering up output for)
            break;
        case 1: printf("Exposure Mode: Manual\n");
            break;
        case 2: printf("Exposure Mode: Auto bracketing\n");
            break;
    }

    if (ImageInfo.DistanceRange) {
        printf("Focus range  : ");
        switch(ImageInfo.DistanceRange) {
            case 1:
                printf("macro");
                break;
            case 2:
                printf("close");
                break;
            case 3:
                printf("distant");
                break;
        }
        printf("\n");
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movl %edi, -0x4(%rbp)
cmpl $0x0, -0x4(%rbp)
je 0xa641
leaq 0x59ad(%rip), %rdi      # 0xffc5
leaq 0xae99(%rip), %rsi      # 0x154b8
movb $0x0, %al
callq 0x3170
leaq 0xae8b(%rip), %rax      # 0x154b8
movl 0x1004(%rax), %esi
leaq 0x599e(%rip), %rdi      # 0xffd8
movb $0x0, %al
callq 0x3170
leaq 0xae70(%rip), %rax      # 0x154b8
cmpb $0x0, 0x1008(%rax)
je 0xa689
leaq 0x5999(%rip), %rdi      # 0xfff1
leaq 0xae59(%rip), %rsi      # 0x154b8
addq $0x1008, %rsi           # imm = 0x1008
movb $0x0, %al
callq 0x3170
leaq 0x5990(%rip), %rdi      # 0x10004
leaq 0xae3d(%rip), %rsi      # 0x154b8
addq $0x1028, %rsi           # imm = 0x1028
movb $0x0, %al
callq 0x3170
leaq 0xae28(%rip), %rax      # 0x154b8
cmpb $0x0, 0x1050(%rax)
je 0xa6b5
leaq 0x5977(%rip), %rdi      # 0x10017
leaq 0xae11(%rip), %rsi      # 0x154b8
addq $0x1050, %rsi           # imm = 0x1050
movb $0x0, %al
callq 0x3170
leaq 0xadfc(%rip), %rax      # 0x154b8
movl 0x1068(%rax), %esi
leaq 0xadef(%rip), %rax      # 0x154b8
movl 0x1064(%rax), %edx
leaq 0x5954(%rip), %rdi      # 0x1002a
movb $0x0, %al
callq 0x3170
leaq 0xadd4(%rip), %rax      # 0x154b8
cmpl $0x1, 0x106c(%rax)
jle 0xa724
leaq 0xadc4(%rip), %rax      # 0x154b8
cmpl $0x8, 0x106c(%rax)
jg 0xa724
leaq 0xadb4(%rip), %rax      # 0x154b8
movslq 0x106c(%rax), %rcx
leaq 0x9bbe(%rip), %rax      # 0x142d0
movq (%rax,%rcx,8), %rsi
leaq 0x5925(%rip), %rdi      # 0x10042
movb $0x0, %al
callq 0x3170
leaq 0xad8d(%rip), %rax      # 0x154b8
cmpl $0x0, 0x1078(%rax)
jl 0xa8fa
leaq 0xad79(%rip), %rax      # 0x154b8
movl 0x1078(%rax), %eax
andl $0x1, %eax
cmpl $0x0, %eax
je 0xa8ba
leaq 0x58fd(%rip), %rdi      # 0x10055
xorl %eax, %eax
callq 0x3170
leaq 0xad52(%rip), %rax      # 0x154b8
movl 0x1078(%rax), %eax
addl $-0x5, %eax
movl %eax, %ecx
movq %rcx, -0x10(%rbp)
subl $0x5a, %eax
ja 0xa8b8
movq -0x10(%rbp), %rax
leaq 0x54bb(%rip), %rcx      # 0xfc44
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x58cf(%rip), %rdi      # 0x10068
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x58d9(%rip), %rdi      # 0x10085
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x58e0(%rip), %rdi      # 0x1009f
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x58d7(%rip), %rdi      # 0x100a9
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x58e9(%rip), %rdi      # 0x100ce
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x58f8(%rip), %rdi      # 0x100f0
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x58ed(%rip), %rdi      # 0x100f8
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x58fd(%rip), %rdi      # 0x1011b
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x5909(%rip), %rdi      # 0x1013a
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x5913(%rip), %rdi      # 0x10154
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x5937(%rip), %rdi      # 0x10188
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x5958(%rip), %rdi      # 0x101b9
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x596a(%rip), %rdi      # 0x101db
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x5997(%rip), %rdi      # 0x10218
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x59b8(%rip), %rdi      # 0x10249
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x59c8(%rip), %rdi      # 0x10269
movb $0x0, %al
callq 0x3170
jmp 0xa8b8
leaq 0x59f3(%rip), %rdi      # 0x102a4
movb $0x0, %al
callq 0x3170
jmp 0xa8ec
leaq 0x5a1a(%rip), %rdi      # 0x102db
xorl %eax, %eax
callq 0x3170
leaq 0xabe9(%rip), %rax      # 0x154b8
movl 0x1078(%rax), %eax
subl $0x18, %eax
jne 0xa8ea
jmp 0xa8dc
leaq 0x580d(%rip), %rdi      # 0x100f0
movb $0x0, %al
callq 0x3170
jmp 0xa8ec
leaq 0x38c8(%rip), %rdi      # 0xe1bb
movb $0x0, %al
callq 0x3170
leaq 0xabb7(%rip), %rax      # 0x154b8
movss 0x107c(%rax), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jne 0xa915
jp 0xa915
jmp 0xa96f
leaq 0xab9c(%rip), %rax      # 0x154b8
movss 0x107c(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
leaq 0x59be(%rip), %rdi      # 0x102ed
movb $0x1, %al
callq 0x3170
leaq 0xab7b(%rip), %rax      # 0x154b8
cmpl $0x0, 0x1094(%rax)
je 0xa961
leaq 0xab6b(%rip), %rax      # 0x154b8
movl 0x1094(%rax), %esi
leaq 0x59aa(%rip), %rdi      # 0x10304
movb $0x0, %al
callq 0x3170
leaq 0x3853(%rip), %rdi      # 0xe1bb
movb $0x0, %al
callq 0x3170
leaq 0xab42(%rip), %rax      # 0x154b8
movss 0x1090(%rax), %xmm0
movss 0x54d2(%rip), %xmm1     # 0xfe58
ucomiss %xmm1, %xmm0
jbe 0xa9ac
leaq 0xab26(%rip), %rax      # 0x154b8
movss 0x1090(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
leaq 0x5979(%rip), %rdi      # 0x1031e
movb $0x1, %al
callq 0x3170
leaq 0xab05(%rip), %rax      # 0x154b8
movss 0x1080(%rax), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jne 0xa9ca
jp 0xa9ca
jmp 0xaa97
leaq 0xaae7(%rip), %rax      # 0x154b8
movss 0x1080(%rax), %xmm0
cvtss2sd %xmm0, %xmm1
movsd 0x546b(%rip), %xmm0     # 0xfe50
ucomisd %xmm1, %xmm0
jbe 0xaa0e
leaq 0xaac6(%rip), %rax      # 0x154b8
movss 0x1080(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
leaq 0x5930(%rip), %rdi      # 0x10335
movb $0x1, %al
callq 0x3170
jmp 0xaa2f
leaq 0xaaa3(%rip), %rax      # 0x154b8
movss 0x1080(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
leaq 0x5925(%rip), %rdi      # 0x1034d
movb $0x1, %al
callq 0x3170
leaq 0xaa82(%rip), %rax      # 0x154b8
movss 0x1080(%rax), %xmm0
cvtss2sd %xmm0, %xmm1
movsd 0x35c6(%rip), %xmm0     # 0xe010
ucomisd %xmm1, %xmm0
jb 0xaa89
movss 0x5400(%rip), %xmm0     # 0xfe58
leaq 0xaa59(%rip), %rax      # 0x154b8
divss 0x1080(%rax), %xmm0
cvtss2sd %xmm0, %xmm1
movsd 0x359d(%rip), %xmm0     # 0xe010
addsd %xmm1, %xmm0
cvttsd2si %xmm0, %esi
leaq 0x58e3(%rip), %rdi      # 0x10365
movb $0x0, %al
callq 0x3170
leaq 0x372b(%rip), %rdi      # 0xe1bb
movb $0x0, %al
callq 0x3170
leaq 0xaa1a(%rip), %rax      # 0x154b8
movss 0x1084(%rax), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jne 0xaab2
jp 0xaab2
jmp 0xaad3
leaq 0xa9ff(%rip), %rax      # 0x154b8
movss 0x1084(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
leaq 0x58a1(%rip), %rdi      # 0x1036d
movb $0x1, %al
callq 0x3170
leaq 0xa9de(%rip), %rax      # 0x154b8
movss 0x1088(%rax), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jne 0xaaee
jp 0xaaee
jmp 0xab34
xorps %xmm0, %xmm0
leaq 0xa9c0(%rip), %rax      # 0x154b8
ucomiss 0x1088(%rax), %xmm0
jbe 0xab11
leaq 0x587d(%rip), %rdi      # 0x10385
movb $0x0, %al
callq 0x3170
jmp 0xab32
leaq 0xa9a0(%rip), %rax      # 0x154b8
movss 0x1088(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
leaq 0x5873(%rip), %rdi      # 0x1039e
movb $0x1, %al
callq 0x3170
jmp 0xab34
leaq 0xa97d(%rip), %rax      # 0x154b8
cmpl $0x0, 0x10a8(%rax)
je 0xab5f
leaq 0xa96d(%rip), %rax      # 0x154b8
movl 0x10a8(%rax), %esi
leaq 0x585d(%rip), %rdi      # 0x103b5
movb $0x0, %al
callq 0x3170
leaq 0xa952(%rip), %rax      # 0x154b8
movss 0x108c(%rax), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jne 0xab7a
jp 0xab7a
jmp 0xab9b
leaq 0xa937(%rip), %rax      # 0x154b8
movss 0x108c(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
leaq 0x5835(%rip), %rdi      # 0x103c9
movb $0x1, %al
callq 0x3170
leaq 0xa916(%rip), %rax      # 0x154b8
movl 0x1098(%rax), %eax
movl %eax, -0x14(%rbp)
testl %eax, %eax
je 0xabcb
jmp 0xabb1
movl -0x14(%rbp), %eax
subl $0x1, %eax
jne 0xabd9
jmp 0xabbb
leaq 0x581d(%rip), %rdi      # 0x103df
movb $0x0, %al
callq 0x3170
jmp 0xabd9
leaq 0x5824(%rip), %rdi      # 0x103f6
movb $0x0, %al
callq 0x3170
leaq 0xa8d8(%rip), %rax      # 0x154b8
movl 0x10ac(%rax), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x20(%rbp)
subl $0xa, %eax
ja 0xac67
movq -0x20(%rbp), %rax
leaq 0x51b2(%rip), %rcx      # 0xfdb0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x57fd(%rip), %rdi      # 0x1040b
movb $0x0, %al
callq 0x3170
jmp 0xac69
leaq 0x5806(%rip), %rdi      # 0x10424
movb $0x0, %al
callq 0x3170
jmp 0xac69
leaq 0x5812(%rip), %rdi      # 0x10440
movb $0x0, %al
callq 0x3170
jmp 0xac69
leaq 0x581f(%rip), %rdi      # 0x1045d
movb $0x0, %al
callq 0x3170
jmp 0xac69
leaq 0x5825(%rip), %rdi      # 0x10473
movb $0x0, %al
callq 0x3170
jmp 0xac69
leaq 0x5832(%rip), %rdi      # 0x10490
movb $0x0, %al
callq 0x3170
jmp 0xac69
jmp 0xac69
leaq 0xa848(%rip), %rax      # 0x154b8
cmpl $0x0, 0x109c(%rax)
jle 0xad6d
leaq 0x5822(%rip), %rdi      # 0x104a6
xorl %eax, %eax
callq 0x3170
leaq 0xa826(%rip), %rax      # 0x154b8
movl 0x109c(%rax), %eax
movl %eax, -0x24(%rbp)
subl $0x1, %eax
je 0xace0
jmp 0xaca2
movl -0x24(%rbp), %eax
subl $0x2, %eax
je 0xacf0
jmp 0xacac
movl -0x24(%rbp), %eax
subl $0x3, %eax
je 0xad00
jmp 0xacb6
movl -0x24(%rbp), %eax
subl $0x4, %eax
je 0xad10
jmp 0xacc0
movl -0x24(%rbp), %eax
subl $0x5, %eax
je 0xad20
jmp 0xacca
movl -0x24(%rbp), %eax
subl $0x6, %eax
je 0xad30
jmp 0xacd4
movl -0x24(%rbp), %eax
subl $0xff, %eax
je 0xad40
jmp 0xad50
leaq 0x57cf(%rip), %rdi      # 0x104b6
movb $0x0, %al
callq 0x3170
jmp 0xad6b
leaq 0x57c8(%rip), %rdi      # 0x104bf
movb $0x0, %al
callq 0x3170
jmp 0xad6b
leaq 0x57cd(%rip), %rdi      # 0x104d4
movb $0x0, %al
callq 0x3170
jmp 0xad6b
leaq 0x57b7(%rip), %rdi      # 0x104ce
movb $0x0, %al
callq 0x3170
jmp 0xad6b
leaq 0x57b3(%rip), %rdi      # 0x104da
movb $0x0, %al
callq 0x3170
jmp 0xad6b
leaq 0x57ac(%rip), %rdi      # 0x104e3
movb $0x0, %al
callq 0x3170
jmp 0xad6b
leaq 0x57a5(%rip), %rdi      # 0x104ec
movb $0x0, %al
callq 0x3170
jmp 0xad6b
leaq 0xa761(%rip), %rax      # 0x154b8
movl 0x109c(%rax), %esi
leaq 0x578f(%rip), %rdi      # 0x104f3
movb $0x0, %al
callq 0x3170
jmp 0xad6d
leaq 0xa744(%rip), %rax      # 0x154b8
cmpl $0x0, 0x10a0(%rax)
je 0xae37
leaq 0xa730(%rip), %rax      # 0x154b8
movl 0x10a0(%rax), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x30(%rbp)
subl $0x7, %eax
ja 0xae33
movq -0x30(%rbp), %rax
leaq 0x5032(%rip), %rcx      # 0xfddc
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x5747(%rip), %rdi      # 0x10501
movb $0x0, %al
callq 0x3170
jmp 0xae35
leaq 0x574e(%rip), %rdi      # 0x10518
movb $0x0, %al
callq 0x3170
jmp 0xae35
leaq 0x575d(%rip), %rdi      # 0x10537
movb $0x0, %al
callq 0x3170
jmp 0xae35
leaq 0x577b(%rip), %rdi      # 0x10565
movb $0x0, %al
callq 0x3170
jmp 0xae35
leaq 0x5798(%rip), %rdi      # 0x10592
movb $0x0, %al
callq 0x3170
jmp 0xae35
leaq 0x57c8(%rip), %rdi      # 0x105d2
movb $0x0, %al
callq 0x3170
jmp 0xae35
leaq 0x57fa(%rip), %rdi      # 0x10614
movb $0x0, %al
callq 0x3170
jmp 0xae35
leaq 0x5808(%rip), %rdi      # 0x10632
movb $0x0, %al
callq 0x3170
jmp 0xae35
jmp 0xae35
jmp 0xae37
leaq 0xa67a(%rip), %rax      # 0x154b8
movl 0x10a4(%rax), %eax
movl %eax, -0x34(%rbp)
testl %eax, %eax
je 0xae61
jmp 0xae4d
movl -0x34(%rbp), %eax
subl $0x1, %eax
je 0xae63
jmp 0xae57
movl -0x34(%rbp), %eax
subl $0x2, %eax
je 0xae73
jmp 0xae81
jmp 0xae81
leaq 0x57e7(%rip), %rdi      # 0x10651
movb $0x0, %al
callq 0x3170
jmp 0xae81
leaq 0x57ee(%rip), %rdi      # 0x10668
movb $0x0, %al
callq 0x3170
leaq 0xa630(%rip), %rax      # 0x154b8
cmpl $0x0, 0x10b0(%rax)
je 0xaf06
leaq 0x57f0(%rip), %rdi      # 0x10688
xorl %eax, %eax
callq 0x3170
leaq 0xa612(%rip), %rax      # 0x154b8
movl 0x10b0(%rax), %eax
movl %eax, -0x38(%rbp)
subl $0x1, %eax
je 0xaeca
jmp 0xaeb6
movl -0x38(%rbp), %eax
subl $0x2, %eax
je 0xaeda
jmp 0xaec0
movl -0x38(%rbp), %eax
subl $0x3, %eax
je 0xaeea
jmp 0xaef8
leaq 0x57c7(%rip), %rdi      # 0x10698
movb $0x0, %al
callq 0x3170
jmp 0xaef8
leaq 0x57bd(%rip), %rdi      # 0x1069e
movb $0x0, %al
callq 0x3170
jmp 0xaef8
leaq 0x57b3(%rip), %rdi      # 0x106a4
movb $0x0, %al
callq 0x3170
leaq 0x32bc(%rip), %rdi      # 0xe1bb
movb $0x0, %al
callq 0x3170
addq $0x40, %rsp
popq %rbp
retq
nopl (%rax)