LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_trait.c
// Function: bcore_trait_signal_handler
vd_t bcore_trait_signal_handler( const bcore_signal_s* o )
{
    switch( bcore_signal_s_handle_type( o, typeof( "bcore_trait" ) ) )
    {
        case TYPEOF_init0:
        {
            trait_manager_open();
        }
        break;

        case TYPEOF_init1:
        {
            bcore_flect_define_creator( typeof( "bcore_trait_ft_s" ), trait_ft_s_create_self  );
            bcore_flect_define_creator( typeof( "bcore_trait_s"    ), trait_s_create_self  );
        }
        break;

        case TYPEOF_down0:
        {
            s2_t verbosity = o->object ? *( s2_t* )o->object : 0;
            if( verbosity > 0 )
            {
                uz_t count = bcore_trait_size();
                uz_t space = bcore_tbman_total_granted_space();
                trait_manager_close();
                space -= bcore_tbman_total_granted_space();
                bcore_msg( "  trait manager ....... % 7zu (by % 4zu traits       )\n", space, count );
            }
            else
            {
                trait_manager_close();
            }
        }
        break;

        default: break;
    }
    return NULL;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
leaq 0x32449(%rip), %rdi     # 0xcc0bb
callq 0x99d50
movq %rbx, %rdi
movq %rax, %rsi
callq 0x75141
movabsq $-0x69a05554ee793861, %rcx # imm = 0x965FAAAB1186C79F
cmpq %rcx, %rax
je 0x99d00
movabsq $0x6a72ce8f8250efc6, %rcx # imm = 0x6A72CE8F8250EFC6
cmpq %rcx, %rax
je 0x99cc8
movabsq $0x6a72cf8f8250f179, %rcx # imm = 0x6A72CF8F8250F179
cmpq %rcx, %rax
jne 0x99d46
leaq 0x7f66e(%rip), %rdi     # 0x119328
leaq 0x10b(%rip), %rsi       # 0x99dcc
callq 0x97d2e
jmp 0x99d46
leaq 0x323f8(%rip), %rdi     # 0xcc0c7
callq 0x99d50
leaq 0xad(%rip), %rsi        # 0x99d88
movq %rax, %rdi
callq 0x6513b
leaq 0x323ee(%rip), %rdi     # 0xcc0d8
callq 0x99d50
leaq 0xa4(%rip), %rsi        # 0x99d9a
movq %rax, %rdi
callq 0x6513b
jmp 0x99d46
movq 0x10(%rbx), %rax
testq %rax, %rax
je 0x99d41
cmpl $0x0, (%rax)
jle 0x99d41
callq 0x99a63
movq %rax, %rbx
callq 0x9536f
movq %rax, %r14
callq 0x99e22
callq 0x9536f
subq %rax, %r14
leaq 0x323b4(%rip), %rdi     # 0xcc0e6
movq %r14, %rsi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x5fb6b
jmp 0x99d46
callq 0x99e22
xorl %eax, %eax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_txt_ml.c
// Function: bcore_txt_ml_x_to_file
void bcore_txt_ml_x_to_file( sr_s obj, sc_t file )
{
    bcore_life_s* l = bcore_life_s_create();
    bcore_sink_chain_s* chain = bcore_life_s_push_aware( l, bcore_sink_chain_s_create() );
    bcore_sink_chain_s_push_d( chain, bcore_sink_file_s_create_name( file ) );
    bcore_sink_chain_s_push_d( chain, bcore_inst_t_create( typeof( "bcore_sink_buffer_s" ) ) );
    bcore_translate_x( sr_asm( bcore_txt_ml_translator_s_create() ), obj, sr_awm( chain ) );
    bcore_life_s_discard( l );
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x78, %rsp
movq %rdi, %r15
xorl %eax, %eax
callq 0x717ac
movq %rax, %rbx
xorl %eax, %eax
callq 0x752d1
movq %rbx, %rdi
movq %rax, %rsi
callq 0x71a4d
movq %rax, %r14
movq %r15, %rdi
callq 0x75705
movq %r14, %rdi
movq %rax, %rsi
callq 0x75327
leaq 0x2a5a0(%rip), %rdi     # 0xc4f9f
callq 0x9aaac
movq %rax, %rdi
callq 0x9aa93
movq %r14, %rdi
movq %rax, %rsi
callq 0x75327
callq 0x99f7c
leaq 0x60(%rsp), %r15
movq %r15, %rdi
movq %rax, %rsi
callq 0x9a8d8
leaq 0x48(%rsp), %r12
movq %r12, %rdi
movq %r14, %rsi
callq 0x9a901
movq 0x10(%r12), %rax
movq %rax, 0x40(%rsp)
movups (%r12), %xmm0
movups %xmm0, 0x30(%rsp)
movq 0xb0(%rsp), %rax
movq %rax, 0x28(%rsp)
movaps 0xa0(%rsp), %xmm0
movups %xmm0, 0x18(%rsp)
movq 0x10(%r15), %rax
movq %rax, 0x10(%rsp)
movups (%r15), %xmm0
movups %xmm0, (%rsp)
callq 0x8a2f4
movq %rbx, %rdi
addq $0x78, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmp 0x717c7
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_txt_ml.c
// Function: bcore_txt_ml_from_source
sr_s bcore_txt_ml_from_source( bcore_source* source )
{
    bcore_txt_ml_interpreter_s* interpreter = bcore_txt_ml_interpreter_s_create();
    sr_s ret = interpret( interpreter, sr_null(), sr_awm( source ) );
    bcore_txt_ml_interpreter_s_discard( interpreter );
    return ret;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x68, %rsp
movq %rsi, %r14
movq %rdi, %rbx
callq 0x9af9f
movq %rax, %r15
xorps %xmm0, %xmm0
movaps %xmm0, 0x30(%rsp)
andq $0x0, 0x40(%rsp)
leaq 0x50(%rsp), %r12
movq %r12, %rdi
movq %r14, %rsi
callq 0x9a901
movq 0x10(%r12), %rax
movq %rax, 0x28(%rsp)
movups (%r12), %xmm0
movups %xmm0, 0x18(%rsp)
movq 0x40(%rsp), %rax
movq %rax, 0x10(%rsp)
movaps 0x30(%rsp), %xmm0
movups %xmm0, (%rsp)
movq %rbx, %rdi
movq %r15, %rsi
callq 0x9b047
movq %r15, %rdi
callq 0x9afb9
movq %rbx, %rax
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_txt_ml.c
// Function: bcore_txt_ml_from_file
sr_s bcore_txt_ml_from_file( sc_t file )
{
    sr_s chain = sr_asm( bcore_source_chain_s_create() );
    bcore_source_chain_s_push_d( chain.o, bcore_source_file_s_create_name( file ) );
    bcore_source_chain_s_push_d( chain.o, bcore_inst_t_create( typeof( "bcore_source_string_s" ) ) );
    sr_s ret = bcore_interpret_x( bcore_inst_t_create_sr( TYPEOF_bcore_txt_ml_interpreter_s ), chain );
    return ret;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x68, %rsp
movq %rsi, %r15
movq %rdi, %rbx
xorl %eax, %eax
callq 0x7656e
leaq 0x50(%rsp), %r14
movq %r14, %rdi
movq %rax, %rsi
callq 0x9a8d8
movq (%r14), %r12
movq %r15, %rdi
callq 0x77118
movq %r12, %rdi
movq %rax, %rsi
callq 0x765c4
leaq 0x28d91(%rip), %rdi     # 0xc4f4a
callq 0x9aaac
movq %rax, %rdi
callq 0x9aa93
movq %r12, %rdi
movq %rax, %rsi
callq 0x765c4
leaq 0x38(%rsp), %r15
movabsq $0x2a141542c016dc6c, %rsi # imm = 0x2A141542C016DC6C
movq %r15, %rdi
callq 0x99ebc
movq 0x10(%r14), %rax
movq %rax, 0x28(%rsp)
movups (%r14), %xmm0
movups %xmm0, 0x18(%rsp)
movq 0x10(%r15), %rax
movq %rax, 0x10(%rsp)
movups (%r15), %xmm0
movups %xmm0, (%rsp)
movq %rbx, %rdi
callq 0x8742a
movq %rbx, %rax
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_txt_ml.c
// Function: bcore_txt_ml_from_string
sr_s bcore_txt_ml_from_string( const st_s* string )
{
    sr_s chain = sr_asm( bcore_source_chain_s_create() );
    bcore_source_chain_s_push_d( chain.o, bcore_source_string_s_create_from_string( string ) );
    sr_s ret = bcore_interpret_x( bcore_inst_t_create_sr( TYPEOF_bcore_txt_ml_interpreter_s ), chain );
    return ret;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x68, %rsp
movq %rsi, %r14
movq %rdi, %rbx
xorl %eax, %eax
callq 0x7656e
leaq 0x50(%rsp), %r15
movq %r15, %rdi
movq %rax, %rsi
callq 0x9a8d8
movq (%r15), %r12
movq %r14, %rdi
callq 0x76c69
movq %r12, %rdi
movq %rax, %rsi
callq 0x765c4
leaq 0x38(%rsp), %r14
movabsq $0x2a141542c016dc6c, %rsi # imm = 0x2A141542C016DC6C
movq %r14, %rdi
callq 0x99ebc
movq 0x10(%r15), %rax
movq %rax, 0x28(%rsp)
movups (%r15), %xmm0
movups %xmm0, 0x18(%rsp)
movq 0x10(%r14), %rax
movq %rax, 0x10(%rsp)
movups (%r14), %xmm0
movups %xmm0, (%rsp)
movq %rbx, %rdi
callq 0x8742a
movq %rbx, %rax
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_txt_ml.c
// Function: bcore_txt_ml_contains_valid_syntax
bl_t bcore_txt_ml_contains_valid_syntax( bcore_source* source )
{
    BLM_INIT();
    sz_t index = bcore_source_a_get_index( source );

    if( !bcore_source_a_parse_bl( source, " #?'<'" ) )
    {
        bcore_source_a_set_index( source, index );
        BLM_RETURNV( bl_t, false );
    }

    st_s* name = BLM_A_PUSH( st_s_create() );

    bcore_source_a_parse_fa( source, "#name", name );

    if( name->size == 0 )
    {
        bcore_source_a_set_index( source, index );
        BLM_RETURNV( bl_t, false );
    }

    if( !bcore_source_a_parse_bl( source, "#?'>'" ) )
    {
        bcore_source_a_set_index( source, index );
        BLM_RETURNV( bl_t, false );
    }

    bcore_source_a_set_index( source, index );
    BLM_RETURNV( bl_t, true );
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x38, %rsp
movq %rdi, %rbx
leaq 0x7ba3b(%rip), %rax     # 0x117dd0
movq (%rax), %rsi
leaq 0x8(%rsp), %rdi
callq 0x717f5
movq (%rbx), %rdi
callq 0x9cbb3
movq %rax, %rdi
movq %rbx, %rsi
callq 0x88caa
movq %rax, %r14
leaq 0xef6b(%rip), %rsi      # 0xab32a
movq %rbx, %rdi
callq 0x9c432
xorl %ebp, %ebp
testb %al, %al
je 0x9c410
xorl %eax, %eax
callq 0x8eb65
leaq 0x8(%rsp), %rdi
movq %rax, %rsi
callq 0x71a4d
movq %rax, %r15
leaq 0x25d3d(%rip), %rsi     # 0xc2128
movq %rbx, %rdi
movq %rax, %rdx
xorl %eax, %eax
callq 0x88fce
cmpq $0x0, 0x10(%r15)
je 0x9c410
leaq 0x2fd18(%rip), %rsi     # 0xcc11e
movq %rbx, %rdi
callq 0x9c432
movl %eax, %ebp
movq %rbx, %rdi
movq %r14, %rsi
callq 0x9c459
leaq 0x8(%rsp), %rdi
callq 0x71b64
movl %ebp, %eax
addq $0x38, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_txt_ml.c
// Function: bcore_txt_ml_transfer_test
void bcore_txt_ml_transfer_test( sr_s obj )
{
    bcore_life_s* l = bcore_life_s_create();
    obj = bcore_life_s_push_sr( l, obj );
    st_s* string = bcore_life_s_push_aware( l, st_s_create() );
    bcore_txt_ml_x_to_string( obj, string );
    sr_s sr = bcore_life_s_push_sr( l, bcore_txt_ml_from_string( string ) );
    s2_t c = bcore_compare_sr( obj, sr );
    if( c != 0 )
    {
        st_s* diff = bcore_life_s_push_aware( l, bcore_diff_sr( obj, sr ) );
        if( diff )
        {
            ERR( "Comparison returned '%"PRIi32"':\n%s\n", c, diff->sc );
        }
        else
        {
            ERR( "Comparison returned '%"PRIi32"' but diff returned 'NULL'\n", c );
        }
    }
    bcore_life_s_discard( l );
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x68, %rsp
xorl %eax, %eax
callq 0x717ac
movq %rax, %rbx
movq 0xa0(%rsp), %rax
movq %rax, 0x10(%rsp)
movaps 0x90(%rsp), %xmm0
movups %xmm0, (%rsp)
leaq 0x38(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rsi
callq 0x719e2
movq 0x10(%r14), %rax
movq %rax, 0xa0(%rsp)
movups (%r14), %xmm0
movaps %xmm0, 0x90(%rsp)
xorl %eax, %eax
callq 0x8eb65
movq %rbx, %rdi
movq %rax, %rsi
callq 0x71a4d
movq %rax, %r14
movq 0xa0(%rsp), %rax
movq %rax, 0x10(%rsp)
movaps 0x90(%rsp), %xmm0
movups %xmm0, (%rsp)
movq %r14, %rdi
callq 0x9aae4
leaq 0x50(%rsp), %r15
movq %r15, %rdi
movq %r14, %rsi
callq 0x9c222
movq 0x10(%r15), %rax
movq %rax, 0x10(%rsp)
movups (%r15), %xmm0
movups %xmm0, (%rsp)
leaq 0x38(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rsi
callq 0x719e2
movq 0x10(%r14), %rax
movq %rax, 0x28(%rsp)
movups (%r14), %xmm0
movups %xmm0, 0x18(%rsp)
movq 0xa0(%rsp), %rax
movq %rax, 0x10(%rsp)
movaps 0x90(%rsp), %xmm0
movups %xmm0, (%rsp)
callq 0x80fa8
testl %eax, %eax
je 0x9c605
movl %eax, %ebp
leaq 0x90(%rsp), %rax
movq 0x48(%rsp), %rcx
movq %rcx, 0x28(%rsp)
movups 0x38(%rsp), %xmm0
movups %xmm0, 0x18(%rsp)
movq 0x10(%rax), %rcx
movq %rcx, 0x10(%rsp)
movups (%rax), %xmm0
movups %xmm0, (%rsp)
callq 0x81b00
movq %rbx, %rdi
movq %rax, %rsi
callq 0x71a4d
testq %rax, %rax
je 0x9c5e1
movq 0x8(%rax), %r9
leaq 0x2fb62(%rip), %rdi     # 0xcc124
leaq 0x2fb76(%rip), %rsi     # 0xcc13f
leaq 0x18c72(%rip), %rcx     # 0xb5242
movl $0x2b3, %edx            # imm = 0x2B3
movl %ebp, %r8d
xorl %eax, %eax
callq 0x60031
jmp 0x9c605
leaq 0x2fb3c(%rip), %rdi     # 0xcc124
leaq 0x2fb50(%rip), %rsi     # 0xcc13f
leaq 0x18c6a(%rip), %rcx     # 0xb5260
movl $0x2b7, %edx            # imm = 0x2B7
movl %ebp, %r8d
xorl %eax, %eax
callq 0x60031
movq %rbx, %rdi
callq 0x717c7
addq $0x68, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_txt_ml.c
// Function: bcore_txt_ml_signal_handler
vd_t bcore_txt_ml_signal_handler( const bcore_signal_s* o )
{
    switch( bcore_signal_s_handle_type( o, typeof( "bcore_txt_ml" ) ) )
    {
        case TYPEOF_init1:
        {
            bcore_flect_define_creator( TYPEOF_bcore_txt_ml_translator_s,  translator_s_create_self  );
            bcore_flect_define_creator( TYPEOF_bcore_txt_ml_interpreter_s, interpreter_s_create_self );
        }
        break;

        case TYPEOF_selftest:
        {
            return txt_ml_selftest();
        }
        break;

        default: break;
    }
    return NULL;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %rdi, %rbx
leaq 0x2fb21(%rip), %rdi     # 0xcc14e
callq 0x9aaac
movq %rbx, %rdi
movq %rax, %rsi
callq 0x75141
movabsq $0x7ee758bbfced33e3, %rcx # imm = 0x7EE758BBFCED33E3
cmpq %rcx, %rax
je 0x9c68e
movabsq $0x6a72ce8f8250efc6, %rcx # imm = 0x6A72CE8F8250EFC6
cmpq %rcx, %rax
jne 0x9c687
leaq 0x164(%rip), %rsi       # 0x9c7c6
movabsq $-0x7c4788a4d080fe1c, %rdi # imm = 0x83B8775B2F7F01E4
callq 0x6513b
leaq 0x1a3(%rip), %rsi       # 0x9c81b
movabsq $0x2a141542c016dc6c, %rdi # imm = 0x2A141542C016DC6C
callq 0x6513b
xorl %ebx, %ebx
jmp 0x9c7b7
leaq 0x2886b(%rip), %rdi     # 0xc4f00
callq 0x9aaac
movabsq $0x2a141542c016dc6c, %rsi # imm = 0x2A141542C016DC6C
movq %rax, %rdi
callq 0x79a8e
testb %al, %al
jne 0x9c6d9
leaq 0xdf90(%rip), %rdi      # 0xaa647
leaq 0x2fc06(%rip), %rsi     # 0xcc2c4
leaq 0x2fc5f(%rip), %rdx     # 0xcc324
leaq 0x2fa73(%rip), %rcx     # 0xcc13f
movl $0x2c7, %r8d            # imm = 0x2C7
xorl %eax, %eax
callq 0x5ffac
leaq 0x28846(%rip), %rdi     # 0xc4f26
callq 0x9aaac
movabsq $-0x7c4788a4d080fe1c, %rsi # imm = 0x83B8775B2F7F01E4
movq %rax, %rdi
callq 0x79a8e
testb %al, %al
jne 0x9c724
leaq 0xdf45(%rip), %rdi      # 0xaa647
leaq 0x2fc2b(%rip), %rsi     # 0xcc334
leaq 0x2fc14(%rip), %rdx     # 0xcc324
leaq 0x2fa28(%rip), %rcx     # 0xcc13f
movl $0x2c8, %r8d            # imm = 0x2C8
xorl %eax, %eax
callq 0x5ffac
xorl %eax, %eax
callq 0x717ac
movq %rax, %r14
xorl %eax, %eax
callq 0x8eb65
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movl $0x3e8, %esi            # imm = 0x3E8
movq %r15, %rdi
callq 0x8b4e4
movq 0x10(%r15), %rax
movq %rax, 0x10(%rsp)
movups (%r15), %xmm0
movups %xmm0, (%rsp)
leaq 0x30(%rsp), %r15
movq %r15, %rdi
movq %r14, %rsi
callq 0x719e2
callq 0xd340
movq %rax, %r12
movq 0x10(%r15), %rax
movq %rax, 0x10(%rsp)
movups (%r15), %xmm0
movups %xmm0, (%rsp)
callq 0x9c480
callq 0xd340
subq %r12, %rax
cvtsi2sd %rax, %xmm0
divsd 0xd8d2(%rip), %xmm0     # 0xaa070
leaq 0x2fbed(%rip), %rsi     # 0xcc392
movq %rbx, %rdi
movb $0x1, %al
callq 0x8f42b
movq %r14, %rdi
callq 0x717c7
movq %rbx, %rax
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_txt_ml.c
// Function: translator_s_create_self
static bcore_self_s* translator_s_create_self( void )
{
    bcore_self_s* self = BCORE_SELF_S_BUILD_PARSE_SC( "bcore_txt_ml_translator_s = bcore_translator { aware_t _; uz_t indent; }", bcore_txt_ml_translator_s );
    bcore_self_s_push_ns_func( self, ( fp_t )bcore_txt_ml_translator_s_init,      "bcore_fp_init",      "init"      );
    bcore_self_s_push_ns_func( self, ( fp_t )bcore_txt_ml_translator_s_translate, "bcore_fp_translate", "translate" );
    return self;
}

// Assembly:
pushq %rbx
leaq 0x2fa49(%rip), %rdi     # 0xcc217
pushq $0x10
popq %rsi
pushq $0x8
popq %rdx
callq 0x64356
movq %rax, %rbx
leaq -0x28f2(%rip), %rsi     # 0x99ef1
leaq 0x23fd1(%rip), %rdx     # 0xc07bb
leaq 0x23fd3(%rip), %rcx     # 0xc07c4
movq %rax, %rdi
callq 0x63a2b
leaq -0x281f(%rip), %rsi     # 0x99fe1
leaq 0x2fa59(%rip), %rdx     # 0xcc260
leaq 0x140e2(%rip), %rcx     # 0xb08f0
movq %rbx, %rdi
callq 0x63a2b
movq %rbx, %rax
popq %rbx
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_txt_ml.c
// Function: interpreter_s_create_self
static bcore_self_s* interpreter_s_create_self( void )
{
    bcore_self_s* self = BCORE_SELF_S_BUILD_PARSE_SC( "bcore_txt_ml_interpreter_s = bcore_interpreter { aware_t _; }", bcore_txt_ml_interpreter_s );
    bcore_self_s_push_ns_func( self, ( fp_t )bcore_txt_ml_interpreter_s_init,             "bcore_fp_init", "init" );
    bcore_self_s_push_ns_func( self, ( fp_t )bcore_txt_ml_interpreter_s_interpret,        "bcore_fp_interpret",        "interpret"        );
    return self;
}

// Assembly:
pushq %rbx
leaq 0x2fa50(%rip), %rdi     # 0xcc273
pushq $0x8
popq %rdx
movq %rdx, %rsi
callq 0x64356
movq %rax, %rbx
leaq -0x18d4(%rip), %rsi     # 0x9af64
leaq 0x23f7c(%rip), %rdx     # 0xc07bb
leaq 0x23f7e(%rip), %rcx     # 0xc07c4
movq %rax, %rdi
callq 0x63a2b
leaq -0x1859(%rip), %rsi     # 0x9affc
leaq 0x2fa55(%rip), %rdx     # 0xcc2b1
leaq 0x2fa57(%rip), %rcx     # 0xcc2ba
movq %rbx, %rdi
callq 0x63a2b
movq %rbx, %rax
popq %rbx
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_x_threads.c
// Function: x_mutex_s_init_x
void x_mutex_s_init_x( x_mutex_s* o )
{
    int ern = pthread_mutex_init( &o->_mutex, NULL );
    if( ern == EAGAIN ) ERR( "Resources exceeded." );
    if( ern == ENOMEM ) ERR( "Memory exhausted." );
    if( ern == EPERM  ) ERR( "Unprivileged call." );
    if( ern ) ERR( "function returned error %i", ern );
}

// Assembly:
pushq %rbx
addq $0x8, %rdi
xorl %esi, %esi
callq 0xd1c0
testl %eax, %eax
je 0x9cc9d
movl %eax, %ebx
cmpl $0x1, %eax
je 0x9cc42
cmpl $0xc, %ebx
je 0x9cc5b
cmpl $0xb, %ebx
jne 0x9cc7a
leaq 0x1b8f8(%rip), %rdi     # 0xb8528
leaq 0x2f770(%rip), %rsi     # 0xcc3a7
leaq 0x2ee61(%rip), %rcx     # 0xcba9f
pushq $0x1c
jmp 0x9cc72
leaq 0x1b8df(%rip), %rdi     # 0xb8528
leaq 0x2f757(%rip), %rsi     # 0xcc3a7
leaq 0x2f774(%rip), %rcx     # 0xcc3cb
pushq $0x1e
jmp 0x9cc72
leaq 0x1b8c6(%rip), %rdi     # 0xb8528
leaq 0x2f73e(%rip), %rsi     # 0xcc3a7
leaq 0x2f749(%rip), %rcx     # 0xcc3b9
pushq $0x1d
popq %rdx
xorl %eax, %eax
callq 0x60031
leaq 0x1b8a7(%rip), %rdi     # 0xb8528
leaq 0x2f71f(%rip), %rsi     # 0xcc3a7
leaq 0x2ee49(%rip), %rcx     # 0xcbad8
pushq $0x1f
popq %rdx
movl %ebx, %r8d
xorl %eax, %eax
popq %rbx
jmp 0x60031
popq %rbx
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_x_threads.c
// Function: x_mutex_s_down_e
void x_mutex_s_down_e( x_mutex_s* o )
{
    int ern = pthread_mutex_destroy( &o->_mutex );
    if( ern == EBUSY  ) ERR( "Mutex is locked." );
    if( ern == EINVAL ) ERR( "Invalid mutex." );
    if( ern ) ERR( "function returned error %i", ern );
}

// Assembly:
pushq %rbx
addq $0x8, %rdi
callq 0xd440
testl %eax, %eax
je 0x9cd14
movl %eax, %ebx
cmpl $0x16, %eax
je 0x9ccd2
cmpl $0x10, %ebx
jne 0x9ccf1
leaq 0x1b879(%rip), %rdi     # 0xb8539
leaq 0x2f6e0(%rip), %rsi     # 0xcc3a7
leaq 0x2ee38(%rip), %rcx     # 0xcbb06
pushq $0x27
jmp 0x9cce9
leaq 0x1b860(%rip), %rdi     # 0xb8539
leaq 0x2f6c7(%rip), %rsi     # 0xcc3a7
leaq 0x2ee30(%rip), %rcx     # 0xcbb17
pushq $0x28
popq %rdx
xorl %eax, %eax
callq 0x60031
leaq 0x1b841(%rip), %rdi     # 0xb8539
leaq 0x2f6a8(%rip), %rsi     # 0xcc3a7
leaq 0x2edd2(%rip), %rcx     # 0xcbad8
pushq $0x29
popq %rdx
movl %ebx, %r8d
xorl %eax, %eax
popq %rbx
jmp 0x60031
popq %rbx
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_x_threads.c
// Function: x_thread_s_join
const x_thread_result* x_thread_s_join( x_thread_s* o )
{
    vd_t ret = NULL;
    if( o->_join )
    {
        int ern = pthread_join( o->_thread, &ret );
        if( ern == EINVAL )  ERR( "No joinable thread." );
        if( ern == ESRCH )   ERR( "Invalid thread ID." );
        if( ern == EDEADLK ) ERR( "Deadlock detected." );
        if( ern ) ERR( "function returned error %i", ern );
        o->_join = false;
    }
    return ret;
}

// Assembly:
pushq %rbp
pushq %rbx
pushq %rax
andq $0x0, (%rsp)
cmpb $0x1, 0x10(%rdi)
jne 0x9cedf
movq %rdi, %rbx
movq 0x8(%rdi), %rdi
movq %rsp, %rsi
callq 0xd040
testl %eax, %eax
je 0x9cf44
movl %eax, %ebp
cmpl $0x3, %eax
je 0x9cee3
cmpl $0x23, %ebp
je 0x9ceff
cmpl $0x16, %ebp
jne 0x9cf20
leaq 0x2f5b2(%rip), %rdi     # 0xcc47c
leaq 0x2f4d6(%rip), %rsi     # 0xcc3a7
leaq 0x2f5b4(%rip), %rcx     # 0xcc48c
movl $0xb3, %edx
jmp 0x9cf19
xorl %eax, %eax
jmp 0x9cf4c
leaq 0x2f592(%rip), %rdi     # 0xcc47c
leaq 0x2f4b6(%rip), %rsi     # 0xcc3a7
leaq 0x2f5a8(%rip), %rcx     # 0xcc4a0
movl $0xb4, %edx
jmp 0x9cf19
leaq 0x2f576(%rip), %rdi     # 0xcc47c
leaq 0x2f49a(%rip), %rsi     # 0xcc3a7
leaq 0x2ed14(%rip), %rcx     # 0xcbc28
movl $0xb5, %edx
xorl %eax, %eax
callq 0x60031
leaq 0x2f555(%rip), %rdi     # 0xcc47c
leaq 0x2f479(%rip), %rsi     # 0xcc3a7
leaq 0x2eba3(%rip), %rcx     # 0xcbad8
movl $0xb6, %edx
movl %ebp, %r8d
xorl %eax, %eax
callq 0x60031
movb $0x0, 0x10(%rbx)
movq (%rsp), %rax
addq $0x8, %rsp
popq %rbx
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_x_threads.c
// Function: x_thread_s_call_m_thread_func
x_thread_s* x_thread_s_call_m_thread_func( x_thread_s* o, x_thread* thread_obj )
{
    x_thread_s_join( o );
    int ern = pthread_create( &o->_thread, NULL, x_m_thread_func, thread_obj );
    if( ern ) ERR( "function returned error %i", ern );
    o->_join = true;
    return o;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
callq 0x9ce8d
leaq 0x8(%rbx), %rdi
leaq 0x41(%rip), %rdx        # 0x9cfae
xorl %esi, %esi
movq %r14, %rcx
callq 0xd1f0
testl %eax, %eax
je 0x9cf9f
leaq 0x2f4be(%rip), %rdi     # 0xcc440
leaq 0x2f41e(%rip), %rsi     # 0xcc3a7
leaq 0x2eb48(%rip), %rcx     # 0xcbad8
movl $0x9b, %edx
movl %eax, %r8d
xorl %eax, %eax
callq 0x60031
movb $0x1, 0x10(%rbx)
movq %rbx, %rax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_x_threads.c
// Function: x_m_thread_func
static vd_t x_m_thread_func( vd_t thread_obj )
{
    if( x_thread_defines_m_thread_func( thread_obj ) )
    {
        return ( vd_t )x_thread_a_m_thread_func( thread_obj );
    }
    else if( x_thread_defines_c_thread_func( thread_obj ) )
    {
        return ( vd_t )x_thread_a_c_thread_func( thread_obj );
    }
    else
    {
        return NULL;
    }
}

// Assembly:
pushq %rbx
movq %rdi, %rbx
callq 0x9d1c6
cmpq $0x0, 0x10(%rax)
je 0x9cfcd
movq %rbx, %rdi
callq 0x9d1c6
movq %rbx, %rdi
popq %rbx
jmpq *0x10(%rax)
movq %rbx, %rdi
callq 0x9d1a6
testb %al, %al
je 0x9cfe2
movq %rbx, %rdi
popq %rbx
jmp 0x9d1b6
xorl %eax, %eax
popq %rbx
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_x_threads.c
// Function: x_thread_s_call_c_thread_func
x_thread_s* x_thread_s_call_c_thread_func( x_thread_s* o, const x_thread* thread_obj )
{
    x_thread_s_join( o );
    int ern = pthread_create( &o->_thread, NULL, x_c_thread_func, ( vd_t )thread_obj );
    if( ern ) ERR( "function returned error %i", ern );
    o->_join = true;
    return o;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
callq 0x9ce8d
leaq 0x8(%rbx), %rdi
leaq 0x41(%rip), %rdx        # 0x9d041
xorl %esi, %esi
movq %r14, %rcx
callq 0xd1f0
testl %eax, %eax
je 0x9d032
leaq 0x2f449(%rip), %rdi     # 0xcc45e
leaq 0x2f38b(%rip), %rsi     # 0xcc3a7
leaq 0x2eab5(%rip), %rcx     # 0xcbad8
movl $0xa6, %edx
movl %eax, %r8d
xorl %eax, %eax
callq 0x60031
movb $0x1, 0x10(%rbx)
movq %rbx, %rax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_x_threads.c
// Function: x_threads_set_nice_level
er_t x_threads_set_nice_level( s2_t nice_level )
{
    int nice(int inc);
    errno = 0;
    er_t err = 0;
    if( nice( nice_level ) == -1 )
    {
        if( errno != 0 )
        {
            err = EM_ERR_fa
            (
                "nice( #<s2_t> ) failed: #<sc_t>\n"
                "Choose a higher value or change the nice limit for the user as follows.\n"
                "Open: /etc/security/limits.conf\n"
                "Add/edit line: <username> soft nice <new limit>\n"
                "Add/edit line: <username> hard nice <new limit>\n"
                "<new limit> should be negative; lowest possible value is: -20\n",
                nice_level, strerror( errno )
            );
        }
    }
    return err;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movl %edi, %ebx
callq 0xd330
movq %rax, %r14
andl $0x0, (%rax)
movl %ebx, %edi
callq 0xd250
cmpl $-0x1, %eax
je 0x9d0c3
xorl %eax, %eax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
movl (%r14), %edi
testl %edi, %edi
je 0x9d0b9
callq 0xd2a0
leaq 0x1b500(%rip), %rdi     # 0xb85d6
leaq 0x2f2ca(%rip), %rsi     # 0xcc3a7
leaq 0x2f3cf(%rip), %rcx     # 0xcc4b3
movl $0xef, %edx
movl %ebx, %r8d
movq %rax, %r9
xorl %eax, %eax
addq $0x8, %rsp
popq %rbx
popq %r14
jmp 0x6078d
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_x_threads.c
// Function: bcore_x_threads_signal_handler
vd_t bcore_x_threads_signal_handler( const bcore_signal_s* o )
{
    switch( bcore_signal_s_handle_type( o, typeof( "bcore_x_threads" ) ) )
    {
        case TYPEOF_init1:
        {
            BCORE_REGISTER_TYPE( root, pthread_mutex_t );
            BCORE_REGISTER_TYPE( root, pthread_cond_t );
            BCORE_REGISTER_TYPE( root, pthread_t );
        }
        break;

        default: break;
    }

    return NULL;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movabsq $-0x4ca5ba687ee57899, %rsi # imm = 0xB35A4597811A8767
callq 0x75141
movabsq $0x6a72ce8f8250efc6, %rcx # imm = 0x6A72CE8F8250EFC6
cmpq %rcx, %rax
jne 0x9d19c
leaq 0x2f4b4(%rip), %rdi     # 0xcc5da
callq 0x7227a
movabsq $-0x5cab02e00f3b983b, %rbx # imm = 0xA354FD1FF0C467C5
pushq $0x28
popq %rdx
pushq $0x8
popq %r14
movq %rax, %rdi
movq %rbx, %rsi
movq %r14, %rcx
callq 0x63bce
movq %rax, %rdi
callq 0x64d04
leaq 0x2f491(%rip), %rdi     # 0xcc5ea
callq 0x7227a
pushq $0x30
popq %rdx
movq %rax, %rdi
movq %rbx, %rsi
movq %r14, %rcx
callq 0x63bce
movq %rax, %rdi
callq 0x64d04
leaq 0x2f47b(%rip), %rdi     # 0xcc5f9
callq 0x7227a
movq %rax, %rdi
movq %rbx, %rsi
movq %r14, %rdx
movq %r14, %rcx
callq 0x63bce
movq %rax, %rdi
callq 0x64d04
xorl %eax, %eax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_xoila.c
// Function: bcore_xoila_get_group_stamp_map
bcore_hmap_tpto_s* bcore_xoila_get_group_stamp_map( void )
{
    bcore_hmap_tpto_s* group_stamp_map = ( vd_t )bcore_const_get_o( TYPEOF_bcore_const_group_stamp_map );
    if( !group_stamp_map )
    {
        group_stamp_map = bcore_hmap_tpto_s_create();
        bcore_const_t_set_d( TYPEOF_bcore_const_group_stamp_map, TYPEOF_bcore_hmap_tpto_s, group_stamp_map );
        bcore_hmap_tpto_s_set_type( group_stamp_map, TYPEOF_bcore_arr_tp_s );
    }
    return group_stamp_map;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movabsq $0x129fef0f06315123, %r14 # imm = 0x129FEF0F06315123
movq %r14, %rdi
callq 0xa64ad
movq %rax, %rbx
testq %rax, %rax
jne 0x9d2af
xorl %eax, %eax
callq 0x6956f
movq %rax, %rbx
movabsq $-0x315ec7ac170d5e3f, %rsi # imm = 0xCEA13853E8F2A1C1
movq %r14, %rdi
movq %rax, %rdx
callq 0xa6204
movabsq $-0x79c1eb0a2e5b4c6b, %rsi # imm = 0x863E14F5D1A4B395
movq %rbx, %rdi
callq 0x69733
movq %rbx, %rax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_bin_ml.c
// Function: bcore_bin_ml_x_to_file
void bcore_bin_ml_x_to_file( sr_s obj, sc_t file )
{
    bcore_life_s* l = bcore_life_s_create();
    bcore_sink_chain_s* chain = bcore_life_s_push_aware( l, bcore_sink_chain_s_create() );
    bcore_sink_chain_s_push_d( chain, bcore_sink_file_s_create_name( file ) );
    bcore_sink_chain_s_push_d( chain, bcore_inst_t_create( typeof( "bcore_sink_buffer_s" ) ) );
    bcore_translate_x( sr_asm( bcore_bin_ml_translator_s_create() ), obj, sr_awm( chain ) );
    bcore_life_s_discard( l );
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x78, %rsp
movq %rdi, %r15
xorl %eax, %eax
callq 0x717ac
movq %rax, %rbx
xorl %eax, %eax
callq 0x752d1
movq %rbx, %rdi
movq %rax, %rsi
callq 0x71a4d
movq %rax, %r14
movq %r15, %rdi
callq 0x75705
movq %r14, %rdi
movq %rax, %rsi
callq 0x75327
leaq 0x27040(%rip), %rdi     # 0xc4f9f
callq 0x9dff3
movq %rax, %rdi
callq 0x9d3be
movq %r14, %rdi
movq %rax, %rsi
callq 0x75327
callq 0x9d3b2
leaq 0x60(%rsp), %r15
movq %r15, %rdi
movq %rax, %rsi
callq 0x9dd47
leaq 0x48(%rsp), %r12
movq %r12, %rdi
movq %r14, %rsi
callq 0x9dd70
movq 0x10(%r12), %rax
movq %rax, 0x40(%rsp)
movups (%r12), %xmm0
movups %xmm0, 0x30(%rsp)
movq 0xb0(%rsp), %rax
movq %rax, 0x28(%rsp)
movaps 0xa0(%rsp), %xmm0
movups %xmm0, 0x18(%rsp)
movq 0x10(%r15), %rax
movq %rax, 0x10(%rsp)
movups (%r15), %xmm0
movups %xmm0, (%rsp)
callq 0x8a2f4
movq %rbx, %rdi
addq $0x78, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmp 0x717c7
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_bin_ml.c
// Function: bcore_bin_ml_from_source
sr_s bcore_bin_ml_from_source( bcore_source* source )
{
    bcore_bin_ml_interpreter_s* interpreter = bcore_bin_ml_interpreter_s_create();
    sr_s ret = interpret( interpreter, sr_null(), sr_awm( source ) );
    bcore_bin_ml_interpreter_s_discard( interpreter );
    return ret;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x68, %rsp
movq %rsi, %r14
movq %rdi, %rbx
callq 0x9e4a2
movq %rax, %r15
xorps %xmm0, %xmm0
movaps %xmm0, 0x30(%rsp)
andq $0x0, 0x40(%rsp)
leaq 0x50(%rsp), %r12
movq %r12, %rdi
movq %r14, %rsi
callq 0x9dd70
movq 0x10(%r12), %rax
movq %rax, 0x28(%rsp)
movups (%r12), %xmm0
movups %xmm0, 0x18(%rsp)
movq 0x40(%rsp), %rax
movq %rax, 0x10(%rsp)
movaps 0x30(%rsp), %xmm0
movups %xmm0, (%rsp)
movq %rbx, %rdi
callq 0x9e528
movq %r15, %rdi
callq 0x9e4b1
movq %rbx, %rax
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_bin_ml.c
// Function: bcore_bin_ml_from_file
sr_s bcore_bin_ml_from_file( sc_t file )
{
    sr_s chain = sr_asm( bcore_source_chain_s_create() );
    bcore_source_chain_s_push_d( chain.o, bcore_source_file_s_create_name( file ) );
    bcore_source_chain_s_push_d( chain.o, bcore_inst_t_create( typeof( "bcore_source_string_s" ) ) );
    sr_s ret = bcore_interpret_x( bcore_inst_t_create_sr( typeof( "bcore_bin_ml_interpreter_s" ) ), chain );
    return ret;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x68, %rsp
movq %rsi, %r15
movq %rdi, %rbx
xorl %eax, %eax
callq 0x7656e
leaq 0x50(%rsp), %r14
movq %r14, %rdi
movq %rax, %rsi
callq 0x9dd47
movq (%r14), %r12
movq %r15, %rdi
callq 0x77118
movq %r12, %rdi
movq %rax, %rsi
callq 0x765c4
leaq 0x25f6d(%rip), %rdi     # 0xc4f4a
callq 0x9dff3
movq %rax, %rdi
callq 0x9d3be
movq %r12, %rdi
movq %rax, %rsi
callq 0x765c4
leaq 0x260dd(%rip), %rdi     # 0xc50d9
callq 0x9dff3
leaq 0x38(%rsp), %r15
movq %r15, %rdi
movq %rax, %rsi
callq 0x9d2e0
movq 0x10(%r14), %rax
movq %rax, 0x28(%rsp)
movups (%r14), %xmm0
movups %xmm0, 0x18(%rsp)
movq 0x10(%r15), %rax
movq %rax, 0x10(%rsp)
movups (%r15), %xmm0
movups %xmm0, (%rsp)
movq %rbx, %rdi
callq 0x8742a
movq %rbx, %rax
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_bin_ml.c
// Function: bcore_bin_ml_transfer
sr_s bcore_bin_ml_transfer( sr_s obj )
{
    bcore_life_s* l = bcore_life_s_create();
    obj = bcore_life_s_push_sr( l, obj );

    bcore_sink_buffer_s* sink_buffer = bcore_life_s_push_sr( l, bcore_bin_ml_x_to_sink_buffer( obj ) ).o;
    bcore_source_buffer_s* source_buffer = bcore_life_s_push_aware( l, bcore_source_buffer_s_create_from_data( sink_buffer->data, sink_buffer->size ) );
    sr_s out_sr = bcore_bin_ml_from_source( ( bcore_source* )source_buffer );
    bcore_life_s_discard( l );
    return out_sr;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x60, %rsp
movq %rdi, %rbx
xorl %eax, %eax
callq 0x717ac
movq %rax, %r14
movq 0x90(%rsp), %rax
movq %rax, 0x10(%rsp)
movaps 0x80(%rsp), %xmm0
movups %xmm0, (%rsp)
leaq 0x48(%rsp), %r15
movq %r15, %rdi
movq %r14, %rsi
callq 0x719e2
movq 0x10(%r15), %rax
movq %rax, 0x90(%rsp)
movups (%r15), %xmm0
movaps %xmm0, 0x80(%rsp)
movq 0x90(%rsp), %rax
movq %rax, 0x10(%rsp)
movaps 0x80(%rsp), %xmm0
movups %xmm0, (%rsp)
leaq 0x30(%rsp), %r15
movq %r15, %rdi
callq 0x9dcac
movq 0x10(%r15), %rax
movq %rax, 0x10(%rsp)
movups (%r15), %xmm0
movups %xmm0, (%rsp)
leaq 0x18(%rsp), %r15
movq %r15, %rdi
movq %r14, %rsi
callq 0x719e2
movq (%r15), %rax
movq 0x8(%rax), %rdi
movq 0x10(%rax), %rsi
callq 0x769d6
movq %r14, %rdi
movq %rax, %rsi
callq 0x71a4d
movq %rbx, %rdi
movq %rax, %rsi
callq 0x9ef1b
movq %r14, %rdi
callq 0x717c7
movq %rbx, %rax
addq $0x60, %rsp
popq %rbx
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_bin_ml.c
// Function: bcore_bin_ml_a_copy
void bcore_bin_ml_a_copy( vd_t o, vc_t obj )
{
    BLM_INIT();
    bcore_sink_buffer_s* sink_buffer = BLM_A_PUSH( bcore_bin_ml_a_to_sink_buffer( obj ).o );
    bcore_source* source = BLM_A_PUSH( bcore_source_buffer_s_create_from_data( sink_buffer->data, sink_buffer->size ) );
    bcore_bin_ml_a_from_source( o, source );
    BLM_DOWN();
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x50, %rsp
movq %rsi, %r15
movq %rdi, %r14
leaq 0x78ad9(%rip), %rax     # 0x117dd0
movq (%rax), %rsi
leaq 0x20(%rsp), %r12
movq %rsp, %rbx
movq %r12, (%rbx)
movq %r12, %rdi
callq 0x717f5
leaq 0x8(%rsp), %r13
movq %r13, %rdi
movq %r15, %rsi
callq 0x9e02b
movq (%r13), %rsi
movq %r12, %rdi
callq 0x71a4d
movq 0x8(%rax), %rdi
movq 0x10(%rax), %rsi
callq 0x769d6
movq %r12, %rdi
movq %rax, %rsi
callq 0x71a4d
movq %r14, %rdi
movq %rax, %rsi
callq 0x9f13c
movq %rbx, %rdi
callq 0x71b48
addq $0x50, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_bin_ml.c
// Function: bcore_bin_ml_transfer_test
void bcore_bin_ml_transfer_test( sr_s obj )
{
    bcore_life_s* l = bcore_life_s_create();
    obj = bcore_life_s_push_sr( l, obj );
    sr_s sr = bcore_life_s_push_sr( l, bcore_bin_ml_transfer( obj ) );

    s2_t c = bcore_compare_sr( obj, sr );
    if( c != 0 )
    {
        st_s* diff = bcore_life_s_push_aware( l, bcore_diff_sr( obj, sr ) );
        if( diff )
        {
            ERR( "Comparison returned '%"PRIi32"':\n%s\n", c, diff->sc );
        }
        else
        {
            ERR( "Comparison returned '%"PRIi32"' but diff returned 'NULL'\n", c );
        }
    }
    bcore_life_s_discard( l );
}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
subq $0x60, %rsp
xorl %eax, %eax
callq 0x717ac
movq %rax, %rbx
movq 0x90(%rsp), %rax
movq %rax, 0x10(%rsp)
movaps 0x80(%rsp), %xmm0
movups %xmm0, (%rsp)
leaq 0x30(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rsi
callq 0x719e2
movq 0x10(%r14), %rax
movq %rax, 0x90(%rsp)
movups (%r14), %xmm0
movaps %xmm0, 0x80(%rsp)
movq 0x90(%rsp), %rax
movq %rax, 0x10(%rsp)
movaps 0x80(%rsp), %xmm0
movups %xmm0, (%rsp)
leaq 0x48(%rsp), %r14
movq %r14, %rdi
callq 0x9f204
movq 0x10(%r14), %rax
movq %rax, 0x10(%rsp)
movups (%r14), %xmm0
movups %xmm0, (%rsp)
leaq 0x30(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rsi
callq 0x719e2
movq 0x10(%r14), %rax
movq %rax, 0x28(%rsp)
movups (%r14), %xmm0
movups %xmm0, 0x18(%rsp)
movq 0x90(%rsp), %rax
movq %rax, 0x10(%rsp)
movaps 0x80(%rsp), %xmm0
movups %xmm0, (%rsp)
callq 0x80fa8
testl %eax, %eax
je 0x9f4c5
movl %eax, %ebp
leaq 0x80(%rsp), %rax
movq 0x40(%rsp), %rcx
movq %rcx, 0x28(%rsp)
movups 0x30(%rsp), %xmm0
movups %xmm0, 0x18(%rsp)
movq 0x10(%rax), %rcx
movq %rcx, 0x10(%rsp)
movups (%rax), %xmm0
movups %xmm0, (%rsp)
callq 0x81b00
movq %rbx, %rdi
movq %rax, %rsi
callq 0x71a4d
testq %rax, %rax
je 0x9f4a1
movq 0x8(%rax), %r9
leaq 0x2d181(%rip), %rdi     # 0xcc603
leaq 0x2d195(%rip), %rsi     # 0xcc61e
leaq 0x15db2(%rip), %rcx     # 0xb5242
movl $0x1b6, %edx            # imm = 0x1B6
movl %ebp, %r8d
xorl %eax, %eax
callq 0x60031
jmp 0x9f4c5
leaq 0x2d15b(%rip), %rdi     # 0xcc603
leaq 0x2d16f(%rip), %rsi     # 0xcc61e
leaq 0x15daa(%rip), %rcx     # 0xb5260
movl $0x1ba, %edx            # imm = 0x1BA
movl %ebp, %r8d
xorl %eax, %eax
callq 0x60031
movq %rbx, %rdi
callq 0x717c7
addq $0x60, %rsp
popq %rbx
popq %r14
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_bin_ml.c
// Function: bcore_bin_ml_signal_handler
vd_t bcore_bin_ml_signal_handler( const bcore_signal_s* o )
{
    switch( bcore_signal_s_handle_type( o, typeof( "bcore_bin_ml" ) ) )
    {
        case TYPEOF_init1:
        {
            bcore_flect_define_creator( typeof( "bcore_bin_ml_translator_s"  ), translator_s_create_self  );
            bcore_flect_define_creator( typeof( "bcore_bin_ml_interpreter_s" ), interpreter_s_create_self );
        }
        break;

        case TYPEOF_selftest:
        {
            return bin_ml_selftest();
        }
        break;

        default: break;
    }
    return NULL;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %rdi, %rbx
leaq 0x2d142(%rip), %rdi     # 0xcc62d
callq 0x9dff3
movq %rbx, %rdi
movq %rax, %rsi
callq 0x75141
movabsq $0x7ee758bbfced33e3, %rcx # imm = 0x7EE758BBFCED33E3
cmpq %rcx, %rax
je 0x9f556
movabsq $0x6a72ce8f8250efc6, %rcx # imm = 0x6A72CE8F8250EFC6
cmpq %rcx, %rax
jne 0x9f54f
leaq 0x25b9f(%rip), %rdi     # 0xc50bf
callq 0x9dff3
leaq 0x172(%rip), %rsi       # 0x9f69e
movq %rax, %rdi
callq 0x6513b
leaq 0x25b9e(%rip), %rdi     # 0xc50d9
callq 0x9dff3
leaq 0x18f(%rip), %rsi       # 0x9f6d6
movq %rax, %rdi
callq 0x6513b
xorl %ebx, %ebx
jmp 0x9f68f
leaq 0x259a3(%rip), %rdi     # 0xc4f00
callq 0x9dff3
movq %rax, %rbx
leaq 0x25b6d(%rip), %rdi     # 0xc50d9
callq 0x9dff3
movq %rbx, %rdi
movq %rax, %rsi
callq 0x79a8e
testb %al, %al
jne 0x9f5a9
leaq 0xb0c0(%rip), %rdi      # 0xaa647
leaq 0x2d1e1(%rip), %rsi     # 0xcc76f
leaq 0x2d23f(%rip), %rdx     # 0xcc7d4
leaq 0x2d082(%rip), %rcx     # 0xcc61e
movl $0x1c4, %r8d            # imm = 0x1C4
xorl %eax, %eax
callq 0x5ffac
leaq 0x25976(%rip), %rdi     # 0xc4f26
callq 0x9dff3
movq %rax, %rbx
leaq 0x25b00(%rip), %rdi     # 0xc50bf
callq 0x9dff3
movq %rbx, %rdi
movq %rax, %rsi
callq 0x79a8e
testb %al, %al
jne 0x9f5fc
leaq 0xb06d(%rip), %rdi      # 0xaa647
leaq 0x2d203(%rip), %rsi     # 0xcc7e4
leaq 0x2d1ec(%rip), %rdx     # 0xcc7d4
leaq 0x2d02f(%rip), %rcx     # 0xcc61e
movl $0x1c5, %r8d            # imm = 0x1C5
xorl %eax, %eax
callq 0x5ffac
xorl %eax, %eax
callq 0x717ac
movq %rax, %r14
xorl %eax, %eax
callq 0x8eb65
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movl $0x3e8, %esi            # imm = 0x3E8
movq %r15, %rdi
callq 0x8b4e4
movq 0x10(%r15), %rax
movq %rax, 0x10(%rsp)
movups (%r15), %xmm0
movups %xmm0, (%rsp)
leaq 0x30(%rsp), %r15
movq %r15, %rdi
movq %r14, %rsi
callq 0x719e2
callq 0xd340
movq %rax, %r12
movq 0x10(%r15), %rax
movq %rax, 0x10(%rsp)
movups (%r15), %xmm0
movups %xmm0, (%rsp)
callq 0x9f362
callq 0xd340
subq %r12, %rax
cvtsi2sd %rax, %xmm0
divsd 0xa9fa(%rip), %xmm0     # 0xaa070
leaq 0x2d1ca(%rip), %rsi     # 0xcc847
movq %rbx, %rdi
movb $0x1, %al
callq 0x8f42b
movq %r14, %rdi
callq 0x717c7
movq %rbx, %rax
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_bin_ml.c
// Function: get_flag
static inline bl_t get_flag( const sr_s* source )
{
    u0_t v = 0;
    bcore_source_r_get_data( source, &v, 1 );
    if( v == 0 ) return false;
    if( v == 1 ) return true;
    bcore_source_r_parse_err_fa( source, "Invalid flag value '#<u0_t>'.", v );
    return true;
}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
subq $0x10, %rsp
movq %rdi, %rbx
leaq 0xf(%rsp), %r14
movb $0x0, (%r14)
pushq $0x1
popq %rdx
movq %r14, %rsi
callq 0x9fbfa
movzbl (%r14), %ebp
cmpl $0x2, %ebp
jb 0x9fb22
leaq 0x2cbc1(%rip), %rsi     # 0xcc6d7
movq %rbx, %rdi
movl %ebp, %edx
xorl %eax, %eax
callq 0x89a41
testl %ebp, %ebp
setne %al
addq $0x10, %rsp
popq %rbx
popq %r14
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_btree.c
// Function: bcore_btree_node_ip_s_find
bcore_btree_node_ip_s* bcore_btree_node_ip_s_find( bcore_btree_node_ip_s* root, bcore_btree_ip_key_t key )
{
    if( !root ) return NULL;
    bcore_btree_node_ip_s* node = NULL;
    while( root->child0 != BNUL_IP && root != node )
    {
        node = root;
        root = ( key < node->kv1.key )                                         ? node->child0 :
               ( !node->child2 && key > node->kv1.key )                        ? node->child1 :
               (  node->child2 && key > node->kv2.key )                        ? node->child2 :
               (  node->child2 && key > node->kv1.key && key < node->kv2.key ) ? node->child1 : node;
    }
    return root;
}

// Assembly:
xorl %eax, %eax
testq %rdi, %rdi
je 0x9fd58
leaq 0x79638(%rip), %rcx     # 0x119330
movq %rax, %r9
movq %rdi, %rax
movq 0x28(%rdi), %rdi
cmpq %r9, %rax
je 0x9fd58
cmpq %rcx, %rdi
je 0x9fd58
movq (%rax), %r8
cmpq %rsi, %r8
ja 0x9fcf8
movq 0x38(%rax), %rdx
testq %rdx, %rdx
sete %r9b
cmpq %rsi, %r8
setb %r10b
testb %r9b, %r10b
jne 0x9fd46
movq %rax, %r9
testq %rdx, %rdx
je 0x9fd02
movq 0x10(%rax), %r9
cmpq %rsi, %r8
jae 0x9fd4c
cmpq %rsi, %r9
jb 0x9fd4c
movq %rax, %r9
jbe 0x9fd02
movq 0x30(%rax), %rdi
jmp 0x9fcf8
cmpq %rsi, %r9
cmovaeq %rax, %rdx
movq %rdx, %rdi
jmp 0x9fcf8
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_btree.c
// Function: bcore_btree_node_ip_s_run
void bcore_btree_node_ip_s_run( const bcore_btree_node_ip_s* root, void(*func)( vd_t arg, bcore_btree_ip_key_t key, bcore_btree_ip_val_t val ), vd_t arg )
{
    if( !root ) return;
    if( !func ) return;
    if( root->child0 )
    {
        if( root->child0 != BNUL_IP ) bcore_btree_node_ip_s_run( root->child0, func, arg );
    }
    if( root->child1 )
    {
        func( arg, root->kv1.key, root->kv1.val );
        if( root->child1 != BNUL_IP ) bcore_btree_node_ip_s_run( root->child1, func, arg );
    }
    if( root->child2 )
    {
        func( arg, root->kv2.key, root->kv2.val );
        if( root->child2 != BNUL_IP ) bcore_btree_node_ip_s_run( root->child2, func, arg );
    }
}

// Assembly:
testq %rsi, %rsi
je 0x9fdef
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rdx, %rbx
movq %rsi, %r14
movq %rdi, %r15
leaq 0x795b6(%rip), %r12     # 0x119330
testq %r15, %r15
je 0x9fde4
movq 0x28(%r15), %rdi
testq %rdi, %rdi
sete %al
cmpq %r12, %rdi
sete %cl
orb %al, %cl
jne 0x9fd9e
movq %r14, %rsi
movq %rbx, %rdx
callq 0x9fd59
cmpq $0x0, 0x30(%r15)
je 0x9fdc6
movq (%r15), %rsi
movq 0x8(%r15), %rdx
movq %rbx, %rdi
callq *%r14
movq 0x30(%r15), %rdi
cmpq %r12, %rdi
je 0x9fdc6
movq %r14, %rsi
movq %rbx, %rdx
callq 0x9fd59
cmpq $0x0, 0x38(%r15)
je 0x9fde4
movq 0x10(%r15), %rsi
movq 0x18(%r15), %rdx
movq %rbx, %rdi
callq *%r14
movq 0x38(%r15), %r15
cmpq %r12, %r15
jne 0x9fd7a
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_btree.c
// Function: bcore_btree_node_ip_s_keys
uz_t bcore_btree_node_ip_s_keys( bcore_btree_node_ip_s* root )
{
    if( !root || root == BNUL_IP ) return 0;
    uz_t keys = root->child2 ? 2 : 1;
    keys += bcore_btree_node_ip_s_keys( root->child0 );
    keys += bcore_btree_node_ip_s_keys( root->child1 );
    if( root->child2 ) keys += bcore_btree_node_ip_s_keys( root->child2 );
    return keys;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %r14
movq $0x0, (%rsp)
leaq 0x79523(%rip), %r13     # 0x119330
xorl %r12d, %r12d
testq %r14, %r14
je 0x9fe56
cmpq %r13, %r14
je 0x9fe56
movq 0x28(%r14), %rdi
movq 0x38(%r14), %rbp
xorl %ebx, %ebx
testq %rbp, %rbp
sete %bl
callq 0x9fdf0
movq %rax, %r15
subq %rbx, %r15
movq 0x30(%r14), %rdi
callq 0x9fdf0
addq %r15, %rax
addq $0x2, %rax
testq %rbp, %rbp
je 0x9fe52
addq %rax, %r12
movq %rbp, %r14
jmp 0x9fe10
movq %rax, (%rsp)
movq (%rsp), %rax
addq %r12, %rax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_btree.c
// Function: bcore_btree_node_ip_s_show
st_s* bcore_btree_node_ip_s_show( bcore_btree_node_ip_s* o, uz_t depth )
{
    st_s* string = st_s_create();
    if( !o )
    {
        st_s_pushf( string, "()\n" );
        return string;
    }
    if( o->child1 )
    {
        if( o->child0 && o->child0 != BNUL_IP ) st_s_push_st_d( string, bcore_btree_node_ip_s_show( o->child0, depth + 1 ) );
        for( uz_t i = 0; i < depth; i++ ) st_s_pushf( string, "    " );
        st_s_push_fa( string, "(#<u3_t>,#<u3_t>)\n", (u3_t)o->kv1.key, (u3_t)(intptr_t)o->kv1.val );
        if( o->child1 && o->child1 != BNUL_IP ) st_s_pushf( string, "    " );
    }
    if( o->child2 )
    {
        for( uz_t i = 0; i < depth; i++ ) st_s_pushf( string, "    " );
        st_s_push_fa( string, "(#<u3_t>,#<u3_t>)\n", (u3_t)o->kv2.key, (u3_t)(intptr_t)o->kv2.val );
        if( o->child2 && o->child2 != BNUL_IP ) st_s_push_st_d( string, bcore_btree_node_ip_s_show( o->child2, depth + 1 ) );
    }
    return string;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %r15
xorl %eax, %eax
callq 0x8eb65
movq %rax, %rbx
testq %r15, %r15
je 0xa04a3
cmpq $0x0, 0x30(%r15)
je 0xa0431
movq 0x28(%r15), %rdi
testq %rdi, %rdi
sete %al
leaq 0x78f79(%rip), %r13     # 0x119330
cmpq %r13, %rdi
sete %cl
orb %al, %cl
jne 0xa03d5
leaq 0x1(%r14), %rsi
callq 0xa0377
movq %rbx, %rdi
movq %rax, %rsi
callq 0x8f2e5
leaq 0x2139e(%rip), %r12     # 0xc177a
movq %r14, %rbp
subq $0x1, %rbp
jb 0xa03f4
movq %rbx, %rdi
movq %r12, %rsi
xorl %eax, %eax
callq 0x8f42b
jmp 0xa03df
movq (%r15), %rdx
movq 0x8(%r15), %rcx
leaq 0x2c536(%rip), %rsi     # 0xcc938
movq %rbx, %rdi
xorl %eax, %eax
callq 0x8f4ef
movq 0x30(%r15), %rax
testq %rax, %rax
sete %cl
cmpq %r13, %rax
sete %al
orb %cl, %al
jne 0xa0431
leaq 0x21353(%rip), %rsi     # 0xc177a
movq %rbx, %rdi
xorl %eax, %eax
callq 0x8f42b
cmpq $0x0, 0x38(%r15)
je 0xa04b4
leaq 0x2133b(%rip), %r12     # 0xc177a
movq %r14, %r13
subq $0x1, %r13
jb 0xa0457
movq %rbx, %rdi
movq %r12, %rsi
xorl %eax, %eax
callq 0x8f42b
jmp 0xa0442
movq 0x10(%r15), %rdx
movq 0x18(%r15), %rcx
leaq 0x2c4d2(%rip), %rsi     # 0xcc938
movq %rbx, %rdi
xorl %eax, %eax
callq 0x8f4ef
movq 0x38(%r15), %rdi
testq %rdi, %rdi
sete %al
leaq 0x78eaf(%rip), %rcx     # 0x119330
cmpq %rcx, %rdi
sete %cl
orb %al, %cl
jne 0xa04b4
incq %r14
movq %r14, %rsi
callq 0xa0377
movq %rbx, %rdi
movq %rax, %rsi
callq 0x8f2e5
jmp 0xa04b4
leaq 0x2c48a(%rip), %rsi     # 0xcc934
movq %rbx, %rdi
xorl %eax, %eax
callq 0x8f42b
movq %rbx, %rax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_btree.c
// Function: bcore_btree_ip_s_create
bcore_btree_ip_s* bcore_btree_ip_s_create()
{
    bcore_btree_ip_s* o = bcore_alloc( NULL, sizeof( bcore_btree_ip_s ) );
    o->root      = NULL;
    o->chain_beg = NULL;
    o->chain_end = NULL;
    o->chain_ins = NULL;
    o->del_chain = NULL;
    o->block_size = 1024;
    return o;
}

// Assembly:
pushq %rax
pushq $0x30
popq %rsi
xorl %edi, %edi
callq 0x6023e
xorps %xmm0, %xmm0
andq $0x0, 0x20(%rax)
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movq $0x400, 0x28(%rax)      # imm = 0x400
popq %rcx
retq
// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_btree.c
// Function: bcore_btree_ip_s_discard
void bcore_btree_ip_s_discard( bcore_btree_ip_s* o )
{
    o->root = NULL;

    bcore_btree_node_ip_s* chain_beg = o->chain_beg;
    while( chain_beg )
    {
        bcore_btree_node_ip_s* new_beg = *( bcore_btree_node_ip_s** )( chain_beg + o->block_size );
        bcore_alloc( chain_beg, 0 );
        chain_beg = new_beg;
    }

    bcore_alloc( o, 0 );
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
andq $0x0, (%rdi)
movq 0x8(%rdi), %rdi
testq %rdi, %rdi
je 0xa0516
movq 0x28(%rbx), %rax
shlq $0x6, %rax
movq (%rdi,%rax), %r14
xorl %esi, %esi
callq 0x6023e
movq %r14, %rdi
jmp 0xa04f9
movq %rbx, %rdi
xorl %esi, %esi
addq $0x8, %rsp
popq %rbx
popq %r14
jmp 0x6023e