// File: /workspace/github_c_makefile_star2_O2/hfiguiere[P]exifprobe/mrw.c
// Function: process_wbg
unsigned long
process_wbg(FILE *inptr,unsigned long offset,unsigned long blocklength,
            struct image_summary *summary_entry,int indent)
{
    unsigned short wbr_denom,wbg1_denom,wbg2_denom,wbb_denom;
    unsigned short wbr_num,wbg1_num,wbg2_num,wbb_num;
    double wbr,wbg1,wbg2,wbb;
    int chpr = 0;

    blocklength += offset;

    chpr = newline(chpr);
    wbr_denom = read_ubyte(inptr,offset);
    if((PRINT_ENTRY))
    {
        print_tag_address(ENTRY,offset,indent + 4,"@");
        if((PRINT_TAGINFO))
        {
            if((PRINT_LONGNAMES))
                chpr += printf("%s","MRW.WBG.");
            chpr += printf("%-*.*s",SHORTNAMEWIDTH,SHORTNAMEWIDTH,"WbrDenominator");
        }
        if((PRINT_VALUE))
            chpr += printf(" = %u",wbr_denom);
        switch(wbr_denom)
        {
            case 0: wbr_denom = 64; break;
            case 1: wbr_denom = 128; break;
            case 2: wbr_denom = 256; break;
            case 3: wbr_denom = 512; break;
            case 4: wbr_denom = 1024; break;
            default: break;
        }
        if((PRINT_VALUE))
            chpr += printf(" = %u",wbr_denom);

        chpr = newline(chpr);
    }
    offset++;
    wbg1_denom = read_ubyte(inptr,offset);
    if((PRINT_ENTRY))
    {
        print_tag_address(ENTRY,offset,indent + 4,"@");
        if((PRINT_TAGINFO))
        {
            if((PRINT_LONGNAMES))
                chpr += printf("%s","MRW.WBG.");
            chpr += printf("%-*.*s",SHORTNAMEWIDTH,SHORTNAMEWIDTH,"Wbg1Denominator");
        }
        if((PRINT_VALUE))
            chpr += printf(" = %u",wbg1_denom);
        switch(wbg1_denom)
        {
            case 0: wbg1_denom = 64; break;
            case 1: wbg1_denom = 128; break;
            case 2: wbg1_denom = 256; break;
            case 3: wbg1_denom = 512; break;
            case 4: wbg1_denom = 1024; break;
            default: break;
        }
        if((PRINT_VALUE))
            chpr += printf(" = %u",wbg1_denom);

        chpr = newline(chpr);
    }
    offset++;
    wbg2_denom = read_ubyte(inptr,offset);
    if((PRINT_ENTRY))
    {
        print_tag_address(ENTRY,offset,indent + 4,"@");
        if((PRINT_TAGINFO))
        {
            if((PRINT_LONGNAMES))
                chpr += printf("%s","MRW.WBG.");
            chpr += printf("%-*.*s",SHORTNAMEWIDTH,SHORTNAMEWIDTH,"Wbg2Denominator");
        }
        if((PRINT_VALUE))
            chpr += printf(" = %u",wbg2_denom);
        switch(wbg2_denom)
        {
            case 0: wbg2_denom = 64; break;
            case 1: wbg2_denom = 128; break;
            case 2: wbg2_denom = 256; break;
            case 3: wbg2_denom = 512; break;
            case 4: wbg2_denom = 1024; break;
            default: break;
        }
        if((PRINT_VALUE))
            chpr += printf(" = %u",wbg2_denom);

        chpr = newline(chpr);
    }
    offset++;
    wbb_denom = read_ubyte(inptr,offset);
    if((PRINT_ENTRY))
    {
        print_tag_address(ENTRY,offset,indent + 4,"@");
        if((PRINT_TAGINFO))
        {
            if((PRINT_LONGNAMES))
                chpr += printf("%s","MRW.WBG.");
            chpr += printf("%-*.*s",SHORTNAMEWIDTH,SHORTNAMEWIDTH,"WbbDenominator");
        }
        if((PRINT_VALUE))
            chpr += printf(" = %u",wbb_denom);
        switch(wbb_denom)
        {
            case 0: wbb_denom = 64; break;
            case 1: wbb_denom = 128; break;
            case 2: wbb_denom = 256; break;
            case 3: wbb_denom = 512; break;
            case 4: wbb_denom = 1024; break;
            default: break;
        }
        if((PRINT_VALUE))
            chpr += printf(" = %u",wbb_denom);

        chpr = newline(chpr);
    }
    offset++;
    wbr_num = read_ushort(inptr,TIFF_MOTOROLA,offset);
    if((PRINT_ENTRY))
    {
        print_tag_address(ENTRY,offset,indent + 4,"@");
        if((PRINT_TAGINFO))
        {
            if((PRINT_LONGNAMES))
                chpr += printf("%s","MRW.WBG.");
            chpr += printf("%-*.*s",SHORTNAMEWIDTH,SHORTNAMEWIDTH,"WbrNumerator");
        }
        if((PRINT_VALUE))
            chpr += printf(" = %u",wbr_num);

        if((PRINT_SECTION))
        {
            if(wbr_denom)
            {
                wbr = (double)wbr_num / (double)wbr_denom;
                chpr += printf(" => wbr = %.3f",wbr);
            }
            else
                chpr += printf(" => wbr = inf");
        }
        else
        {
            chpr = newline(chpr);
            print_tag_address(ENTRY,HERE,indent + 4,"*");
            if((PRINT_TAGINFO))
            {
                /* pseudo-tag for result whitebalance             */
                if((PRINT_LONGNAMES))
                    chpr += printf("%s","MRW.WBG.");
                chpr += printf("%-*.*s",SHORTNAMEWIDTH,SHORTNAMEWIDTH,"WbRed");
            }
            if((PRINT_VALUE))
            {
                if(wbr_denom)
                {
                    wbr = (double)wbr_num / (double)wbr_denom;
                    chpr += printf(" = %.3f",wbr);
                }
                else
                    chpr += printf(" = inf");
            }
        }

        chpr = newline(chpr);
    }
    offset += 2;
    wbg1_num = read_ushort(inptr,TIFF_MOTOROLA,offset);
    if((PRINT_ENTRY))
    {
        print_tag_address(ENTRY,offset,indent + 4,"@");
        if((PRINT_TAGINFO))
        {
            if((PRINT_LONGNAMES))
                chpr += printf("%s","MRW.WBG.");
            chpr += printf("%-*.*s",SHORTNAMEWIDTH,SHORTNAMEWIDTH,"Wbg1Numerator");
        }
        if((PRINT_VALUE))
            chpr += printf(" = %u",wbg1_num);
        if((PRINT_SECTION))
        {
            if(wbg1_denom)
            {
                wbg1 = (double)wbg1_num / (double)wbg1_denom;
                chpr += printf(" => wbg1 = %.3f",wbg1);
            }
            else
                chpr += printf(" => wbg1 = inf");
        }
        else
        {
            chpr = newline(chpr);
            print_tag_address(ENTRY,HERE,indent + 4,"*");
            if((PRINT_TAGINFO))
            {
                /* pseudo-tag for result whitebalance             */
                if((PRINT_LONGNAMES))
                    chpr += printf("%s","MRW.WBG.");
                chpr += printf("%-*.*s",SHORTNAMEWIDTH,SHORTNAMEWIDTH,"WbGreen1");
            }
            if((PRINT_VALUE))
            {
                if(wbg1_denom)
                {
                    wbg1 = (double)wbg1_num / (double)wbg1_denom;
                    chpr += printf(" = %.3f",wbg1);
                }
                else
                    chpr += printf(" => wbg1 = inf");
            }
        }
        chpr = newline(chpr);
    }
    offset += 2;
    wbg2_num = read_ushort(inptr,TIFF_MOTOROLA,offset);
    if((PRINT_ENTRY))
    {
        print_tag_address(ENTRY,offset,indent + 4,"@");
        if((PRINT_TAGINFO))
        {
            if((PRINT_LONGNAMES))
                chpr += printf("%s","MRW.WBG.");
            chpr += printf("%-*.*s",SHORTNAMEWIDTH,SHORTNAMEWIDTH,"Wbg2Numerator");
        }
        if((PRINT_VALUE))
            chpr += printf(" = %u",wbg2_num);
        if((PRINT_SECTION))
        {
            if(wbg2_denom)
            {
                wbg2 = (double)wbg2_num / (double)wbg2_denom;
                chpr += printf(" => wbg2 = %.3f",wbg2);
            }
            else
                chpr += printf(" => wbg2 = inf");
        }
        else
        {
            chpr = newline(chpr);
            print_tag_address(ENTRY,HERE,indent + 4,"*");
            if((PRINT_TAGINFO))
            {
                /* pseudo-tag for result whitebalance             */
                if((PRINT_LONGNAMES))
                    chpr += printf("%s","MRW.WBG.");
                chpr += printf("%-*.*s",SHORTNAMEWIDTH,SHORTNAMEWIDTH,"WbGreen2");
            }
            if((PRINT_VALUE))
            {
                if(wbg2_denom)
                {
                    wbg2 = (double)wbg2_num / (double)wbg2_denom;
                    chpr += printf(" = %.3f",wbg2);
                }
                else
                    chpr += printf(" => wbg2 = inf");
            }
        }
        chpr = newline(chpr);
    }
    offset += 2;
    wbb_num = read_ushort(inptr,TIFF_MOTOROLA,offset);
    if((PRINT_ENTRY))
    {
        print_tag_address(ENTRY,offset,indent + 4,"@");
        if((PRINT_TAGINFO))
        {
            if((PRINT_LONGNAMES))
                chpr += printf("%s","MRW.WBG.");
            chpr += printf("%-*.*s",SHORTNAMEWIDTH,SHORTNAMEWIDTH,"WbbNumerator");
        }
        if((PRINT_VALUE))
            chpr += printf(" = %u",wbb_num);
        if((PRINT_SECTION))
        {
            if(wbb_denom)
            {
                wbb = (double)wbb_num / (double)wbb_denom;
                chpr += printf(" => wbb = %.3f",wbb);
            }
            else
                chpr += printf(" => wbb = inf");
        }
        else
        {
            chpr = newline(chpr);
            print_tag_address(ENTRY,HERE,indent + 4,"*");
            if((PRINT_TAGINFO))
            {
                /* pseudo-tag for result whitebalance             */
                if((PRINT_LONGNAMES))
                    chpr += printf("%s","MRW.WBG.");
                chpr += printf("%-*.*s",SHORTNAMEWIDTH,SHORTNAMEWIDTH,"WbBlue");
            }
            if((PRINT_VALUE))
            {
                if(wbb_denom)
                {
                    wbb = (double)wbb_num / (double)wbb_denom;
                    chpr += printf(" = %.3f",wbb);
                }
                else
                    chpr += printf(" => wbb = inf");
            }
        }
        chpr = newline(chpr);
    }
    offset += 2;
    return(offset);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movl %r8d, %r13d
movq %rsi, %rbx
movq %rdi, %r14
xorl %edi, %edi
callq 0x160f7
movl %eax, %ebp
movq %r14, 0x10(%rsp)
movq %r14, %rdi
movq %rbx, %rsi
callq 0x48de
movl %eax, %r12d
leaq 0x31fc8(%rip), %r15     # 0x57180
testl $0x4003333, (%r15)      # imm = 0x4003333
je 0x25279
leal 0x4(%r13), %edx
leaq 0x19f0c(%rip), %rcx     # 0x3f0dc
movl $0x4003333, %edi        # imm = 0x4003333
movq %rbx, %rsi
callq 0x5100
movq (%r15), %rax
testw $0x3003, %ax            # imm = 0x3003
je 0x25220
testb $0x40, %al
je 0x25201
leaq 0x19ea6(%rip), %rdi     # 0x3f097
leaq 0x22299(%rip), %rsi     # 0x47491
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
leaq 0x218d9(%rip), %rdi     # 0x46ae1
leaq 0x2228b(%rip), %rcx     # 0x4749a
pushq $0x14
popq %rdx
movl %edx, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movq (%r15), %rax
movzwl %r12w, %r14d
testb $0x30, %al
je 0x2523b
leaq 0x1dd2b(%rip), %rdi     # 0x42f5a
movl %r14d, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
cmpw $0x4, %r12w
ja 0x2524e
leaq 0x223c5(%rip), %rax     # 0x4760e
movzwl (%rax,%r14,2), %r12d
testb $0x30, (%r15)
je 0x25268
movzwl %r12w, %esi
leaq 0x1dcfb(%rip), %rdi     # 0x42f5a
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movw %r12w, 0x2(%rsp)
movl %ebp, %edi
callq 0x160f7
movl %eax, %ebp
jmp 0x2527f
movw %r12w, 0x2(%rsp)
leaq 0x1(%rbx), %r14
movq 0x10(%rsp), %rdi
movq %r14, %rsi
callq 0x48de
movl %eax, %r12d
testl $0x4003333, (%r15)      # imm = 0x4003333
je 0x25354
leal 0x4(%r13), %edx
leaq 0x19e31(%rip), %rcx     # 0x3f0dc
movl $0x4003333, %edi        # imm = 0x4003333
movq %r14, %rsi
callq 0x5100
movq (%r15), %rax
testw $0x3003, %ax            # imm = 0x3003
je 0x252fb
testb $0x40, %al
je 0x252dc
leaq 0x19dcb(%rip), %rdi     # 0x3f097
leaq 0x221be(%rip), %rsi     # 0x47491
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
leaq 0x217fe(%rip), %rdi     # 0x46ae1
leaq 0x221bf(%rip), %rcx     # 0x474a9
pushq $0x14
popq %rdx
movl %edx, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movq (%r15), %rax
movzwl %r12w, %r14d
testb $0x30, %al
je 0x25316
leaq 0x1dc50(%rip), %rdi     # 0x42f5a
movl %r14d, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
cmpw $0x4, %r12w
ja 0x25329
leaq 0x222ea(%rip), %rax     # 0x4760e
movzwl (%rax,%r14,2), %r12d
testb $0x30, (%r15)
je 0x25343
movzwl %r12w, %esi
leaq 0x1dc20(%rip), %rdi     # 0x42f5a
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movw %r12w, 0x4(%rsp)
movl %ebp, %edi
callq 0x160f7
movl %eax, %ebp
jmp 0x2535a
movw %r12w, 0x4(%rsp)
leaq 0x2(%rbx), %r14
movq 0x10(%rsp), %rdi
movq %r14, %rsi
callq 0x48de
movl %eax, %r12d
testl $0x4003333, (%r15)      # imm = 0x4003333
je 0x2542f
leal 0x4(%r13), %edx
leaq 0x19d56(%rip), %rcx     # 0x3f0dc
movl $0x4003333, %edi        # imm = 0x4003333
movq %r14, %rsi
callq 0x5100
movq (%r15), %rax
testw $0x3003, %ax            # imm = 0x3003
je 0x253d6
testb $0x40, %al
je 0x253b7
leaq 0x19cf0(%rip), %rdi     # 0x3f097
leaq 0x220e3(%rip), %rsi     # 0x47491
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
leaq 0x21723(%rip), %rdi     # 0x46ae1
leaq 0x220f4(%rip), %rcx     # 0x474b9
pushq $0x14
popq %rdx
movl %edx, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movq (%r15), %rax
movzwl %r12w, %r14d
testb $0x30, %al
je 0x253f1
leaq 0x1db75(%rip), %rdi     # 0x42f5a
movl %r14d, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
cmpw $0x4, %r12w
ja 0x25404
leaq 0x2220f(%rip), %rax     # 0x4760e
movzwl (%rax,%r14,2), %r12d
testb $0x30, (%r15)
je 0x2541e
movzwl %r12w, %esi
leaq 0x1db45(%rip), %rdi     # 0x42f5a
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movw %r12w, 0x6(%rsp)
movl %ebp, %edi
callq 0x160f7
movl %eax, %ebp
jmp 0x25435
movw %r12w, 0x6(%rsp)
leaq 0x3(%rbx), %r14
movq 0x10(%rsp), %rdi
movq %r14, %rsi
callq 0x48de
movl %eax, %r12d
testl $0x4003333, (%r15)      # imm = 0x4003333
je 0x25509
leal 0x4(%r13), %edx
leaq 0x19c7b(%rip), %rcx     # 0x3f0dc
movl $0x4003333, %edi        # imm = 0x4003333
movq %r14, %rsi
callq 0x5100
movq (%r15), %rax
testw $0x3003, %ax            # imm = 0x3003
je 0x254b1
testb $0x40, %al
je 0x25492
leaq 0x19c15(%rip), %rdi     # 0x3f097
leaq 0x22008(%rip), %rsi     # 0x47491
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
leaq 0x21648(%rip), %rdi     # 0x46ae1
leaq 0x22029(%rip), %rcx     # 0x474c9
pushq $0x14
popq %rdx
movl %edx, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movq (%r15), %rax
movzwl %r12w, %r14d
testb $0x30, %al
je 0x254cc
leaq 0x1da9a(%rip), %rdi     # 0x42f5a
movl %r14d, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
cmpw $0x4, %r12w
ja 0x254df
leaq 0x22134(%rip), %rax     # 0x4760e
movzwl (%rax,%r14,2), %r12d
testb $0x30, (%r15)
je 0x254f9
movzwl %r12w, %esi
leaq 0x1da6a(%rip), %rdi     # 0x42f5a
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movw %r12w, (%rsp)
movl %ebp, %edi
callq 0x160f7
movl %eax, %ebp
jmp 0x2550e
movw %r12w, (%rsp)
leaq 0x4(%rbx), %r12
movq 0x10(%rsp), %rdi
movl $0x4d4d, %esi           # imm = 0x4D4D
movq %r12, %rdx
callq 0x416a
testl $0x4003333, (%r15)      # imm = 0x4003333
movq %r13, 0x8(%rsp)
je 0x256d7
movl %eax, %r14d
addl $0x4, %r13d
leaq 0x19b98(%rip), %rcx     # 0x3f0dc
movl $0x4003333, %edi        # imm = 0x4003333
movq %r12, %rsi
movl %r13d, %edx
callq 0x5100
movq (%r15), %rax
testw $0x3003, %ax            # imm = 0x3003
je 0x2559f
testb $0x40, %al
movzwl 0x2(%rsp), %r12d
je 0x2557e
leaq 0x19b29(%rip), %rdi     # 0x3f097
leaq 0x21f1c(%rip), %rsi     # 0x47491
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
leaq 0x2155c(%rip), %rdi     # 0x46ae1
leaq 0x21f4c(%rip), %rcx     # 0x474d8
pushq $0x14
popq %rdx
movl %edx, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movq (%r15), %rax
jmp 0x255a5
movzwl 0x2(%rsp), %r12d
movzwl %r14w, %r14d
testb $0x30, %al
je 0x255c3
leaq 0x1d9a6(%rip), %rdi     # 0x42f5a
movl %r14d, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movq (%r15), %rax
btl $0x12, %eax
movzwl %r12w, %r15d
jb 0x25676
movl %ebp, %edi
callq 0x160f7
movl %eax, %r12d
leaq 0x1a377(%rip), %rcx     # 0x3f959
movl $0x4003333, %edi        # imm = 0x4003333
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
movl %r13d, %edx
callq 0x5100
leaq 0x31b85(%rip), %rax     # 0x57180
movq (%rax), %rax
testw $0x3003, %ax            # imm = 0x3003
je 0x25647
testb $0x40, %al
je 0x25620
leaq 0x19a88(%rip), %rdi     # 0x3f097
leaq 0x21e7b(%rip), %rsi     # 0x47491
xorl %eax, %eax
callq 0x3120
addl %eax, %r12d
leaq 0x214ba(%rip), %rdi     # 0x46ae1
leaq 0x21ed4(%rip), %rcx     # 0x47502
pushq $0x14
popq %rdx
movl %edx, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %r12d
leaq 0x31b3c(%rip), %rax     # 0x57180
movq (%rax), %rax
movq 0x8(%rsp), %r13
testb $0x30, %al
je 0x256c6
cmpw $0x0, 0x2(%rsp)
je 0x256b5
cvtsi2sd %r14d, %xmm0
cvtsi2sd %r15d, %xmm1
divsd %xmm1, %xmm0
leaq 0x21eb1(%rip), %rdi     # 0x4751e
movb $0x1, %al
callq 0x3120
jmp 0x256c3
testw %r12w, %r12w
je 0x2569a
cvtsi2sd %r14d, %xmm0
cvtsi2sd %r15d, %xmm1
divsd %xmm1, %xmm0
leaq 0x21e54(%rip), %rdi     # 0x474e5
movb $0x1, %al
callq 0x3120
jmp 0x256a8
leaq 0x21e53(%rip), %rdi     # 0x474f4
xorl %eax, %eax
callq 0x3120
movl %eax, %r12d
addl %ebp, %r12d
movq 0x8(%rsp), %r13
jmp 0x256c6
leaq 0x21e72(%rip), %rdi     # 0x4752e
xorl %eax, %eax
callq 0x3120
addl %eax, %r12d
movl %r12d, %edi
callq 0x160f7
movl %eax, %ebp
leaq 0x31aa9(%rip), %r15     # 0x57180
leaq 0x6(%rbx), %r12
movq 0x10(%rsp), %rdi
movl $0x4d4d, %esi           # imm = 0x4D4D
movq %r12, %rdx
callq 0x416a
testl $0x4003333, (%r15)      # imm = 0x4003333
je 0x2589b
movl %eax, %r14d
addl $0x4, %r13d
leaq 0x199d4(%rip), %rcx     # 0x3f0dc
movl $0x4003333, %edi        # imm = 0x4003333
movq %r12, %rsi
movl %r13d, %edx
callq 0x5100
movq (%r15), %rax
testw $0x3003, %ax            # imm = 0x3003
je 0x25763
testb $0x40, %al
movzwl 0x4(%rsp), %r12d
je 0x25742
leaq 0x19965(%rip), %rdi     # 0x3f097
leaq 0x21d58(%rip), %rsi     # 0x47491
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
leaq 0x21398(%rip), %rdi     # 0x46ae1
leaq 0x21db8(%rip), %rcx     # 0x47508
pushq $0x14
popq %rdx
movl %edx, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movq (%r15), %rax
jmp 0x25769
movzwl 0x4(%rsp), %r12d
movzwl %r14w, %r14d
testb $0x30, %al
je 0x25787
leaq 0x1d7e2(%rip), %rdi     # 0x42f5a
movl %r14d, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movq (%r15), %rax
btl $0x12, %eax
movzwl %r12w, %r15d
jb 0x2583a
movl %ebp, %edi
callq 0x160f7
movl %eax, %r12d
leaq 0x1a1b3(%rip), %rcx     # 0x3f959
movl $0x4003333, %edi        # imm = 0x4003333
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
movl %r13d, %edx
callq 0x5100
leaq 0x319c1(%rip), %rax     # 0x57180
movq (%rax), %rax
testw $0x3003, %ax            # imm = 0x3003
je 0x2580b
testb $0x40, %al
je 0x257e4
leaq 0x198c4(%rip), %rdi     # 0x3f097
leaq 0x21cb7(%rip), %rsi     # 0x47491
xorl %eax, %eax
callq 0x3120
addl %eax, %r12d
leaq 0x212f6(%rip), %rdi     # 0x46ae1
leaq 0x21d43(%rip), %rcx     # 0x47535
pushq $0x14
popq %rdx
movl %edx, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %r12d
leaq 0x31978(%rip), %rax     # 0x57180
movq (%rax), %rax
movq 0x8(%rsp), %r13
testb $0x30, %al
je 0x2588a
cmpw $0x0, 0x4(%rsp)
je 0x25879
cvtsi2sd %r14d, %xmm0
cvtsi2sd %r15d, %xmm1
divsd %xmm1, %xmm0
leaq 0x21ced(%rip), %rdi     # 0x4751e
movb $0x1, %al
callq 0x3120
jmp 0x25887
testw %r12w, %r12w
je 0x2585e
cvtsi2sd %r14d, %xmm0
cvtsi2sd %r15d, %xmm1
divsd %xmm1, %xmm0
leaq 0x21cc1(%rip), %rdi     # 0x47516
movb $0x1, %al
callq 0x3120
jmp 0x2586c
leaq 0x21cc1(%rip), %rdi     # 0x47526
xorl %eax, %eax
callq 0x3120
movl %eax, %r12d
addl %ebp, %r12d
movq 0x8(%rsp), %r13
jmp 0x2588a
leaq 0x21ca6(%rip), %rdi     # 0x47526
xorl %eax, %eax
callq 0x3120
addl %eax, %r12d
movl %r12d, %edi
callq 0x160f7
movl %eax, %ebp
leaq 0x318e5(%rip), %r15     # 0x57180
leaq 0x8(%rbx), %r12
movq 0x10(%rsp), %rdi
movl $0x4d4d, %esi           # imm = 0x4D4D
movq %r12, %rdx
callq 0x416a
testl $0x4003333, (%r15)      # imm = 0x4003333
je 0x25a4d
movl %eax, %r14d
addl $0x4, %r13d
leaq 0x19810(%rip), %rcx     # 0x3f0dc
movl $0x4003333, %edi        # imm = 0x4003333
movq %r12, %rsi
movl %r13d, %edx
callq 0x5100
movq (%r15), %rax
testw $0x3003, %ax            # imm = 0x3003
je 0x25927
testb $0x40, %al
movzwl 0x6(%rsp), %r12d
je 0x25906
leaq 0x197a1(%rip), %rdi     # 0x3f097
leaq 0x21b94(%rip), %rsi     # 0x47491
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
leaq 0x211d4(%rip), %rdi     # 0x46ae1
leaq 0x21c2a(%rip), %rcx     # 0x4753e
pushq $0x14
popq %rdx
movl %edx, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movq (%r15), %rax
jmp 0x2592d
movzwl 0x6(%rsp), %r12d
movzwl %r14w, %r14d
testb $0x30, %al
je 0x2594b
leaq 0x1d61e(%rip), %rdi     # 0x42f5a
movl %r14d, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movq (%r15), %rax
btl $0x12, %eax
jb 0x259f0
movl %ebp, %edi
callq 0x160f7
movl %eax, %r12d
leaq 0x19ff3(%rip), %rcx     # 0x3f959
movl $0x4003333, %edi        # imm = 0x4003333
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
movl %r13d, %edx
callq 0x5100
movq (%r15), %rax
testw $0x3003, %ax            # imm = 0x3003
je 0x259bd
testb $0x40, %al
je 0x2599d
leaq 0x1970b(%rip), %rdi     # 0x3f097
leaq 0x21afe(%rip), %rsi     # 0x47491
xorl %eax, %eax
callq 0x3120
addl %eax, %r12d
leaq 0x2113d(%rip), %rdi     # 0x46ae1
leaq 0x21bc0(%rip), %rcx     # 0x4756b
pushq $0x14
popq %rdx
movl %edx, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %r12d
movq (%r15), %rax
movq 0x8(%rsp), %r13
testb $0x30, %al
je 0x25a43
movzwl 0x6(%rsp), %eax
testw %ax, %ax
je 0x25a32
cvtsi2sd %r14d, %xmm0
movzwl %ax, %eax
cvtsi2sd %eax, %xmm1
divsd %xmm1, %xmm0
leaq 0x21b37(%rip), %rdi     # 0x4751e
movb $0x1, %al
callq 0x3120
jmp 0x25a40
testw %r12w, %r12w
je 0x25a17
cvtsi2sd %r14d, %xmm0
movzwl %r12w, %eax
cvtsi2sd %eax, %xmm1
divsd %xmm1, %xmm0
leaq 0x21b3e(%rip), %rdi     # 0x4754c
movb $0x1, %al
callq 0x3120
jmp 0x25a25
leaq 0x21b3e(%rip), %rdi     # 0x4755c
xorl %eax, %eax
callq 0x3120
movl %eax, %r12d
addl %ebp, %r12d
movq 0x8(%rsp), %r13
jmp 0x25a43
leaq 0x21b23(%rip), %rdi     # 0x4755c
xorl %eax, %eax
callq 0x3120
addl %eax, %r12d
movl %r12d, %edi
callq 0x160f7
movl %eax, %ebp
leaq 0xa(%rbx), %r12
movq 0x10(%rsp), %rdi
movl $0x4d4d, %esi           # imm = 0x4D4D
movq %r12, %rdx
callq 0x416a
testl $0x4003333, (%r15)      # imm = 0x4003333
je 0x25bfb
movl %eax, %r14d
addl $0x4, %r13d
leaq 0x1965e(%rip), %rcx     # 0x3f0dc
movl $0x4003333, %edi        # imm = 0x4003333
movq %r12, %rsi
movl %r13d, %edx
callq 0x5100
movq (%r15), %rax
testw $0x3003, %ax            # imm = 0x3003
je 0x25ad8
testb $0x40, %al
movzwl (%rsp), %r12d
je 0x25ab7
leaq 0x195f0(%rip), %rdi     # 0x3f097
leaq 0x219e3(%rip), %rsi     # 0x47491
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
leaq 0x21023(%rip), %rdi     # 0x46ae1
leaq 0x21aaf(%rip), %rcx     # 0x47574
pushq $0x14
popq %rdx
movl %edx, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movq (%r15), %rax
jmp 0x25add
movzwl (%rsp), %r12d
movzwl %r14w, %r14d
testb $0x30, %al
je 0x25afb
leaq 0x1d46e(%rip), %rdi     # 0x42f5a
movl %r14d, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %ebp
movq (%r15), %rax
btl $0x12, %eax
jb 0x25ba5
movl %ebp, %edi
callq 0x160f7
movq %r15, %r12
movl %eax, %r15d
leaq 0x19e40(%rip), %rcx     # 0x3f959
movl $0x4003333, %edi        # imm = 0x4003333
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
movl %r13d, %edx
callq 0x5100
movq (%r12), %rax
testw $0x3003, %ax            # imm = 0x3003
je 0x25b78
testb $0x40, %al
je 0x25b51
leaq 0x19557(%rip), %rdi     # 0x3f097
leaq 0x2194a(%rip), %rsi     # 0x47491
xorl %eax, %eax
callq 0x3120
addl %eax, %r15d
leaq 0x20f89(%rip), %rdi     # 0x46ae1
leaq 0x21a3f(%rip), %rcx     # 0x4759e
pushq $0x14
popq %rdx
movl %edx, %esi
xorl %eax, %eax
callq 0x3120
addl %eax, %r15d
leaq 0x3160b(%rip), %rax     # 0x57180
movq (%rax), %rax
movzwl (%rsp), %ecx
testb $0x30, %al
je 0x25bf3
testw %cx, %cx
je 0x25be2
cvtsi2sd %r14d, %xmm0
movzwl %cx, %eax
cvtsi2sd %eax, %xmm1
divsd %xmm1, %xmm0
leaq 0x21982(%rip), %rdi     # 0x4751e
movb $0x1, %al
callq 0x3120
jmp 0x25bf0
testw %r12w, %r12w
je 0x25bcc
cvtsi2sd %r14d, %xmm0
movzwl %r12w, %eax
cvtsi2sd %eax, %xmm1
divsd %xmm1, %xmm0
leaq 0x219be(%rip), %rdi     # 0x47581
movb $0x1, %al
callq 0x3120
jmp 0x25bda
leaq 0x219bd(%rip), %rdi     # 0x47590
xorl %eax, %eax
callq 0x3120
movl %eax, %r15d
addl %ebp, %r15d
jmp 0x25bf3
leaq 0x219a7(%rip), %rdi     # 0x47590
xorl %eax, %eax
callq 0x3120
addl %eax, %r15d
movl %r15d, %edi
callq 0x160f7
addq $0xc, %rbx
movq %rbx, %rax
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq