LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_prsg_lcg_u2_05_s_copy
BCORE_DEFINE_OBJECT_INST_P_NASC_END( bcore_prsg_lcg_u2_05_s )

u3_t bcore_prsg_lcg_u2_05_s_state_bits_u3( const bcore_prsg_lcg_u2_05_s* o, sz_t bits )
{
    // bcore_prsg.h:99:5
    
    assert( bits >= 0 && bits <= 64 );
    sz_t o_bits = bcore_prsg_lcg_u2_05_s_bits(o);
    if( o_bits >= bits )
    {
        return  bcore_prsg_lcg_u2_05_s_state_u3(o) >> ( o_bits - bits );
    }
    else
    {
        return  bcore_prsg_lcg_u2_05_s_state_u3(o) << ( bits - o_bits );
    }
}

// Assembly:
cmpq %rsi, %rdi
je 0x5fbbf
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x718637666bac584, %r15 # imm = 0x718637666BAC584
leaq 0x13c94d(%rip), %rax    # 0x19c468
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r15, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x5fb71
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x5fb71
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x5fb71
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x5fb7a
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x5fba1
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xe9bc5
movq %rax, %r12
leaq 0x13c8d2(%rip), %rdi    # 0x19c468
movq %r15, %rsi
movq %rax, %rdx
callq 0x115fac
movq 0x90(%r12), %rax
movq %r12, %rdi
movq %r14, %rsi
movq %rbx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmpq *%rax
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_prsg_lcg_u3_01_s_copy
BCORE_DEFINE_OBJECT_INST_P_NASC_END( bcore_prsg_lcg_u3_01_s )

u3_t bcore_prsg_lcg_u3_01_s_state_bits_u3( const bcore_prsg_lcg_u3_01_s* o, sz_t bits )
{
    // bcore_prsg.h:99:5
    
    assert( bits >= 0 && bits <= 64 );
    sz_t o_bits = bcore_prsg_lcg_u3_01_s_bits(o);
    if( o_bits >= bits )
    {
        return  bcore_prsg_lcg_u3_01_s_state_u3(o) >> ( o_bits - bits );
    }
    else
    {
        return  bcore_prsg_lcg_u3_01_s_state_u3(o) << ( bits - o_bits );
    }
}

// Assembly:
cmpq %rsi, %rdi
je 0x60410
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $-0x10b59958f724077b, %r15 # imm = 0xEF4A66A708DBF885
leaq 0x13c0fc(%rip), %rax    # 0x19c468
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r15, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x603c2
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x603c2
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x603c2
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x603cb
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x603f2
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xe9bc5
movq %rax, %r12
leaq 0x13c081(%rip), %rdi    # 0x19c468
movq %r15, %rsi
movq %rax, %rdx
callq 0x115fac
movq 0x90(%r12), %rax
movq %r12, %rdi
movq %r14, %rsi
movq %rbx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmpq *%rax
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_prsg_lcg_u3_02_s_copy
BCORE_DEFINE_OBJECT_INST_P_NASC_END( bcore_prsg_lcg_u3_02_s )

u3_t bcore_prsg_lcg_u3_02_s_state_bits_u3( const bcore_prsg_lcg_u3_02_s* o, sz_t bits )
{
    // bcore_prsg.h:99:5
    
    assert( bits >= 0 && bits <= 64 );
    sz_t o_bits = bcore_prsg_lcg_u3_02_s_bits(o);
    if( o_bits >= bits )
    {
        return  bcore_prsg_lcg_u3_02_s_state_u3(o) >> ( o_bits - bits );
    }
    else
    {
        return  bcore_prsg_lcg_u3_02_s_state_u3(o) << ( bits - o_bits );
    }
}

// Assembly:
cmpq %rsi, %rdi
je 0x60891
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $-0x88d6858f2aa0178, %r15 # imm = 0xF77297A70D55FE88
leaq 0x13bc7b(%rip), %rax    # 0x19c468
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r15, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x60843
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x60843
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x60843
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x6084c
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x60873
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xe9bc5
movq %rax, %r12
leaq 0x13bc00(%rip), %rdi    # 0x19c468
movq %r15, %rsi
movq %rax, %rdx
callq 0x115fac
movq 0x90(%r12), %rax
movq %r12, %rdi
movq %r14, %rsi
movq %rbx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmpq *%rax
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_prsg_lcg_u3_03_s_copy
BCORE_DEFINE_OBJECT_INST_P_NASC_END( bcore_prsg_lcg_u3_03_s )

u3_t bcore_prsg_lcg_u3_03_s_state_bits_u3( const bcore_prsg_lcg_u3_03_s* o, sz_t bits )
{
    // bcore_prsg.h:99:5
    
    assert( bits >= 0 && bits <= 64 );
    sz_t o_bits = bcore_prsg_lcg_u3_03_s_bits(o);
    if( o_bits >= bits )
    {
        return  bcore_prsg_lcg_u3_03_s_state_u3(o) >> ( o_bits - bits );
    }
    else
    {
        return  bcore_prsg_lcg_u3_03_s_state_u3(o) << ( bits - o_bits );
    }
}

// Assembly:
cmpq %rsi, %rdi
je 0x60d12
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x227b0a713fb1403, %r15 # imm = 0x227B0A713FB1403
leaq 0x13b7fa(%rip), %rax    # 0x19c468
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r15, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x60cc4
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x60cc4
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x60cc4
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x60ccd
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x60cf4
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xe9bc5
movq %rax, %r12
leaq 0x13b77f(%rip), %rdi    # 0x19c468
movq %r15, %rsi
movq %rax, %rdx
callq 0x115fac
movq 0x90(%r12), %rax
movq %r12, %rdi
movq %r14, %rsi
movq %rbx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmpq *%rax
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_prsg_xsg_u2_00_s_copy
BCORE_DEFINE_OBJECT_INST_P_NASC_END( bcore_prsg_xsg_u2_00_s )

u3_t bcore_prsg_xsg_u2_00_s_state_bits_u3( const bcore_prsg_xsg_u2_00_s* o, sz_t bits )
{
    // bcore_prsg.h:99:5
    
    assert( bits >= 0 && bits <= 64 );
    sz_t o_bits = bcore_prsg_xsg_u2_00_s_bits(o);
    if( o_bits >= bits )
    {
        return  bcore_prsg_xsg_u2_00_s_state_u3(o) >> ( o_bits - bits );
    }
    else
    {
        return  bcore_prsg_xsg_u2_00_s_state_u3(o) << ( bits - o_bits );
    }
}

