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_eval_uop_type
er_t x_btcl_operator_eval_uop_type( x_btcl_frame_s* frame, tp_t type, s2_t priority, x_source* source, bl_t postfix, sr_s* result )
{
    // bcore_x_btcl_operator.x:200:1
    BLM_INIT_LEVEL(0);
    x_source_point_s* source_point = x_source_point_s__(((x_source_point_s*)BLM_LEVEL_T_PUSH(0,x_source_point_s,x_source_point_s_create())),source );
    sr_s* sa = ((sr_s*)BLM_LEVEL_T_PUSH(0,sr_s,sr_s_create()));
    
    if( postfix )
    {
        (*(sa)) = (*(result));
        (*(result)) = sr_null();
    }
    else
    {
        BLM_TRY(x_btcl_frame_s_eval(frame,priority, source, sa ))
    }
    
    x_btcl_operator_uop_s* uop = x_btcl_operator_uop_s__(((x_btcl_operator_uop_s*)BLM_LEVEL_T_PUSH(0,x_btcl_operator_uop_s,x_btcl_operator_uop_s_create())),type, sa, source_point );
    bl_t success = false;
    BLM_TRY(x_btcl_operator_uop_s_solve(uop,frame, result,&( success )))
    if( !success )
    {
        BLM_RETURNV(er_t, x_source_point_s_parse_error_fa(source_point,"Unary operator '#<sc_t>' on '#<sc_t>' is not defined.\n", x_btcl_operator_symbol(type ), bnameof( sr_s_o_type(sa) ) ))
    }
    BLM_RETURNV(er_t, 0)
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %r9, %r15
movl %r8d, %ebp
movq %rcx, %r13
movl %edx, %ebx
movq %rsi, 0x10(%rsp)
movq %rdi, %r14
leaq 0x11e355(%rip), %rax    # 0x1a8dd0
movq (%rax), %rsi
leaq 0x18(%rsp), %r12
movq %r12, %rdi
callq 0xe0431
movq $0x0, 0x10(%r12)
callq 0x59ec4
movabsq $0x717ff038b7471b82, %rdx # imm = 0x717FF038B7471B82
movq %r12, %rdi
xorl %esi, %esi
movq %rax, %rcx
callq 0xe0676
movq %rax, 0x8(%rsp)
movq %rax, %rdi
movq %r13, %rsi
callq 0x8c9dc
xorl %eax, %eax
callq 0x112d0e
movabsq $0x79b76918ff0af12a, %rdx # imm = 0x79B76918FF0AF12A
movq %r12, %rdi
xorl %esi, %esi
movq %rax, %rcx
callq 0xe0676
movq %rax, %r12
testl %ebp, %ebp
je 0x8ab08
movq 0x10(%r15), %rax
movq %rax, 0x10(%r12)
movups (%r15), %xmm0
movups %xmm0, (%r12)
xorps %xmm0, %xmm0
movups %xmm0, (%r15)
movq $0x0, 0x10(%r15)
jmp 0x8ab21
movq %r14, %rdi
movl %ebx, %esi
movq %r13, %rdx
movq %r12, %rcx
callq 0x88ece
testq %rax, %rax
jne 0x8abba
callq 0x9742f
xorl %r13d, %r13d
leaq 0x18(%rsp), %rdi
movabsq $-0x644282552f36739d, %rdx # imm = 0x9BBD7DAAD0C98C63
xorl %esi, %esi
movq %rax, %rcx
callq 0xe0676
movq %rax, %r14
movq %rax, %rdi
movq 0x10(%rsp), %rbx
movq %rbx, %rsi
movq %r12, %rdx
movq 0x8(%rsp), %rcx
callq 0x97664
leaq 0x7(%rsp), %rbp
movb $0x0, (%rbp)
movq %r14, %rdi
movq %r15, %rdx
movq %rbp, %rcx
callq 0x97fb2
cmpb $0x0, (%rbp)
jne 0x8abbd
movq %rbx, %rdi
callq 0x9640a
movq %rax, %r14
testq %r12, %r12
je 0x8ab9a
movq 0x8(%r12), %rax
testq %rax, %rax
je 0x8ab9a
movq 0x8(%rax), %rdi
jmp 0x8ab9c
xorl %edi, %edi
callq 0xe0cbc
leaq 0xb95f0(%rip), %rsi     # 0x144198
movq 0x8(%rsp), %rdi
movq %r14, %rdx
movq %rax, %rcx
xorl %eax, %eax
callq 0x95f0b
movq %rax, %r13
leaq 0x18(%rsp), %rdi
callq 0xe0b30
movq %r13, %rax
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_net_node_s_clone
BCORE_DEFINE_OBJECT_INST_P_NASC_END( x_btcl_net_node_s )

x_btcl_net_node_s* x_btcl_net_node_s_setup( x_btcl_net_node_s* o, tp_t type, tp_t name, const x_source_point_s* sp )
{
    // bcore_x_btcl_net.x:90:5
    
    o->type = type;
    o->name = name;
    x_source_point_s_copy(BCORE_PASS_CREATE(x_source_point_s,o->sp),sp );
    return  o;
}

// Assembly:
testq %rdi, %rdi
je 0x9a2d6
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %rbx
movabsq $-0x1948b20c22462ae4, %r14 # imm = 0xE6B74DF3DDB9D51C
leaq 0x10f22c(%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 %r14, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r14, %rdx
je 0x9a292
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r14, %rdx
je 0x9a292
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r14, %rdx
je 0x9a292
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r14, %rdx
jne 0x9a2d9
movq (%rax,%rcx), %r15
testq %r15, %r15
jne 0x9a2c2
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r14, %rsi
callq 0xf3f85
movq %rax, %r15
leaq 0x10f1b1(%rip), %rdi    # 0x1a9468
movq %r14, %rsi
movq %rax, %rdx
callq 0x12128c
movq 0xc0(%r15), %rax
movq %r15, %rdi
movq %rbx, %rsi
popq %rbx
popq %r14
popq %r15
jmpq *%rax
xorl %eax, %eax
retq
xorl %r15d, %r15d
jmp 0x9a296
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_operator_eval_bop_type
er_t x_btcl_operator_eval_bop_type( x_btcl_frame_s* frame, tp_t type, s2_t priority, x_source* source, sr_s* sa, sr_s* result )
{
    // bcore_x_btcl_operator.x:264:1
    BLM_INIT_LEVEL(0);
    x_source_point_s* source_point = x_source_point_s__(((x_source_point_s*)BLM_LEVEL_T_PUSH(0,x_source_point_s,x_source_point_s_create())),source );
    sr_s sb;BLM_T_INIT_SPUSH(sr_s, &sb);; BLM_TRY(x_btcl_frame_s_eval(frame,priority, source,&( sb )))
    x_btcl_operator_bop_s* bop = x_btcl_operator_bop_s__(((x_btcl_operator_bop_s*)BLM_LEVEL_T_PUSH(0,x_btcl_operator_bop_s,x_btcl_operator_bop_s_create())),type, sa,&( sb), source_point );
    bl_t success = false;
    BLM_TRY(x_btcl_operator_bop_s_solve(bop,frame, result,&( success )))
    if( !success )
    {
        BLM_RETURNV(er_t, x_source_point_s_parse_error_fa(source_point,"Operator '#<sc_t> #<sc_t> #<sc_t>' is not defined.\n", bnameof( sr_s_o_type(sa) ), x_btcl_operator_symbol(type ), bnameof( sr_s_o_type(&(sb)) ) ))
    }
    BLM_RETURNV(er_t, 0)
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x68, %rsp
movq %r9, 0x10(%rsp)
movq %r8, 0x8(%rsp)
movq %rcx, %rbp
movl %edx, %r14d
movq %rsi, 0x18(%rsp)
movq %rdi, %r13
leaq 0x11b1ac(%rip), %rax    # 0x1a8dd0
movq (%rax), %rsi
leaq 0x38(%rsp), %r15
movq %r15, %rdi
callq 0xe0431
movq $0x0, 0x10(%r15)
callq 0x59ec4
movabsq $0x717ff038b7471b82, %rdx # imm = 0x717FF038B7471B82
movq %r15, %rdi
xorl %esi, %esi
movq %rax, %rcx
callq 0xe0676
movq %rax, %rbx
movq %rax, %rdi
movq %rbp, %rsi
callq 0x8c9dc
leaq 0x20(%rsp), %r12
movq %r12, %rdi
callq 0x112ba5
movabsq $0x79b76918ff0af12a, %rsi # imm = 0x79B76918FF0AF12A
movq %r15, %rdi
movq %r12, %rdx
callq 0xe06ab
movq %r13, %rdi
movl %r14d, %esi
movq %rbp, %rdx
movq %r12, %rcx
callq 0x88ece
movq %rax, %rbp
testq %rax, %rax
je 0x8dcad
leaq 0x38(%rsp), %rdi
callq 0xe0b30
jmp 0x8dd20
callq 0x98654
leaq 0x38(%rsp), %rdi
movabsq $0x3736f25bc629e322, %rdx # imm = 0x3736F25BC629E322
xorl %esi, %esi
movq %rax, %rcx
callq 0xe0676
movq %rax, %r14
leaq 0x20(%rsp), %rcx
movq %rax, %rdi
movq 0x18(%rsp), %r15
movq %r15, %rsi
movq 0x8(%rsp), %rdx
movq %rdx, %r12
movq %rbx, %r8
callq 0x98889
leaq 0x7(%rsp), %rcx
movb $0x0, (%rcx)
movq %r14, %rdi
movq %r13, %rsi
movq 0x10(%rsp), %rdx
callq 0x9a384
movq %rax, %r14
testq %rax, %rax
je 0x8dd1b
leaq 0x38(%rsp), %rdi
callq 0xe0b30
movq %r14, %rbp
testq %r14, %r14
je 0x8dd32
movq %rbp, %rax
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
cmpb $0x0, 0x7(%rsp)
je 0x8dd40
xorl %ebp, %ebp
jmp 0x8dca1
testq %r12, %r12
je 0x8dd55
movq 0x8(%r12), %rax
testq %rax, %rax
je 0x8dd55
movq 0x8(%rax), %rdi
jmp 0x8dd57
xorl %edi, %edi
callq 0xe0cbc
movq %rax, %r14
movq %r15, %rdi
callq 0x9640a
movq %rax, %r15
movq 0x28(%rsp), %rax
testq %rax, %rax
je 0x8dd7a
movq 0x8(%rax), %rdi
jmp 0x8dd7c
xorl %edi, %edi
callq 0xe0cbc
leaq 0xb6447(%rip), %rsi     # 0x1441cf
movq %rbx, %rdi
movq %r14, %rdx
movq %r15, %rcx
movq %rax, %r8
xorl %eax, %eax
callq 0x95f0b
movq %rax, %rbp
jmp 0x8dca1
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_operator_top_s__
BCORE_DEFINE_OBJECT_INST_P_NASC_END( x_btcl_operator_top_s )

x_btcl_operator_top_s* x_btcl_operator_top_s__( x_btcl_operator_top_s* o, tp_t type, sr_s* a, sr_s* b, sr_s* c, x_source_point_s* source_point )
{
    // bcore_x_btcl_operator.x:778:5
    
    o->type = type;
    sr_s_tsm(&(o->a),sr_s_type(a), ((x_inst*)bcore_fork(a->o)) );
    sr_s_tsm(&(o->b),sr_s_type(b), ((x_inst*)bcore_fork(b->o)) );
    sr_s_tsm(&(o->c),sr_s_type(c), ((x_inst*)bcore_fork(c->o)) );
    if( source_point ) x_source_point_s_copy(&(o->sp),source_point );
    return o;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %r8, %r15
movq %rcx, %r12
movq %rdi, %r14
movq %rsi, 0x8(%rdi)
leaq 0x10(%rdi), %r13
testq %rdx, %rdx
movq %r9, (%rsp)
je 0x8ddd7
movq 0x8(%rdx), %rax
testq %rax, %rax
je 0x8ddd7
movq 0x8(%rax), %rbp
jmp 0x8ddd9
xorl %ebp, %ebp
movq (%rdx), %rdi
callq 0xc8348
movq %rax, %rbx
movq %r13, %rdi
callq 0x112baf
testq %rbp, %rbp
je 0x8ddfb
movq %rbp, %rdi
callq 0x1123e1
jmp 0x8ddfd
xorl %eax, %eax
movq %rbx, 0x10(%r14)
movq %rax, 0x18(%r14)
movq $0x2, 0x20(%r14)
leaq 0x28(%r14), %r13
testq %r12, %r12
je 0x8de26
movq 0x8(%r12), %rax
testq %rax, %rax
je 0x8de26
movq 0x8(%rax), %rbp
jmp 0x8de28
xorl %ebp, %ebp
movq (%r12), %rdi
callq 0xc8348
movq %rax, %rbx
movq %r13, %rdi
callq 0x112baf
testq %rbp, %rbp
je 0x8de4b
movq %rbp, %rdi
callq 0x1123e1
jmp 0x8de4d
xorl %eax, %eax
movq %rbx, 0x28(%r14)
movq %rax, 0x30(%r14)
movq $0x2, 0x38(%r14)
leaq 0x40(%r14), %r12
testq %r15, %r15
je 0x8de75
movq 0x8(%r15), %rax
testq %rax, %rax
je 0x8de75
movq 0x8(%rax), %r13
jmp 0x8de78
xorl %r13d, %r13d
movq (%r15), %rdi
callq 0xc8348
movq %rax, %rbx
movq %r12, %rdi
callq 0x112baf
testq %r13, %r13
je 0x8de9a
movq %r13, %rdi
callq 0x1123e1
jmp 0x8de9c
xorl %eax, %eax
movq %rbx, 0x40(%r14)
movq %rax, 0x48(%r14)
movq $0x2, 0x50(%r14)
movq (%rsp), %rsi
testq %rsi, %rsi
je 0x8debe
leaq 0x58(%r14), %rdi
callq 0x59df2
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_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_to_sink
er_t x_btcl_to_sink( bl_t detailed, const sr_s* sr, x_sink* sink )
{
    // bcore_x_btcl.x:1050:1
    
    if( detailed )
    {
        if( sr_s_o_type(sr) == ((tp_t)(TYPEOF_x_btcl_list_s)) ) BLM_TRY(x_btcl_list_s_to_sink(((const x_btcl_list_s*)(sr->o)),detailed, sink ))
        else x_btml_t_to_sink( ((const x_btml*)(sr->o)),sr_s_o_type(sr), sink );
    }
    else
    {
        if     ( !sr->o ) x_sink_push_fa(sink,"NULL" );
        else if( sr_s_type(sr) == ((tp_t)(TYPEOF_bl_t)) ) x_sink_push_fa(sink,"#<sc_t>", sr_s_to_bl(sr) ? "true" : "false" );
        else if( sr_s_is_integer(sr) ) x_sink_push_fa(sink,"#<s3_t>", sr_s_to_s3(sr) );
        else if( sr_s_is_float(sr) )   x_sink_push_fa(sink,"#<f3_t>", sr_s_to_f3(sr) );
        else if( sr_s_o_type(sr) == ((tp_t)(TYPEOF_st_s)) ) x_sink_push_fa(sink,"#<sc_t>", ((const st_s*)(sr->o))->sc );
        else if( sr_s_o_type(sr) == ((tp_t)(TYPEOF_x_btcl_list_s)) ) BLM_TRY(x_btcl_list_s_to_sink(((const x_btcl_list_s*)(sr->o)),detailed, sink ))
        else x_btml_t_to_sink( ((const x_btml*)(sr->o)),sr_s_o_type(sr), sink );
    }
    return  0;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdx, %rbx
movq %rsi, %r14
testl %edi, %edi
je 0x8e224
testq %r14, %r14
je 0x8e31d
movq 0x8(%r14), %rax
testq %rax, %rax
je 0x8e31d
movabsq $-0x240ec4eb25c1f3e8, %rcx # imm = 0xDBF13B14DA3E0C18
cmpq %rcx, 0x8(%rax)
jne 0x8e31d
movq (%r14), %rdi
movl $0x1, %esi
movq %rbx, %rdx
callq 0x94638
jmp 0x8e343
cmpq $0x0, (%r14)
je 0x8e298
movq 0x8(%r14), %rax
testq %rax, %rax
je 0x8e26b
movabsq $-0x3ac242643d9c35a8, %rcx # imm = 0xC53DBD9BC263CA58
cmpq %rcx, 0x8(%rax)
jne 0x8e26b
movq %r14, %rdi
callq 0x113a4b
leaq 0xcb39b(%rip), %rcx     # 0x1595ed
leaq 0xb0558(%rip), %rdx     # 0x13e7b1
testb %al, %al
cmovneq %rcx, %rdx
leaq 0xc19fe(%rip), %rsi     # 0x14fc64
movq %rbx, %rdi
jmp 0x8e28c
movq %r14, %rdi
callq 0x112ffe
testb %al, %al
je 0x8e2ae
movq %r14, %rdi
callq 0x113836
leaq 0xc0433(%rip), %rsi     # 0x14e6b9
movq %rbx, %rdi
movq %rax, %rdx
xorl %eax, %eax
callq 0x5afab
jmp 0x8e343
leaq 0xb60b2(%rip), %rsi     # 0x144351
movq %rbx, %rdi
xorl %eax, %eax
callq 0x5afab
jmp 0x8e343
movq %r14, %rdi
callq 0x112fda
testb %al, %al
je 0x8e2d5
movq %r14, %rdi
callq 0x1133ac
leaq 0xb5bec(%rip), %rsi     # 0x143eb5
movq %rbx, %rdi
movb $0x1, %al
callq 0x5afab
jmp 0x8e343
movq 0x8(%r14), %rax
testq %rax, %rax
je 0x8e2fa
movabsq $-0x503db0e6e1c2e704, %rcx # imm = 0xAFC24F191E3D18FC
cmpq %rcx, 0x8(%rax)
jne 0x8e2fa
movq (%r14), %rax
movq 0x8(%rax), %rdx
jmp 0x8e25f
movq 0x8(%r14), %rax
testq %rax, %rax
je 0x8e31d
movabsq $-0x240ec4eb25c1f3e8, %rcx # imm = 0xDBF13B14DA3E0C18
cmpq %rcx, 0x8(%rax)
jne 0x8e31d
movq (%r14), %rdi
xorl %esi, %esi
jmp 0x8e217
movq (%r14), %rdi
movq 0x8(%r14), %rax
testq %rax, %rax
je 0x8e32f
movq 0x8(%rax), %rsi
jmp 0x8e331
xorl %esi, %esi
xorl %edx, %edx
movl $0x1, %ecx
movq %rbx, %r8
xorl %r9d, %r9d
callq 0x767fb
xorl %eax, %eax
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_null_member_s_copy
x_btcl_null_member_s* x_btcl_null_member_s_setup( x_btcl_null_member_s* o, sr_s* base, tp_t tp_name )
{
    // bcore_x_btcl.x:486:5
    
    sr_s_twm(&(o->base),sr_s_o_type(base), base->o );
    o->tp_name = tp_name;
    return o;
}

// Assembly:
cmpq %rsi, %rdi
je 0x939bb
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x388af54280329140, %r15 # imm = 0x388AF54280329140
leaq 0x115b51(%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 0x9396d
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x9396d
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x9396d
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x939bc
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x9399d
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xf3f85
movq %rax, %r12
leaq 0x115ad6(%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 0x93971
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_function_s_setup_external_function
x_btcl_function_s* x_btcl_function_s_setup_external_function( x_btcl_function_s* o, tp_t name, s2_t arity, bl_t is_mutable, const x_btcl* object )
{
    // bcore_x_btcl.x:751:5
    
    x_btcl_signature_s_attach( &(o->signature ),  x_btcl_signature_s_create());
    bcore_arr_tp_s_set_size(&(o->signature->arg_list),arity );
    for(sz_t i = 0; i < arity; i++ ) o->signature->arg_list.data[ i ] = i + 1;
    x_btcl_external_function_s_attach( &(o->external_function ),  x_btcl_external_function_s_setup(x_btcl_external_function_s_create(),name, is_mutable, object ));
    x_btcl_block_s_attach( &(o->block ),  NULL);
    x_btcl_function_s_attach( &(o->tail  ),  NULL);
    return  o;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %r8, %r14
movl %ecx, %ebp
movl %edx, %r12d
movq %rsi, %r15
movq %rdi, %rbx
callq 0x94dc5
movq %rax, %r13
movq 0x8(%rbx), %rdi
callq 0x94e74
movq %r13, 0x8(%rbx)
addq $0x20, %r13
movslq %r12d, %r12
movq %r13, %rdi
movq %r12, %rsi
callq 0xc2aef
testl %r12d, %r12d
jle 0x8f835
movq 0x8(%rbx), %rax
negq %r12
movl $0x1, %ecx
movq 0x28(%rax), %rdx
movq %rcx, -0x8(%rdx,%rcx,8)
leaq (%r12,%rcx), %rdx
incq %rdx
incq %rcx
cmpq $0x1, %rdx
jne 0x8f81c
callq 0x9523c
movq %rax, %r12
movzbl %bpl, %edx
movq %rax, %rdi
movq %r15, %rsi
movq %r14, %rcx
callq 0x95471
movq 0x18(%rbx), %rdi
callq 0x952eb
movq %r12, 0x18(%rbx)
movq 0x10(%rbx), %rdi
callq 0x949fd
xorl %r14d, %r14d
movq %r14, 0x10(%rbx)
movq 0x30(%rbx), %rdi
callq 0x95bac
movq %r14, 0x30(%rbx)
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_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_null_arr_element_s_copy
x_btcl_null_arr_element_s* x_btcl_null_arr_element_s_setup( x_btcl_null_arr_element_s* o, sr_s* base, tp_t index )
{
    // bcore_x_btcl.x:520:5
    
    sr_s_twm(&(o->base),sr_s_o_type(base), base->o );
    o->index = index;
    return o;
}

// Assembly:
cmpq %rsi, %rdi
je 0x93ee1
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x528f7bf4c984ae7a, %r15 # imm = 0x528F7BF4C984AE7A
leaq 0x11562b(%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 0x93e93
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x93e93
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x93e93
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x93ee2
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x93ec3
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xf3f85
movq %rax, %r12
leaq 0x1155b0(%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 0x93e97
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_function_s_call_via_arg_list
er_t x_btcl_function_s_call_via_arg_list( x_btcl_function_s* o, x_source_point_s* source_point, x_btcl_frame_s* lexical_frame, x_btcl_list_s* arg_list1, sr_s* result )
{
    // bcore_x_btcl.x:871:1
    BLM_INIT_LEVEL(0);
    bcore_arr_sr_s* arg_list = bcore_arr_sr_s_set_size(((bcore_arr_sr_s*)BLM_LEVEL_T_PUSH(0,bcore_arr_sr_s,bcore_arr_sr_s_create())),x_btcl_list_s_size(arg_list1) );
    for(sz_t i = 0; i < arg_list->size; i++ ) sr_s_fork_from(&(arg_list->data[ i ]),&(arg_list1->arr.data[ i ] ));
    BLM_RETURNV(er_t, x_btcl_function_s_call(o,source_point, lexical_frame, arg_list, result ))
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %r8, 0x10(%rsp)
movq %rcx, %r12
movq %rdx, 0x8(%rsp)
movq %rsi, %r15
movq %rdi, %r13
leaq 0x1174dc(%rip), %rax    # 0x1a8dd0
movq (%rax), %rsi
leaq 0x18(%rsp), %rbp
movq %rbp, %rdi
callq 0xe0431
movq $0x0, 0x10(%rbp)
xorl %eax, %eax
callq 0xc494c
movabsq $-0x78ea303a4f284a4, %rdx # imm = 0xF8715CFC5B0D7B5C
movq %rbp, %rdi
xorl %esi, %esi
movq %rax, %rcx
callq 0xe0676
movq 0x18(%r12), %rsi
movq %rax, %rdi
callq 0xc4b01
movq %rax, %rbp
cmpq $0x0, 0x10(%rax)
je 0x91967
xorl %ebx, %ebx
xorl %r14d, %r14d
movq 0x8(%rbp), %rdi
addq %rbx, %rdi
movq 0x10(%r12), %rsi
addq %rbx, %rsi
callq 0x112dbc
incq %r14
addq $0x18, %rbx
cmpq 0x10(%rbp), %r14
jb 0x91946
movq %r13, %rdi
movq %r15, %rsi
movq 0x8(%rsp), %rdx
movq %rbp, %rcx
movq 0x10(%rsp), %r8
callq 0x95f8f
movq %rax, %rbx
leaq 0x18(%rsp), %rdi
callq 0xe0b30
movq %rbx, %rax
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_function_s_call_unary
er_t x_btcl_function_s_call_unary( x_btcl_function_s* o, x_source_point_s* source_point, x_btcl_frame_s* lexical_frame, sr_s* s_arg, sr_s* result )
{
    // bcore_x_btcl.x:862:1
    BLM_INIT_LEVEL(0);
    bcore_arr_sr_s* arg_list = ((bcore_arr_sr_s*)BLM_LEVEL_T_PUSH(0,bcore_arr_sr_s,bcore_arr_sr_s_create()));
    sr_s_fork_from(bcore_arr_sr_s_push_sr(arg_list,sr_null() ),s_arg );
    BLM_RETURNV(er_t, x_btcl_function_s_call(o,source_point, lexical_frame, arg_list, result ))
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x78, %rsp
movq %r8, 0x28(%rsp)
movq %rcx, %rbp
movq %rdx, 0x20(%rsp)
movq %rsi, %r12
movq %rdi, %r13
leaq 0x1170e5(%rip), %rax    # 0x1a8dd0
movq (%rax), %rsi
leaq 0x48(%rsp), %r14
movq %r14, %rdi
callq 0xe0431
xorl %r15d, %r15d
movq %r15, 0x10(%r14)
xorl %eax, %eax
callq 0xc494c
movabsq $-0x78ea303a4f284a4, %rdx # imm = 0xF8715CFC5B0D7B5C
movq %r14, %rdi
xorl %esi, %esi
movq %rax, %rcx
callq 0xe0676
movq %rax, %rbx
xorps %xmm0, %xmm0
movaps %xmm0, 0x30(%rsp)
movq %r15, 0x40(%rsp)
movq 0x40(%rsp), %rax
movq %rax, 0x10(%rsp)
movaps 0x30(%rsp), %xmm0
movups %xmm0, (%rsp)
movq %rbx, %rdi
callq 0xc4cee
movq %rax, %rdi
movq %rbp, %rsi
callq 0x112dbc
movq %r13, %rdi
movq %r12, %rsi
movq 0x20(%rsp), %rdx
movq %rbx, %rcx
movq 0x28(%rsp), %r8
callq 0x95f8f
movq %rax, %rbx
movq %r14, %rdi
callq 0xe0b30
movq %rbx, %rax
addq $0x78, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_clone_if_weak_or_twice_referenced
void x_btcl_clone_if_weak_or_twice_referenced( sr_s* sr )
{
    // bcore_x_btcl.x:154:1
    
    if( sr_s_is_weak(sr) || sr_s_references(sr) >= 2 )
    {
        bl_t is_const = sr_s_is_const(sr);
        (*(sr)) = sr_clone(*( sr ));
        sr_s_set_const(sr,is_const );
    }
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x30, %rsp
movq %rdi, %rbx
testb $0x2, 0x10(%rdi)
je 0x924ec
movq (%rbx), %rdi
testq %rdi, %rdi
je 0x9252f
callq 0xc8343
cmpq $0x2, %rax
jb 0x9252f
movq 0x10(%rbx), %r15
andl $0x1, %r15d
movq 0x10(%rbx), %rax
movq %rax, 0x10(%rsp)
movups (%rbx), %xmm0
movups %xmm0, (%rsp)
leaq 0x18(%rsp), %r14
movq %r14, %rdi
callq 0x11248a
movq 0x10(%r14), %rax
movq %rax, 0x10(%rbx)
movups (%r14), %xmm0
movups %xmm0, (%rbx)
movq 0x10(%rbx), %rax
andq $-0x2, %rax
orq %r15, %rax
movq %rax, 0x10(%rbx)
addq $0x30, %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_frame_s_eval_op_continuation
er_t x_btcl_frame_s_eval_op_continuation( x_btcl_frame_s* o, s2_t op_priority, x_source* source, sr_s* sr )
{
    // bcore_x_btcl_op.x:390:1
    
    // if the last expression in a file, block or frame has a trailing semicolon, the continuation is ignored
    if( x_source_parse_bl(source," #=?([0]=='}'||[0]==')')" ) ) return  0;
    if( x_source_eos(source) ) return  0;
    
    sr_s_clear(sr);
    BLM_TRY(x_btcl_frame_s_eval(o,op_priority, source, sr ))
    return  0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
movq %rcx, %rbx
movq %rdx, %r14
movl %esi, 0x1c(%rsp)
movq %rdi, %r15
movq (%rdx), %r12
leaq 0x116dfd(%rip), %rbp    # 0x1a9cc8
movl (%rbp), %eax
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 0x92f25
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r12, %rdx
je 0x92f25
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r12, %rdx
je 0x92f25
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r12, %rdx
jne 0x9309c
movq (%rax,%rcx), %r13
testq %r13, %r13
jne 0x92f55
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %r12, %rsi
callq 0xf3f85
movq %rax, %r13
leaq 0x116d7e(%rip), %rdi    # 0x1a9cc8
movq %r12, %rsi
movq %rax, %rdx
callq 0x12128c
leaq 0xb0d45(%rip), %rdx     # 0x143ca1
movq %r13, %rdi
movq %r14, %rsi
callq 0x10aa16
testb %al, %al
jne 0x9301d
movq (%r14), %r12
movl (%rbp), %eax
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 0x92fcc
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r12, %rdx
je 0x92fcc
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r12, %rdx
je 0x92fcc
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r12, %rdx
jne 0x930a4
movq (%rax,%rcx), %r13
testq %r13, %r13
jne 0x92ffc
movabsq $-0x7e8ee9b9b4bbaa8, %rdi # imm = 0xF817116464B44558
movq %r12, %rsi
callq 0xf3f85
movq %rax, %r13
leaq 0x116cd7(%rip), %rdi    # 0x1a9cc8
movq %r12, %rsi
movq %rax, %rdx
callq 0x12128c
cmpq $0x0, 0x40(%r13)
jne 0x93012
leaq 0xb1f07(%rip), %rsi     # 0x144f11
movq %r13, %rdi
callq 0xf592c
movq %r14, %rdi
callq *0x40(%r13)
testb %al, %al
je 0x93031
xorl %ebx, %ebx
movq %rbx, %rax
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
testq %rbx, %rbx
je 0x93071
movq 0x10(%rbx), %rax
movq %rax, 0x30(%rsp)
movups (%rbx), %xmm0
movaps %xmm0, 0x20(%rsp)
testb $0x2, %al
je 0x93063
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)
movq %r15, %rdi
movl 0x1c(%rsp), %esi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x88ece
movq %rax, %rbx
testq %rax, %rax
je 0x9301f
leaq 0x115d3e(%rip), %rax    # 0x1a8dd0
movq (%rax), %rdi
callq 0xe0b30
jmp 0x9301f
xorl %r13d, %r13d
jmp 0x92f29
xorl %r13d, %r13d
jmp 0x92fd0
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_list_s_copy
er_t x_btcl_list_s_to_sink( const x_btcl_list_s* o, bl_t detailed, x_sink* sink )
{
    // bcore_x_btcl.x:562:5
    
    x_sink_push_fa(sink,"[" );
    if( detailed ) x_sink_push_fa(sink,"\n" );
    for(sz_t i = 0; i < o->arr.size; i++ )
    {
        BLM_TRY(x_btcl_to_sink(detailed,&( o->arr.data[ i ]), sink ))
        if( i < o->arr.size - 1 )
        {
            x_sink_push_fa(sink,"," );
            if( detailed ) x_sink_push_fa(sink,"\n" );
        }
    }
    x_sink_push_fa(sink,"]" );
    if( detailed ) x_sink_push_fa(sink,"\n" );
    return  0;
}

// Assembly:
cmpq %rsi, %rdi
je 0x943fd
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $-0x240ec4eb25c1f3e8, %r15 # imm = 0xDBF13B14DA3E0C18
leaq 0x11510f(%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 0x943af
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x943af
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x943af
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x943fe
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x943df
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xf3f85
movq %rax, %r12
leaq 0x115094(%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 0x943b3
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_external_function_s_setup
x_btcl_external_function_s* x_btcl_external_function_s_setup( x_btcl_external_function_s* o, tp_t name, bl_t is_mutable, const x_btcl* object )
{
    // bcore_x_btcl.x:708:5
    
    o->name = name;
    o->is_mutable = is_mutable;
    x_btcl_a_attach( &(o->object ), (x_btcl*)( ((x_btcl*)bcore_fork(((x_btcl*)(object))))));
    return o;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
movq %rdi, %rbx
movq %rsi, 0x8(%rdi)
movb %dl, 0x10(%rdi)
movq %rcx, %rdi
callq 0xc8348
movq %rax, %r14
testq %rax, %rax
je 0x954a6
movq (%r14), %rsi
movabsq $-0x12565a3dacdb0ecf, %rdi # imm = 0xEDA9A5C25324F131
callq 0x1222bd
movq 0x18(%rbx), %r15
testq %r15, %r15
je 0x95550
movq (%r15), %r12
leaq 0x113fab(%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 %r12, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r12, %rdx
je 0x95513
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r12, %rdx
je 0x95513
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r12, %rdx
je 0x95513
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r12, %rdx
jne 0x95561
movq (%rax,%rcx), %r13
testq %r13, %r13
jne 0x95543
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r12, %rsi
callq 0xf3f85
movq %rax, %r13
leaq 0x113f30(%rip), %rdi    # 0x1a9468
movq %r12, %rsi
movq %rax, %rdx
callq 0x12128c
movq %r13, %rdi
movq %r15, %rsi
callq *0xb8(%r13)
movq %r14, 0x18(%rbx)
movq %rbx, %rax
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
xorl %r13d, %r13d
jmp 0x95517
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_function_s_setup_wrapped_function
x_btcl_function_s* x_btcl_function_s_setup_wrapped_function( x_btcl_function_s* o, x_btcl_function_s* wrapped_function, bcore_arr_sr_s* wrapped_arg_list )
{
    // bcore_x_btcl.x:762:5
    BLM_INIT_LEVEL(0);
    x_btcl_function_s_attach( &(o->wrapped_function ),  ((x_btcl_function_s*)bcore_fork(wrapped_function)));
    bcore_arr_sr_s_attach( &(o->wrapped_arg_list ),  ((bcore_arr_sr_s*)bcore_fork(wrapped_arg_list)));
    
    x_btcl_signature_s* signature = ((x_btcl_signature_s*)BLM_LEVEL_T_PUSH(0,x_btcl_signature_s,x_btcl_signature_s_create()));
    for(sz_t i = wrapped_arg_list->size; i < o->wrapped_function->signature->arg_list.size; i++ )
    {
        bcore_arr_tp_s_push(&(signature->arg_list),o->wrapped_function->signature->arg_list.data[ i ] );
    }
    
    x_btcl_signature_s_attach( &(o->signature ),  ((x_btcl_signature_s*)bcore_fork(signature)));
    BLM_RETURNV(x_btcl_function_s*, o)
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x38, %rsp
movq %rdx, %r14
movq %rsi, %r12
movq %rdi, %rbx
leaq 0x113083(%rip), %rax    # 0x1a8dd0
movq (%rax), %rsi
leaq 0x8(%rsp), %r15
movq %r15, %rdi
callq 0xe0431
movq $0x0, 0x10(%r15)
movq %r12, %rdi
callq 0xc8348
movq %rax, %r12
movq 0x20(%rbx), %rdi
callq 0x95bac
movq %r12, 0x20(%rbx)
movq %r14, %rdi
callq 0xc8348
movq %rax, %r12
movq 0x28(%rbx), %rdi
callq 0xc4969
movq %r12, 0x28(%rbx)
callq 0x94dc5
movabsq $0x7e995b597f71cb9a, %rdx # imm = 0x7E995B597F71CB9A
movq %r15, %rdi
xorl %esi, %esi
movq %rax, %rcx
callq 0xe0676
movq %rax, %r15
movq 0x10(%r14), %r12
movq 0x20(%rbx), %rax
movq 0x8(%rax), %rax
cmpq 0x30(%rax), %r12
jae 0x95dee
movq %r15, %r14
addq $0x20, %r14
movq 0x28(%rax), %rax
movq (%rax,%r12,8), %rsi
movq %r14, %rdi
callq 0xc2b6f
incq %r12
movq 0x20(%rbx), %rax
movq 0x8(%rax), %rax
cmpq 0x30(%rax), %r12
jb 0x95dcd
movq %r15, %rdi
callq 0xc8348
movq %rax, %r14
movq 0x8(%rbx), %rdi
callq 0x94e74
movq %r14, 0x8(%rbx)
leaq 0x8(%rsp), %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_function_s_append_tail
x_btcl_function_s* x_btcl_function_s_append_tail( x_btcl_function_s* o, const x_btcl_function_s* tail )
{
    // bcore_x_btcl.x:777:5
    
    if( !o->tail )
    {
        x_btcl_function_s_attach( &(o->tail ),  x_btcl_function_s_clone(tail));
    }
    else
    {
        x_btcl_function_s_append_tail(o->tail,tail );
    }
    return  o;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
xorl %ebp, %ebp
movq 0x30(%rbx), %rax
testq %rax, %rax
je 0x95e44
testb $0x1, %bpl
cmoveq %rbx, %r14
movb $0x1, %bpl
movq %rax, %rbx
jmp 0x95e2b
movq %rsi, %rdi
callq 0x95c6e
movq %rax, %r15
movq 0x30(%rbx), %rdi
callq 0x95bac
movq %r15, 0x30(%rbx)
testb $0x1, %bpl
cmoveq %rbx, %r14
movq %r14, %rax
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_function_s_setup_frame
er_t x_btcl_function_s_setup_frame( x_btcl_function_s* o, x_btcl_frame_s* lexical_frame, x_source_point_s* source_point, x_btcl_frame_s* frame )
{
    // bcore_x_btcl.x:799:1
    
    if( lexical_frame->depth >= x_btcl_max_frame_depth() ) return  x_source_point_s_parse_error_fa(source_point,"Maximum frame depth (#<sz_t>) exceeded. Check for unguarded recursions.\n", x_btcl_max_frame_depth() );
    x_btcl_frame_s_setup(frame,lexical_frame );
    x_btcl_frame_s_var_set(frame,TYPEOF_self, sr_asm(((x_inst*)( ((x_btcl_function_s*)bcore_fork(o)) ))) );
    
    return  0;
}

// Assembly:
cmpq $0x500, 0x18(%rsi)      # imm = 0x500
jl 0x95e92
movq %rdx, %rax
leaq 0xadf1e(%rip), %rsi     # 0x143da4
movl $0x500, %edx            # imm = 0x500
movq %rax, %rdi
xorl %eax, %eax
jmp 0x95f0b
pushq %r14
pushq %rbx
subq $0x38, %rsp
movq %rcx, %rbx
movq %rdi, %r14
movq %rcx, %rdi
callq 0x87135
movq %r14, %rdi
callq 0xc8348
movq %rax, %r14
testq %rax, %rax
je 0x95ec1
movq (%r14), %rdi
callq 0x1123e1
jmp 0x95ec3
xorl %eax, %eax
movq %r14, 0x20(%rsp)
movq %rax, 0x28(%rsp)
movl $0x2, %eax
movq %rax, 0x30(%rsp)
addq $0x78, %rbx
movq %rax, 0x10(%rsp)
movups 0x20(%rsp), %xmm0
movups %xmm0, (%rsp)
movabsq $0x2d19e518d40792b7, %rsi # imm = 0x2D19E518D40792B7
movq %rbx, %rdi
callq 0xddff8
xorl %eax, %eax
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_selftest
void x_btcl_selftest( sc_t file )
{
    // bcore_x_btcl.x:1499:1
    BLM_INIT_LEVEL(0);
    sr_s* obj = ((sr_s*)BLM_LEVEL_T_PUSH(0,sr_s,sr_s_create()));
    BLM_TRY_EXIT(x_btcl_parse_create_object(((x_source*)BLM_LEVEL_A_PUSH(0,x_source_check_create_from_file(file ))), obj ))
    ASSERT( obj->o );
    ASSERT( sr_s_is_numeric(obj) );
    ASSERT( sr_s_to_s3(obj) == 0 );
    BLM_DOWN();
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x70, %rsp
movq %rdi, %r14
leaq 0x111dbc(%rip), %r12    # 0x1a8dd0
movq (%r12), %rsi
leaq 0x10(%rsp), %rdi
movq %rdi, 0x8(%rsp)
callq 0xe0431
movq 0x8(%rsp), %r15
xorl %r13d, %r13d
movq %r13, 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, %rbx
movq %r14, %rdi
callq 0x5b0e7
movq %r15, %rdi
xorl %esi, %esi
movq %rax, %rdx
callq 0xe0900
movq %rax, %r14
movq (%r12), %rsi
leaq 0x40(%rsp), %r15
movq %r15, %rdi
callq 0xe0431
movq %r13, 0x10(%r15)
callq 0x8580d
movabsq $0x56270522f5daaafb, %rdx # imm = 0x56270522F5DAAAFB
movq %r15, %rdi
xorl %esi, %esi
movq %rax, %rcx
callq 0xe0676
movq %rax, %rdi
movq %r14, %rsi
movq %rbx, %rdx
callq 0x85bd8
movq %rax, %r14
movq %r15, %rdi
callq 0xe0b30
testq %r14, %r14
je 0x970cd
movq 0x8(%rsp), %rdi
callq 0xe0b30
movl %r14d, %edi
callq 0x59990
cmpq $0x0, (%rbx)
jne 0x970fc
leaq 0xa156d(%rip), %rdi     # 0x138647
leaq 0xacddc(%rip), %rsi     # 0x143ebd
leaq 0xacddc(%rip), %rdx     # 0x143ec4
leaq 0xab3c7(%rip), %rcx     # 0x1424b6
movl $0x1adf, %r8d           # imm = 0x1ADF
xorl %eax, %eax
callq 0xc8053
movq %rbx, %rdi
callq 0x112fb6
testb %al, %al
jne 0x97131
leaq 0xa1538(%rip), %rdi     # 0x138647
leaq 0xacdbe(%rip), %rsi     # 0x143ed4
leaq 0xacda7(%rip), %rdx     # 0x143ec4
leaq 0xab392(%rip), %rcx     # 0x1424b6
movl $0x1ae0, %r8d           # imm = 0x1AE0
xorl %eax, %eax
callq 0xc8053
movq %rbx, %rdi
callq 0x113836
testq %rax, %rax
je 0x97167
leaq 0xa1502(%rip), %rdi     # 0x138647
leaq 0xacd9d(%rip), %rsi     # 0x143ee9
leaq 0xacd71(%rip), %rdx     # 0x143ec4
leaq 0xab35c(%rip), %rcx     # 0x1424b6
movl $0x1ae1, %r8d           # imm = 0x1AE1
xorl %eax, %eax
callq 0xc8053
leaq 0x8(%rsp), %rdi
callq 0xe0b11
addq $0x70, %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_operator_uop_s_copy
BCORE_DEFINE_OBJECT_INST_P_NASC_END( x_btcl_operator_uop_s )

x_btcl_operator_uop_s* x_btcl_operator_uop_s__( x_btcl_operator_uop_s* o, tp_t type, sr_s* a, x_source_point_s* source_point )
{
    // bcore_x_btcl_operator.x:88:5
    
    o->type = type;
    sr_s_tsm(&(o->a),sr_s_type(a), ((x_inst*)bcore_fork(a->o)) );
    if( source_point ) x_source_point_s_copy(&(o->sp),source_point );
    return o;
}

// Assembly:
cmpq %rsi, %rdi
je 0x97429
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $-0x644282552f36739d, %r15 # imm = 0x9BBD7DAAD0C98C63
leaq 0x1120e3(%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 0x973db
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x973db
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x973db
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x9742a
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x9740b
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xf3f85
movq %rax, %r12
leaq 0x112068(%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 0x973df
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_operator_uop_s_solve
er_t x_btcl_operator_uop_s_solve( x_btcl_operator_uop_s* o, x_btcl_frame_s* frame, sr_s* result, bl_t* success )
{
    // bcore_x_btcl_operator.x:160:1
    
    BLM_TRY(x_btcl_operator_uop_s_solve_exportable_a(o,&(o->a), result, success ))
    if( (*(success)) ) return  0;
    
    if( x_btcl_operator_sr_is_exportable_operand(&(o->a )) )
    {
        sr_s_asc(result,((x_btcl_operator_uop_s*)bcore_fork(o)) );
        (*(success)) = true;
    }
    
    return  0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rcx, %rbx
movq %rdx, %r14
movq %rdi, %r15
leaq 0x10(%rdi), %rsi
callq 0x97944
cmpb $0x0, (%rbx)
jne 0x980c3
movq 0x18(%r15), %rax
testq %rax, %rax
je 0x97fe7
movq 0x8(%rax), %r13
jmp 0x97fea
xorl %r13d, %r13d
movq 0x10(%r15), %r12
leaq 0x10f69b(%rip), %rax    # 0x1a7690
movl 0x10f695(%rip), %ecx    # 0x1a7690
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %r13, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %r13, %rdx
je 0x98053
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r13, %rdx
je 0x98053
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r13, %rdx
je 0x98053
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r13, %rdx
jne 0x980d4
movq (%rax,%rcx), %rbp
testq %rbp, %rbp
jne 0x98083
movabsq $-0x2d60bfcb4cae7a7a, %rdi # imm = 0xD29F4034B3518586
movq %r13, %rsi
callq 0xf3f85
movq %rax, %rbp
leaq 0x10f618(%rip), %rdi    # 0x1a7690
movq %r13, %rsi
movq %rax, %rdx
callq 0x12128c
movq %r12, %rdi
callq *0x18(%rbp)
testb %al, %al
je 0x980c3
movq %r15, %rdi
callq 0xc8348
movq %rax, %r15
movq %r14, %rdi
callq 0x112baf
testq %r15, %r15
je 0x980af
movq (%r15), %rdi
callq 0x1123e1
jmp 0x980b1
xorl %eax, %eax
movq %r15, (%r14)
movq %rax, 0x8(%r14)
movq $0x3, 0x10(%r14)
movb $0x1, (%rbx)
xorl %eax, %eax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
xorl %ebp, %ebp
jmp 0x98057
// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_operator_bop_s__
BCORE_DEFINE_OBJECT_INST_P_NASC_END( x_btcl_operator_bop_s )

x_btcl_operator_bop_s* x_btcl_operator_bop_s__( x_btcl_operator_bop_s* o, tp_t type, sr_s* a, sr_s* b, x_source_point_s* source_point )
{
    // bcore_x_btcl_operator.x:244:5
    
    o->type = type;
    sr_s_tsm(&(o->a),sr_s_type(a), ((x_inst*)bcore_fork(a->o)) );
    sr_s_tsm(&(o->b),sr_s_type(b), ((x_inst*)bcore_fork(b->o)) );
    if( source_point ) x_source_point_s_copy(&(o->sp),source_point );
    return o;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %r8, %r14
movq %rcx, %r15
movq %rdi, %rbx
movq %rsi, 0x8(%rdi)
leaq 0x10(%rdi), %r12
testq %rdx, %rdx
je 0x988b9
movq 0x8(%rdx), %rax
testq %rax, %rax
je 0x988b9
movq 0x8(%rax), %r13
jmp 0x988bc
xorl %r13d, %r13d
movq (%rdx), %rdi
callq 0xc8348
movq %rax, %rbp
movq %r12, %rdi
callq 0x112baf
testq %r13, %r13
je 0x988de
movq %r13, %rdi
callq 0x1123e1
jmp 0x988e0
xorl %eax, %eax
movq %rbp, 0x10(%rbx)
movq %rax, 0x18(%rbx)
movq $0x2, 0x20(%rbx)
leaq 0x28(%rbx), %r12
testq %r15, %r15
je 0x98908
movq 0x8(%r15), %rax
testq %rax, %rax
je 0x98908
movq 0x8(%rax), %r13
jmp 0x9890b
xorl %r13d, %r13d
movq (%r15), %rdi
callq 0xc8348
movq %rax, %r15
movq %r12, %rdi
callq 0x112baf
testq %r13, %r13
je 0x9892d
movq %r13, %rdi
callq 0x1123e1
jmp 0x9892f
xorl %eax, %eax
movq %r15, 0x28(%rbx)
movq %rax, 0x30(%rbx)
movq $0x2, 0x38(%rbx)
testq %r14, %r14
je 0x98950
leaq 0x40(%rbx), %rdi
movq %r14, %rsi
callq 0x59df2
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_O1/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_operator_is_comparable
bl_t x_btcl_operator_is_comparable( const sr_s* a, const sr_s* b )
{
    // bcore_x_btcl_operator.x:280:1
    
    return 
    ( sr_s_is_numeric(a) && sr_s_is_numeric(b) ) ||
    ( ( sr_s_type(a) == ((tp_t)(TYPEOF_st_s)) ) && ( sr_s_type(b) == ((tp_t)(TYPEOF_st_s)) ) ) ||
    ( ( sr_s_type(a) == ((tp_t)(TYPEOF_x_btcl_list_s)) ) && ( sr_s_type(b) == ((tp_t)(TYPEOF_x_btcl_list_s)) ) );
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
callq 0x112fb6
testb %al, %al
je 0x9a118
movq %rbx, %rdi
callq 0x112fb6
movl %eax, %ecx
movb $0x1, %al
testb %cl, %cl
jne 0x9a190
testq %r14, %r14
je 0x9a18e
movq 0x8(%r14), %rcx
testq %rcx, %rcx
je 0x9a157
testq %rbx, %rbx
je 0x9a157
movabsq $-0x503db0e6e1c2e704, %rax # imm = 0xAFC24F191E3D18FC
cmpq %rax, 0x8(%rcx)
jne 0x9a157
movq 0x8(%rbx), %rcx
testq %rcx, %rcx
je 0x9a157
testq %r14, %r14
sete %dl
cmpq %rax, 0x8(%rcx)
sete %al
orb %al, %dl
je 0x9a15c
jmp 0x9a190
testq %r14, %r14
je 0x9a18e
movq 0x8(%r14), %rcx
testq %rcx, %rcx
je 0x9a18e
xorl %eax, %eax
testq %rbx, %rbx
je 0x9a190
movabsq $-0x240ec4eb25c1f3e8, %rdx # imm = 0xDBF13B14DA3E0C18
cmpq %rdx, 0x8(%rcx)
jne 0x9a190
movq 0x8(%rbx), %rax
testq %rax, %rax
je 0x9a18e
cmpq %rdx, 0x8(%rax)
sete %al
jmp 0x9a190
xorl %eax, %eax
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_net_node_s_push_plain_branch
x_btcl_net_node_s* x_btcl_net_node_s_push_plain_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:132:5
    
    x_btcl_net_plain_branch_s* branch = NULL;
    if( replace ) branch = x_btcl_net_node_s_m_plain_branch_by_name(o,name );
    if( !branch ) branch = ((x_btcl_net_plain_branch_s*)(x_array_push(((x_array*)(BCORE_PASS_CREATE(x_btcl_net_plain_branch_arr_s,o->plain_branch_arr))))));
    x_btcl_net_plain_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 0x9a340
movq 0x20(%r14), %rcx
testq %rcx, %rcx
je 0x9a340
movq 0x10(%rcx), %rax
testq %rax, %rax
je 0x9a340
movq 0x8(%rcx), %rdi
cmpq %r12, 0x8(%rdi)
je 0x9a342
leaq 0x30(%rdi), %rdx
movl $0x1, %esi
movq %rsi, %rcx
cmpq %rsi, %rax
je 0x9a335
leaq 0x1(%rcx), %rsi
cmpq %r12, 0x8(%rdx)
cmoveq %rdx, %rdi
leaq 0x30(%rdx), %rdx
jne 0x9a31b
xorl %edx, %edx
cmpq %rax, %rcx
cmovaeq %rdx, %rdi
jmp 0x9a342
xorl %edi, %edi
testq %rdi, %rdi
jne 0x9a367
movq 0x20(%r14), %rdi
testq %rdi, %rdi
jne 0x9a35c
callq 0xa161f
movq %rax, %rdi
movq %rax, 0x20(%r14)
movq (%rdi), %rsi
callq 0x5b7f0
movq %rax, %rdi
movq %r12, %rsi
movq %r15, %rdx
movq %rbx, %rcx
callq 0xa130d
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_operator_top_s_solve_exportable_a_b_c
er_t x_btcl_operator_top_s_solve_exportable_a_b_c( const x_btcl_operator_top_s* o, const sr_s* a, const sr_s* b, const sr_s* c, sr_s* result, bl_t* success )
{
    // bcore_x_btcl_operator.x:822:1
    
    (*(success)) = true;
    
    switch( o->type )
    {
        case ((tp_t)(TYPEOF_conditional)):
        {
            if( sr_s_is_numeric(a) )
            {
                if( sr_s_to_bl(a) )
                {
                    sr_s_tsc(result,sr_s_type(b), ((x_inst*)bcore_fork(b->o)) );
                }
                else
                {
                    sr_s_tsc(result,sr_s_type(c), ((x_inst*)bcore_fork(c->o)) );
                }
                return  0;
            }
        }
        break;
    
        default: break;
    }
    
    (*(success)) = false;
    return  0;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
movq %r9, %r12
movb $0x1, (%r9)
movabsq $-0x27ee546d048af62d, %rax # imm = 0xD811AB92FB7509D3
cmpq %rax, 0x8(%rdi)
jne 0x9c18d
movq %r8, %rbx
movq %rcx, %r14
movq %rdx, %r15
movq %rsi, %r13
movq %rsi, %rdi
callq 0x112fb6
testb %al, %al
je 0x9c18d
movq %r13, %rdi
callq 0x113a4b
testb %al, %al
je 0x9c194
testq %r15, %r15
je 0x9c1a8
movq 0x8(%r15), %rax
testq %rax, %rax
je 0x9c1a8
movq 0x8(%rax), %r14
jmp 0x9c1ab
movb $0x0, (%r12)
jmp 0x9c20a
testq %r14, %r14
je 0x9c1cd
movq 0x8(%r14), %rax
testq %rax, %rax
je 0x9c1cd
movq 0x8(%rax), %r15
jmp 0x9c1d0
xorl %r14d, %r14d
movq (%r15), %rdi
callq 0xc8348
movq %rax, %r15
movq %rbx, %rdi
callq 0x112baf
testq %r14, %r14
je 0x9c1f2
movq %r14, %rdi
callq 0x1123e1
jmp 0x9c1f4
xorl %r15d, %r15d
movq (%r14), %rdi
callq 0xc8348
movq %rax, %r14
movq %rbx, %rdi
callq 0x112baf
testq %r15, %r15
je 0x9c1f9
movq %r15, %rdi
callq 0x1123e1
jmp 0x9c1fb
xorl %eax, %eax
movq %r15, (%rbx)
jmp 0x9c1fe
xorl %eax, %eax
movq %r14, (%rbx)
movq %rax, 0x8(%rbx)
movq $0x3, 0x10(%rbx)
xorl %eax, %eax
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_operator_f3_arg_nop_s_copy
BCORE_DEFINE_OBJECT_INST_P_NASC_END( x_btcl_operator_f3_arg_nop_s )

er_t x_btcl_operator_f3_arg_nop_s_set_args( x_btcl_operator_f3_arg_nop_s* o, x_btcl_operator_f3_arg_arr_s* arg_arr )
{
    // bcore_x_btcl_operator_f3.x:89:5
    
    if( o->index < 0 ) BLM_TRY(GERR_fa("index has not been set." ))
    if( o->index >= arg_arr->size ) BLM_TRY(GERR_fa("index is out of range." ))
    
    o->name = arg_arr->data[ o->index ].name;
    o->val = (&(arg_arr->data[ o->index ].val));
    return  0;
}

// Assembly:
cmpq %rsi, %rdi
je 0x9d44e
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x4f0240b228764b7, %r15 # imm = 0x4F0240B228764B7
leaq 0x10c0be(%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 0x9d400
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %r15, %rdx
je 0x9d400
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %r15, %rdx
je 0x9d400
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %r15, %rdx
jne 0x9d44f
movq (%rax,%rcx), %r12
testq %r12, %r12
jne 0x9d430
movabsq $0x782b96602f424981, %rdi # imm = 0x782B96602F424981
movq %r15, %rsi
callq 0xf3f85
movq %rax, %r12
leaq 0x10c043(%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 0x9d404