// File: /workspace/github_c_makefile_star2_O0/hfiguiere[P]exifprobe/maker_canon.c
// Function: canon_customfunctions20D
unsigned long
canon_customfunctions20D(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,cfn,cfv;
    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 = 0; i < count; ++i)
        {
            value = read_ushort(inptr,byteorder,offset);
            print_tag_address(ENTRY,offset,indent,"@");
            if((PRINT_TAGINFO))
                chpr += printf("%s",tagprefix);
            offset += 2;
            cfn = (value & 0xff00) >> 8;
            cfv = value & 0xff;
            switch(cfn)
            {
                case 0:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"SetButtonFunctionWhenShooting");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("(no function)"); break;
                            case 1: chpr += printf("change quality"); break;
                            case 2: chpr += printf("change parameters"); break;
                            case 3: chpr += printf("menu display"); break;
                            case 4: chpr += printf("image replay"); break;
                            default: printred("undefined"); break;
                        }
                    }
                    print_endvalue();
                    break;
                case 1:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"LongExposureNoiseReduction");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("Off"); break;
                            case 1: chpr += printf("On"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 2:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"FlashSyncSpeedAv");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("Auto"); break;
                            case 1: chpr += printf("1/200 (fixed)"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 3:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"ShutterAElockButtons");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("AF/AE lock"); break;
                            case 1: chpr += printf("AE lock/AF"); break;
                            case 2: chpr += printf("AF/AF lock"); break;
                            case 3: chpr += printf("AE+release/AE+AF"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 4:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"AFAssistLight");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("Emits"); break;
                            case 1: chpr += printf("Does not emit"); break;
                            case 2: chpr += printf("Only ext flash emits"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 5:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"ExposureLevelIncrements");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("1/2 stop"); break;
                            case 1: chpr += printf("1/3 stop"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 6:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"FlashFiring");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("Fires"); break;
                            case 1: chpr += printf("Does not fire"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 7:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"ISOSpeedExpansion");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("Off"); break;
                            case 1: chpr += printf("On"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 8:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"AEBSequence");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("0,-,+/Enabled"); break;
                            case 1: chpr += printf("0,-,+/Disabled"); break;
                            case 2: chpr += printf("-,0,+/Enabled"); break;
                            case 3: chpr += printf("-,0,+/Disabled"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 9:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"SuperimposedDisplay");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("On"); break;
                            case 1: chpr += printf("Off"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 10:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"MenuButtonDisplayPosition");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("Top"); break;
                            case 1: chpr += printf("Previous (volatile)"); break;
                            case 2: chpr += printf("Previous"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 11:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"MirrorLockup");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("Disabled"); break;
                            case 1: chpr += printf("Enabled"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 12:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"AFPointSelectionMethod");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("Normal"); break;
                            case 1: chpr += printf("Multi-controller direct"); break;
                            case 2: chpr += printf("Quick control dial direct"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 13:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"ETTLII");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("Evaluative"); break;
                            case 1: chpr += printf("Average"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 14:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"ShutterCurtainSync");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("1st-curtain sync"); break;
                            case 1: chpr += printf("2nd-curtain sync"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 15:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"SafetyShiftInAvOrTv");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("Disable"); break;
                            case 1: chpr += printf("Enable"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 16:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"LensAFStopButton");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("AF Stop"); break;
                            case 1: chpr += printf("Operate AF"); break;
                            case 2: chpr += printf("Lock AE and start timer"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                case 17:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"AddOriginalDecisionData");
                    if((PRINT_VALUE))
                    {
                        chpr += printf(" = %u",cfv);
                        print_startvalue();
                        switch(cfv)
                        {
                            case 0: chpr += printf("Off"); break;
                            case 1: chpr += printf("On"); break;
                            default: printred("undefined"); break;
                        }
                        print_endvalue();
                    }
                    break;
                default:
                    if((PRINT_TAGINFO))
                        chpr += printf("20D.%02d_%-30.30s",cfn,"undefined");
                    if((PRINT_VALUE))
                        chpr += printf(" = %#x/%u",cfv,cfv);
                    break;
            }
            chpr = newline(chpr);
        }
    }
    setcharsprinted(chpr);
    return(end_offset);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x110, %rsp            # imm = 0x110
