// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_frame_s_eval_number_literal
er_t x_btcl_frame_s_eval_number_literal( x_btcl_frame_s* o, x_source* source, sr_s* sr )
{
    // bcore_x_btcl.x:913:1
    BLM_INIT_LEVEL(0);
    bl_t is_hex = false;
    bl_t is_float = false;
    st_s st;BLM_T_INIT_SPUSH(st_s, &st);;
    
    if( x_source_parse_bl(source,"#?'0x'" ) )
    {
        st_s_push_sc(&(st),"0x" );
        is_hex = true;
    }
    else if( x_source_parse_bl(source,"#?'0X'" ) )
    {
        st_s_push_sc(&(st),"0X" );
        is_hex = true;
    }
    
    if( is_hex )
    {
        while( x_source_parse_bl(source,"#?(([0]>='0'&&[0]<='9')||([0]>='a'&&[0]<='f')||([0]>='A'&&[0]<='F'))" ) )
        {
            st_s_push_char(&(st),x_source_get_char(source) );
        }
    }
    else // decimal
    {
        while( x_source_parse_bl(source,"#?([0]>='0'&&[0]<='9')" ) ) st_s_push_char(&(st),x_source_get_char(source) );
    }
    
    if( !is_hex && x_source_parse_bl(source,"#?([0]=='.')" ) )
    {
        st_s_push_char(&(st),x_source_get_char(source) );
        while( x_source_parse_bl(source,"#?([0]>='0'&&[0]<='9')" ) ) st_s_push_char(&(st),x_source_get_char(source) );
        is_float = true;
    }
    
    bl_t exponent = false;
    
    if( !is_hex && x_source_parse_bl(source,"#?([0]=='e'||[0]=='E')" ) )
    {
        st_s_push_char(&(st),x_source_get_char(source) );
        exponent = true;
        is_float = true;
    }
    
    if( exponent )
    {
        if( x_source_parse_bl(source,"#?([0]=='+'||[0]=='-')" ) )
        {
            st_s_push_char(&(st),x_source_get_char(source) );
        }
    
        while( x_source_parse_bl(source,"#?([0]>='0'&&[0]<='9')" ) )
        {
            st_s_push_char(&(st),x_source_get_char(source) );
        }
    }
    
    f3_t factor = 1.0;
    bl_t use_suffix = true;
    
    char c = x_source_inspect_char(source);
    switch( c )
    {
        case 'd': factor = 1E-1;  break; // deci
        case 'c': factor = 1E-2;  break; // centi
        case 'm': factor = 1E-3;  break; // milli
        case 'u': factor = 1E-6;  break; // micro
        case 'n': factor = 1E-9;  break; // nano
        case 'p': factor = 1E-12; break; // pico
        case 'f': factor = 1E-15; break; // femto
        case 'a': factor = 1E-18; break; // atto
        case 'z': factor = 1E-21; break; // zepto
        case 'y': factor = 1E-24; break; // yocto
        case 'r': factor = 1E-27; break; // ronto
        case 'q': factor = 1E-30; break; // quecto
    
        case 'D': factor = 1E+1;  break; // deca
        case 'C': factor = 1E+2;  break; // cento
        case 'K': factor = 1E+3;  break; // kilo
        case 'M': factor = 1E+6;  break; // mega
        case 'G': factor = 1E+9;  break; // giga
        case 'T': factor = 1E+12; break; // tera
        case 'P': factor = 1E+15; break; // peta
        case 'X': factor = 1E+18; break; // exa
        case 'Z': factor = 1E+21; break; // zetta
        case 'Y': factor = 1E+24; break; // yotta
        case 'R': factor = 1E+27; break; // ronna
        case 'Q': factor = 1E+30; break; // quetta
    
        default: use_suffix = false; break;
    }
    
    if( use_suffix ) x_source_get_char(source);
    
    if( is_float )
    {
        f3_t f3 = 0;
        st_s_parse_fa(&(st),0, -1, "#<f3_t*>", (&(f3)) );
        sr_s_const_from_f3(sr,f3 * factor );
    }
    else
    {
        s3_t s3 = 0;
        st_s_parse_fa(&(st),0, -1, "#<s3_t*>", (&(s3)) );
        if( use_suffix )
        {
            sr_s_const_from_f3(sr,s3 * factor );
        }
        else
        {
            sr_s_const_from_s3(sr,s3 );
        }
    }
    
    BLM_RETURNV(er_t, 0)
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x68, %rsp
movq %rdx, 0x10(%rsp)
movq %rsi, %r14
leaq 0x120e78(%rip), %rax    # 0x1a8dd0
movq (%rax), %rsi
leaq 0x38(%rsp), %rbx
movq %rbx, %rdi
callq 0xe0431
movq $0x0, 0x10(%rbx)
leaq 0x18(%rsp), %r15
movq %r15, %rdi
callq 0x113f7c
movabsq $-0x503db0e6e1c2e704, %rsi # imm = 0xAFC24F191E3D18FC
movq %rbx, %rdi
movq %r15, %rdx
callq 0xe06ab
movq (%r14), %rbx
leaq 0x121d2c(%rip), %r12    # 0x1a9cc8
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %rbx, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %rbx, %rdx
je 0x87ff7
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %rbx, %rdx
je 0x87ff7
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %rbx, %rdx
je 0x87ff7
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %rbx, %rdx
jne 0x88922
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x88027
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %rbx, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x121cac(%rip), %rdi    # 0x1a9cc8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x12128c
leaq 0xb33cb(%rip), %rdx     # 0x13b3f9
movq %r15, %rdi
movq %r14, %rsi
callq 0x10aa16
testb %al, %al
je 0x88049
leaq 0xb33bc(%rip), %rsi     # 0x13b400
jmp 0x880f4
movq (%r14), %rbx
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %rbx, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %rbx, %rdx
je 0x880a7
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %rbx, %rdx
je 0x880a7
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %rbx, %rdx
je 0x880a7
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %rbx, %rdx
jne 0x8892a
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x880d7
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %rbx, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x121bfc(%rip), %rdi    # 0x1a9cc8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x12128c
leaq 0xb3325(%rip), %rdx     # 0x13b403
movq %r15, %rdi
movq %r14, %rsi
callq 0x10aa16
testb %al, %al
je 0x88102
leaq 0xb3316(%rip), %rsi     # 0x13b40a
leaq 0x18(%rsp), %rdi
callq 0x115620
movb $0x1, %al
jmp 0x88104
xorl %eax, %eax
movl %eax, (%rsp)
testb %al, %al
je 0x88273
leaq 0xb32f7(%rip), %r13     # 0x13b40d
leaq 0x18(%rsp), %rbp
movq (%r14), %r15
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %r15, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x88179
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x88179
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x88179
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x88268
movq (%rax,%rcx), %rbx
testq %rbx, %rbx
jne 0x881a5
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %r15, %rsi
callq 0xf3f85
movq %rax, %rbx
movq %r12, %rdi
movq %r15, %rsi
movq %rax, %rdx
callq 0x12128c
movq %rbx, %rdi
movq %r14, %rsi
movq %r13, %rdx
callq 0x10aa16
testb %al, %al
je 0x883d7
movq (%r14), %r15
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %r15, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x88215
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x88215
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x88215
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x8826f
movq (%rax,%rcx), %rbx
testq %rbx, %rbx
jne 0x88241
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %r15, %rsi
callq 0xf3f85
movq %rax, %rbx
movq %r12, %rdi
movq %r15, %rsi
movq %rax, %rdx
callq 0x12128c
movb $0x0, 0x8(%rsp)
movl $0x1, %edx
movq %r14, %rdi
leaq 0x8(%rsp), %rsi
callq *0x10(%rbx)
movsbl 0x8(%rsp), %esi
movq %rbp, %rdi
callq 0x115381
jmp 0x8811b
xorl %ebx, %ebx
jmp 0x8817d
xorl %ebx, %ebx
jmp 0x88219
leaq 0xbb244(%rip), %r13     # 0x1434be
leaq 0x18(%rsp), %rbx
movq (%r14), %r15
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %r15, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x882dd
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x882dd
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x882dd
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x883cc
movq (%rax,%rcx), %rbp
testq %rbp, %rbp
jne 0x88309
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %r15, %rsi
callq 0xf3f85
movq %rax, %rbp
movq %r12, %rdi
movq %r15, %rsi
movq %rax, %rdx
callq 0x12128c
movq %rbp, %rdi
movq %r14, %rsi
movq %r13, %rdx
callq 0x10aa16
testb %al, %al
je 0x883d7
movq (%r14), %r15
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %r15, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x88379
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x88379
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x88379
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x883d3
movq (%rax,%rcx), %rbp
testq %rbp, %rbp
jne 0x883a5
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %r15, %rsi
callq 0xf3f85
movq %rax, %rbp
movq %r12, %rdi
movq %r15, %rsi
movq %rax, %rdx
callq 0x12128c
movb $0x0, 0x8(%rsp)
movl $0x1, %edx
movq %r14, %rdi
leaq 0x8(%rsp), %rsi
callq *0x10(%rbp)
movsbl 0x8(%rsp), %esi
movq %rbx, %rdi
callq 0x115381
jmp 0x8827f
xorl %ebp, %ebp
jmp 0x882e1
xorl %ebp, %ebp
jmp 0x8837d
movl (%rsp), %r13d
testb %r13b, %r13b
jne 0x8869c
movq (%r14), %rbx
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %rbx, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %rbx, %rdx
je 0x88442
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %rbx, %rdx
je 0x88442
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %rbx, %rdx
je 0x88442
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %rbx, %rdx
jne 0x88932
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x88472
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %rbx, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x121861(%rip), %rdi    # 0x1a9cc8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x12128c
leaq 0xb2fd9(%rip), %rdx     # 0x13b452
movq %r15, %rdi
movq %r14, %rsi
callq 0x10aa16
testb %al, %al
je 0x8869c
movq (%r14), %rbx
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %rbx, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %rbx, %rdx
je 0x884ea
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %rbx, %rdx
je 0x884ea
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %rbx, %rdx
je 0x884ea
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %rbx, %rdx
jne 0x8894a
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x8851a
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %rbx, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x1217b9(%rip), %rdi    # 0x1a9cc8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x12128c
leaq 0x8(%rsp), %rbx
movb $0x0, (%rbx)
movl $0x1, %edx
movq %r14, %rdi
movq %rbx, %rsi
callq *0x10(%r15)
movb (%rbx), %al
leaq 0x18(%rsp), %rbp
leaq 0xbaf7f(%rip), %rbx     # 0x1434be
movsbl %al, %esi
movq %rbp, %rdi
callq 0x115381
movq (%r14), %r15
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %r15, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x885a8
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x885a8
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x885a8
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x8868f
movq (%rax,%rcx), %r13
testq %r13, %r13
jne 0x885d4
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %r15, %rsi
callq 0xf3f85
movq %rax, %r13
movq %r12, %rdi
movq %r15, %rsi
movq %rax, %rdx
callq 0x12128c
movq %r13, %rdi
movq %r14, %rsi
movq %rbx, %rdx
callq 0x10aa16
testb %al, %al
je 0x886a0
movq (%r14), %r15
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %r15, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x88644
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x88644
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x88644
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x88697
movq (%rax,%rcx), %r13
testq %r13, %r13
jne 0x88670
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %r15, %rsi
callq 0xf3f85
movq %rax, %r13
movq %r12, %rdi
movq %r15, %rsi
movq %rax, %rdx
callq 0x12128c
movb $0x0, 0x8(%rsp)
movl $0x1, %edx
movq %r14, %rdi
leaq 0x8(%rsp), %rsi
callq *0x10(%r13)
movb 0x8(%rsp), %al
jmp 0x8853f
xorl %r13d, %r13d
jmp 0x885ac
xorl %r13d, %r13d
jmp 0x88648
xorl %ebp, %ebp
jmp 0x886a7
movb $0x1, %bpl
movl (%rsp), %r13d
testb %r13b, %r13b
jne 0x88811
movq (%r14), %rbx
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %rbx, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %rbx, %rdx
je 0x8870e
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %rbx, %rdx
je 0x8870e
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %rbx, %rdx
je 0x8870e
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %rbx, %rdx
jne 0x8893a
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x8873e
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %rbx, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x121595(%rip), %rdi    # 0x1a9cc8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x12128c
leaq 0xb2d1a(%rip), %rdx     # 0x13b45f
movq %r15, %rdi
movq %r14, %rsi
callq 0x10aa16
testb %al, %al
je 0x88811
movq (%r14), %rbx
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %rbx, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %rbx, %rdx
je 0x887b6
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %rbx, %rdx
je 0x887b6
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %rbx, %rdx
je 0x887b6
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %rbx, %rdx
jne 0x88952
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x887e6
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %rbx, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x1214ed(%rip), %rdi    # 0x1a9cc8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x12128c
leaq 0x8(%rsp), %rbx
movb $0x0, (%rbx)
movl $0x1, %edx
movq %r14, %rdi
movq %rbx, %rsi
callq *0x10(%r15)
movsbl (%rbx), %esi
leaq 0x18(%rsp), %rdi
callq 0x115381
movb $0x1, %al
movb $0x1, %bpl
jmp 0x88813
xorl %eax, %eax
testb %al, %al
je 0x88ac5
movq (%r14), %rbx
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %rbx, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %rbx, %rdx
je 0x88879
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %rbx, %rdx
je 0x88879
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %rbx, %rdx
je 0x88879
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %rbx, %rdx
jne 0x88942
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x888a9
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %rbx, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x12142a(%rip), %rdi    # 0x1a9cc8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x12128c
leaq 0xb2bc6(%rip), %rdx     # 0x13b476
movq %r15, %rdi
movq %r14, %rsi
callq 0x10aa16
testb %al, %al
je 0x889b0
movq (%r14), %rbx
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %rbx, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %rbx, %rdx
je 0x8895a
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %rbx, %rdx
je 0x8895a
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %rbx, %rdx
je 0x8895a
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %rbx, %rdx
je 0x8895a
xorl %r15d, %r15d
jmp 0x8895e
xorl %r15d, %r15d
jmp 0x87ffb
xorl %r15d, %r15d
jmp 0x880ab
xorl %r15d, %r15d
jmp 0x88446
xorl %r15d, %r15d
jmp 0x88712
xorl %r15d, %r15d
jmp 0x8887d
xorl %r15d, %r15d
jmp 0x884ee
xorl %r15d, %r15d
jmp 0x887ba
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x8898a
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %rbx, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x121349(%rip), %rdi    # 0x1a9cc8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x12128c
leaq 0x8(%rsp), %rbx
movb $0x0, (%rbx)
movl $0x1, %edx
movq %r14, %rdi
movq %rbx, %rsi
callq *0x10(%r15)
movb (%rbx), %al
movsbl %al, %esi
leaq 0x18(%rsp), %rdi
callq 0x115381
movq (%r14), %rbx
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %rbx, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %rbx, %rdx
je 0x88a0d
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %rbx, %rdx
je 0x88a0d
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %rbx, %rdx
je 0x88a0d
movq 0x30(%rax), %rdx
movl $0x38, %ecx
xorl %r15d, %r15d
cmpq %rbx, %rdx
jne 0x88a11
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x88a3d
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %rbx, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x121296(%rip), %rdi    # 0x1a9cc8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x12128c
leaq 0xbaa7a(%rip), %rdx     # 0x1434be
movq %r15, %rdi
movq %r14, %rsi
callq 0x10aa16
testb %al, %al
je 0x88ac5
movq (%r14), %rbx
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %rbx, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %rbx, %rdx
je 0x8895a
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %rbx, %rdx
je 0x8895a
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %rbx, %rdx
je 0x8895a
movq 0x30(%rax), %rdx
movl $0x38, %ecx
xorl %r15d, %r15d
cmpq %rbx, %rdx
je 0x8895a
jmp 0x8895e
movq (%r14), %rbx
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %rbx, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %rbx, %rdx
je 0x88b1f
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %rbx, %rdx
je 0x88b1f
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %rbx, %rdx
je 0x88b1f
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %rbx, %rdx
jne 0x88b89
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x88b4f
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %rbx, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x121184(%rip), %rdi    # 0x1a9cc8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x12128c
movq %r15, %rdi
movq %r14, %rsi
callq 0x10a499
movzbl %al, %eax
addl $-0x43, %eax
cmpl $0x37, %eax
ja 0x88de8
movb $0x1, %r13b
leaq 0xb9855(%rip), %rcx     # 0x1423c8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movsd 0xb97bc(%rip), %xmm0    # 0x142340
jmp 0x88c90
xorl %r15d, %r15d
jmp 0x88b23
movsd 0xb97ea(%rip), %xmm0    # 0x142380
jmp 0x88c90
movsd 0xaf4c5(%rip), %xmm0    # 0x138068
jmp 0x88c90
movsd 0xb97e8(%rip), %xmm0    # 0x142398
jmp 0x88c90
movsd 0xb97ab(%rip), %xmm0    # 0x142368
jmp 0x88c90
movsd 0xb9746(%rip), %xmm0    # 0x142310
jmp 0x88c90
movsd 0xb9789(%rip), %xmm0    # 0x142360
jmp 0x88c90
movsd 0xb978c(%rip), %xmm0    # 0x142370
jmp 0x88c90
movsd 0xb975f(%rip), %xmm0    # 0x142350
jmp 0x88c90
movsd 0xb973a(%rip), %xmm0    # 0x142338
jmp 0x88c90
movsd 0xb971d(%rip), %xmm0    # 0x142328
jmp 0x88c90
movsd 0xb9700(%rip), %xmm0    # 0x142318
jmp 0x88c90
movsd 0xb9726(%rip), %xmm0    # 0x142348
jmp 0x88c90
movsd 0xb96d4(%rip), %xmm0    # 0x142300
jmp 0x88c90
movsd 0xb96d2(%rip), %xmm0    # 0x142308
jmp 0x88c90
movsd 0xb96b8(%rip), %xmm0    # 0x1422f8
jmp 0x88c90
movsd 0xb972e(%rip), %xmm0    # 0x142378
jmp 0x88c90
movsd 0xb9694(%rip), %xmm0    # 0x1422e8
jmp 0x88c90
movsd 0xaf412(%rip), %xmm0    # 0x138070
jmp 0x88c90
movsd 0xb96b8(%rip), %xmm0    # 0x142320
jmp 0x88c90
movsd 0xb96be(%rip), %xmm0    # 0x142330
jmp 0x88c90
movsd 0xb970c(%rip), %xmm0    # 0x142388
jmp 0x88c90
movsd 0xb970a(%rip), %xmm0    # 0x142390
jmp 0x88c90
movsd 0xb96c8(%rip), %xmm0    # 0x142358
movsd %xmm0, (%rsp)
testb %r13b, %r13b
je 0x88d40
movq (%r14), %rbx
movl (%r12), %eax
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%r12,%rax,8), %rcx
movq 0x18(%r12,%rax,8), %rdx
andq %rbx, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %rbx, %rdx
je 0x88cfc
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %rbx, %rdx
je 0x88cfc
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %rbx, %rdx
je 0x88cfc
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %rbx, %rdx
jne 0x88dfd
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x88d2c
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %rbx, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x120fa7(%rip), %rdi    # 0x1a9cc8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x12128c
leaq 0x8(%rsp), %rsi
movb $0x0, (%rsi)
movl $0x1, %edx
movq %r14, %rdi
callq *0x10(%r15)
leaq 0x8(%rsp), %rbx
testb %bpl, %bpl
je 0x88d7b
movq $0x0, (%rbx)
leaq 0xc6db2(%rip), %rcx     # 0x14fb0a
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
movq $-0x1, %rdx
movq %rbx, %r8
xorl %eax, %eax
callq 0x11886c
movsd (%rsp), %xmm0
mulsd (%rbx), %xmm0
jmp 0x88db7
movq $0x0, (%rbx)
leaq 0xce9b4(%rip), %rcx     # 0x15773d
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
movq $-0x1, %rdx
movq %rbx, %r8
xorl %eax, %eax
callq 0x11886c
movq (%rbx), %rsi
testb %r13b, %r13b
je 0x88dc3
cvtsi2sd %rsi, %xmm1
movsd (%rsp), %xmm0
mulsd %xmm1, %xmm0
movq 0x10(%rsp), %rdi
callq 0x113220
jmp 0x88dcd
movq 0x10(%rsp), %rdi
callq 0x1132bf
leaq 0x38(%rsp), %rdi
callq 0xe0b30
xorl %eax, %eax
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movsd 0xb94d8(%rip), %xmm0    # 0x1422c8
movsd %xmm0, (%rsp)
xorl %r13d, %r13d
jmp 0x88c95
xorl %r15d, %r15d
jmp 0x88d00