// Assembly:
cmpq %rsi, %rdi
je 0x61193
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x6446c2147eaacd0f, %r15 # imm = 0x6446C2147EAACD0F
leaq 0x13b379(%rip), %rax    # 0x19c468
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r15, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x61145
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x61145
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x61145
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x6114e
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x61175
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xe9bc5
movq %rax, %r12
leaq 0x13b2fe(%rip), %rdi    # 0x19c468
movq %r15, %rsi
movq %rax, %rdx
callq 0x115fac
movq 0x90(%r12), %rax
movq %r12, %rdi
movq %r14, %rsi
movq %rbx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmpq *%rax
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_prsg_xsg_u2_01_s_copy
BCORE_DEFINE_OBJECT_INST_P_NASC_END( bcore_prsg_xsg_u2_01_s )

u3_t bcore_prsg_xsg_u2_01_s_state_bits_u3( const bcore_prsg_xsg_u2_01_s* o, sz_t bits )
{
    // bcore_prsg.h:99:5
    
    assert( bits >= 0 && bits <= 64 );
    sz_t o_bits = bcore_prsg_xsg_u2_01_s_bits(o);
    if( o_bits >= bits )
    {
        return  bcore_prsg_xsg_u2_01_s_state_u3(o) >> ( o_bits - bits );
    }
    else
    {
        return  bcore_prsg_xsg_u2_01_s_state_u3(o) << ( bits - o_bits );
    }
}

// Assembly:
cmpq %rsi, %rdi
je 0x61616
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x5c1ea9147a30efd4, %r15 # imm = 0x5C1EA9147A30EFD4
leaq 0x13aef6(%rip), %rax    # 0x19c468
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r15, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x615c8
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x615c8
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x615c8
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x615d1
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x615f8
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xe9bc5
movq %rax, %r12
leaq 0x13ae7b(%rip), %rdi    # 0x19c468
movq %r15, %rsi
movq %rax, %rdx
callq 0x115fac
movq 0x90(%r12), %rax
movq %r12, %rdi
movq %r14, %rsi
movq %rbx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmpq *%rax
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_prsg_xsg_u2_02_s_copy
BCORE_DEFINE_OBJECT_INST_P_NASC_END( bcore_prsg_xsg_u2_02_s )

u3_t bcore_prsg_xsg_u2_02_s_state_bits_u3( const bcore_prsg_xsg_u2_02_s* o, sz_t bits )
{
    // bcore_prsg.h:99:5
    
    assert( bits >= 0 && bits <= 64 );
    sz_t o_bits = bcore_prsg_xsg_u2_02_s_bits(o);
    if( o_bits >= bits )
    {
        return  bcore_prsg_xsg_u2_02_s_state_u3(o) >> ( o_bits - bits );
    }
    else
    {
        return  bcore_prsg_xsg_u2_02_s_state_u3(o) << ( bits - o_bits );
    }
}

// Assembly:
cmpq %rsi, %rdi
je 0x61a99
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x54cf7814766eda91, %r15 # imm = 0x54CF7814766EDA91
leaq 0x13aa73(%rip), %rax    # 0x19c468
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r15, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x61a4b
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x61a4b
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x61a4b
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x61a54
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x61a7b
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xe9bc5
movq %rax, %r12
leaq 0x13a9f8(%rip), %rdi    # 0x19c468
movq %r15, %rsi
movq %rax, %rdx
callq 0x115fac
movq 0x90(%r12), %rax
movq %r12, %rdi
movq %r14, %rsi
movq %rbx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmpq *%rax
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_prsg_xsg_u2_03_s_copy
BCORE_DEFINE_OBJECT_INST_P_NASC_END( bcore_prsg_xsg_u2_03_s )

u3_t bcore_prsg_xsg_u2_03_s_state_bits_u3( const bcore_prsg_xsg_u2_03_s* o, sz_t bits )
{
    // bcore_prsg.h:99:5
    
    assert( bits >= 0 && bits <= 64 );
    sz_t o_bits = bcore_prsg_xsg_u2_03_s_bits(o);
    if( o_bits >= bits )
    {
        return  bcore_prsg_xsg_u2_03_s_state_u3(o) >> ( o_bits - bits );
    }
    else
    {
        return  bcore_prsg_xsg_u2_03_s_state_u3(o) << ( bits - o_bits );
    }
}

