LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_operator_f3_uop_s_check_consistency
er_t x_btcl_operator_f3_uop_s_check_consistency( const x_btcl_operator_f3_uop_s* o )
{
    // bcore_x_btcl_operator_f3.x:163:5
    
    BLM_TRY(EM_ASSERT(o->a ))
    BLM_TRY(EM_ASSERT(o->sa ))
    BLM_TRY(EM_ASSERT(o->fp_get != NULL ))
    BLM_TRY(x_btcl_operator_f3_a_check_consistency(o->a))
    return  0;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %rbx
cmpq $0x0, 0x10(%rdi)
je 0x9e4ff
xorl %r14d, %r14d
jmp 0x9e535
leaq 0xa5dc1(%rip), %rsi     # 0x1442c7
leaq 0xa5e01(%rip), %rdx     # 0x14430e
leaq 0xa5dff(%rip), %rcx     # 0x144313
leaq 0xa3f9b(%rip), %r8      # 0x1424b6
movabsq $-0x2b54a1bd1db02486, %rdi # imm = 0xD4AB5E42E24FDB7A
movl $0x1ece, %r9d           # imm = 0x1ECE
xorl %eax, %eax
callq 0xc87b0
movq %rax, %r14
testq %r14, %r14
je 0x9e54e
leaq 0x10a88f(%rip), %rax    # 0x1a8dd0
movq (%rax), %rdi
callq 0xe0b30
jmp 0x9e60a
cmpq $0x0, 0x18(%rbx)
je 0x9e55a
xorl %r15d, %r15d
jmp 0x9e590
leaq 0xa5d66(%rip), %rsi     # 0x1442c7
leaq 0xa5dd6(%rip), %rdx     # 0x14433e
leaq 0xa5da4(%rip), %rcx     # 0x144313
leaq 0xa3f40(%rip), %r8      # 0x1424b6
movabsq $-0x2b54a1bd1db02486, %rdi # imm = 0xD4AB5E42E24FDB7A
movl $0x1ecf, %r9d           # imm = 0x1ECF
xorl %eax, %eax
callq 0xc87b0
movq %rax, %r15
testq %r15, %r15
je 0x9e5a7
leaq 0x10a834(%rip), %rax    # 0x1a8dd0
movq (%rax), %rdi
callq 0xe0b30
movq %r15, %r14
testq %r15, %r15
jne 0x9e60a
cmpq $0x0, 0x20(%rbx)
je 0x9e5b8
xorl %r15d, %r15d
jmp 0x9e5ee
leaq 0xa5d08(%rip), %rsi     # 0x1442c7
leaq 0xa5d7e(%rip), %rdx     # 0x144344
leaq 0xa5d46(%rip), %rcx     # 0x144313
leaq 0xa3ee2(%rip), %r8      # 0x1424b6
movabsq $-0x2b54a1bd1db02486, %rdi # imm = 0xD4AB5E42E24FDB7A
movl $0x1ed0, %r9d           # imm = 0x1ED0
xorl %eax, %eax
callq 0xc87b0
movq %rax, %r15
testq %r15, %r15
je 0x9e605
leaq 0x10a7d6(%rip), %rax    # 0x1a8dd0
movq (%rax), %rdi
callq 0xe0b30
movq %r15, %r14
testq %r15, %r15
je 0x9e613
movq %r14, %rax
popq %rbx
popq %r14
popq %r15
retq
movq 0x10(%rbx), %rbx
movq (%rbx), %r14
leaq 0x109287(%rip), %rax    # 0x1a78a8
movl 0x109281(%rip), %ecx    # 0x1a78a8
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 0x9e67b
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r14, %rdx
je 0x9e67b
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r14, %rdx
je 0x9e67b
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r14, %rdx
jne 0x9e6c6
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x9e6ab
movabsq $0x37a58f457601baa0, %rdi # imm = 0x37A58F457601BAA0
movq %r14, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x109208(%rip), %rdi    # 0x1a78a8
movq %r14, %rsi
movq %rax, %rdx
callq 0x12128c
movq %rbx, %rdi
callq *0x28(%r15)
movq %rax, %r14
testq %rax, %rax
jne 0x9e53a
xorl %r14d, %r14d
jmp 0x9e60a
xorl %r15d, %r15d
jmp 0x9e67f
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_operator_f3_bop_s_set_args
er_t x_btcl_operator_f3_bop_s_set_args( x_btcl_operator_f3_bop_s* o, x_btcl_operator_f3_arg_arr_s* arg_arr )
{
    // bcore_x_btcl_operator_f3.x:217:5
    
    BLM_TRY(x_btcl_operator_f3_a_set_args(o->a,arg_arr ))
    BLM_TRY(x_btcl_operator_f3_a_set_args(o->b,arg_arr ))
    return  0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movq 0x10(%rdi), %r15
movq (%r15), %r12
leaq 0x10870c(%rip), %rbp    # 0x1a78a8
movl 0x108706(%rip), %eax    # 0x1a78a8
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%rbp,%rax,8), %rcx
movq 0x18(%rbp,%rax,8), %rdx
andq %r12, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %r12, %rdx
je 0x9f1f9
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r12, %rdx
je 0x9f1f9
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r12, %rdx
je 0x9f1f9
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r12, %rdx
jne 0x9f305
movq (%rax,%rcx), %r13
testq %r13, %r13
jne 0x9f229
movabsq $0x37a58f457601baa0, %rdi # imm = 0x37A58F457601BAA0
movq %r12, %rsi
callq 0xf3f85
movq %rax, %r13
leaq 0x10868a(%rip), %rdi    # 0x1a78a8
movq %r12, %rsi
movq %rax, %rdx
callq 0x12128c
movq %r15, %rdi
movq %rbx, %rsi
callq *0x20(%r13)
testq %rax, %rax
jne 0x9f2dc
movq 0x18(%r14), %r14
movq (%r14), %r15
movl 0x10865f(%rip), %eax    # 0x1a78a8
cltq
leaq (%rax,%rax,2), %rax
movq 0x20(%rbp,%rax,8), %rcx
movq 0x18(%rbp,%rax,8), %rdx
andq %r15, %rdx
shlq $0x4, %rdx
leaq (%rcx,%rdx), %rax
movq (%rcx,%rdx), %rdx
movl $0x8, %ecx
cmpq %r15, %rdx
je 0x9f29c
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x9f29c
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x9f29c
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x9f30d
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x9f2cc
movabsq $0x37a58f457601baa0, %rdi # imm = 0x37A58F457601BAA0
movq %r15, %rsi
callq 0xf3f85
movq %rax, %r12
leaq 0x1085e7(%rip), %rdi    # 0x1a78a8
movq %r15, %rsi
movq %rax, %rdx
callq 0x12128c
movq %r14, %rdi
movq %rbx, %rsi
callq *0x20(%r12)
testq %rax, %rax
je 0x9f300
movq %rax, %r15
leaq 0x109aea(%rip), %rax    # 0x1a8dd0
movq (%rax), %rdi
callq 0xe0b30
movq %r15, %rax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
xorl %r15d, %r15d
jmp 0x9f2ee
xorl %r13d, %r13d
jmp 0x9f1fd
xorl %r12d, %r12d
jmp 0x9f2a0
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_operator_f3_group_signal_init1
void x_btcl_operator_f3_group_signal_init1( void )
{
    // bcore_x_btcl_operator_f3.x:27:1
    
    
        BCORE_REGISTER_TYPE( function_pointer, x_btcl_operator_f3_fp_f3_ar0 );
        BCORE_REGISTER_TYPE( function_pointer, x_btcl_operator_f3_fp_f3_ar1 );
        BCORE_REGISTER_TYPE( function_pointer, x_btcl_operator_f3_fp_f3_ar2 );
        BCORE_REGISTER_TYPE( function_pointer, x_btcl_operator_f3_fp_f3_ar3 );
}

// Assembly:
pushq %rbx
leaq 0xa3f43(%rip), %rdi     # 0x1443c2
callq 0xe1270
movabsq $0x2d929df1d8b41fe3, %rbx # imm = 0x2D929DF1D8B41FE3
movl $0x8, %edx
movl $0x8, %ecx
movq %rax, %rdi
movq %rbx, %rsi
callq 0xcd779
movq %rax, %rdi
callq 0xcf203
leaq 0xa3f2d(%rip), %rdi     # 0x1443df
callq 0xe1270
movl $0x8, %edx
movl $0x8, %ecx
movq %rax, %rdi
movq %rbx, %rsi
callq 0xcd779
movq %rax, %rdi
callq 0xcf203
leaq 0xa3f21(%rip), %rdi     # 0x1443fc
callq 0xe1270
movl $0x8, %edx
movl $0x8, %ecx
movq %rax, %rdi
movq %rbx, %rsi
callq 0xcd779
movq %rax, %rdi
callq 0xcf203
leaq 0xa3f15(%rip), %rdi     # 0x144419
callq 0xe1270
movl $0x8, %edx
movl $0x8, %ecx
movq %rax, %rdi
movq %rbx, %rsi
callq 0xcd779
movq %rax, %rdi
popq %rbx
jmp 0xcf203
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_net_plain_branch_s_setup
BCORE_DEFINE_OBJECT_INST_P_NASC_END( x_btcl_net_plain_branch_s )

x_btcl_net_plain_branch_s* x_btcl_net_plain_branch_s_setup( x_btcl_net_plain_branch_s* o, tp_t name, const x_source_point_s* sp, sr_s* sr )
{
    // bcore_x_btcl_net.x:33:5
    
    o->name = name;
    x_source_point_s_copy(BCORE_PASS_CREATE(x_source_point_s,o->sp),sp );
    sr_s_clear(&(o->sr));
    if( sr ) sr_s_tsm(&(o->sr),sr_s_type(sr), ((x_inst*)bcore_fork(sr->o)) );
    return o;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x38, %rsp
movq %rcx, %r14
movq %rdx, %r15
movq %rdi, %rbx
movq %rsi, 0x8(%rdi)
movq 0x28(%rdi), %rdi
testq %rdi, %rdi
jne 0xa133a
callq 0x59ec4
movq %rax, %rdi
movq %rax, 0x28(%rbx)
movq %r15, %rsi
callq 0x59df2
leaq 0x10(%rbx), %r15
movq 0x20(%rbx), %rax
movq %rax, 0x30(%rsp)
movups 0x10(%rbx), %xmm0
movaps %xmm0, 0x20(%rsp)
testb $0x2, %al
je 0xa1374
movq 0x30(%rsp), %rax
movq %rax, 0x10(%rsp)
movaps 0x20(%rsp), %xmm0
movups %xmm0, (%rsp)
callq 0x112485
xorps %xmm0, %xmm0
movups %xmm0, (%r15)
movq $0x0, 0x10(%r15)
testq %r14, %r14
je 0xa13ce
movq 0x8(%r14), %rax
testq %rax, %rax
je 0xa1397
movq 0x8(%rax), %r12
jmp 0xa139a
xorl %r12d, %r12d
movq (%r14), %rdi
callq 0xc8348
movq %rax, %r14
movq %r15, %rdi
callq 0x112baf
testq %r12, %r12
je 0xa13bc
movq %r12, %rdi
callq 0x1123e1
jmp 0xa13be
xorl %eax, %eax
movq %r14, 0x10(%rbx)
movq %rax, 0x18(%rbx)
movq $0x2, 0x20(%rbx)
movq %rbx, %rax
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_net_socket_branch_s_setup
BCORE_DEFINE_OBJECT_INST_P_NASC_END( x_btcl_net_socket_branch_s )

x_btcl_net_socket_branch_s* x_btcl_net_socket_branch_s_setup( x_btcl_net_socket_branch_s* o, tp_t name, const x_source_point_s* sp, sr_s* sr )
{
    // bcore_x_btcl_net.x:57:5
    
    o->name = name;
    x_source_point_s_copy(BCORE_PASS_CREATE(x_source_point_s,o->sp),sp );
    sr_s_clear(&(o->sr));
    if( sr ) sr_s_tsm(&(o->sr),sr_s_type(sr), ((x_inst*)bcore_fork(sr->o)) );
    return o;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x38, %rsp
movq %rcx, %r14
movq %rdx, %r15
movq %rdi, %rbx
movq %rsi, 0x8(%rdi)
movq 0x28(%rdi), %rdi
testq %rdi, %rdi
jne 0xa1cf8
callq 0x59ec4
movq %rax, %rdi
movq %rax, 0x28(%rbx)
movq %r15, %rsi
callq 0x59df2
leaq 0x10(%rbx), %r15
movq 0x20(%rbx), %rax
movq %rax, 0x30(%rsp)
movups 0x10(%rbx), %xmm0
movaps %xmm0, 0x20(%rsp)
testb $0x2, %al
je 0xa1d32
movq 0x30(%rsp), %rax
movq %rax, 0x10(%rsp)
movaps 0x20(%rsp), %xmm0
movups %xmm0, (%rsp)
callq 0x112485
xorps %xmm0, %xmm0
movups %xmm0, (%r15)
movq $0x0, 0x10(%r15)
testq %r14, %r14
je 0xa1d8c
movq 0x8(%r14), %rax
testq %rax, %rax
je 0xa1d55
movq 0x8(%rax), %r12
jmp 0xa1d58
xorl %r12d, %r12d
movq (%r14), %rdi
callq 0xc8348
movq %rax, %r14
movq %r15, %rdi
callq 0x112baf
testq %r12, %r12
je 0xa1d7a
movq %r12, %rdi
callq 0x1123e1
jmp 0xa1d7c
xorl %eax, %eax
movq %r14, 0x10(%rbx)
movq %rax, 0x18(%rbx)
movq $0x2, 0x20(%rbx)
movq %rbx, %rax
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_net_node_s_plain_branch_exists
bl_t x_btcl_net_node_s_plain_branch_exists( x_btcl_net_node_s* o, tp_t branch_name )
{
    // bcore_x_btcl_net.x:105:5
    
    if( !o->plain_branch_arr ) return  false;
    {const x_btcl_net_plain_branch_arr_s* __a=o->plain_branch_arr ;if(__a)for(sz_t __i=0;__i<__a->size;__i++){x_btcl_net_plain_branch_s* e=&(__a->data[__i]); if( e->name == branch_name ) return  true;
    }}return  false;
}

// Assembly:
movq 0x20(%rdi), %rdx
testq %rdx, %rdx
je 0xa260c
movq 0x10(%rdx), %rcx
testq %rcx, %rcx
setne %al
je 0xa260b
movq 0x8(%rdx), %rdx
cmpq %rsi, 0x8(%rdx)
je 0xa260b
addq $0x38, %rdx
movl $0x1, %edi
movq %rdi, %rax
cmpq %rdi, %rcx
je 0xa2605
leaq 0x1(%rax), %rdi
leaq 0x30(%rdx), %r8
cmpq %rsi, (%rdx)
movq %r8, %rdx
jne 0xa25ed
cmpq %rcx, %rax
setb %al
retq
xorl %eax, %eax
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_net_node_s_socket_branch_exists
bl_t x_btcl_net_node_s_socket_branch_exists( x_btcl_net_node_s* o, tp_t branch_name )
{
    // bcore_x_btcl_net.x:112:5
    
    if( !o->socket_branch_arr ) return  false;
    {const x_btcl_net_socket_branch_arr_s* __a=o->socket_branch_arr ;if(__a)for(sz_t __i=0;__i<__a->size;__i++){x_btcl_net_socket_branch_s* e=&(__a->data[__i]); if( e->name == branch_name ) return  true;
    }}return  false;
}

// Assembly:
movq 0x28(%rdi), %rdx
testq %rdx, %rdx
je 0xa2656
movq 0x10(%rdx), %rcx
testq %rcx, %rcx
setne %al
je 0xa2655
movq 0x8(%rdx), %rdx
cmpq %rsi, 0x8(%rdx)
je 0xa2655
addq $0x38, %rdx
movl $0x1, %edi
movq %rdi, %rax
cmpq %rdi, %rcx
je 0xa264f
leaq 0x1(%rax), %rdi
leaq 0x30(%rdx), %r8
cmpq %rsi, (%rdx)
movq %r8, %rdx
jne 0xa2637
cmpq %rcx, %rax
setb %al
retq
xorl %eax, %eax
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_net_node_s_push_socket_branch
x_btcl_net_node_s* x_btcl_net_node_s_push_socket_branch( x_btcl_net_node_s* o, tp_t name, bl_t replace, const x_source_point_s* sp, sr_s* sr )
{
    // bcore_x_btcl_net.x:142:5
    
    x_btcl_net_socket_branch_s* branch = NULL;
    if( replace ) branch = x_btcl_net_node_s_m_socket_branch_by_name(o,name );
    if( !branch ) branch = ((x_btcl_net_socket_branch_s*)(x_array_push(((x_array*)(BCORE_PASS_CREATE(x_btcl_net_socket_branch_arr_s,o->socket_branch_arr))))));
    x_btcl_net_socket_branch_s_setup(branch,name, sp, sr );
    return  o;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %r8, %rbx
movq %rcx, %r15
movq %rsi, %r12
movq %rdi, %r14
testl %edx, %edx
je 0xa26bb
movq 0x28(%r14), %rcx
testq %rcx, %rcx
je 0xa26bb
movq 0x10(%rcx), %rax
testq %rax, %rax
je 0xa26bb
movq 0x8(%rcx), %rdi
cmpq %r12, 0x8(%rdi)
je 0xa26bd
leaq 0x30(%rdi), %rdx
movl $0x1, %esi
movq %rsi, %rcx
cmpq %rsi, %rax
je 0xa26b0
leaq 0x1(%rcx), %rsi
cmpq %r12, 0x8(%rdx)
cmoveq %rdx, %rdi
leaq 0x30(%rdx), %rdx
jne 0xa2696
xorl %edx, %edx
cmpq %rax, %rcx
cmovaeq %rdx, %rdi
jmp 0xa26bd
xorl %edi, %edi
testq %rdi, %rdi
jne 0xa26e2
movq 0x28(%r14), %rdi
testq %rdi, %rdi
jne 0xa26d7
callq 0xa1fdd
movq %rax, %rdi
movq %rax, 0x28(%r14)
movq (%rdi), %rsi
callq 0x5b7f0
movq %rax, %rdi
movq %r12, %rsi
movq %r15, %rdx
movq %rbx, %rcx
callq 0xa1ccb
movq %r14, %rax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_arg_uop_s_execute
er_t x_btcl_functor_arg_uop_s_execute( const x_btcl_functor_arg_uop_s* o, sr_s* result )
{
    // bcore_x_btcl_functor.x:59:5
    
    if( o->val )
    {
        sr_s_tsc(result,sr_s_type(&(o->val->sr)), ((x_inst*)bcore_fork(o->val->sr.o)) );
    }
    else
    {
        sr_s_clear(result);
    }
    return  0;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x40, %rsp
movq %rsi, %rbx
movq 0x10(%rdi), %rax
testq %rax, %rax
je 0xa3042
movq 0x10(%rax), %rcx
testq %rcx, %rcx
je 0xa3084
movq 0x8(%rcx), %r15
jmp 0xa3087
testq %rbx, %rbx
je 0xa30bb
movq 0x10(%rbx), %rax
movq %rax, 0x30(%rsp)
movups (%rbx), %xmm0
movaps %xmm0, 0x20(%rsp)
testb $0x2, %al
je 0xa3074
movq 0x30(%rsp), %rax
movq %rax, 0x10(%rsp)
movaps 0x20(%rsp), %xmm0
movups %xmm0, (%rsp)
callq 0x112485
xorps %xmm0, %xmm0
movups %xmm0, (%rbx)
movq $0x0, 0x10(%rbx)
jmp 0xa30bb
xorl %r15d, %r15d
movq 0x8(%rax), %rdi
callq 0xc8348
movq %rax, %r14
movq %rbx, %rdi
callq 0x112baf
testq %r15, %r15
je 0xa30aa
movq %r15, %rdi
callq 0x1123e1
jmp 0xa30ac
xorl %eax, %eax
movq %r14, (%rbx)
movq %rax, 0x8(%rbx)
movq $0x3, 0x10(%rbx)
xorl %eax, %eax
addq $0x40, %rsp
popq %rbx
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_arg_uop_s_signal
x_btcl_functor_arg_uop_s* x_btcl_functor_arg_uop_s_signal( x_btcl_functor_arg_uop_s* o, tp_t name, x_inst* arg )
{
    // bcore_x_btcl_functor.x:72:5
    
    if( name == ((tp_t)(TYPEOF_signal_arg_uop_update_val)) )
    {
        ASSERT( arg->_ == ((tp_t)(TYPEOF_x_btcl_functor_arg_arr_s)) );
        x_btcl_functor_arg_arr_s* arg_arr = ((x_btcl_functor_arg_arr_s*)(arg));
        if( o->index < 0 || o->index >= arg_arr->size ) ERR_fa( "index (#<sz_t>) is out of range [0,#<sz_t>]", o->index, arg_arr->size - 1 );
        x_btcl_functor_arg_val_s_attach( &(o->val ),  ((x_btcl_functor_arg_val_s*)bcore_fork(arg_arr->data[ o->index ].val)));
    }
    return o;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
movabsq $-0x4a7896032b1c7575, %rax # imm = 0xB58769FCD4E38A8B
cmpq %rax, %rsi
jne 0xa3179
movq %rdx, %r14
movabsq $0x4751fb349f0dee74, %rax # imm = 0x4751FB349F0DEE74
cmpq %rax, (%rdx)
je 0xa311c
leaq 0x9554d(%rip), %rdi     # 0x138647
leaq 0xa13d1(%rip), %rsi     # 0x1444d2
leaq 0xa13fe(%rip), %rdx     # 0x144506
leaq 0x9f3a7(%rip), %rcx     # 0x1424b6
movl $0x20ca, %r8d           # imm = 0x20CA
xorl %eax, %eax
callq 0xc8053
movq 0x8(%rbx), %r8
testq %r8, %r8
js 0xa312b
cmpq 0x10(%r14), %r8
jb 0xa3153
movq 0x10(%r14), %r9
decq %r9
leaq 0xa13cd(%rip), %rdi     # 0x144506
leaq 0x9f376(%rip), %rsi     # 0x1424b6
leaq 0xa13df(%rip), %rcx     # 0x144526
movl $0x20cc, %edx           # imm = 0x20CC
xorl %eax, %eax
callq 0xc825d
movq 0x8(%r14), %rax
movq 0x8(%rbx), %rcx
shlq $0x5, %rcx
movq 0x10(%rax,%rcx), %rdi
callq 0xc8348
movq %rax, %r14
movq 0x10(%rbx), %rdi
callq 0xa29f0
movq %r14, 0x10(%rbx)
movq %rbx, %rax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_arg_arr_s_set_size
BCORE_DEFINE_OBJECT_INST_P_NASC_END( x_btcl_functor_arg_arr_s )

x_btcl_functor_arg_arr_s* x_btcl_functor_arg_arr_s_set_size( x_btcl_functor_arg_arr_s* o, sz_t size )
{
    // bcore_x_btcl_functor.x:114:5
    
    x_array_set_size(((x_array*)(o)),size );
    for(sz_t i = 0; i < size; i++ )
    {
        x_btcl_functor_arg_s_get_uop(&(o->data[ i ]))->index = i;
        x_btcl_functor_arg_s_set_f3(&(o->data[ i ]),0 );
    }
    return o;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
movq %rsi, %r14
movq %rdi, %rbx
movq (%rdi), %r15
leaq 0x105344(%rip), %rax    # 0x1a8e20
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 0xa3b36
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0xa3b36
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0xa3b36
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0xa3bcf
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0xa3b66
movabsq $-0x5073d588c3beb52e, %rdi # imm = 0xAF8C2A773C414AD2
movq %r15, %rsi
callq 0xf3f85
movq %rax, %r12
leaq 0x1052c5(%rip), %rdi    # 0x1a8e20
movq %r15, %rsi
movq %rax, %rdx
callq 0x12128c
movq %r12, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0xf69d8
testq %r14, %r14
jle 0xa3bc2
xorl %r15d, %r15d
xorl %r12d, %r12d
movq 0x8(%rbx), %rdi
addq %r15, %rdi
callq 0xa35fb
movq %r12, 0x8(%rax)
movq 0x8(%rbx), %r13
movq 0x10(%r13,%r15), %rdi
testq %rdi, %rdi
jne 0xa3baa
callq 0xa2941
movq %rax, %rdi
movq %rax, 0x10(%r13,%r15)
addq $0x8, %rdi
xorps %xmm0, %xmm0
callq 0x113069
incq %r12
addq $0x20, %r15
cmpq %r12, %r14
jne 0xa3b7f
movq %rbx, %rax
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
xorl %r12d, %r12d
jmp 0xa3b3a
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_s_set_arg_sr
const x_btcl_functor_s* x_btcl_functor_s_set_arg_sr( const x_btcl_functor_s* o, sz_t index, sr_s* sr )
{
    // bcore_x_btcl_functor.x:187:5
    
    if( index < 0 || index >= x_btcl_functor_s_args(o) ) ERR_fa( "index (#<sz_t>) is out of range [0,#<sz_t>]", index, x_btcl_functor_s_args(o) - 1 );
    x_btcl_functor_arg_s_set_val(&(o->arg_arr.data[ index ]),sr );
    return o;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdx, %r14
movq %rsi, %r15
movq %rdi, %rbx
testq %rsi, %rsi
js 0xa42d5
cmpq %r15, 0x18(%rbx)
jg 0xa4300
movq 0x18(%rbx), %r9
decq %r9
leaq 0xa0289(%rip), %rdi     # 0x14456c
leaq 0x9e1cc(%rip), %rsi     # 0x1424b6
leaq 0xa0235(%rip), %rcx     # 0x144526
movl $0x2143, %edx           # imm = 0x2143
movq %r15, %r8
xorl %eax, %eax
callq 0xc825d
movq 0x10(%rbx), %rax
shlq $0x5, %r15
movq 0x10(%rax,%r15), %rdi
testq %rdi, %rdi
jne 0xa4324
addq %rax, %r15
addq $0x10, %r15
callq 0xa2941
movq %rax, %rdi
movq %rax, (%r15)
addq $0x8, %rdi
movq %r14, %rsi
callq 0x112dbc
movq %rbx, %rax
popq %rbx
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_s_set_arg_sr_by_name
const x_btcl_functor_s* x_btcl_functor_s_set_arg_sr_by_name( const x_btcl_functor_s* o, tp_t name, sr_s* sr )
{
    // bcore_x_btcl_functor.x:194:5
    
    sz_t index = x_btcl_functor_s_arg_index(o,name );
    if( index >= 0 ) x_btcl_functor_s_set_arg_sr(o,index, sr );
    return o;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
movq %rdx, %r14
movq %rdi, %rbx
movq $-0x1, %r15
cmpq $0x0, 0x18(%rdi)
je 0xa437a
movq %rsi, %r12
xorl %r13d, %r13d
movq %rbx, %rdi
movq %r13, %rsi
callq 0xa421b
cmpq %r12, %rax
je 0xa4377
incq %r13
cmpq 0x18(%rbx), %r13
jb 0xa435c
jmp 0xa437a
movq %r13, %r15
testq %r15, %r15
js 0xa438d
movq %rbx, %rdi
movq %r15, %rsi
movq %r14, %rdx
callq 0xa42bc
movq %rbx, %rax
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_s_set_arg_f3_by_name
const x_btcl_functor_s* x_btcl_functor_s_set_arg_f3_by_name( const x_btcl_functor_s* o, tp_t name, f3_t v )
{
    // bcore_x_btcl_functor.x:209:5
    
    sz_t index = x_btcl_functor_s_arg_index(o,name );
    if( index >= 0 ) x_btcl_functor_s_set_arg_f3(o,index, v );
    return o;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x38, %rsp
movsd %xmm0, (%rsp)
movq %rdi, %rbx
movq $-0x1, %r14
cmpq $0x0, 0x18(%rdi)
je 0xa447d
movq %rsi, %r15
xorl %r12d, %r12d
movq %rbx, %rdi
movq %r12, %rsi
callq 0xa421b
cmpq %r15, %rax
je 0xa447a
incq %r12
cmpq 0x18(%rbx), %r12
jb 0xa445f
jmp 0xa447d
movq %r12, %r14
testq %r14, %r14
js 0xa44e2
leaq 0x104947(%rip), %rax    # 0x1a8dd0
movq (%rax), %rsi
leaq 0x8(%rsp), %r15
movq %r15, %rdi
callq 0xe0431
movq $0x0, 0x10(%r15)
xorl %eax, %eax
callq 0x112d0e
movabsq $0x79b76918ff0af12a, %rdx # imm = 0x79B76918FF0AF12A
movq %r15, %rdi
xorl %esi, %esi
movq %rax, %rcx
callq 0xe0676
movq %rax, %rdi
movsd (%rsp), %xmm0
callq 0x113069
movq %rbx, %rdi
movq %r14, %rsi
movq %rax, %rdx
callq 0xa42bc
movq %r15, %rdi
callq 0xe0b30
movq %rbx, %rax
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_s_call_to_f3
f3_t x_btcl_functor_s_call_to_f3( const x_btcl_functor_s* o )
{
    // bcore_x_btcl_functor.x:238:5
    BLM_INIT_LEVEL(0);
    sr_s* result = ((sr_s*)BLM_LEVEL_T_PUSH(0,sr_s,sr_s_create()));
    BLM_TRY_EXIT(x_btcl_functor_s_call(o,result ))
    BLM_RETURNV(f3_t, sr_s_to_f3(result))
}

// Assembly:
pushq %r14
pushq %rbx
subq $0x38, %rsp
movq %rdi, %r14
leaq 0x104635(%rip), %rax    # 0x1a8dd0
movq (%rax), %rsi
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
callq 0xe0431
movq $0x0, 0x10(%rbx)
xorl %eax, %eax
callq 0x112d0e
movabsq $0x79b76918ff0af12a, %rdx # imm = 0x79B76918FF0AF12A
movq %rbx, %rdi
xorl %esi, %esi
movq %rax, %rcx
callq 0xe0676
movq %rax, %rbx
movq %r14, %rdi
movq %rax, %rsi
callq 0xa4561
testq %rax, %rax
je 0xa47f9
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0xe0b30
movl %r14d, %edi
callq 0x59990
movq %rbx, %rdi
callq 0x1133ac
movsd %xmm0, (%rsp)
leaq 0x8(%rsp), %rdi
callq 0xe0b30
movsd (%rsp), %xmm0
addq $0x38, %rsp
popq %rbx
popq %r14
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_s_btcl_function
er_t x_btcl_functor_s_btcl_function( const x_btcl_functor_s* o, tp_t name, const x_source_point_s* sp, x_btcl_frame_s* lexical_frame, const bcore_arr_sr_s* args, sr_s* result )
{
    // bcore_x_btcl_functor.x:255:5
    
    switch( name )
    {
        case ((tp_t)(TYPEOF_call)):
        {
            for(sz_t i = 0; i < x_btcl_functor_s_args(o); i++ ) x_btcl_functor_s_set_arg_sr(o,i,&( args->data[i] ));
            BLM_TRY(x_btcl_functor_s_call(o,result ))
        }
        break;
    
        default: break; // never reached
    }
    return  0;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
movabsq $-0x4ae9856f17c45b57, %rax # imm = 0xB5167A90E83BA4A9
cmpq %rax, %rsi
jne 0xa48a9
movq %r9, %rbx
movq %rdi, %r14
cmpq $0x0, 0x18(%rdi)
jle 0xa4885
movq %r8, %r15
xorl %r13d, %r13d
xorl %r12d, %r12d
movq 0x8(%r15), %rdx
addq %r13, %rdx
movq %r14, %rdi
movq %r12, %rsi
callq 0xa42bc
incq %r12
addq $0x18, %r13
cmpq 0x18(%r14), %r12
jl 0xa4866
movq %r14, %rdi
movq %rbx, %rsi
callq 0xa4561
testq %rax, %rax
je 0xa48a9
movq %rax, %rbx
leaq 0x104531(%rip), %rax    # 0x1a8dd0
movq (%rax), %rdi
callq 0xe0b30
jmp 0xa48ab
xorl %ebx, %ebx
movq %rbx, %rax
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_s_unary_f3
f3_t x_btcl_functor_s_unary_f3( const x_btcl_functor_s* o, f3_t x )
{
    // bcore_x_btcl_functor.x:277:5
    
    ASSERT( x_btcl_functor_s_args(o) == 1 );
    x_btcl_functor_s_set_arg_f3(o,0, x );
    return  x_btcl_functor_s_call_to_f3(o);
}

// Assembly:
pushq %r14
pushq %rbx
subq $0x38, %rsp
movsd %xmm0, (%rsp)
movq %rdi, %rbx
cmpq $0x1, 0x18(%rdi)
je 0xa4934
leaq 0x93d35(%rip), %rdi     # 0x138647
leaq 0x9fcfc(%rip), %rsi     # 0x144615
leaq 0x9fd13(%rip), %rdx     # 0x144633
leaq 0x9db8f(%rip), %rcx     # 0x1424b6
movl $0x21ae, %r8d           # imm = 0x21AE
xorl %eax, %eax
callq 0xc8053
leaq 0x104495(%rip), %rax    # 0x1a8dd0
movq (%rax), %rsi
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0xe0431
movq $0x0, 0x10(%r14)
xorl %eax, %eax
callq 0x112d0e
movabsq $0x79b76918ff0af12a, %rdx # imm = 0x79B76918FF0AF12A
movq %r14, %rdi
xorl %esi, %esi
movq %rax, %rcx
callq 0xe0676
movq %rax, %rdi
movsd (%rsp), %xmm0
callq 0x113069
movq %rbx, %rdi
xorl %esi, %esi
movq %rax, %rdx
callq 0xa42bc
movq %r14, %rdi
callq 0xe0b30
movq %rbx, %rdi
callq 0xa478a
addq $0x38, %rsp
popq %rbx
popq %r14
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_s_binary_f3
f3_t x_btcl_functor_s_binary_f3( const x_btcl_functor_s* o, f3_t x, f3_t y )
{
    // bcore_x_btcl_functor.x:284:5
    
    ASSERT( x_btcl_functor_s_args(o) == 2 );
    x_btcl_functor_s_set_arg_f3(o,0, x );
    x_btcl_functor_s_set_arg_f3(o,1, y );
    return  x_btcl_functor_s_call_to_f3(o);
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x40, %rsp
movsd %xmm1, 0x8(%rsp)
movsd %xmm0, (%rsp)
movq %rdi, %rbx
cmpq $0x2, 0x18(%rdi)
je 0xa49ee
leaq 0x93c7b(%rip), %rdi     # 0x138647
leaq 0x9fc7a(%rip), %rsi     # 0x14464d
leaq 0x9fc91(%rip), %rdx     # 0x14466b
leaq 0x9dad5(%rip), %rcx     # 0x1424b6
movl $0x21b7, %r8d           # imm = 0x21B7
xorl %eax, %eax
callq 0xc8053
leaq 0x1043db(%rip), %r12    # 0x1a8dd0
movq (%r12), %rsi
leaq 0x10(%rsp), %r15
movq %r15, %rdi
callq 0xe0431
xorl %r13d, %r13d
movq %r13, 0x10(%r15)
xorl %eax, %eax
callq 0x112d0e
movabsq $0x79b76918ff0af12a, %r14 # imm = 0x79B76918FF0AF12A
movq %r15, %rdi
xorl %esi, %esi
movq %r14, %rdx
movq %rax, %rcx
callq 0xe0676
movq %rax, %rdi
movsd (%rsp), %xmm0
callq 0x113069
movq %rbx, %rdi
xorl %esi, %esi
movq %rax, %rdx
callq 0xa42bc
movq %r15, %rdi
callq 0xe0b30
movq (%r12), %rsi
leaq 0x10(%rsp), %r15
movq %r15, %rdi
callq 0xe0431
movq %r13, 0x10(%r15)
xorl %eax, %eax
callq 0x112d0e
movq %r15, %rdi
xorl %esi, %esi
movq %r14, %rdx
movq %rax, %rcx
callq 0xe0676
movq %rax, %rdi
movsd 0x8(%rsp), %xmm0
callq 0x113069
movl $0x1, %esi
movq %rbx, %rdi
movq %rax, %rdx
callq 0xa42bc
movq %r15, %rdi
callq 0xe0b30
movq %rbx, %rdi
callq 0xa478a
addq $0x40, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_s_ternary_f3
f3_t x_btcl_functor_s_ternary_f3( const x_btcl_functor_s* o, f3_t x, f3_t y, f3_t z )
{
    // bcore_x_btcl_functor.x:292:5
    
    ASSERT( x_btcl_functor_s_args(o) == 3 );
    x_btcl_functor_s_set_arg_f3(o,0, x );
    x_btcl_functor_s_set_arg_f3(o,1, y );
    x_btcl_functor_s_set_arg_f3(o,2, z );
    return  x_btcl_functor_s_call_to_f3(o);
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x50, %rsp
movsd %xmm2, 0x18(%rsp)
movsd %xmm1, 0x10(%rsp)
movsd %xmm0, 0x8(%rsp)
movq %rdi, %rbx
cmpq $0x3, 0x18(%rdi)
je 0xa4b0a
leaq 0x93b5f(%rip), %rdi     # 0x138647
leaq 0x9fb97(%rip), %rsi     # 0x144686
leaq 0x9fbae(%rip), %rdx     # 0x1446a4
leaq 0x9d9b9(%rip), %rcx     # 0x1424b6
movl $0x21c1, %r8d           # imm = 0x21C1
xorl %eax, %eax
callq 0xc8053
leaq 0x1042bf(%rip), %r12    # 0x1a8dd0
movq (%r12), %rsi
leaq 0x20(%rsp), %r15
movq %r15, %rdi
callq 0xe0431
xorl %r13d, %r13d
movq %r13, 0x10(%r15)
xorl %eax, %eax
callq 0x112d0e
movabsq $0x79b76918ff0af12a, %r14 # imm = 0x79B76918FF0AF12A
movq %r15, %rdi
xorl %esi, %esi
movq %r14, %rdx
movq %rax, %rcx
callq 0xe0676
movq %rax, %rdi
movsd 0x8(%rsp), %xmm0
callq 0x113069
movq %rbx, %rdi
xorl %esi, %esi
movq %rax, %rdx
callq 0xa42bc
movq %r15, %rdi
callq 0xe0b30
movq (%r12), %rsi
leaq 0x20(%rsp), %r15
movq %r15, %rdi
callq 0xe0431
movq %r13, 0x10(%r15)
xorl %eax, %eax
callq 0x112d0e
movq %r15, %rdi
xorl %esi, %esi
movq %r14, %rdx
movq %rax, %rcx
callq 0xe0676
movq %rax, %rdi
movsd 0x10(%rsp), %xmm0
callq 0x113069
movl $0x1, %esi
movq %rbx, %rdi
movq %rax, %rdx
callq 0xa42bc
movq %r15, %rdi
callq 0xe0b30
movq (%r12), %rsi
leaq 0x20(%rsp), %r15
movq %r15, %rdi
callq 0xe0431
movq %r13, 0x10(%r15)
xorl %eax, %eax
callq 0x112d0e
movq %r15, %rdi
xorl %esi, %esi
movq %r14, %rdx
movq %rax, %rcx
callq 0xe0676
movq %rax, %rdi
movsd 0x18(%rsp), %xmm0
callq 0x113069
movl $0x2, %esi
movq %rbx, %rdi
movq %rax, %rdx
callq 0xa42bc
movq %r15, %rdi
callq 0xe0b30
movq %rbx, %rdi
callq 0xa478a
addq $0x50, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_f3_s_set_arg_f3
const x_btcl_functor_f3_s* x_btcl_functor_f3_s_set_arg_f3( const x_btcl_functor_f3_s* o, sz_t index, f3_t v )
{
    // bcore_x_btcl_functor_f3.x:120:5
    
    if( !o->op_tree ) ERR_fa( "o.op_tree == NULL. Functor has not been setup." );
    if( index < 0 || index >= x_btcl_functor_f3_s_args(o) ) ERR_fa( "index (#<sz_t>) is out of range [0,#<sz_t>]", index, x_btcl_functor_f3_s_args(o) - 1 );
    o->arg_arr.data[ index ].val = v;
    return o;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movsd %xmm0, (%rsp)
movq %rsi, %r14
movq %rdi, %rbx
cmpq $0x0, 0x28(%rdi)
jne 0xa5961
leaq 0x9ee13(%rip), %rdi     # 0x14475a
leaq 0x9cb68(%rip), %rsi     # 0x1424b6
leaq 0x9ee24(%rip), %rcx     # 0x144779
movl $0x2259, %edx           # imm = 0x2259
xorl %eax, %eax
callq 0xc825d
testq %r14, %r14
js 0xa596c
cmpq %r14, 0x18(%rbx)
jg 0xa5997
movq 0x18(%rbx), %r9
decq %r9
leaq 0x9ede0(%rip), %rdi     # 0x14475a
leaq 0x9cb35(%rip), %rsi     # 0x1424b6
leaq 0x9eb9e(%rip), %rcx     # 0x144526
movl $0x225a, %edx           # imm = 0x225A
movq %r14, %r8
xorl %eax, %eax
callq 0xc825d
movq 0x10(%rbx), %rax
leaq (%r14,%r14,2), %rcx
movsd (%rsp), %xmm0
movsd %xmm0, 0x8(%rax,%rcx,8)
movq %rbx, %rax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_f3_s_get_arg_f3_ptr
f3_t* x_btcl_functor_f3_s_get_arg_f3_ptr( const x_btcl_functor_f3_s* o, sz_t index )
{
    // bcore_x_btcl_functor_f3.x:127:5
    
    if( !o->op_tree ) ERR_fa( "o.op_tree == NULL. Functor has not been setup." );
    if( index < 0 || index >= x_btcl_functor_f3_s_args(o) ) ERR_fa( "index (#<sz_t>) is out of range [0,#<sz_t>]", index, x_btcl_functor_f3_s_args(o) - 1 );
    return  (&(o->arg_arr.data[ index ].val));
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
cmpq $0x0, 0x28(%rdi)
jne 0xa59e7
leaq 0x9eddb(%rip), %rdi     # 0x1447a8
leaq 0x9cae2(%rip), %rsi     # 0x1424b6
leaq 0x9ed9e(%rip), %rcx     # 0x144779
movl $0x2263, %edx           # imm = 0x2263
xorl %eax, %eax
callq 0xc825d
testq %rbx, %rbx
js 0xa59f2
cmpq %rbx, 0x18(%r14)
jg 0xa5a1d
movq 0x18(%r14), %r9
decq %r9
leaq 0x9eda8(%rip), %rdi     # 0x1447a8
leaq 0x9caaf(%rip), %rsi     # 0x1424b6
leaq 0x9eb18(%rip), %rcx     # 0x144526
movl $0x2264, %edx           # imm = 0x2264
movq %rbx, %r8
xorl %eax, %eax
callq 0xc825d
movq 0x10(%r14), %rax
leaq (%rbx,%rbx,2), %rcx
leaq (%rax,%rcx,8), %rax
addq $0x8, %rax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_f3_s_set_arg_f3_by_name
const x_btcl_functor_f3_s* x_btcl_functor_f3_s_set_arg_f3_by_name( const x_btcl_functor_f3_s* o, tp_t name, f3_t v )
{
    // bcore_x_btcl_functor_f3.x:135:5
    
    sz_t index = x_btcl_functor_f3_s_arg_index(o,name );
    if( index >= 0 ) x_btcl_functor_f3_s_set_arg_f3(o,index, v );
    return o;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
movq $-0x1, %r14
cmpq $0x0, 0x18(%rdi)
je 0xa5a7c
movq %rsi, %r15
movsd %xmm0, (%rsp)
xorl %r12d, %r12d
movq %rbx, %rdi
movq %r12, %rsi
callq 0xa5889
cmpq %r15, %rax
je 0xa5a74
incq %r12
cmpq 0x18(%rbx), %r12
jb 0xa5a59
jmp 0xa5a77
movq %r12, %r14
movsd (%rsp), %xmm0
testq %r14, %r14
js 0xa5a8c
movq %rbx, %rdi
movq %r14, %rsi
callq 0xa592a
movq %rbx, %rax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_f3_s_btcl_function
er_t x_btcl_functor_f3_s_btcl_function( const x_btcl_functor_f3_s* o, tp_t name, const x_source_point_s* sp, x_btcl_frame_s* lexical_frame, const bcore_arr_sr_s* args, sr_s* result )
{
    // bcore_x_btcl_functor_f3.x:162:5
    
    switch( name )
    {
        case ((tp_t)(TYPEOF_call)):
        {
            for(sz_t i = 0; i < x_btcl_functor_f3_s_args(o); i++ ) x_btcl_functor_f3_s_set_arg_f3(o,i, sr_s_to_f3(&(args->data[i])) );
            sr_s_from_f3(result,x_btcl_functor_f3_s_call(o) );
        }
        break;
    
        default: break; // never reached
    }
    return  0;
}

// Assembly:
movabsq $-0x4ae9856f17c45b57, %rax # imm = 0xB5167A90E83BA4A9
cmpq %rax, %rsi
jne 0xa5c23
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
movq %r9, %rbx
movq %rdi, %r15
cmpq $0x0, 0x18(%rdi)
jle 0xa5b72
movq %r8, %r14
xorl %r13d, %r13d
xorl %r12d, %r12d
movq 0x8(%r14), %rdi
addq %r13, %rdi
callq 0x1133ac
movq %r15, %rdi
movq %r12, %rsi
callq 0xa592a
incq %r12
addq $0x18, %r13
cmpq 0x18(%r15), %r12
jl 0xa5b4e
movq 0x28(%r15), %r14
movq (%r14), %r15
leaq 0x101d28(%rip), %rax    # 0x1a78a8
movl 0x101d22(%rip), %ecx    # 0x1a78a8
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 0xa5bda
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0xa5bda
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0xa5bda
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0xa5c26
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0xa5c0a
movabsq $0x37a58f457601baa0, %rdi # imm = 0x37A58F457601BAA0
movq %r15, %rsi
callq 0xf3f85
movq %rax, %r12
leaq 0x101ca9(%rip), %rdi    # 0x1a78a8
movq %r15, %rsi
movq %rax, %rdx
callq 0x12128c
movq %r14, %rdi
callq *0x18(%r12)
movq %rbx, %rdi
callq 0x113069
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
xorl %eax, %eax
retq
xorl %r12d, %r12d
jmp 0xa5bde
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_f3_s_unary_f3
f3_t x_btcl_functor_f3_s_unary_f3( const x_btcl_functor_f3_s* o, f3_t x )
{
    // bcore_x_btcl_functor_f3.x:184:5
    
    ASSERT( x_btcl_functor_f3_s_args(o) == 1 );
    x_btcl_functor_f3_s_set_arg_f3(o,0, x );
    return  x_btcl_functor_f3_s_call(o);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x10, %rsp
movq %rdi, %rbx
cmpq $0x1, 0x18(%rdi)
je 0xa5d55
leaq 0x92920(%rip), %rdi     # 0x138647
leaq 0x9eadd(%rip), %rsi     # 0x14480b
leaq 0x9eaf7(%rip), %rdx     # 0x14482c
leaq 0x9c77a(%rip), %rcx     # 0x1424b6
movl $0x22a4, %r8d           # imm = 0x22A4
xorl %eax, %eax
movsd %xmm0, 0x8(%rsp)
callq 0xc8053
movsd 0x8(%rsp), %xmm0
movq %rbx, %rdi
xorl %esi, %esi
callq 0xa592a
movq 0x28(%rbx), %rbx
movq (%rbx), %r14
leaq 0x101b3b(%rip), %rax    # 0x1a78a8
movl 0x101b35(%rip), %ecx    # 0x1a78a8
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 0xa5dc7
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r14, %rdx
je 0xa5dc7
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r14, %rdx
je 0xa5dc7
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r14, %rdx
jne 0xa5e09
movq (%rax,%rcx), %rax
testq %rax, %rax
jne 0xa5dfa
movabsq $0x37a58f457601baa0, %rdi # imm = 0x37A58F457601BAA0
movq %r14, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x101abc(%rip), %rdi    # 0x1a78a8
movq %r14, %rsi
movq %rax, %rdx
callq 0x12128c
movq %r15, %rax
movq %rbx, %rdi
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
jmpq *0x18(%rax)
xorl %eax, %eax
jmp 0xa5dcb
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_f3_s_binary_f3
f3_t x_btcl_functor_f3_s_binary_f3( const x_btcl_functor_f3_s* o, f3_t x, f3_t y )
{
    // bcore_x_btcl_functor_f3.x:191:5
    
    ASSERT( x_btcl_functor_f3_s_args(o) == 2 );
    x_btcl_functor_f3_s_set_arg_f3(o,0, x );
    x_btcl_functor_f3_s_set_arg_f3(o,1, y );
    return  x_btcl_functor_f3_s_call(o);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x10, %rsp
movsd %xmm1, 0x8(%rsp)
movq %rdi, %rbx
cmpq $0x2, 0x18(%rdi)
je 0xa5e59
leaq 0x9281a(%rip), %rdi     # 0x138647
leaq 0x9ea15(%rip), %rsi     # 0x144849
leaq 0x9ea2f(%rip), %rdx     # 0x14486a
leaq 0x9c674(%rip), %rcx     # 0x1424b6
movl $0x22ad, %r8d           # imm = 0x22AD
xorl %eax, %eax
movsd %xmm0, (%rsp)
callq 0xc8053
movsd (%rsp), %xmm0
movq %rbx, %rdi
xorl %esi, %esi
callq 0xa592a
movl $0x1, %esi
movq %rbx, %rdi
movsd 0x8(%rsp), %xmm0
callq 0xa592a
movq 0x28(%rbx), %rbx
movq (%rbx), %r14
leaq 0x101a24(%rip), %rax    # 0x1a78a8
movl 0x101a1e(%rip), %ecx    # 0x1a78a8
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 0xa5ede
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r14, %rdx
je 0xa5ede
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r14, %rdx
je 0xa5ede
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r14, %rdx
jne 0xa5f20
movq (%rax,%rcx), %rax
testq %rax, %rax
jne 0xa5f11
movabsq $0x37a58f457601baa0, %rdi # imm = 0x37A58F457601BAA0
movq %r14, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x1019a5(%rip), %rdi    # 0x1a78a8
movq %r14, %rsi
movq %rax, %rdx
callq 0x12128c
movq %r15, %rax
movq %rbx, %rdi
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
jmpq *0x18(%rax)
xorl %eax, %eax
jmp 0xa5ee2
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_functor_f3_s_ternary_f3
f3_t x_btcl_functor_f3_s_ternary_f3( const x_btcl_functor_f3_s* o, f3_t x, f3_t y, f3_t z )
{
    // bcore_x_btcl_functor_f3.x:199:5
    
    ASSERT( x_btcl_functor_f3_s_args(o) == 3 );
    x_btcl_functor_f3_s_set_arg_f3(o,0, x );
    x_btcl_functor_f3_s_set_arg_f3(o,1, y );
    x_btcl_functor_f3_s_set_arg_f3(o,2, z );
    return  x_btcl_functor_f3_s_call(o);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x20, %rsp
movsd %xmm2, 0x18(%rsp)
movsd %xmm1, 0x10(%rsp)
movq %rdi, %rbx
cmpq $0x3, 0x18(%rdi)
je 0xa5f78
leaq 0x926fd(%rip), %rdi     # 0x138647
leaq 0x9e937(%rip), %rsi     # 0x144888
leaq 0x9e951(%rip), %rdx     # 0x1448a9
leaq 0x9c557(%rip), %rcx     # 0x1424b6
movl $0x22b7, %r8d           # imm = 0x22B7
xorl %eax, %eax
movsd %xmm0, 0x8(%rsp)
callq 0xc8053
movsd 0x8(%rsp), %xmm0
movq %rbx, %rdi
xorl %esi, %esi
callq 0xa592a
movl $0x1, %esi
movq %rbx, %rdi
movsd 0x10(%rsp), %xmm0
callq 0xa592a
movl $0x2, %esi
movq %rbx, %rdi
movsd 0x18(%rsp), %xmm0
callq 0xa592a
movq 0x28(%rbx), %rbx
movq (%rbx), %r14
leaq 0x1018f2(%rip), %rax    # 0x1a78a8
movl 0x1018ec(%rip), %ecx    # 0x1a78a8
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 0xa6010
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r14, %rdx
je 0xa6010
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r14, %rdx
je 0xa6010
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r14, %rdx
jne 0xa6052
movq (%rax,%rcx), %rax
testq %rax, %rax
jne 0xa6043
movabsq $0x37a58f457601baa0, %rdi # imm = 0x37A58F457601BAA0
movq %r14, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x101873(%rip), %rdi    # 0x1a78a8
movq %r14, %rsi
movq %rax, %rdx
callq 0x12128c
movq %r15, %rax
movq %rbx, %rdi
addq $0x20, %rsp
popq %rbx
popq %r14
popq %r15
jmpq *0x18(%rax)
xorl %eax, %eax
jmp 0xa6014
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_random_s_btcl_function
er_t x_btcl_random_s_btcl_function( const x_btcl_random_s* o, tp_t name, const x_source_point_s* sp, x_btcl_frame_s* lexical_frame, const bcore_arr_sr_s* args, sr_s* result )
{
    // bcore_x_btcl_random.x:59:5
    
    switch( name )
    {
        case TYPEOF_list:
        {BLM_INIT_LEVEL(3);
            x_btcl_list_s* list = ((x_btcl_list_s*)BLM_LEVEL_T_PUSH(3,x_btcl_list_s,x_btcl_list_s_create()));
            x_btcl_random_s_fill_list(o,sz_max( 0, sr_s_to_f3(&(args->data[0])) ), list );
            sr_s_asm(result,((x_btcl_list_s*)bcore_fork(list)) );
            BLM_RETURNV(er_t, 0)
        BLM_DOWN();}
    
        default: return  x_source_point_s_parse_error_fa(sp,"Invalid function name '#<sc_t>'.", bnameof( name ) );
    }
    return  0;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x38, %rsp
movabsq $-0x40886552968b7ebf, %rax # imm = 0xBF779AAD69748141
cmpq %rax, %rsi
jne 0xa68d6
movq %r9, %rbx
movq %r8, %r15
movq %rdi, %r14
leaq 0x1025a2(%rip), %rax    # 0x1a8dd0
movq (%rax), %rsi
leaq 0x8(%rsp), %r12
movq %r12, %rdi
callq 0xe0431
movq $0x3, 0x10(%r12)
callq 0x94403
movabsq $-0x240ec4eb25c1f3e8, %rdx # imm = 0xDBF13B14DA3E0C18
movl $0x3, %esi
movq %r12, %rdi
movq %rax, %rcx
callq 0xe0676
movq %rax, %r12
movq 0x8(%r15), %rdi
callq 0x1133ac
cvttsd2si %xmm0, %rsi
xorl %r15d, %r15d
testq %rsi, %rsi
cmovleq %r15, %rsi
movq %r14, %rdi
movq %r12, %rdx
callq 0xa64cd
movq %r12, %rdi
callq 0xc8348
movq %rax, %r14
movq %rbx, %rdi
callq 0x112baf
testq %r14, %r14
je 0xa68af
movq (%r14), %rdi
callq 0x1123e1
movq %rax, %r15
movq %r14, (%rbx)
movq %r15, 0x8(%rbx)
movq $0x2, 0x10(%rbx)
leaq 0x8(%rsp), %rdi
callq 0xe0b30
xorl %eax, %eax
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
movq %rdx, %r12
movq %rsi, %rdi
callq 0xe0cbc
leaq 0x9dfe0(%rip), %rsi     # 0x1448c8
movq %r12, %rdi
movq %rax, %rdx
xorl %eax, %eax
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmp 0x95f0b
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_test_adder_s_copy
sz_t x_btcl_test_adder_s_btcl_function_arity( const x_btcl_test_adder_s* o, tp_t name )
{
    // bcore_x_btcl_test.x:28:5
    
    switch( name )
    {
        case TYPEOF_add_a_b: return  2;
        case TYPEOF_add_a  : return  1;
        default: break;
    }
    return  -1; // return -1 to indicate that a function of given name does not exist
}

// Assembly:
cmpq %rsi, %rdi
je 0xa6b3c
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x52ceeacf749ab0ef, %r15 # imm = 0x52CEEACF749AB0EF
leaq 0x1029d0(%rip), %rax    # 0x1a9468
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 0xa6aee
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0xa6aee
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0xa6aee
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0xa6b3d
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0xa6b1e
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xf3f85
movq %rax, %r12
leaq 0x102955(%rip), %rdi    # 0x1a9468
movq %r15, %rsi
movq %rax, %rdx
callq 0x12128c
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
xorl %r12d, %r12d
jmp 0xa6af2
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_test_adder_s_btcl_function
er_t x_btcl_test_adder_s_btcl_function( const x_btcl_test_adder_s* o, tp_t name, const x_source_point_s* sp, x_btcl_frame_s* lexical_frame, const bcore_arr_sr_s* args, sr_s* result )
{
    // bcore_x_btcl_test.x:39:5
    
    switch( name )
    {
        case TYPEOF_add_a_b: sr_s_from_f3(result,o->additive + sr_s_to_f3(&(args->data[0])) + sr_s_to_f3(&(args->data[1])) ); break;
        case TYPEOF_add_a  : sr_s_from_f3(result,o->additive + sr_s_to_f3(&(args->data[0])) ); break;
        default: return  x_source_point_s_parse_error_fa(sp,"Invalid function name '#<sc_t>'.", bnameof( name ) );
    }
    return  0;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x10, %rsp
movq %r9, %rbx
movq %r8, %r14
movabsq $0x22dcf9fdfce6cd70, %rax # imm = 0x22DCF9FDFCE6CD70
cmpq %rax, %rsi
je 0xa6dff
movabsq $-0x27a629443cbaa973, %rax # imm = 0xD859D6BBC345568D
cmpq %rax, %rsi
jne 0xa6e2d
movsd 0x8(%rdi), %xmm0
movsd %xmm0, 0x8(%rsp)
movq 0x8(%r14), %rdi
callq 0x1133ac
addsd 0x8(%rsp), %xmm0
movsd %xmm0, 0x8(%rsp)
movq 0x8(%r14), %rdi
addq $0x18, %rdi
jmp 0xa6e0e
movsd 0x8(%rdi), %xmm0
movsd %xmm0, 0x8(%rsp)
movq 0x8(%r14), %rdi
callq 0x1133ac
addsd 0x8(%rsp), %xmm0
movq %rbx, %rdi
callq 0x113069
xorl %eax, %eax
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
retq
movq %rdx, %r15
movq %rsi, %rdi
callq 0xe0cbc
leaq 0x9da89(%rip), %rsi     # 0x1448c8
movq %r15, %rdi
movq %rax, %rdx
xorl %eax, %eax
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
jmp 0x95f0b
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_hmap_tp_s_copy
bcore_arr_tp_s* x_hmap_tp_s_get_key_arr( const x_hmap_tp_s* o, bcore_arr_tp_s* key_arr )
{
    // bcore_x_hmap.h:124:5
    
    bcore_arr_tp_s_set_size(key_arr,0 );
    sz_t size = x_hmap_tp_s_size(o);
    tp_t key = 0;
    for(sz_t i = 0; i < size; i++ ) if( (key = x_hmap_tp_s_idx_key(o,i )) ) bcore_arr_tp_s_push(key_arr,key );
    return  key_arr;
}

// Assembly:
cmpq %rsi, %rdi
je 0xa77b7
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x1ba738e6b01c5241, %r15 # imm = 0x1BA738E6B01C5241
leaq 0x101d55(%rip), %rax    # 0x1a9468
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 0xa7769
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0xa7769
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0xa7769
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0xa77b8
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0xa7799
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xf3f85
movq %rax, %r12
leaq 0x101cda(%rip), %rdi    # 0x1a9468
movq %r15, %rsi
movq %rax, %rdx
callq 0x12128c
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
xorl %r12d, %r12d
jmp 0xa776d