movw %si, %ax
movq %rdi, -0x8(%rbp)
movw %ax, -0xa(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movl %r9d, -0x2c(%rbp)
movl $0x0, -0x54(%rbp)
movq -0x20(%rbp), %rax
addq -0x28(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x8(%rbp), %rdi
movw -0xa(%rbp), %ax
movq -0x20(%rbp), %rdx
movzwl %ax, %esi
callq 0x4480
movw %ax, -0x42(%rbp)
leaq 0x20088(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x40000, %rax          # imm = 0x40000
cmpq $0x0, %rax
je 0x5716a
movq -0x28(%rbp), %rsi
leaq 0x13ba7(%rip), %rdi     # 0x6acb9
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
movzwl -0x42(%rbp), %eax
cmpq -0x28(%rbp), %rax
je 0x57168
movl -0x54(%rbp), %edi
callq 0x1ef50
movl %eax, -0x54(%rbp)
movq -0x20(%rbp), %rsi
movl -0x2c(%rbp), %edx
movl $0x40000, %edi          # imm = 0x40000
leaq 0xcf95(%rip), %rcx      # 0x640dc
callq 0x5ed0
movzwl -0x42(%rbp), %esi
movq -0x28(%rbp), %rdx
leaq 0x18412(%rip), %rdi     # 0x6f56d
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x5716a
movl -0x54(%rbp), %edi
callq 0x1ef50
movl %eax, -0x54(%rbp)
leaq 0x20004(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x4003333, %rax        # imm = 0x4003333
cmpq $0x0, %rax
je 0x58329
movq -0x20(%rbp), %rax
addq $0x2, %rax
movq %rax, -0x20(%rbp)
movq -0x28(%rbp), %rax
shrq %rax
subq $0x1, %rax
movq %rax, -0x38(%rbp)
movl $0x0, -0x48(%rbp)
movslq -0x48(%rbp), %rax
cmpq -0x38(%rbp), %rax
jae 0x58327
movq -0x8(%rbp), %rdi
movw -0xa(%rbp), %ax
movq -0x20(%rbp), %rdx
movzwl %ax, %esi
callq 0x4480
movw %ax, -0x44(%rbp)
movq -0x20(%rbp), %rsi
movl -0x2c(%rbp), %edx
movl $0x4003333, %edi        # imm = 0x4003333
leaq 0xcef2(%rip), %rcx      # 0x640dc
callq 0x5ed0
leaq 0x1ff8a(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x5721d
movq -0x18(%rbp), %rsi
leaq 0xce87(%rip), %rdi      # 0x64097
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
movq -0x20(%rbp), %rax
addq $0x2, %rax
movq %rax, -0x20(%rbp)
movzbl -0x43(%rbp), %eax
movl %eax, -0x4c(%rbp)
movzbl -0x44(%rbp), %eax
movl %eax, -0x50(%rbp)
movl -0x4c(%rbp), %eax
movq %rax, -0x60(%rbp)
subq $0x11, %rax
ja 0x582aa
movq -0x60(%rbp), %rax
leaq 0x17fe9(%rip), %rcx     # 0x6f23c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x1ff1d(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x57290
movl -0x4c(%rbp), %esi
leaq 0x18da5(%rip), %rdi     # 0x70021
leaq 0x18db0(%rip), %rdx     # 0x70033
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1fee9(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x5736f
movl -0x50(%rbp), %esi
leaq 0x1037a(%rip), %rdi     # 0x6762c
xorl %eax, %eax
movb %al, -0x69(%rbp)
callq 0x3110
movl %eax, %edx
movb -0x69(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movq %rax, -0x68(%rbp)
subq $0x4, %rax
ja 0x57361
movq -0x68(%rbp), %rax
leaq 0x17fba(%rip), %rcx     # 0x6f2a4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x18d57(%rip), %rdi     # 0x70051
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x5736d
leaq 0x18d4f(%rip), %rdi     # 0x7005f
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x5736d
leaq 0x18d48(%rip), %rdi     # 0x7006e
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x5736d
leaq 0x18d44(%rip), %rdi     # 0x70080
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x5736d
leaq 0x18d3b(%rip), %rdi     # 0x7008d
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x5736d
leaq 0x142a3(%rip), %rdi     # 0x6b60b
callq 0x6860
jmp 0x5736f
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1fdfe(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x573af
movl -0x4c(%rbp), %esi
leaq 0x18c86(%rip), %rdi     # 0x70021
leaq 0x18757(%rip), %rdx     # 0x6faf9
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1fdca(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x5743e
movl -0x50(%rbp), %esi
leaq 0x1025f(%rip), %rdi     # 0x6762c
xorl %eax, %eax
movb %al, -0x71(%rbp)
callq 0x3110
movl %eax, %edx
movb -0x71(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0x70(%rbp)
testl %eax, %eax
je 0x573ff
jmp 0x573f5
movl -0x70(%rbp), %eax
subl $0x1, %eax
je 0x57415
jmp 0x5742b
leaq 0x162e0(%rip), %rdi     # 0x6d6e6
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57437
leaq 0x162d1(%rip), %rdi     # 0x6d6ed
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57437
leaq 0x141d9(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1fd36(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x57477
movl -0x4c(%rbp), %esi
leaq 0x18bbe(%rip), %rdi     # 0x70021
leaq 0x1874f(%rip), %rdx     # 0x6fbb9
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1fd02(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x57506
movl -0x50(%rbp), %esi
leaq 0x10197(%rip), %rdi     # 0x6762c
xorl %eax, %eax
movb %al, -0x79(%rbp)
callq 0x3110
movl %eax, %edx
movb -0x79(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0x78(%rbp)
testl %eax, %eax
je 0x574c7
jmp 0x574bd
movl -0x78(%rbp), %eax
subl $0x1, %eax
je 0x574dd
jmp 0x574f3
leaq 0x168ec(%rip), %rdi     # 0x6ddba
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x574ff
leaq 0x18919(%rip), %rdi     # 0x6fdfd
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x574ff
leaq 0x14111(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1fc6e(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x5753f
movl -0x4c(%rbp), %esi
leaq 0x18af6(%rip), %rdi     # 0x70021
leaq 0x185f4(%rip), %rdx     # 0x6fb26
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1fc3a(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x57615
movl -0x50(%rbp), %esi
leaq 0x100cb(%rip), %rdi     # 0x6762c
xorl %eax, %eax
movb %al, -0x89(%rbp)
callq 0x3110
movl %eax, %edx
movb -0x89(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movq %rax, -0x88(%rbp)
subq $0x3, %rax
ja 0x57602
movq -0x88(%rbp), %rax
leaq 0x17cf3(%rip), %rcx     # 0x6f294
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x1858a(%rip), %rdi     # 0x6fb3b
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x5760e
leaq 0x1857f(%rip), %rdi     # 0x6fb46
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x5760e
leaq 0x18574(%rip), %rdi     # 0x6fb51
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x5760e
leaq 0x18569(%rip), %rdi     # 0x6fb5c
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x5760e
leaq 0x14002(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1fb5f(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x5764e
movl -0x4c(%rbp), %esi
leaq 0x189e7(%rip), %rdi     # 0x70021
leaq 0x18560(%rip), %rdx     # 0x6fba1
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1fb2b(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x57710
movl -0x50(%rbp), %esi
leaq 0xffbc(%rip), %rdi      # 0x6762c
xorl %eax, %eax
movb %al, -0x91(%rbp)
callq 0x3110
movl %eax, %edx
movb -0x91(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0x90(%rbp)
testl %eax, %eax
je 0x576bb
jmp 0x576a1
movl -0x90(%rbp), %eax
subl $0x1, %eax
je 0x576d1
jmp 0x576ae
movl -0x90(%rbp), %eax
subl $0x2, %eax
je 0x576e7
jmp 0x576fd
leaq 0x189d8(%rip), %rdi     # 0x7009a
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57709
leaq 0x189c8(%rip), %rdi     # 0x700a0
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57709
leaq 0x189c0(%rip), %rdi     # 0x700ae
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57709
leaq 0x13f07(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1fa64(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x57749
movl -0x4c(%rbp), %esi
leaq 0x188ec(%rip), %rdi     # 0x70021
leaq 0x18724(%rip), %rdx     # 0x6fe60
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1fa30(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x577e8
movl -0x50(%rbp), %esi
leaq 0xfec1(%rip), %rdi      # 0x6762c
xorl %eax, %eax
movb %al, -0x99(%rbp)
callq 0x3110
movl %eax, %edx
movb -0x99(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0x98(%rbp)
testl %eax, %eax
je 0x577a9
jmp 0x5779c
movl -0x98(%rbp), %eax
subl $0x1, %eax
je 0x577bf
jmp 0x577d5
leaq 0x183df(%rip), %rdi     # 0x6fb8f
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x577e1
leaq 0x183d2(%rip), %rdi     # 0x6fb98
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x577e1
leaq 0x13e2f(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1f98c(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x57821
movl -0x4c(%rbp), %esi
leaq 0x18814(%rip), %rdi     # 0x70021
leaq 0x188af(%rip), %rdx     # 0x700c3
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1f958(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x578c0
movl -0x50(%rbp), %esi
leaq 0xfde9(%rip), %rdi      # 0x6762c
xorl %eax, %eax
movb %al, -0xa1(%rbp)
callq 0x3110
movl %eax, %edx
movb -0xa1(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0xa0(%rbp)
testl %eax, %eax
je 0x57881
jmp 0x57874
movl -0xa0(%rbp), %eax
subl $0x1, %eax
je 0x57897
jmp 0x578ad
leaq 0x1858f(%rip), %rdi     # 0x6fe17
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x578b9
leaq 0x185b4(%rip), %rdi     # 0x6fe52
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x578b9
leaq 0x13d57(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1f8b4(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x578f9
movl -0x4c(%rbp), %esi
leaq 0x1873c(%rip), %rdi     # 0x70021
leaq 0x187e3(%rip), %rdx     # 0x700cf
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1f880(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x57998
movl -0x50(%rbp), %esi
leaq 0xfd11(%rip), %rdi      # 0x6762c
xorl %eax, %eax
movb %al, -0xa9(%rbp)
callq 0x3110
movl %eax, %edx
movb -0xa9(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0xa8(%rbp)
testl %eax, %eax
je 0x57959
jmp 0x5794c
movl -0xa8(%rbp), %eax
subl $0x1, %eax
je 0x5796f
jmp 0x57985
leaq 0x15d86(%rip), %rdi     # 0x6d6e6
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57991
leaq 0x15d77(%rip), %rdi     # 0x6d6ed
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57991
leaq 0x13c7f(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1f7dc(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x579d1
movl -0x4c(%rbp), %esi
leaq 0x18664(%rip), %rdi     # 0x70021
leaq 0x18563(%rip), %rdx     # 0x6ff27
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1f7a8(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x57aa7
movl -0x50(%rbp), %esi
leaq 0xfc39(%rip), %rdi      # 0x6762c
xorl %eax, %eax
movb %al, -0xb9(%rbp)
callq 0x3110
movl %eax, %edx
movb -0xb9(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movq %rax, -0xb8(%rbp)
subq $0x3, %rax
ja 0x57a94
movq -0xb8(%rbp), %rax
leaq 0x17851(%rip), %rcx     # 0x6f284
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x181b3(%rip), %rdi     # 0x6fbf6
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57aa0
leaq 0x181ab(%rip), %rdi     # 0x6fc04
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57aa0
leaq 0x181a4(%rip), %rdi     # 0x6fc13
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57aa0
leaq 0x1819c(%rip), %rdi     # 0x6fc21
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57aa0
leaq 0x13b70(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1f6cd(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x57ae0
movl -0x4c(%rbp), %esi
leaq 0x18555(%rip), %rdi     # 0x70021
leaq 0x18460(%rip), %rdx     # 0x6ff33
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1f699(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x57b7f
movl -0x50(%rbp), %esi
leaq 0xfb2a(%rip), %rdi      # 0x6762c
xorl %eax, %eax
movb %al, -0xc1(%rbp)
callq 0x3110
movl %eax, %edx
movb -0xc1(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0xc0(%rbp)
testl %eax, %eax
je 0x57b40
jmp 0x57b33
movl -0xc0(%rbp), %eax
subl $0x1, %eax
je 0x57b56
jmp 0x57b6c
leaq 0x15ba6(%rip), %rdi     # 0x6d6ed
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57b78
leaq 0x15b89(%rip), %rdi     # 0x6d6e6
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57b78
leaq 0x13a98(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1f5f5(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x57bb8
movl -0x4c(%rbp), %esi
leaq 0x1847d(%rip), %rdi     # 0x70021
leaq 0x1839c(%rip), %rdx     # 0x6ff47
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1f5c1(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x57c7a
movl -0x50(%rbp), %esi
leaq 0xfa52(%rip), %rdi      # 0x6762c
xorl %eax, %eax
movb %al, -0xc9(%rbp)
callq 0x3110
movl %eax, %edx
movb -0xc9(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0xc8(%rbp)
testl %eax, %eax
je 0x57c25
jmp 0x57c0b
movl -0xc8(%rbp), %eax
subl $0x1, %eax
je 0x57c3b
jmp 0x57c18
movl -0xc8(%rbp), %eax
subl $0x2, %eax
je 0x57c51
jmp 0x57c67
leaq 0x15280(%rip), %rdi     # 0x6ceac
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57c73
leaq 0x18099(%rip), %rdi     # 0x6fcdb
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57c73
leaq 0x18097(%rip), %rdi     # 0x6fcef
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57c73
leaq 0x1399d(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1f4fa(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x57cb3
movl -0x4c(%rbp), %esi
leaq 0x18382(%rip), %rdi     # 0x70021
leaq 0x17ec7(%rip), %rdx     # 0x6fb6d
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1f4c6(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x57d52
movl -0x50(%rbp), %esi
leaq 0xf957(%rip), %rdi      # 0x6762c
xorl %eax, %eax
movb %al, -0xd1(%rbp)
callq 0x3110
movl %eax, %edx
movb -0xd1(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0xd0(%rbp)
testl %eax, %eax
je 0x57d13
jmp 0x57d06
movl -0xd0(%rbp), %eax
subl $0x1, %eax
je 0x57d29
jmp 0x57d3f
leaq 0x17ef0(%rip), %rdi     # 0x6fc0a
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57d4b
leaq 0x17ecc(%rip), %rdi     # 0x6fbfc
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57d4b
leaq 0x138c5(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1f422(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x57d8b
movl -0x4c(%rbp), %esi
leaq 0x182aa(%rip), %rdi     # 0x70021
leaq 0x18363(%rip), %rdx     # 0x700e1
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1f3ee(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x57e4d
movl -0x50(%rbp), %esi
leaq 0xf87f(%rip), %rdi      # 0x6762c
xorl %eax, %eax
movb %al, -0xd9(%rbp)
callq 0x3110
movl %eax, %edx
movb -0xd9(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0xd8(%rbp)
testl %eax, %eax
je 0x57df8
jmp 0x57dde
movl -0xd8(%rbp), %eax
subl $0x1, %eax
je 0x57e0e
jmp 0x57deb
movl -0xd8(%rbp), %eax
subl $0x2, %eax
je 0x57e24
jmp 0x57e3a
leaq 0x15bea(%rip), %rdi     # 0x6d9e9
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57e46
leaq 0x182e3(%rip), %rdi     # 0x700f8
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57e46
leaq 0x182e5(%rip), %rdi     # 0x70110
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57e46
leaq 0x137ca(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1f327(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x57e86
movl -0x4c(%rbp), %esi
leaq 0x181af(%rip), %rdi     # 0x70021
leaq 0x182b1(%rip), %rdx     # 0x7012a
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1f2f3(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x57f25
movl -0x50(%rbp), %esi
leaq 0xf784(%rip), %rdi      # 0x6762c
xorl %eax, %eax
movb %al, -0xe1(%rbp)
callq 0x3110
movl %eax, %edx
movb -0xe1(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0xe0(%rbp)
testl %eax, %eax
je 0x57ee6
jmp 0x57ed9
movl -0xe0(%rbp), %eax
subl $0x1, %eax
je 0x57efc
jmp 0x57f12
leaq 0x17843(%rip), %rdi     # 0x6f730
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57f1e
leaq 0x1097f(%rip), %rdi     # 0x68882
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57f1e
leaq 0x136f2(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1f24f(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x57f5e
movl -0x4c(%rbp), %esi
leaq 0x180d7(%rip), %rdi     # 0x70021
leaq 0x17cdf(%rip), %rdx     # 0x6fc30
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1f21b(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x57ffd
movl -0x50(%rbp), %esi
leaq 0xf6ac(%rip), %rdi      # 0x6762c
xorl %eax, %eax
movb %al, -0xe9(%rbp)
callq 0x3110
movl %eax, %edx
movb -0xe9(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0xe8(%rbp)
testl %eax, %eax
je 0x57fbe
jmp 0x57fb1
movl -0xe8(%rbp), %eax
subl $0x1, %eax
je 0x57fd4
jmp 0x57fea
leaq 0x18017(%rip), %rdi     # 0x6ffdc
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57ff6
leaq 0x17c79(%rip), %rdi     # 0x6fc54
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x57ff6
leaq 0x1361a(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1f177(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x58036
movl -0x4c(%rbp), %esi
leaq 0x17fff(%rip), %rdi     # 0x70021
leaq 0x17fc4(%rip), %rdx     # 0x6ffed
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1f143(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x580d5
movl -0x50(%rbp), %esi
leaq 0xf5d4(%rip), %rdi      # 0x6762c
xorl %eax, %eax
movb %al, -0xf1(%rbp)
callq 0x3110
movl %eax, %edx
movb -0xf1(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0xf0(%rbp)
testl %eax, %eax
je 0x58096
jmp 0x58089
movl -0xf0(%rbp), %eax
subl $0x1, %eax
je 0x580ac
jmp 0x580c2
leaq 0x17f64(%rip), %rdi     # 0x70001
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x580ce
leaq 0x17f56(%rip), %rdi     # 0x70009
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x580ce
leaq 0x13542(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1f09f(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x5810e
movl -0x4c(%rbp), %esi
leaq 0x17f27(%rip), %rdi     # 0x70021
leaq 0x17f0f(%rip), %rdx     # 0x70010
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1f06b(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x581d0
movl -0x50(%rbp), %esi
leaq 0xf4fc(%rip), %rdi      # 0x6762c
xorl %eax, %eax
movb %al, -0xf9(%rbp)
callq 0x3110
movl %eax, %edx
movb -0xf9(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0xf8(%rbp)
testl %eax, %eax
je 0x5817b
jmp 0x58161
movl -0xf8(%rbp), %eax
subl $0x1, %eax
je 0x58191
jmp 0x5816e
movl -0xf8(%rbp), %eax
subl $0x2, %eax
je 0x581a7
jmp 0x581bd
leaq 0x17afc(%rip), %rdi     # 0x6fc7e
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x581c9
leaq 0x17aee(%rip), %rdi     # 0x6fc86
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x581c9
leaq 0x17ae3(%rip), %rdi     # 0x6fc91
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x581c9
leaq 0x13447(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1efa4(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x58209
movl -0x4c(%rbp), %esi
leaq 0x17e2c(%rip), %rdi     # 0x70021
leaq 0x17f35(%rip), %rdx     # 0x70131
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1ef70(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x582a8
movl -0x50(%rbp), %esi
leaq 0xf401(%rip), %rdi      # 0x6762c
xorl %eax, %eax
movb %al, -0x101(%rbp)
callq 0x3110
movl %eax, %edx
movb -0x101(%rbp), %al
movl -0x54(%rbp), %ecx
addl %edx, %ecx
movl %ecx, -0x54(%rbp)
callq 0xb9a0
movl -0x50(%rbp), %eax
movl %eax, -0x100(%rbp)
testl %eax, %eax
je 0x58269
jmp 0x5825c
movl -0x100(%rbp), %eax
subl $0x1, %eax
je 0x5827f
jmp 0x58295
leaq 0x15476(%rip), %rdi     # 0x6d6e6
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x582a1
leaq 0x15467(%rip), %rdi     # 0x6d6ed
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x582a1
leaq 0x1336f(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x5830e
leaq 0x1eecf(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x3003, %rax           # imm = 0x3003
cmpq $0x0, %rax
je 0x582de
movl -0x4c(%rbp), %esi
leaq 0x17d57(%rip), %rdi     # 0x70021
leaq 0x1333a(%rip), %rdx     # 0x6b60b
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
leaq 0x1ee9b(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x5830c
movl -0x50(%rbp), %esi
movl -0x50(%rbp), %edx
leaq 0x177cc(%rip), %rdi     # 0x6facb
movb $0x0, %al
callq 0x3110
addl -0x54(%rbp), %eax
movl %eax, -0x54(%rbp)
jmp 0x5830e
movl -0x54(%rbp), %edi
callq 0x1ef50
movl %eax, -0x54(%rbp)
movl -0x48(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x48(%rbp)
jmp 0x571b1
jmp 0x58329
movl -0x54(%rbp), %edi
callq 0x1ff00
movq -0x40(%rbp), %rax
addq $0x110, %rsp            # imm = 0x110
popq %rbp
retq
nop