// Assembly:
cmpq %rsi, %rdi
je 0x61f1c
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x4af43f1470833276, %r15 # imm = 0x4AF43F1470833276
leaq 0x13a5f0(%rip), %rax    # 0x19c468
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r15, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x61ece
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x61ece
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x61ece
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x61ed7
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x61efe
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xe9bc5
movq %rax, %r12
leaq 0x13a575(%rip), %rdi    # 0x19c468
movq %r15, %rsi
movq %rax, %rdx
callq 0x115fac
movq 0x90(%r12), %rax
movq %r12, %rdi
movq %r14, %rsi
movq %rbx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmpq *%rax
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_shell_get_op_stamps
bcore_arr_tp_s* bcore_shell_get_op_stamps( const bcore_shell* o )
{
    // bcore_shell.h:315:1
    BLM_INIT_LEVEL(0);
    bcore_arr_tp_s op_groups;BLM_T_INIT_SPUSH(bcore_arr_tp_s, &op_groups);;
    bcore_shell_a_push_op_groups(o,&(op_groups ));
    bcore_arr_tp_s* op_stamps = bcore_arr_tp_s_create();
    {const bcore_arr_tp_s* __a=&(op_groups );if(__a)for(sz_t __i=0;__i<__a->size;__i++){tp_t t=__a->data[__i]; bcore_arr_tp_s_push_arr(op_stamps,x_group_get_arr_traitline_stamps(t ) );}}
    BLM_RETURNV(bcore_arr_tp_s*, op_stamps)
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x50, %rsp
movq %rdi, %rbx
leaq 0x139b58(%rip), %rax    # 0x19bdd0
movq (%rax), %rsi
leaq 0x20(%rsp), %r14
movq %r14, %rdi
callq 0xd6675
movq $0x0, 0x10(%r14)
movq %rsp, %r15
movq %r15, %rdi
callq 0xb8e5d
movabsq $-0x79c1eb0a2e5b4c6b, %rsi # imm = 0x863E14F5D1A4B395
movq %r14, %rdi
movq %r15, %rdx
callq 0xd68d9
movq (%rbx), %r14
leaq 0x136ee6(%rip), %rax    # 0x1991a0
movl 0x136ee0(%rip), %ecx    # 0x1991a0
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r14, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r14, %rdx
je 0x62314
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r14, %rdx
je 0x62314
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r14, %rdx
je 0x62314
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r14, %rdx
jne 0x6231d
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x62344
movabsq $-0xe3c3103182b3769, %rdi # imm = 0xF1C3CEFCE7D4C897
movq %r14, %rsi
callq 0xe9bc5
movq %rax, %r15
leaq 0x136e67(%rip), %rdi    # 0x1991a0
movq %r14, %rsi
movq %rax, %rdx
callq 0x115fac
movq %rsp, %r14
movq %rbx, %rdi
movq %r14, %rsi
callq *0x20(%r15)
xorl %eax, %eax
callq 0xb8f17
movq %rax, %rbx
cmpq $0x0, 0x10(%r14)
je 0x6239c
xorl %r15d, %r15d
movq 0x8(%rsp), %rax
movq (%rax,%r15,8), %r14
callq 0x11cbb0
movq %rax, %rdi
movq %r14, %rsi
callq 0xcb753
testq %rax, %rax
je 0x62388
movq (%rax), %rsi
jmp 0x6238a
xorl %esi, %esi
movq %rbx, %rdi
callq 0xb918a
incq %r15
cmpq 0x10(%rsp), %r15
jb 0x62365
leaq 0x20(%rsp), %rdi
callq 0xd6d2c
movq %rbx, %rax
addq $0x50, %rsp
popq %rbx
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_shell_op_parse_match
bl_t bcore_shell_op_parse_match( bcore_shell_op* o, x_source* source )
{
    // bcore_shell.h:112:5
    BLM_INIT_LEVEL(0);
    st_s key;BLM_T_INIT_SPUSH(st_s, &key);;
    BLM_TRY_EXIT(x_source_parse_fa(source,"#=name", (&(key)) ))
    if( key.size == 0 ) BLM_RETURNV(bl_t, false)
    if( !bcore_shell_op_key_match(o,key.sc ) ) BLM_RETURNV(bl_t, false)
    BLM_TRY_EXIT(x_source_parse_fa(source,"#-name" ))
    BLM_RETURNV(bl_t, true)
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x58, %rsp
movq %rsi, %rbx
movq %rdi, %r14
leaq 0x138b34(%rip), %rax    # 0x19bdd0
movq (%rax), %rsi
leaq 0x28(%rsp), %r15
movq %r15, %rdi
callq 0xd6675
movq $0x0, 0x10(%r15)
leaq 0x8(%rsp), %r12
movq %r12, %rdi
callq 0x109030
movabsq $-0x503db0e6e1c2e704, %rsi # imm = 0xAFC24F191E3D18FC
movq %r15, %rdi
movq %r12, %rdx
callq 0xd68d9
leaq 0xd4393(%rip), %rsi     # 0x137670
movq %rbx, %rdi
movq %r12, %rdx
xorl %eax, %eax
callq 0x574ed
testq %rax, %rax
je 0x63304
movq %rax, %r15
leaq 0x28(%rsp), %rdi
callq 0xd6d2c
movl %r15d, %edi
callq 0x54258
cmpq $0x0, 0x18(%rsp)
je 0x6334c
movq 0x10(%rsp), %rsi
movq %r14, %rdi
callq 0x64a23
testb %al, %al
je 0x6334c
leaq 0xd4353(%rip), %rsi     # 0x137677
movq %rbx, %rdi
xorl %eax, %eax
callq 0x574ed
movb $0x1, %bl
testq %rax, %rax
je 0x6334e
movq %rax, %r14
leaq 0x28(%rsp), %rdi
callq 0xd6d2c
movl %r14d, %edi
callq 0x54258
jmp 0x6334e
xorl %ebx, %ebx
leaq 0x28(%rsp), %rdi
callq 0xd6d2c
movl %ebx, %eax
addq $0x58, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_shell_op_key_match
bl_t bcore_shell_op_key_match( const bcore_shell_op* o, sc_t key )
{
    // bcore_shell.h:87:5
    BLM_INIT_LEVEL(0);
    st_s st_key;BLM_T_INIT_SPUSH(st_s, &st_key);;
    bcore_shell_op_a_get_key(o,(&(st_key)) );
    sz_t index = 0;
    while( index < st_key.size )
    {BLM_INIT_LEVEL(1);
        st_s name;BLM_T_INIT_SPUSH(st_s, &name);;
        char c = 0;
        while( index < st_key.size )
        {
            c = st_key.data[ index++ ];
            if( c == ' ' || c== ',' ) break;
            st_s_push_char(&(name),c );
        }
        if( name.size == 0 ) BLM_RETURNV(bl_t, false)
        if( st_s_equal_sc(&(name),key ) ) BLM_RETURNV(bl_t, true)
    BLM_DOWN();}
    BLM_RETURNV(bl_t, false)
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xa8, %rsp
movq %rsi, %rbx
movq %rdi, %r15
movabsq $-0x503db0e6e1c2e704, %r13 # imm = 0xAFC24F191E3D18FC
leaq 0x137385(%rip), %rax    # 0x19bdd0
movq (%rax), %rsi
leaq 0x48(%rsp), %r14
movq %r14, %rdi
callq 0xd6675
movq $0x0, 0x10(%r14)
leaq 0x8(%rsp), %r12
movq %r12, %rdi
callq 0x109030
movq %r14, %rdi
movq %r13, %rsi
movq %r12, %rdx
callq 0xd68d9
movq (%r15), %r12
leaq 0x134930(%rip), %rax    # 0x1993b8
movl 0x13492a(%rip), %ecx    # 0x1993b8
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r12, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r12, %rdx
je 0x64ae2
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r12, %rdx
je 0x64ae2
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r12, %rdx
je 0x64ae2
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r12, %rdx
jne 0x64aeb
movq (%rax,%rcx), %r14
testq %r14, %r14
jne 0x64b12
movabsq $0x5c8ac70a55050c9f, %rdi # imm = 0x5C8AC70A55050C9F
movq %r12, %rsi
callq 0xe9bc5
movq %rax, %r14
leaq 0x1348b1(%rip), %rdi    # 0x1993b8
movq %r12, %rsi
movq %rax, %rdx
callq 0x115fac
leaq 0x8(%rsp), %r12
movq %r15, %rdi
movq %r12, %rsi
callq *0x18(%r14)
cmpq $0x0, 0x10(%r12)
je 0x64bdf
xorl %ebp, %ebp
leaq 0x78(%rsp), %r15
leaq 0x48(%rsp), %r12
leaq 0x28(%rsp), %r13
movq %r15, (%rsp)
movq %r15, %rdi
movq %r12, %rsi
callq 0xd6675
movq (%rsp), %r14
movq $0x1, 0x10(%r14)
movq %r13, %rdi
callq 0x109030
movq %r14, %rdi
movabsq $-0x503db0e6e1c2e704, %rsi # imm = 0xAFC24F191E3D18FC
movq %r13, %rdx
callq 0xd68d9
cmpq 0x18(%rsp), %rbp
jae 0x64baf
movq %rbp, %r14
movq 0x10(%rsp), %rax
movzbl (%rax,%rbp), %eax
cmpl $0x20, %eax
je 0x64ba9
cmpl $0x2c, %eax
je 0x64ba9
leaq 0x1(%r14), %rbp
movsbl %al, %esi
movq %r13, %rdi
callq 0x10a448
cmpq 0x18(%rsp), %rbp
jb 0x64b7d
incq %r14
movq %r14, %rbp
cmpq $0x0, 0x38(%rsp)
setne %r14b
je 0x64bee
movq 0x30(%rsp), %rdi
movq %rbx, %rsi
callq 0xbe959
testl %eax, %eax
je 0x64bee
movq %rsp, %rdi
callq 0xd6d0d
cmpq 0x18(%rsp), %rbp
jb 0x64b3e
leaq 0x48(%rsp), %rdi
callq 0xd6d2c
xorl %r14d, %r14d
jmp 0x64bf7
movq (%rsp), %rdi
callq 0xd6d2c
movl %r14d, %eax
addq $0xa8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_shell_op_default_get_s_run
BCORE_DEFINE_OBJECT_INST_P_NASC_END( bcore_shell_op_default_get_s )

void bcore_shell_op_default_get_s_run( bcore_shell_op_default_get_s* o, bcore_shell* obj, const bcore_main_frame_s* main_frame, x_source* source, bcore_sink* sink, bcore_shell_control_s* control )
{
    // bcore_shell.h:580:9
    BLM_INIT_LEVEL(0);
    sr_s sr = x_stamp_path_s_get_sr_in(x_stamp_path_s_parse(((x_stamp_path_s*)BLM_LEVEL_T_PUSH(0,x_stamp_path_s,x_stamp_path_s_create())),((x_source*)BLM_LEVEL_A_PUSH(0,x_source_create_from_st(&(o->path )))) ),((const x_inst*)(obj )));
    if( sr.o )
    {
        x_btml_t_to_sink(((const x_btml*)( sr.o)),sr_s_type(&( sr )),((x_sink*)( sink )));
    }
    else
    {
        bcore_sink_a_push_fa(sink,"Path '#<sc_t>' not found.\n", o->path.sc );
    }
    BLM_DOWN();
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x50, %rsp
movq %r8, %rbx
movq %rsi, %r15
movq %rdi, %r14
leaq 0x134997(%rip), %rax    # 0x19bdd0
movq (%rax), %rsi
leaq 0x20(%rsp), %r12
movq %r12, (%rsp)
movq %r12, %rdi
callq 0xd6675
movq $0x0, 0x10(%r12)
callq 0x56c50
movabsq $-0x74dceedd59a2bd6f, %rdx # imm = 0x8B231122A65D4291
movq %r12, %rdi
xorl %esi, %esi
movq %rax, %rcx
callq 0xd68a8
movq %rax, %r13
leaq 0x8(%r14), %rdi
callq 0xe4653
movq %r12, %rdi
xorl %esi, %esi
movq %rax, %rdx
callq 0xd6b17
movq %r13, %rdi
movq %rax, %rsi
callq 0x56f5e
movq (%r15), %rdx
leaq 0x8(%rsp), %r12
movq %r12, %rdi
movq %r13, %rsi
movq %r15, %rcx
callq 0x57639
movq (%r12), %rdi
testq %rdi, %rdi
je 0x674c5
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x674dc
movq 0x8(%rax), %rsi
jmp 0x674de
movq 0x10(%r14), %rdx
leaq 0xd0326(%rip), %rsi     # 0x1377f6
movq %rbx, %rdi
xorl %eax, %eax
callq 0xfe6d6
jmp 0x674f0
xorl %esi, %esi
xorl %edx, %edx
movl $0x1, %ecx
movq %rbx, %r8
xorl %r9d, %r9d
callq 0x6fedb
movq %rsp, %rdi
callq 0xd6d0d
addq $0x50, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_shell_op_default_alias_s_copy
BCORE_DEFINE_OBJECT_INST_P_NASC_END( bcore_shell_op_default_alias_s )

void bcore_shell_op_default_alias_s_run( bcore_shell_op_default_alias_s* o, bcore_shell* obj, const bcore_main_frame_s* main_frame, x_source* source, bcore_sink* sink, bcore_shell_control_s* control )
{
    // bcore_shell.h:635:9
    
    if( o->key.size == 0 )
    {
        bcore_sink_a_push_fa(sink,"No key defined.\n" );
        return ;
    }
    tp_t tp_key = bcore_hmap_name_s_set_st_c(&(control->hmap_name),&(o->key ));
    if( o->expression.size > 0 )
    {
        x_hmap_tp_set_c(((x_hmap_tp*)(&(control->hmap_alias))),tp_key,((const x_inst*)(&( o->expression ))));
    }
    else
    {
        x_hmap_tp_remove(((x_hmap_tp*)(&(control->hmap_alias))),tp_key );
    }
}

// Assembly:
cmpq %rsi, %rdi
je 0x67f78
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x69a57bffeeef3dcc, %r15 # imm = 0x69A57BFFEEEF3DCC
leaq 0x134594(%rip), %rax    # 0x19c468
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r15, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x67f2a
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x67f2a
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x67f2a
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x67f33
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x67f5a
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xe9bc5
movq %rax, %r12
leaq 0x134519(%rip), %rdi    # 0x19c468
movq %r15, %rsi
movq %rax, %rdx
callq 0x115fac
movq 0x90(%r12), %rax
movq %r12, %rdi
movq %r14, %rsi
movq %rbx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmpq *%rax
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_huffman_codec_s_copy
BCORE_DEFINE_OBJECT_INST_P_NASC_END( bcore_huffman_codec_s )

bcore_huffman_codec_s* bcore_huffman_codec_s_clear( bcore_huffman_codec_s* o )
{
    // bcore_huffman.x:47:1
    
    bcore_huffman_hist_s_attach( &(o->hist ),  NULL);
    bcore_huffman_tree_s_attach( &(o->tree ),  NULL);
    bcore_huffman_count_map_s_attach( &(o->count_map ),  NULL);
    bcore_huffman_index_s_attach( &(o->leaf_index ),  NULL);
    return  o;
}

// Assembly:
cmpq %rsi, %rdi
je 0x68d5e
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x7dbd1c5e923a8433, %r15 # imm = 0x7DBD1C5E923A8433
leaq 0x1337ae(%rip), %rax    # 0x19c468
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r15, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x68d10
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x68d10
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x68d10
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x68d19
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x68d40
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xe9bc5
movq %rax, %r12
leaq 0x133733(%rip), %rdi    # 0x19c468
movq %r15, %rsi
movq %rax, %rdx
callq 0x115fac
movq 0x90(%r12), %rax
movq %r12, %rdi
movq %r14, %rsi
movq %rbx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmpq *%rax
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_huffman_codec_s_scan_start
bcore_huffman_codec_s* bcore_huffman_codec_s_scan_start( bcore_huffman_codec_s* o )
{
    // bcore_huffman.x:58:1
    
    bcore_huffman_codec_s_clear(o);
    bcore_huffman_hist_s_clear(BCORE_PASS_CREATE(bcore_huffman_hist_s,o->hist));
    return  o;
}

// Assembly:
pushq %rbx
movq %rdi, %rbx
callq 0x68f86
movq 0x8(%rbx), %rdi
testq %rdi, %rdi
jne 0x68fed
callq 0x6b7c3
movq %rax, %rdi
movq %rax, 0x8(%rbx)
addq $0x8, %rdi
callq 0xc8c12
movq %rbx, %rax
popq %rbx
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_huffman_codec_s_scan_u2
bcore_huffman_codec_s* bcore_huffman_codec_s_scan_u2( bcore_huffman_codec_s* o, u2_t val )
{
    // bcore_huffman.x:67:1
    
    if( !o->hist ) ERR_fa( "Enclose scanning with 'scan_start()' ... 'scan_end()'." );
    bcore_huffman_hist_s_count(o->hist,val );
    return  o;
}

// Assembly:
pushq %rbp
pushq %rbx
pushq %rax
movl %esi, %ebp
movq %rdi, %rbx
movq 0x8(%rdi), %rdi
testq %rdi, %rdi
jne 0x69031
leaq 0xce874(%rip), %rdi     # 0x137887
leaq 0xce314(%rip), %rsi     # 0x13732e
leaq 0xce884(%rip), %rcx     # 0x1378a5
movl $0xa18, %edx            # imm = 0xA18
xorl %eax, %eax
callq 0xbe6f9
movq 0x8(%rbx), %rdi
addq $0x8, %rdi
movl %ebp, %esi
incq %rsi
xorl %edx, %edx
callq 0xc895b
incq (%rax)
movq %rbx, %rax
addq $0x8, %rsp
popq %rbx
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_huffman_codec_s_scan_end
bcore_huffman_codec_s* bcore_huffman_codec_s_scan_end( bcore_huffman_codec_s* o )
{
    // bcore_huffman.x:88:1
    
    if( !o->hist ) ERR_fa( "No histogram. scan_end() called before scan_start()?." );
    bcore_huffman_count_map_s_attach( &(o->count_map ),  ((bcore_huffman_count_map_s*)(x_array_sort(((x_array*)(bcore_huffman_count_map_s_from_hist(bcore_huffman_count_map_s_create(),o->hist ))),1 ))));
    bcore_huffman_hist_s_attach( &(o->hist ),  NULL);
    bcore_huffman_tree_s_build(BCORE_PASS_CREATE(bcore_huffman_tree_s,o->tree),o->count_map, BCORE_PASS_CREATE(bcore_huffman_index_s,o->leaf_index) );
    return  o;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
cmpq $0x0, 0x8(%rdi)
jne 0x690a5
leaq 0xce851(%rip), %rdi     # 0x1378dc
leaq 0xce29c(%rip), %rsi     # 0x13732e
leaq 0xce862(%rip), %rcx     # 0x1378fb
movl $0xa28, %edx            # imm = 0xA28
xorl %eax, %eax
callq 0xbe6f9
callq 0x6c92b
movq %rax, %r14
movq 0x8(%rbx), %rsi
movq %rax, %rdi
callq 0x6928a
movq (%r14), %r15
leaq 0x132d5d(%rip), %rax    # 0x19be20
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r15, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x69119
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x69119
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x69119
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x69122
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x69149
movabsq $-0x5073d588c3beb52e, %rdi # imm = 0xAF8C2A773C414AD2
movq %r15, %rsi
callq 0xe9bc5
movq %rax, %r12
leaq 0x132ce2(%rip), %rdi    # 0x19be20
movq %r15, %rsi
movq %rax, %rdx
callq 0x115fac
movq %r12, %rdi
movq %r14, %rsi
xorl %edx, %edx
movq $-0x1, %rcx
movl $0x1, %r8d
callq 0xeec21
movq 0x10(%rbx), %rdi
callq 0x6c9d6
movq %r14, 0x10(%rbx)
movq 0x8(%rbx), %rdi
callq 0x6b86e
movq $0x0, 0x8(%rbx)
movq 0x18(%rbx), %r14
testq %r14, %r14
jne 0x69196
callq 0x6ce12
movq %rax, %r14
movq %rax, 0x18(%rbx)
movq 0x10(%rbx), %r15
movq 0x20(%rbx), %rdx
testq %rdx, %rdx
jne 0x691af
callq 0x6bc1d
movq %rax, %rdx
movq %rax, 0x20(%rbx)
movq %r14, %rdi
movq %r15, %rsi
callq 0x69398
movq %rbx, %rax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_huffman_count_map_s_from_hist
BCORE_DEFINE_OBJECT_INST_P_NASC_END( bcore_huffman_count_map_s )

bcore_huffman_count_map_s* bcore_huffman_count_map_s_from_hist( bcore_huffman_count_map_s* o, const bcore_huffman_hist_s* hist )
{
    // bcore_huffman.x:426:5
    
    x_array_clear(((x_array*)(o)));
    for(sz_t i = 0; i < hist->hmap_tpuz.size; i++ )
    {
        tp_t key = bcore_hmap_tpuz_s_idx_key(&(hist->hmap_tpuz),i );
        if( key > 0 )
        {
            bcore_huffman_count_node_s* node = ((bcore_huffman_count_node_s*)(x_array_push(((x_array*)(o)))));
            node->c = bcore_hmap_tpuz_s_idx_val(&(hist->hmap_tpuz),i );
            node->v = bcore_huffman_hist_s_val(hist,key );
        }
    }
    return  o;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
movq (%rdi), %r15
leaq 0x132b7b(%rip), %rax    # 0x19be20
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r15, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x692fb
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x692fb
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x692fb
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x69304
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x6932b
movabsq $-0x5073d588c3beb52e, %rdi # imm = 0xAF8C2A773C414AD2
movq %r15, %rsi
callq 0xe9bc5
movq %rax, %r12
leaq 0x132b00(%rip), %rdi    # 0x19be20
movq %r15, %rsi
movq %rax, %rdx
callq 0x115fac
movq %r12, %rdi
movq %rbx, %rsi
xorl %edx, %edx
callq 0xebeb6
cmpq $0x0, 0x20(%r14)
je 0x69386
leaq 0x8(%r14), %r15
xorl %r12d, %r12d
movq %r15, %rdi
movq %r12, %rsi
callq 0xc8c67
testq %rax, %rax
je 0x6937d
movq %rax, %r13
movq (%rbx), %rsi
movq %rbx, %rdi
callq 0x55f9e
movq %rax, %rbp
movq %r15, %rdi
movq %r12, %rsi
callq 0xc8c74
movq %rax, (%rbp)
decl %r13d
movl %r13d, 0x8(%rbp)
incq %r12
cmpq 0x20(%r14), %r12
jb 0x69346
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_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_huffman_codec_s_encode_u2
const bcore_huffman_codec_s* bcore_huffman_codec_s_encode_u2( const bcore_huffman_codec_s* o, u2_t val, bcore_huffman_bit_buffer_s* bit_buffer )
{
    // bcore_huffman.x:99:1
    
    if( !o->tree ) ERR_fa( "No tree! Load a codec or run scanning first." );
    sz_t idx = bcore_huffman_index_s_get(o->leaf_index,val );
    if( idx == 0 ) ERR_fa( "An encoding for value #<u2_t> does not exist.", val );
    
    const bcore_huffman_node_s* node =&( o->tree->data[ idx ]);
    
    u3_t stack = 0;
    sz_t bits = 0;
    
    while( node->p )
    {
        bl_t bit = ( o->tree->data[ node->p ].b1 == idx );
        idx = node->p;
        node = (&(o->tree->data[ idx ]));
    
        stack = ( stack << 1 ) | ( ( bit ) ? 1 : 0 );
        bits++;
    }
    
    if( bits > 64 )  ERR_fa( "Encoding of value #<u2_t> consumes more than 64 bits.", val );
    
    for(sz_t i = 0; i < bits; i++ )
    {
        bcore_huffman_bit_buffer_s_push_bl(bit_buffer,( stack & 1 ) );
        stack = stack >> 1;
    }
    
    return  o;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdx, %rbx
movl %esi, %ebp
movq %rdi, %r14
cmpq $0x0, 0x18(%rdi)
jne 0x695fc
leaq 0xce34f(%rip), %rdi     # 0x137931
leaq 0xcdd45(%rip), %rsi     # 0x13732e
leaq 0xce361(%rip), %rcx     # 0x137951
movl $0xa33, %edx            # imm = 0xA33
xorl %eax, %eax
callq 0xbe6f9
movq 0x20(%r14), %rdi
addq $0x8, %rdi
movl %ebp, %esi
incq %rsi
callq 0xc883f
testq %rax, %rax
je 0x6961b
movq (%rax), %r13
testq %r13, %r13
jne 0x69642
leaq 0xce30f(%rip), %rdi     # 0x137931
leaq 0xcdd05(%rip), %rsi     # 0x13732e
leaq 0xce34e(%rip), %rcx     # 0x13797e
xorl %r13d, %r13d
movl $0xa35, %edx            # imm = 0xA35
movl %ebp, %r8d
xorl %eax, %eax
callq 0xbe6f9
movq 0x18(%r14), %rax
movq 0x8(%rax), %rax
leaq (,%r13,4), %rcx
addq %r13, %rcx
movq 0x8(%rax,%rcx,8), %rcx
testq %rcx, %rcx
je 0x696cc
xorl %r15d, %r15d
xorl %r12d, %r12d
leaq (%rcx,%rcx,4), %rdx
xorl %esi, %esi
cmpq %r13, 0x18(%rax,%rdx,8)
movq %rcx, %r13
movq 0x8(%rax,%rdx,8), %rcx
sete %sil
leaq (%rsi,%r12,2), %r12
incq %r15
testq %rcx, %rcx
jne 0x69665
leaq -0x1(%r15), %rax
cmpq $0x3f, %rax
jbe 0x696b6
leaq 0xce298(%rip), %rdi     # 0x137931
leaq 0xcdc8e(%rip), %rsi     # 0x13732e
leaq 0xce305(%rip), %rcx     # 0x1379ac
movl $0xa46, %edx            # imm = 0xA46
movl %ebp, %r8d
xorl %eax, %eax
callq 0xbe6f9
movl %r12d, %esi
andl $0x1, %esi
movq %rbx, %rdi
callq 0x696de
shrq %r12
decq %r15
jne 0x696b6
movq %r14, %rax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_huffman_bit_buffer_s_push_bl
bcore_huffman_bit_buffer_s* bcore_huffman_bit_buffer_s_push_bl( bcore_huffman_bit_buffer_s* o, bl_t bit )
{
    // bcore_huffman.x:209:1
    
    if( o->bits == o->size * 8 ) (*(((u0_t*)(x_array_push(((x_array*)(o))))))) = 0;
    sz_t idx = o->bits / 8;
    if( bit )
    {
        u0_t m = 1 << ( o->bits - ( idx * 8 ) );
        o->data[ idx ] |= m;
    }
    o->bits++;
    return  o;
}

// Assembly:
pushq %rbp
pushq %rbx
pushq %rax
movl %esi, %ebp
movq %rdi, %rbx
movq 0x8(%rdi), %rcx
movq 0x18(%rdi), %rax
shlq $0x3, %rax
cmpq %rax, %rcx
jne 0x69709
movq (%rbx), %rsi
movq %rbx, %rdi
callq 0x55f9e
movb $0x0, (%rax)
movq 0x8(%rbx), %rcx
testb %bpl, %bpl
je 0x69727
movq %rcx, %rax
shrq $0x3, %rax
andb $0x7, %cl
movb $0x1, %dl
shlb %cl, %dl
movq 0x10(%rbx), %rcx
orb %dl, (%rcx,%rax)
movq 0x8(%rbx), %rcx
incq %rcx
movq %rcx, 0x8(%rbx)
movq %rbx, %rax
addq $0x8, %rsp
popq %rbx
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_huffman_codec_s_decode_u2
u2_t bcore_huffman_codec_s_decode_u2( const bcore_huffman_codec_s* o, bcore_huffman_bit_buffer_iterator_s* iterator )
{
    // bcore_huffman.x:133:1
    
    if( !o->tree ) ERR_fa( "No tree! Load a codec or run scanning first." );
    const bcore_huffman_node_s* node =&( o->tree->data[ bcore_huffman_tree_s_root_index(o->tree) ]);
    
    while( !bcore_huffman_bit_buffer_iterator_s_eos(iterator) && !bcore_huffman_node_s_is_leaf(node) )
    {
        bl_t bit = bcore_huffman_bit_buffer_iterator_s_read_bl(iterator);
        uz_t idx = ( bit ) ? node->b1 : node->b0;
        node = (&(o->tree->data[ idx ]));
    }
    
    if( !bcore_huffman_node_s_is_leaf(node) )
    {
        ERR_fa( "Decoding error. Bit buffer appears corrupted." );
    }
    
    return  node->v;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movq 0x18(%rdi), %rax
testq %rax, %rax
jne 0x69774
leaq 0xce28c(%rip), %rdi     # 0x1379e2
leaq 0xcdbd1(%rip), %rsi     # 0x13732e
leaq 0xce1ed(%rip), %rcx     # 0x137951
movl $0xa55, %edx            # imm = 0xA55
xorl %eax, %eax
callq 0xbe6f9
movq 0x18(%r14), %rax
movq 0x8(%rax), %rcx
movq 0x10(%rax), %rax
leaq (%rax,%rax,4), %rax
leaq (%rcx,%rax,8), %r15
addq $-0x28, %r15
movq 0x8(%rbx), %rax
movq 0x10(%rbx), %rcx
cmpq 0x8(%rax), %rcx
jae 0x697c8
cmpq $0x0, 0x10(%r15)
je 0x697c8
leaq 0x10(%r15), %r12
movq %rbx, %rdi
callq 0x69800
addq $0x18, %r15
testb %al, %al
cmoveq %r12, %r15
movq (%r15), %rax
movq 0x18(%r14), %rcx
leaq (%rax,%rax,4), %r15
shlq $0x3, %r15
addq 0x8(%rcx), %r15
jmp 0x69788
cmpq $0x0, 0x10(%r15)
je 0x697f0
leaq 0xce20c(%rip), %rdi     # 0x1379e2
leaq 0xcdb51(%rip), %rsi     # 0x13732e
leaq 0xce21e(%rip), %rcx     # 0x137a02
movl $0xa61, %edx            # imm = 0xA61
xorl %eax, %eax
callq 0xbe6f9
movl 0x20(%r15), %eax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_huffman_bit_buffer_iterator_s_copy
BCORE_DEFINE_OBJECT_INST_P_NASC_END( bcore_huffman_bit_buffer_iterator_s )

bl_t bcore_huffman_bit_buffer_iterator_s_read_bl( bcore_huffman_bit_buffer_iterator_s* o )
{
    // bcore_huffman.x:317:1
    
    if( !o->bit_buffer ) ERR_fa( "No buffer assigned. Call setup first." );
    if( o->bit_index >= o->bit_buffer->bits ) ERR_fa( "Reading past end of buffer" );
    sz_t idx = o->bit_index / 8;
    u0_t m = 1 << ( o->bit_index - ( idx * 8 ) );
    o->bit_index++;
    return  ( o->bit_buffer->data[ idx ] & m ) ? true : false;
}

// Assembly:
cmpq %rsi, %rdi
je 0x6b166
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x93943e0ef30024c, %r15 # imm = 0x93943E0EF30024C
leaq 0x1313a6(%rip), %rax    # 0x19c468
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r15, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x6b118
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x6b118
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x6b118
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x6b121
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x6b148
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xe9bc5
movq %rax, %r12
leaq 0x13132b(%rip), %rdi    # 0x19c468
movq %r15, %rsi
movq %rax, %rdx
callq 0x115fac
movq 0x90(%r12), %rax
movq %r12, %rdi
movq %r14, %rsi
movq %rbx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmpq *%rax
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_huffman_codec_s_decode
bcore_huffman_codec_s* bcore_huffman_codec_s_decode( bcore_huffman_codec_s* o, bcore_huffman_bit_buffer_iterator_s* iterator )
{
    // bcore_huffman.x:185:1
    
    bcore_huffman_codec_s_clear(o);
    bcore_huffman_count_map_s_decode(BCORE_PASS_CREATE(bcore_huffman_count_map_s,o->count_map),iterator );
    bcore_huffman_tree_s_build(BCORE_PASS_CREATE(bcore_huffman_tree_s,o->tree),o->count_map, BCORE_PASS_CREATE(bcore_huffman_index_s,o->leaf_index) );
    return  o;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rsi, %r14
movq %rdi, %rbx
callq 0x68f86
movq 0x10(%rbx), %rdi
testq %rdi, %rdi
jne 0x69ba6
callq 0x6c92b
movq %rax, %rdi
movq %rax, 0x10(%rbx)
movq %r14, %rsi
callq 0x69bf0
movq 0x18(%rbx), %r14
testq %r14, %r14
jne 0x69bc3
callq 0x6ce12
movq %rax, %r14
movq %rax, 0x18(%rbx)
movq 0x10(%rbx), %r15
movq 0x20(%rbx), %rdx
testq %rdx, %rdx
jne 0x69bdc
callq 0x6bc1d
movq %rax, %rdx
movq %rax, 0x20(%rbx)
movq %r14, %rdi
movq %r15, %rsi
callq 0x69398
movq %rbx, %rax
popq %rbx
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_huffman_bit_buffer_s_clear
BCORE_DEFINE_OBJECT_INST_P_NASC_END( bcore_huffman_bit_buffer_s )

bcore_huffman_bit_buffer_s* bcore_huffman_bit_buffer_s_clear( bcore_huffman_bit_buffer_s* o )
{
    // bcore_huffman.x:200:1
    
    x_array_clear(((x_array*)(o)));
    o->bits = 0;
    return  o;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %rbx
movq (%rdi), %r14
leaq 0x131a90(%rip), %rax    # 0x19be20
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r14, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r14, %rdx
je 0x6a3e6
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r14, %rdx
je 0x6a3e6
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r14, %rdx
je 0x6a3e6
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r14, %rdx
jne 0x6a3ef
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x6a416
movabsq $-0x5073d588c3beb52e, %rdi # imm = 0xAF8C2A773C414AD2
movq %r14, %rsi
callq 0xe9bc5
movq %rax, %r15
leaq 0x131a15(%rip), %rdi    # 0x19be20
movq %r14, %rsi
movq %rax, %rdx
callq 0x115fac
movq %r15, %rdi
movq %rbx, %rsi
xorl %edx, %edx
callq 0xebeb6
movq $0x0, 0x8(%rbx)
movq %rbx, %rax
popq %rbx
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_huffman_bit_buffer_s_push_f3
bcore_huffman_bit_buffer_s* bcore_huffman_bit_buffer_s_push_f3( bcore_huffman_bit_buffer_s* o, f3_t v, sz_t bits )
{
    // bcore_huffman.x:256:1
    
    ASSERT( bits <= 31 );
    int int_exp = 0;
    s3_t man = llrint( frexp( v, (&(int_exp)) ) * ( ( 1 << bits ) - 1 ) );
    s3_t exp = ((s3_t)(int_exp));
    bcore_huffman_bit_buffer_s_push_s3(o,man, bits );
    bcore_huffman_bit_buffer_s_push_packed_s3(o,exp );
    return  o;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x10, %rsp
movq %rsi, %r14
movq %rdi, %rbx
cmpq $0x20, %rsi
jl 0x6a5f1
leaq 0xc3082(%rip), %rdi     # 0x12d647
leaq 0xcd464(%rip), %rsi     # 0x137a30
leaq 0xcd468(%rip), %rdx     # 0x137a3b
leaq 0xccd54(%rip), %rcx     # 0x13732e
movl $0xad1, %r8d            # imm = 0xAD1
xorl %eax, %eax
movsd %xmm0, (%rsp)
callq 0xbe4ef
movsd (%rsp), %xmm0
leaq 0xc(%rsp), %r12
movl $0x0, (%r12)
movq %r12, %rdi
callq 0xd070
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %r14d, %ecx
shll %cl, %eax
notl %eax
cvtsi2sd %eax, %xmm1
mulsd %xmm1, %xmm0
callq 0xd320
movl (%r12), %ebp
testq %r14, %r14
jle 0x6a648
movq %rax, %r15
xorl %r12d, %r12d
xorl %esi, %esi
btq %r12, %r15
setb %sil
movq %rbx, %rdi
callq 0x696de
incq %r12
cmpq %r12, %r14
jne 0x6a62e
movl %ebp, %esi
notl %esi
shrl $0x1f, %esi
movq %rbx, %rdi
callq 0x696de
movl %ebp, %esi
negl %esi
cmovsl %ebp, %esi
movq %rbx, %rdi
addq $0x10, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
jmp 0x6a47e
// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_huffman_bit_buffer_s_push_bit_buffer
bcore_huffman_bit_buffer_s* bcore_huffman_bit_buffer_s_push_bit_buffer( bcore_huffman_bit_buffer_s* o, const bcore_huffman_bit_buffer_s* src )
{
    // bcore_huffman.x:269:1
    
    u3_t bits = src->bits;
    for(sz_t i = 0; ( i < src->size ) && ( bits > 0 ); i++ )
    {
        bcore_huffman_bit_buffer_s_push_u3(o,src->data[ i ], u3_min( 8, bits ) );
        bits -= u3_min( 8, bits );
    }
    return o;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
movq 0x8(%rsi), %r12
cmpq $0x0, 0x18(%rsi)
setne %al
testq %r12, %r12
setne %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0x6a6ef
xorl %r13d, %r13d
movq %rsi, (%rsp)
movq 0x10(%rsi), %rax
movzbl (%rax,%r13), %r14d
cmpq $0x8, %r12
movl $0x8, %ebp
cmovbq %r12, %rbp
xorl %r15d, %r15d
movl $0x1, %eax
movl %r15d, %ecx
shlq %cl, %rax
xorl %esi, %esi
testl %r14d, %eax
setne %sil
movq %rbx, %rdi
callq 0x696de
incq %r15
cmpq %r15, %rbp
jne 0x6a6b9
incq %r13
movq (%rsp), %rsi
cmpq 0x18(%rsi), %r13
jae 0x6a6ef
subq %rbp, %r12
jne 0x6a6a0
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_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: bcore_huffman_bit_buffer_s_get_hash
tp_t bcore_huffman_bit_buffer_s_get_hash( const bcore_huffman_bit_buffer_s* o )
{
    // bcore_huffman.x:281:1
    
    tp_t hash = bcore_tp_init();
    hash = bcore_tp_fold_u3( hash, o->bits );
    {const bcore_huffman_bit_buffer_s* __a=o ;if(__a)for(sz_t __i=0;__i<__a->size;__i++){u0_t e=__a->data[__i]; hash = bcore_tp_fold_u0( hash, e );}}
    return  hash;
}

// Assembly:
movabsq $0x100000001b3, %rcx    # imm = 0x100000001B3
movq 0x8(%rdi), %rsi
movq 0x18(%rdi), %rdx
movl $0xff, %eax
movq %rsi, %r8
andq %rax, %r8
movabsq $-0x340d631b7bdddcdb, %r9 # imm = 0xCBF29CE484222325
xorq %r8, %r9
imulq %rcx, %r9
movl %esi, %r8d
shrl $0x8, %r8d
movl $0xff, %r10d
andl %r10d, %r8d
xorq %r9, %r8
imulq %rcx, %r8
movl %esi, %r9d
shrl $0x10, %r9d
andl %r10d, %r9d
xorq %r8, %r9
imulq %rcx, %r9
movl %esi, %r8d
shrl $0x18, %r8d
xorq %r9, %r8
imulq %rcx, %r8
movq %rsi, %r9
shrq $0x20, %r9
andq %rax, %r9
xorq %r8, %r9
imulq %rcx, %r9
movq %rsi, %r8
shrq $0x28, %r8
andq %rax, %r8
xorq %r9, %r8
imulq %rcx, %r8
movq %rsi, %r9
shrq $0x30, %r9
andq %rax, %r9
xorq %r8, %r9
imulq %rcx, %r9
shrq $0x38, %rsi
xorq %r9, %rsi
imulq %rcx, %rsi
testq %rdx, %rdx
je 0x6a7c7
movq 0x10(%rdi), %rdi
xorl %r8d, %r8d
movzbl (%rdi,%r8), %eax
xorq %rsi, %rax
incq %r8
imulq %rcx, %rax
movq %rax, %rsi
cmpq %r8, %rdx
jne 0x6a7af
retq
movq %rsi, %rax
retq