LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_signature_s_set_global_name
er_t xoico_signature_s_set_global_name( xoico_signature_s* o, const xoico_host* host )
{
    // xoico_signature.x:132:1
    BLM_INIT_LEVEL(0);
    o->base_name = xoico_host_a_obj_type(host);
    o->global_name = xoico_host_a_entypeof(host,((st_s*)BLM_LEVEL_T_PUSH(0,st_s,st_s_create_fa("#<sc_t>_#<sc_t>", xoico_host_a_nameof(host,o->base_name ), xoico_host_a_nameof(host,o->name ) )))->sc );
    BLM_RETURNV(er_t, 0)
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
leaq 0x1a91c9(%rip), %rax    # 0x1b2330
movq (%rax), %rax
movq %rax, -0x18(%rbp)
leaq -0x48(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x50(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0xbfe80
movq -0x50(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq $0x0, 0x10(%rax)
movq -0x10(%rbp), %rdi
callq 0x6b70
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x10(%rax)
movq -0x10(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x68(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rsi
callq 0x5a60
movq %rax, -0x70(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rsi
callq 0x5a60
movq -0x70(%rbp), %rsi
movq %rax, %rdx
leaq 0x12aee5(%rip), %rdi    # 0x1340d4
movb $0x0, %al
callq 0xff430
movq -0x68(%rbp), %rdi
movq %rax, %rcx
xorl %eax, %eax
movl %eax, %esi
movabsq $-0x503db0e6e1c2e704, %rdx # imm = 0xAFC24F191E3D18FC
callq 0xc01a0
movq -0x60(%rbp), %rdi
movq 0x8(%rax), %rsi
callq 0x9250
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x18(%rax)
movq $0x0, -0x58(%rbp)
movq -0x50(%rbp), %rdi
callq 0xc0720
movq -0x58(%rbp), %rax
addq $0x70, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_compiler_s_get_signature
const xoico_signature_s* xoico_compiler_s_get_signature( const xoico_compiler_s* o, tp_t name )
{
    // xoico_compiler.x:240:5
    
    const xoico* item = xoico_compiler_s_get_const_item(o,name );
    if( !item ) return  NULL;
    if( item->_ == ((tp_t)(TYPEOF_xoico_signature_s)) ) return  ((xoico_signature_s*)(item));
    if( item->_ == ((tp_t)(TYPEOF_xoico_feature_s))   ) return &( ((xoico_feature_s*)(item))->signature);
    return  NULL;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x15790
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
jne 0x9b42
movq $0x0, -0x8(%rbp)
jmp 0x9b88
movq -0x20(%rbp), %rax
movabsq $-0x231a5c50432e84f2, %rcx # imm = 0xDCE5A3AFBCD17B0E
cmpq %rcx, (%rax)
jne 0x9b5f
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9b88
movq -0x20(%rbp), %rax
movabsq $0x320f5368e957d0a2, %rcx # imm = 0x320F5368E957D0A2
cmpq %rcx, (%rax)
jne 0x9b80
movq -0x20(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x8(%rbp)
jmp 0x9b88
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_signature_s_fits_transient_type_feature
bl_t xoico_signature_s_fits_transient_type_feature( const xoico_signature_s* o )
{
    // xoico_signature.x:245:1
    
    if( o->typespec_ret.type != TYPEOF_tp_t ) return  false;
    if( o->typespec_ret.indirection != 0 )    return  false;
    if( !xoico_signature_s_as_member(o) )                     return  false;
    return  true;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movabsq $0x6d07f9ef5b68e8a2, %rcx # imm = 0x6D07F9EF5B68E8A2
cmpq %rcx, 0x28(%rax)
je 0x9e06
movb $0x0, -0x1(%rbp)
jmp 0x9e2e
movq -0x10(%rbp), %rax
cmpq $0x0, 0x40(%rax)
je 0x9e17
movb $0x0, -0x1(%rbp)
jmp 0x9e2e
movq -0x10(%rbp), %rdi
callq 0x9e40
testb $0x1, %al
jne 0x9e2a
movb $0x0, -0x1(%rbp)
jmp 0x9e2e
movb $0x1, -0x1(%rbp)
movb -0x1(%rbp), %al
andb $0x1, %al
addq $0x10, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_body_s_get_hash
tp_t xoico_body_s_get_hash( const xoico_body_s* o )
{
    // xoico_body.x:327:1
    
    tp_t hash = bcore_tp_fold_tp( bcore_tp_init(), o->_ );
    hash = bcore_tp_fold_tp( hash, o->name );
    if( o->code ) hash = bcore_tp_fold_tp( hash, xoico_body_code_s_get_hash(o->code) );
    hash = bcore_tp_fold_bl( hash, o->go_inline );
    return  hash;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
callq 0x40f10
movq %rax, %rdi
movq -0x8(%rbp), %rax
movq (%rax), %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
cmpq $0x0, 0x18(%rax)
je 0xab39
movq -0x10(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rdi
callq 0xa950
movq -0x18(%rbp), %rdi
movq %rax, %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movb 0x20(%rax), %al
andb $0x1, %al
movzbl %al, %esi
callq 0x68a0
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_func_s_get_hash
tp_t xoico_func_s_get_hash( const xoico_func_s* o )
{
    // xoico_func.x:75:1
    
    tp_t hash = bcore_tp_fold_tp( bcore_tp_init(), o->_ );
    hash = bcore_tp_fold_tp( hash, o->pre_hash );
    hash = bcore_tp_fold_tp( hash, o->name );
    hash = bcore_tp_fold_tp( hash, o->global_name );
    hash = bcore_tp_fold_tp( hash, o->obj_type );
    hash = bcore_tp_fold_tp( hash, o->signature_global_name );
    hash = bcore_tp_fold_bl( hash, o->expandable );
    hash = bcore_tp_fold_bl( hash, o->overloadable );
    hash = bcore_tp_fold_bl( hash, o->register_in_function_manager );
    
    if( o->body      ) hash = bcore_tp_fold_tp( hash, xoico_body_s_get_hash(o->body) );
    if( o->signature ) hash = bcore_tp_fold_tp( hash, xoico_signature_s_get_hash(o->signature) );
    return  hash;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
callq 0x40f10
movq %rax, %rdi
movq -0x8(%rbp), %rax
movq (%rax), %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x30(%rax), %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movb 0x28(%rax), %al
andb $0x1, %al
movzbl %al, %esi
callq 0x68a0
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movb 0x29(%rax), %al
andb $0x1, %al
movzbl %al, %esi
callq 0x68a0
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movb 0x2b(%rax), %al
andb $0x1, %al
movzbl %al, %esi
callq 0x68a0
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
cmpq $0x0, 0x38(%rax)
je 0xb7d8
movq -0x10(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rax
movq 0x38(%rax), %rdi
callq 0xaad0
movq -0x18(%rbp), %rdi
movq %rax, %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
cmpq $0x0, 0x40(%rax)
je 0xb808
movq -0x10(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x8(%rbp), %rax
movq 0x40(%rax), %rdi
callq 0x9080
movq -0x20(%rbp), %rdi
movq %rax, %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_func_s_freeze_global_name
er_t xoico_func_s_freeze_global_name( xoico_func_s* o, const xoico_host* host )
{
    // xoico_func.x:94:1
    BLM_INIT_LEVEL(0);
    if( o->global_name ) BLM_RETURNV(er_t, 0)
    xoico_compiler_s* compiler = xoico_host_a_compiler(host);
    o->global_name = xoico_compiler_s_entypeof(compiler,((st_s*)BLM_LEVEL_T_PUSH(0,st_s,st_s_create_fa("#<sc_t>_#<sc_t>", xoico_compiler_s_nameof(compiler,xoico_host_a_obj_type(host) ), xoico_compiler_s_nameof(compiler,o->name ) )))->sc );
    BLM_RETURNV(er_t, 0)
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x90, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
leaq 0x1a6af6(%rip), %rax    # 0x1b2330
movq (%rax), %rax
movq %rax, -0x20(%rbp)
leaq -0x50(%rbp), %rax
movq %rax, -0x58(%rbp)
movq -0x58(%rbp), %rdi
movq -0x20(%rbp), %rsi
callq 0xbfe80
movq -0x58(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x10(%rax)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x10(%rax)
je 0xb893
movq $0x0, -0x60(%rbp)
movq -0x58(%rbp), %rdi
callq 0xc0720
movq -0x60(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0xb94e
movq -0x18(%rbp), %rdi
callq 0x5170
movq %rax, -0x68(%rbp)
movq -0x68(%rbp), %rax
movq %rax, -0x78(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x80(%rbp)
movq -0x68(%rbp), %rax
movq %rax, -0x90(%rbp)
movq -0x18(%rbp), %rdi
callq 0x6b70
movq -0x90(%rbp), %rdi
movq %rax, %rsi
callq 0x51d0
movq %rax, -0x88(%rbp)
movq -0x68(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rsi
callq 0x51d0
movq -0x88(%rbp), %rsi
movq %rax, %rdx
leaq 0x1287d8(%rip), %rdi    # 0x1340d4
movb $0x0, %al
callq 0xff430
movq -0x80(%rbp), %rdi
movq %rax, %rcx
xorl %eax, %eax
movl %eax, %esi
movabsq $-0x503db0e6e1c2e704, %rdx # imm = 0xAFC24F191E3D18FC
callq 0xc01a0
movq -0x78(%rbp), %rdi
movq 0x8(%rax), %rsi
callq 0x5140
movq %rax, %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0x10(%rax)
movq $0x0, -0x70(%rbp)
movq -0x58(%rbp), %rdi
callq 0xc0720
movq -0x70(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x90, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_compiler_s_register_item
er_t xoico_compiler_s_register_item( xoico_compiler_s* o, const xoico* item )
{
    // xoico_compiler.x:328:1
    
    tp_t global_id = xoico_a_get_global_name_tp(item);
    if( bcore_hmap_tpvd_s_exists(&(o->hmap_item),global_id ) )
    {
        return  x_source_point_s_parse_error_fa(((x_source_point_s*)(xoico_a_get_source_point(item))),"'#<sc_t>' was already registered\n", xoico_compiler_s_nameof(o,global_id ) );
    }
    bcore_hmap_tpvd_s_set(&(o->hmap_item),global_id, ( vd_t )item );
    return  0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq -0x18(%rbp), %rdi
callq 0xc340
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rdi
addq $0x78, %rdi
movq -0x20(%rbp), %rsi
callq 0xb0190
testb $0x1, %al
jne 0xc1b4
jmp 0xc1e9
movq -0x18(%rbp), %rdi
callq 0x211c0
movq %rax, -0x28(%rbp)
movq -0x10(%rbp), %rdi
movq -0x20(%rbp), %rsi
callq 0x51d0
movq -0x28(%rbp), %rdi
movq %rax, %rdx
leaq 0x129f05(%rip), %rsi    # 0x1360e1
movb $0x0, %al
callq 0x7d20
movq %rax, -0x8(%rbp)
jmp 0xc206
movq -0x10(%rbp), %rdi
addq $0x78, %rdi
movq -0x20(%rbp), %rsi
movq -0x18(%rbp), %rdx
callq 0xafd80
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x30, %rsp
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_func_s_push_flect_decl_to_sink
er_t xoico_func_s_push_flect_decl_to_sink( const xoico_func_s* o, const xoico_host* host, x_sink* sink )
{
    // xoico_func.x:202:1
    
    xoico_compiler_s* compiler = xoico_host_a_compiler(host);
    x_sink_push_sc(sink,"func " );
    if( host->_ == ((tp_t)(TYPEOF_xoico_stamp_s)) && o->signature->base_name == ((const xoico_stamp_s*)(host))->trait_name )
    {
        x_sink_push_fa(sink,"^:#<sc_t>", xoico_compiler_s_nameof(compiler,o->name ) );
    }
    else
    {
        x_sink_push_fa(sink,"#<sc_t>:#<sc_t>", xoico_compiler_s_nameof(compiler,o->signature->base_name ), xoico_compiler_s_nameof(compiler,o->name ) );
    }
    x_sink_push_sc(sink,";" );
    return  0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x10(%rbp), %rdi
callq 0x5170
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rdi
leaq 0x1276dd(%rip), %rsi    # 0x133a79
callq 0xc460
movq -0x10(%rbp), %rax
movabsq $0x12d01d78049fae7, %rcx # imm = 0x12D01D78049FAE7
cmpq %rcx, (%rax)
jne 0xc3fa
movq -0x8(%rbp), %rax
movq 0x40(%rax), %rax
movq 0x10(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x30(%rcx), %rax
jne 0xc3fa
movq -0x18(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x20(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rsi
callq 0x51d0
movq -0x28(%rbp), %rdi
movq %rax, %rdx
leaq 0x12768e(%rip), %rsi    # 0x133a7f
movb $0x0, %al
callq 0x56e0
jmp 0xc445
movq -0x18(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x20(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x40(%rax), %rax
movq 0x10(%rax), %rsi
callq 0x51d0
movq %rax, -0x30(%rbp)
movq -0x20(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rsi
callq 0x51d0
movq -0x38(%rbp), %rdi
movq -0x30(%rbp), %rdx
movq %rax, %rcx
leaq 0x12764b(%rip), %rsi    # 0x133a89
movb $0x0, %al
callq 0x56e0
movq -0x18(%rbp), %rdi
leaq 0x12b783(%rip), %rsi    # 0x137bd3
callq 0xc460
xorl %eax, %eax
addq $0x40, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_func_s_expand_definition
er_t xoico_func_s_expand_definition( const xoico_func_s* o, const xoico_host* host, sz_t indent, x_sink* sink )
{
    // xoico_func.x:305:1
    
    if( !o->expandable ) return  0;
    xoico_compiler_s* compiler = xoico_host_a_compiler(host);
    
    const xoico_signature_s* signature = o->signature;
    ASSERT( signature );
    if( o->body && !o->body->go_inline )
    {
        x_sink_push_fa(sink,"\n" );
        x_sink_push_fa(sink,"#rn{ }", indent );
        BLM_TRY(xoico_signature_s_expand_declaration(signature,host, xoico_compiler_s_nameof(compiler,o->global_name ), indent, sink ))
        x_sink_push_fa(sink,"\n" );
        BLM_TRY(xoico_body_s_expand(o->body,host, signature, indent, sink ))
        x_sink_push_fa(sink,"\n" );
    }
    
    return  0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movq -0x10(%rbp), %rax
testb $0x1, 0x28(%rax)
jne 0xcb4f
movq $0x0, -0x8(%rbp)
jmp 0xccbb
movq -0x18(%rbp), %rdi
callq 0x5170
movq %rax, -0x30(%rbp)
movq -0x10(%rbp), %rax
movq 0x40(%rax), %rax
movq %rax, -0x38(%rbp)
cmpq $0x0, -0x38(%rbp)
jne 0xcb98
leaq 0x126e29(%rip), %rdi    # 0x13399f
leaq 0x12cf6b(%rip), %rsi    # 0x139ae8
leaq 0x126f9d(%rip), %rdx    # 0x133b21
leaq 0x126a5d(%rip), %rcx    # 0x1335e8
movl $0x78a, %r8d            # imm = 0x78A
movb $0x0, %al
callq 0x9cea0
movq -0x10(%rbp), %rax
cmpq $0x0, 0x38(%rax)
je 0xccb3
movq -0x10(%rbp), %rax
movq 0x38(%rax), %rax
testb $0x1, 0x20(%rax)
jne 0xccb3
movq -0x28(%rbp), %rdi
leaq 0x145e5d(%rip), %rsi    # 0x152a21
movb $0x0, %al
callq 0x56e0
movq -0x28(%rbp), %rdi
movq -0x20(%rbp), %rdx
leaq 0x126ef5(%rip), %rsi    # 0x133acf
movb $0x0, %al
callq 0x56e0
movq -0x38(%rbp), %rax
movq %rax, -0x68(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x30(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rsi
callq 0x51d0
movq -0x68(%rbp), %rdi
movq -0x60(%rbp), %rsi
movq %rax, %rdx
movq -0x20(%rbp), %rcx
movq -0x28(%rbp), %r8
callq 0x9c30
movq %rax, -0x40(%rbp)
cmpq $0x0, -0x40(%rbp)
je 0xcc46
movq -0x40(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x1a56fc(%rip), %rax    # 0x1b2330
movq (%rax), %rdi
callq 0xc0720
movq -0x48(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0xccbb
movq -0x28(%rbp), %rdi
leaq 0x145dd0(%rip), %rsi    # 0x152a21
movb $0x0, %al
callq 0x56e0
movq -0x10(%rbp), %rax
movq 0x38(%rax), %rdi
movq -0x18(%rbp), %rsi
movq -0x38(%rbp), %rdx
movq -0x20(%rbp), %rcx
movq -0x28(%rbp), %r8
callq 0xb210
movq %rax, -0x50(%rbp)
cmpq $0x0, -0x50(%rbp)
je 0xcca1
movq -0x50(%rbp), %rax
movq %rax, -0x58(%rbp)
leaq 0x1a56a1(%rip), %rax    # 0x1b2330
movq (%rax), %rdi
callq 0xc0720
movq -0x58(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0xccbb
movq -0x28(%rbp), %rdi
leaq 0x145d75(%rip), %rsi    # 0x152a21
movb $0x0, %al
callq 0x56e0
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x70, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_func_s_expand_init1
er_t xoico_func_s_expand_init1( const xoico_func_s* o, const xoico_host* host, sz_t indent, x_sink* sink )
{
    // xoico_func.x:327:1
    
    if( !o->expandable ) return  0;
    if( !o->register_in_function_manager ) return  0;
    
    sc_t sc_global_name = xoico_compiler_s_nameof(xoico_host_a_compiler(host),o->global_name );
    
    x_sink_push_fa(sink,"#rn{ }BCORE_REGISTER_FUNC( #<sc_t> );\n",
        indent,
        sc_global_name
    );
    
    return  0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movq -0x10(%rbp), %rax
testb $0x1, 0x28(%rax)
jne 0xccfc
movq $0x0, -0x8(%rbp)
jmp 0xcd4f
movq -0x10(%rbp), %rax
testb $0x1, 0x2b(%rax)
jne 0xcd10
movq $0x0, -0x8(%rbp)
jmp 0xcd4f
movq -0x18(%rbp), %rdi
callq 0x5170
movq %rax, %rdi
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rsi
callq 0x51d0
movq %rax, -0x30(%rbp)
movq -0x28(%rbp), %rdi
movq -0x20(%rbp), %rdx
movq -0x30(%rbp), %rcx
leaq 0x126e00(%rip), %rsi    # 0x133b40
movb $0x0, %al
callq 0x56e0
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_funcs_s_replace_d
er_t xoico_funcs_s_replace_d( xoico_funcs_s* o, sz_t idx, xoico_func_s* func )
{
    // xoico_funcs.x:68:5
    
    ASSERT( idx >= 0 && idx < o->size );
    xoico_func_s_attach( &(o->data[ idx ] ),  NULL);
    for(sz_t i = idx + 1; i < o->size; i++ ) o->data[ i - 1 ] = o->data[ i ];
    o->data[ o->size - 1 ] = func;
    return  0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
cmpq $0x0, -0x10(%rbp)
jl 0xd039
movq -0x10(%rbp), %rax
movq -0x8(%rbp), %rcx
cmpq 0x10(%rcx), %rax
jb 0xd062
leaq 0x12695f(%rip), %rdi    # 0x13399f
leaq 0x126b20(%rip), %rsi    # 0x133b67
leaq 0x126b33(%rip), %rdx    # 0x133b81
leaq 0x126593(%rip), %rcx    # 0x1335e8
movl $0x7ec, %r8d            # imm = 0x7EC
movb $0x0, %al
callq 0x9cea0
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rdi
movq -0x10(%rbp), %rax
shlq $0x3, %rax
addq %rax, %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0xd0f0
movq -0x10(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq -0x8(%rbp), %rcx
cmpq 0x10(%rcx), %rax
jae 0xd0ca
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rax
movq -0x20(%rbp), %rcx
movq (%rax,%rcx,8), %rdx
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rax
movq -0x20(%rbp), %rcx
subq $0x1, %rcx
movq %rdx, (%rax,%rcx,8)
movq -0x20(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x20(%rbp)
jmp 0xd08a
movq -0x18(%rbp), %rdx
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rax
movq -0x8(%rbp), %rcx
movq 0x10(%rcx), %rcx
subq $0x1, %rcx
movq %rdx, (%rax,%rcx,8)
xorl %eax, %eax
addq $0x20, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_feature_s_get_hash
tp_t xoico_feature_s_get_hash( const xoico_feature_s* o )
{
    // xoico_feature.x:65:1
    
    tp_t hash = bcore_tp_fold_tp( bcore_tp_init(), o->_ );
    hash = bcore_tp_fold_tp( hash, xoico_signature_s_get_hash(&(o->signature)) );
    hash = bcore_tp_fold_tp( hash, o->default_body ? xoico_body_s_get_hash(o->default_body) : 0 );
    hash = bcore_tp_fold_bl( hash, o->strict );
    hash = bcore_tp_fold_bl( hash, o->flag_p );
    hash = bcore_tp_fold_bl( hash, o->flag_t );
    hash = bcore_tp_fold_bl( hash, o->flag_a );
    hash = bcore_tp_fold_bl( hash, o->flag_r );
    hash = bcore_tp_fold_sc( hash, o->st_default_func_name.sc );
    return  hash;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
callq 0x40f10
movq %rax, %rdi
movq -0x8(%rbp), %rax
movq (%rax), %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x8(%rbp), %rdi
addq $0x8, %rdi
callq 0x9080
movq -0x20(%rbp), %rdi
movq %rax, %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rax
cmpq $0x0, 0x108(%rax)
je 0xd385
movq -0x8(%rbp), %rax
movq 0x108(%rax), %rdi
callq 0xaad0
movq %rax, -0x28(%rbp)
jmp 0xd38d
xorl %eax, %eax
movq %rax, -0x28(%rbp)
jmp 0xd38d
movq -0x18(%rbp), %rdi
movq -0x28(%rbp), %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movb 0x110(%rax), %al
andb $0x1, %al
movzbl %al, %esi
callq 0x68a0
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movb 0x111(%rax), %al
andb $0x1, %al
movzbl %al, %esi
callq 0x68a0
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movb 0x112(%rax), %al
andb $0x1, %al
movzbl %al, %esi
callq 0x68a0
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movb 0x113(%rax), %al
andb $0x1, %al
movzbl %al, %esi
callq 0x68a0
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movb 0x114(%rax), %al
andb $0x1, %al
movzbl %al, %esi
callq 0x68a0
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0xf0(%rax), %rsi
callq 0xa4d0
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_feature_s_expand_indef_typedef
er_t xoico_feature_s_expand_indef_typedef( const xoico_feature_s* o, const xoico_host* host, sz_t indent, x_sink* sink )
{
    // xoico_feature.x:412:1
    
    if( !o->expandable ) return  0;
    xoico_compiler_s* compiler = xoico_host_a_compiler(host);
    x_sink_push_fa(sink," \\\n#rn{ }  typedef ", indent );
    BLM_TRY(xoico_signature_s_expand_ret(&(o->signature),host, sink ))
    x_sink_push_fa(sink," (*#<sc_t>)(", xoico_compiler_s_nameof(compiler,o->function_pointer_name ) );
    BLM_TRY(xoico_arg_s_expand(o->signature.arg_o,host, sink ))
    BLM_TRY(xoico_args_s_expand(&(o->signature.args),host, false, sink ))
    x_sink_push_fa(sink," );" );
    return  0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movq -0x10(%rbp), %rax
testb $0x1, 0x115(%rax)
jne 0xf2c2
movq $0x0, -0x8(%rbp)
jmp 0xf3fc
movq -0x18(%rbp), %rdi
callq 0x5170
movq %rax, -0x30(%rbp)
movq -0x28(%rbp), %rdi
movq -0x20(%rbp), %rdx
leaq 0x124d96(%rip), %rsi    # 0x134074
movb $0x0, %al
callq 0x56e0
movq -0x10(%rbp), %rdi
addq $0x8, %rdi
movq -0x18(%rbp), %rsi
movq -0x28(%rbp), %rdx
callq 0x8ef0
movq %rax, -0x38(%rbp)
cmpq $0x0, -0x38(%rbp)
je 0xf329
movq -0x38(%rbp), %rax
movq %rax, -0x40(%rbp)
leaq 0x1a301c(%rip), %rax    # 0x1b2330
movq (%rax), %rdi
callq 0xc0720
movq -0x40(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0xf3fc
movq -0x28(%rbp), %rax
movq %rax, -0x68(%rbp)
movq -0x30(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0xe0(%rax), %rsi
callq 0x51d0
movq -0x68(%rbp), %rdi
movq %rax, %rdx
leaq 0x124d35(%rip), %rsi    # 0x134088
movb $0x0, %al
callq 0x56e0
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rdi
movq -0x18(%rbp), %rsi
movq -0x28(%rbp), %rdx
callq 0x7e70
movq %rax, -0x48(%rbp)
cmpq $0x0, -0x48(%rbp)
je 0xf39b
movq -0x48(%rbp), %rax
movq %rax, -0x50(%rbp)
leaq 0x1a2fa7(%rip), %rax    # 0x1b2330
movq (%rax), %rdi
callq 0xc0720
movq -0x50(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0xf3fc
movq -0x10(%rbp), %rdi
addq $0x8, %rdi
addq $0x58, %rdi
movq -0x18(%rbp), %rsi
movq -0x28(%rbp), %rcx
xorl %edx, %edx
callq 0x87b0
movq %rax, -0x58(%rbp)
cmpq $0x0, -0x58(%rbp)
je 0xf3e2
movq -0x58(%rbp), %rax
movq %rax, -0x60(%rbp)
leaq 0x1a2f60(%rip), %rax    # 0x1b2330
movq (%rax), %rdi
callq 0xc0720
movq -0x60(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0xf3fc
movq -0x28(%rbp), %rdi
leaq 0x13e546(%rip), %rsi    # 0x14d933
movb $0x0, %al
callq 0x56e0
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x70, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_feature_s_expand_spect_declaration
er_t xoico_feature_s_expand_spect_declaration( const xoico_feature_s* o, const xoico_host* host, sz_t indent, x_sink* sink )
{
    // xoico_feature.x:427:1
    
    if( !o->expandable ) return  0;
    xoico_compiler_s* compiler = xoico_host_a_compiler(host);
    x_sink_push_fa(sink," \\\n#rn{ }#<sc_t> #<sc_t>;", indent, xoico_compiler_s_nameof(compiler,o->function_pointer_name ), xoico_compiler_s_nameof(compiler,o->signature.name ) );
    return  0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movq -0x10(%rbp), %rax
testb $0x1, 0x115(%rax)
jne 0xf43f
movq $0x0, -0x8(%rbp)
jmp 0xf4aa
movq -0x18(%rbp), %rdi
callq 0x5170
movq %rax, -0x30(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x30(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0xe0(%rax), %rsi
callq 0x51d0
movq %rax, -0x38(%rbp)
movq -0x30(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rsi
callq 0x51d0
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rdx
movq -0x38(%rbp), %rcx
movq %rax, %r8
leaq 0x124bfa(%rip), %rsi    # 0x134095
movb $0x0, %al
callq 0x56e0
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x50, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_feature_s_expand_spect_definition
er_t xoico_feature_s_expand_spect_definition( const xoico_feature_s* o, const xoico_host* host, sz_t indent, x_sink* sink )
{
    // xoico_feature.x:437:1
    
    if( !o->expandable ) return  0;
    xoico_compiler_s* compiler = xoico_host_a_compiler(host);
    x_sink_push_fa(sink,"#rn{ }\"feature ", indent );
    if( o->strict ) x_sink_push_fa(sink,"strict " );
    if( o->flag_a ) x_sink_push_fa(sink,"aware " );
    
    x_sink_push_fa(sink,"#<sc_t> : #<sc_t>", xoico_compiler_s_nameof(compiler,xoico_host_a_obj_type(host) ), xoico_compiler_s_nameof(compiler,o->signature.name ) );
    if( o->st_default_func_name.size > 0 )
    {
        x_sink_push_fa(sink," = #<sc_t>_#<sc_t>", xoico_compiler_s_nameof(compiler,xoico_host_a_obj_type(host) ), o->st_default_func_name.sc );
    }
    x_sink_push_fa(sink,";\"\n" );
    return  0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movq -0x10(%rbp), %rax
testb $0x1, 0x115(%rax)
jne 0xf4f2
movq $0x0, -0x8(%rbp)
jmp 0xf613
movq -0x18(%rbp), %rdi
callq 0x5170
movq %rax, -0x30(%rbp)
movq -0x28(%rbp), %rdi
movq -0x20(%rbp), %rdx
leaq 0x124ba1(%rip), %rsi    # 0x1340af
movb $0x0, %al
callq 0x56e0
movq -0x10(%rbp), %rax
testb $0x1, 0x110(%rax)
je 0xf534
movq -0x28(%rbp), %rdi
leaq 0x124112(%rip), %rsi    # 0x13363f
movb $0x0, %al
callq 0x56e0
movq -0x10(%rbp), %rax
testb $0x1, 0x113(%rax)
je 0xf553
movq -0x28(%rbp), %rdi
leaq 0x124241(%rip), %rsi    # 0x13378d
movb $0x0, %al
callq 0x56e0
movq -0x28(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x18(%rbp), %rdi
callq 0x6b70
movq -0x48(%rbp), %rdi
movq %rax, %rsi
callq 0x51d0
movq %rax, -0x38(%rbp)
movq -0x30(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rsi
callq 0x51d0
movq -0x40(%rbp), %rdi
movq -0x38(%rbp), %rdx
movq %rax, %rcx
leaq 0x124b20(%rip), %rsi    # 0x1340bf
movb $0x0, %al
callq 0x56e0
movq -0x10(%rbp), %rax
cmpq $0x0, 0xf8(%rax)
jbe 0xf5f9
movq -0x28(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x58(%rbp)
movq -0x18(%rbp), %rdi
callq 0x6b70
movq -0x58(%rbp), %rdi
movq %rax, %rsi
callq 0x51d0
movq -0x50(%rbp), %rdi
movq %rax, %rdx
movq -0x10(%rbp), %rax
movq 0xf0(%rax), %rcx
leaq 0x124adf(%rip), %rsi    # 0x1340d1
movb $0x0, %al
callq 0x56e0
movq -0x28(%rbp), %rdi
leaq 0x1253d4(%rip), %rsi    # 0x1349d8
movb $0x0, %al
callq 0x56e0
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x60, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_feature_s_expand_indef_declaration
er_t xoico_feature_s_expand_indef_declaration( const xoico_feature_s* o, const xoico_host* host, sz_t indent, x_sink* sink )
{
    // xoico_feature.x:456:1
    
    if( !o->expandable ) return  0;
    {const xoico_funcs_s* __a=&(o->funcs );if(__a)for(sz_t __i=0;__i<__a->size;__i++){xoico_func_s* func=__a->data[__i]; BLM_TRY(xoico_func_s_expand_declaration(func,host, indent + 2, sink ))
    }}return  0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movq -0x10(%rbp), %rax
testb $0x1, 0x115(%rax)
jne 0xf652
movq $0x0, -0x8(%rbp)
jmp 0xf6f4
movq -0x10(%rbp), %rax
addq $0xa0, %rax
movq %rax, -0x30(%rbp)
cmpq $0x0, -0x30(%rbp)
je 0xf6ec
movq $0x0, -0x38(%rbp)
movq -0x38(%rbp), %rax
movq -0x30(%rbp), %rcx
cmpq 0x10(%rcx), %rax
jae 0xf6ea
movq -0x30(%rbp), %rax
movq 0x8(%rax), %rax
movq -0x38(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x20(%rbp), %rdx
addq $0x2, %rdx
movq -0x28(%rbp), %rcx
callq 0xc8d0
movq %rax, -0x48(%rbp)
cmpq $0x0, -0x48(%rbp)
je 0xf6da
movq -0x48(%rbp), %rax
movq %rax, -0x50(%rbp)
leaq 0x1a2c68(%rip), %rax    # 0x1b2330
movq (%rax), %rdi
callq 0xc0720
movq -0x50(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0xf6f4
jmp 0xf6dc
movq -0x38(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x38(%rbp)
jmp 0xf673
jmp 0xf6ec
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x50, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_feature_s_expand_definition
er_t xoico_feature_s_expand_definition( const xoico_feature_s* o, const xoico_host* host, sz_t indent, x_sink* sink )
{
    // xoico_feature.x:465:1
    
    if( !o->expandable ) return  0;
    {const xoico_funcs_s* __a=&(o->funcs );if(__a)for(sz_t __i=0;__i<__a->size;__i++){xoico_func_s* func=__a->data[__i]; BLM_TRY(xoico_func_s_expand_definition(func,host, indent, sink ))
    }}return  0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movq -0x10(%rbp), %rax
testb $0x1, 0x115(%rax)
jne 0xf732
movq $0x0, -0x8(%rbp)
jmp 0xf7cc
movq -0x10(%rbp), %rax
addq $0xa0, %rax
movq %rax, -0x30(%rbp)
cmpq $0x0, -0x30(%rbp)
je 0xf7c4
movq $0x0, -0x38(%rbp)
movq -0x38(%rbp), %rax
movq -0x30(%rbp), %rcx
cmpq 0x10(%rcx), %rax
jae 0xf7c2
movq -0x30(%rbp), %rax
movq 0x8(%rax), %rax
movq -0x38(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x20(%rbp), %rdx
movq -0x28(%rbp), %rcx
callq 0xcb20
movq %rax, -0x48(%rbp)
cmpq $0x0, -0x48(%rbp)
je 0xf7b2
movq -0x48(%rbp), %rax
movq %rax, -0x50(%rbp)
leaq 0x1a2b90(%rip), %rax    # 0x1b2330
movq (%rax), %rdi
callq 0xc0720
movq -0x50(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0xf7cc
jmp 0xf7b4
movq -0x38(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x38(%rbp)
jmp 0xf74f
jmp 0xf7c4
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x50, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_feature_s_expand_init1
er_t xoico_feature_s_expand_init1( const xoico_feature_s* o, const xoico_host* host, sz_t indent, x_sink* sink )
{
    // xoico_feature.x:474:1
    
    if( !o->expandable ) return  0;
    xoico_compiler_s* compiler = xoico_host_a_compiler(host);
    sc_t sc_global_name = xoico_compiler_s_nameof(compiler,o->signature.global_name );
    
    x_sink_push_fa(sink,"#rn{ }BCORE_REGISTER_FEATURE( #<sc_t> );\n", indent, sc_global_name );
    if( o->st_default_func_name.size > 0 )
    {
        x_sink_push_fa(sink,"#rn{ }BCORE_REGISTER_FFUNC( #<sc_t>, #<sc_t>_#<sc_t> );\n",
            indent,
            sc_global_name,
            xoico_compiler_s_nameof(compiler,xoico_host_a_obj_type(host) ),
            o->st_default_func_name.sc
        );
    }
    return  0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movq -0x10(%rbp), %rax
testb $0x1, 0x115(%rax)
jne 0xf812
movq $0x0, -0x8(%rbp)
jmp 0xf8c1
movq -0x18(%rbp), %rdi
callq 0x5170
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rsi
callq 0x51d0
movq %rax, -0x38(%rbp)
movq -0x28(%rbp), %rdi
movq -0x20(%rbp), %rdx
movq -0x38(%rbp), %rcx
leaq 0x12489d(%rip), %rsi    # 0x1340e4
movb $0x0, %al
callq 0x56e0
movq -0x10(%rbp), %rax
cmpq $0x0, 0xf8(%rax)
jbe 0xf8b9
movq -0x28(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x58(%rbp)
movq -0x18(%rbp), %rdi
callq 0x6b70
movq -0x58(%rbp), %rdi
movq %rax, %rsi
callq 0x51d0
movq -0x50(%rbp), %rdi
movq -0x48(%rbp), %rdx
movq -0x40(%rbp), %rcx
movq %rax, %r8
movq -0x10(%rbp), %rax
movq 0xf0(%rax), %r9
leaq 0x12485c(%rip), %rsi    # 0x13410e
movb $0x0, %al
callq 0x56e0
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x60, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_embedded_data_s_get_hash
tp_t xoico_embedded_data_s_get_hash( const xoico_embedded_data_s* o )
{
    // xoico_embedded_data.x:37:5
    
    tp_t hash = bcore_tp_fold_tp( bcore_tp_init(), o->_ );
    hash = bcore_tp_fold_tp( hash, o->embed_method );
    hash = bcore_tp_fold_tp( hash, o->function_name );
    for(sz_t i = 0; i < o->arr->size; i++ ) hash = bcore_tp_fold_tp( hash, o->arr->data[ i ] );
    return  hash;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
callq 0x40f10
movq %rax, %rdi
movq -0x8(%rbp), %rax
movq (%rax), %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rsi
callq 0x5640
movq %rax, -0x10(%rbp)
movq $0x0, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq -0x8(%rbp), %rcx
movq 0x10(%rcx), %rcx
cmpq 0x10(%rcx), %rax
jae 0xfd39
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq -0x18(%rbp), %rcx
movzbl (%rax,%rcx), %eax
movl %eax, %esi
callq 0x5640
movq %rax, -0x10(%rbp)
movq -0x18(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x18(%rbp)
jmp 0xfcf6
movq -0x10(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_group_s_get_traitline_feature_from_name
const xoico_feature_s* xoico_group_s_get_traitline_feature_from_name( const xoico_group_s* o, tp_t name )
{
    // xoico_group.x:158:5
    
    if( !o ) return  NULL;
    const xoico_feature_s** p_feature = ( const xoico_feature_s** )bcore_hmap_tpvd_s_get(&(o->hmap_feature),name );
    return  p_feature ? *p_feature : xoico_group_s_get_traitline_feature_from_name(xoico_group_s_get_trait_group(o),name );
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x104f1
movq $0x0, -0x8(%rbp)
jmp 0x1053e
movq -0x10(%rbp), %rdi
addq $0x150, %rdi            # imm = 0x150
movq -0x18(%rbp), %rsi
callq 0xb0090
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
je 0x1051d
movq -0x20(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x28(%rbp)
jmp 0x10536
movq -0x10(%rbp), %rdi
callq 0x10420
movq %rax, %rdi
movq -0x18(%rbp), %rsi
callq 0x104d0
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_group_s_get_traitline_func_from_name
const xoico_func_s* xoico_group_s_get_traitline_func_from_name( const xoico_group_s* o, tp_t name )
{
    // xoico_group.x:165:5
    
    if( !o ) return  NULL;
    const xoico_func_s** p_func = ( const xoico_func_s** )bcore_hmap_tpvd_s_get(&(o->hmap_func),name );
    return  p_func ? *p_func : xoico_group_s_get_traitline_func_from_name(xoico_group_s_get_trait_group(o),name );
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x10571
movq $0x0, -0x8(%rbp)
jmp 0x105be
movq -0x10(%rbp), %rdi
addq $0x178, %rdi            # imm = 0x178
movq -0x18(%rbp), %rsi
callq 0xb0090
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
je 0x1059d
movq -0x20(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x28(%rbp)
jmp 0x105b6
movq -0x10(%rbp), %rdi
callq 0x10420
movq %rax, %rdi
movq -0x18(%rbp), %rsi
callq 0x10550
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_group_s_get_traitline_member_func_from_name
const xoico_func_s* xoico_group_s_get_traitline_member_func_from_name( const xoico_group_s* o, tp_t name )
{
    // xoico_group.x:172:5
    
    if( !o ) return  NULL;
    const xoico_func_s** p_func = ( const xoico_func_s** )bcore_hmap_tpvd_s_get(&(o->hmap_func),name );
    if( p_func && xoico_func_s_as_member(*(p_func)) ) return  (*(p_func));
    return  xoico_group_s_get_traitline_member_func_from_name(xoico_group_s_get_trait_group(o),name );
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x105f1
movq $0x0, -0x8(%rbp)
jmp 0x10648
movq -0x10(%rbp), %rdi
addq $0x178, %rdi            # imm = 0x178
movq -0x18(%rbp), %rsi
callq 0xb0090
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
je 0x1062f
movq -0x20(%rbp), %rax
movq (%rax), %rdi
callq 0x10660
testb $0x1, %al
jne 0x10622
jmp 0x1062f
movq -0x20(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x8(%rbp)
jmp 0x10648
movq -0x10(%rbp), %rdi
callq 0x10420
movq %rax, %rdi
movq -0x18(%rbp), %rsi
callq 0x105d0
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_group_s_parse_name_recursive
er_t xoico_group_s_parse_name_recursive( const xoico_group_s* o, x_source* source, st_s* name )
{
    // xoico_group.x:281:1
    
    if( x_source_parse_bl(source,"#?':'" ) )
    {
        if( o->lexical_parent )
        {
            BLM_TRY(xoico_group_s_parse_name_recursive(o->lexical_parent,source, name ))
        }
        else
        {
            return  x_source_parse_error_fa(source,"Too many colons: Namespace depth exceeded." );
        }
    }
    else
    {BLM_INIT_LEVEL(1);
        st_s_copy(name,&(o->st_name ));
        st_s* s = ((st_s*)BLM_LEVEL_T_PUSH(1,st_s,st_s_create()));
        BLM_TRY(x_source_parse_fa(source,"#name", s ))
        if( s->size > 0 ) st_s_push_fa(name,"_#<sc_t>", s->sc );
    BLM_DOWN();}
    return  0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x90, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq -0x18(%rbp), %rdi
leaq 0x1237c1(%rip), %rsi    # 0x1342d3
callq 0x6700
testb $0x1, %al
jne 0x10b1d
jmp 0x10b8e
movq -0x10(%rbp), %rax
cmpq $0x0, 0x20(%rax)
je 0x10b6e
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rdi
movq -0x18(%rbp), %rsi
movq -0x20(%rbp), %rdx
callq 0x10af0
movq %rax, -0x28(%rbp)
cmpq $0x0, -0x28(%rbp)
je 0x10b6c
movq -0x28(%rbp), %rax
movq %rax, -0x30(%rbp)
leaq 0x1a17d9(%rip), %rax    # 0x1b2330
movq (%rax), %rdi
callq 0xc0720
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x10c85
jmp 0x10b89
movq -0x18(%rbp), %rdi
leaq 0x12372e(%rip), %rsi    # 0x1342a7
movb $0x0, %al
callq 0x4c80
movq %rax, -0x8(%rbp)
jmp 0x10c85
jmp 0x10c7d
leaq 0x1a179b(%rip), %rax    # 0x1b2330
movq (%rax), %rax
movq %rax, -0x38(%rbp)
leaq -0x68(%rbp), %rax
movq %rax, -0x70(%rbp)
movq -0x70(%rbp), %rdi
movq -0x38(%rbp), %rsi
callq 0xbfe80
movq -0x70(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
movq $0x1, 0x10(%rax)
movq -0x20(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x88, %rsi
callq 0xfe850
movq -0x38(%rbp), %rax
movq %rax, -0x90(%rbp)
movb $0x0, %al
callq 0xff2e0
movq -0x90(%rbp), %rdi
movq %rax, %rcx
movl $0x1, %esi
movabsq $-0x503db0e6e1c2e704, %rdx # imm = 0xAFC24F191E3D18FC
callq 0xc01a0
movq %rax, -0x78(%rbp)
movq -0x18(%rbp), %rdi
movq -0x78(%rbp), %rdx
leaq 0x13d928(%rip), %rsi    # 0x14e544
movb $0x0, %al
callq 0x4a20
movq %rax, -0x80(%rbp)
cmpq $0x0, -0x80(%rbp)
je 0x10c4f
movq -0x80(%rbp), %rax
movq %rax, -0x88(%rbp)
movq -0x70(%rbp), %rdi
callq 0xc0720
movq -0x88(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x10c85
movq -0x78(%rbp), %rax
cmpq $0x0, 0x10(%rax)
jbe 0x10c74
movq -0x20(%rbp), %rdi
movq -0x78(%rbp), %rax
movq 0x8(%rax), %rdx
leaq 0x12346e(%rip), %rsi    # 0x1340db
movb $0x0, %al
callq 0x100210
leaq -0x70(%rbp), %rdi
callq 0xc06e0
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x90, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_group_s_parse_name_st
er_t xoico_group_s_parse_name_st( const xoico_group_s* o, x_source* source, st_s* name )
{
    // xoico_group.x:306:1
    
    if( x_source_parse_bl(source," #?':'" ) )
    {
        BLM_TRY(xoico_group_s_parse_name_recursive(o,source, name ))
    }
    else
    {
        BLM_TRY(x_source_parse_fa(source," #name", name ))
    }
    
    if( name->size > 0 ) xoico_compiler_s_entypeof(o->compiler,name->sc );
    
    return  0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq -0x18(%rbp), %rdi
leaq 0x123613(%rip), %rsi    # 0x1342d2
callq 0x6700
testb $0x1, %al
jne 0x10cca
jmp 0x10d09
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x20(%rbp), %rdx
callq 0x10af0
movq %rax, -0x28(%rbp)
cmpq $0x0, -0x28(%rbp)
je 0x10d07
movq -0x28(%rbp), %rax
movq %rax, -0x30(%rbp)
leaq 0x1a163b(%rip), %rax    # 0x1b2330
movq (%rax), %rdi
callq 0xc0720
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x10d78
jmp 0x10d4d
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rdx
leaq 0x13d82b(%rip), %rsi    # 0x14e543
movb $0x0, %al
callq 0x4a20
movq %rax, -0x38(%rbp)
cmpq $0x0, -0x38(%rbp)
je 0x10d4b
movq -0x38(%rbp), %rax
movq %rax, -0x40(%rbp)
leaq 0x1a15f7(%rip), %rax    # 0x1b2330
movq (%rax), %rdi
callq 0xc0720
movq -0x40(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x10d78
jmp 0x10d4d
movq -0x20(%rbp), %rax
cmpq $0x0, 0x10(%rax)
jbe 0x10d70
movq -0x10(%rbp), %rax
movq 0x140(%rax), %rdi
movq -0x20(%rbp), %rax
movq 0x8(%rax), %rsi
callq 0x5140
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x40, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_group_s_parse_name_tp
er_t xoico_group_s_parse_name_tp( const xoico_group_s* o, x_source* source, tp_t* name )
{
    // xoico_group.x:324:1
    BLM_INIT_LEVEL(0);
    st_s* s = ((st_s*)BLM_LEVEL_T_PUSH(0,st_s,st_s_create()));
    
    if( x_source_parse_bl(source," #?':'" ) )
    {
        BLM_TRY(xoico_group_s_parse_name_recursive(o,source, s ))
    }
    else
    {
        BLM_TRY(x_source_parse_fa(source," #name", s ))
    }
    
    if( s->size == 0 ) BLM_TRY(x_source_parse_error_fa(source,"Identifier expected." ))
    
    if( (name) ) (*(name)) = xoico_compiler_s_entypeof(o->compiler,s->sc );
    
    BLM_RETURNV(er_t, 0)
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
leaq 0x1a1582(%rip), %rax    # 0x1b2330
movq (%rax), %rax
movq %rax, -0x28(%rbp)
leaq -0x58(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x60(%rbp), %rdi
movq -0x28(%rbp), %rsi
callq 0xbfe80
movq -0x60(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq $0x0, 0x10(%rax)
movq -0x28(%rbp), %rax
movq %rax, -0xa8(%rbp)
movb $0x0, %al
callq 0xff2e0
movq -0xa8(%rbp), %rdi
movq %rax, %rcx
xorl %eax, %eax
movl %eax, %esi
movabsq $-0x503db0e6e1c2e704, %rdx # imm = 0xAFC24F191E3D18FC
callq 0xc01a0
movq %rax, -0x68(%rbp)
movq -0x18(%rbp), %rdi
leaq 0x1234b6(%rip), %rsi    # 0x1342d2
callq 0x6700
testb $0x1, %al
jne 0x10e27
jmp 0x10e63
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x68(%rbp), %rdx
callq 0x10af0
movq %rax, -0x70(%rbp)
cmpq $0x0, -0x70(%rbp)
je 0x10e61
movq -0x70(%rbp), %rax
movq %rax, -0x78(%rbp)
movq -0x60(%rbp), %rdi
callq 0xc0720
movq -0x78(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x10f46
jmp 0x10eaa
movq -0x18(%rbp), %rdi
movq -0x68(%rbp), %rdx
leaq 0x13d6d1(%rip), %rsi    # 0x14e543
movb $0x0, %al
callq 0x4a20
movq %rax, -0x80(%rbp)
cmpq $0x0, -0x80(%rbp)
je 0x10ea8
movq -0x80(%rbp), %rax
movq %rax, -0x88(%rbp)
movq -0x60(%rbp), %rdi
callq 0xc0720
movq -0x88(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x10f46
jmp 0x10eaa
movq -0x68(%rbp), %rax
cmpq $0x0, 0x10(%rax)
jne 0x10efe
movq -0x18(%rbp), %rdi
leaq 0x122662(%rip), %rsi    # 0x133522
movb $0x0, %al
callq 0x4c80
movq %rax, -0x90(%rbp)
cmpq $0x0, -0x90(%rbp)
je 0x10efc
movq -0x90(%rbp), %rax
movq %rax, -0x98(%rbp)
movq -0x60(%rbp), %rdi
callq 0xc0720
movq -0x98(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x10f46
jmp 0x10efe
cmpq $0x0, -0x20(%rbp)
je 0x10f27
movq -0x10(%rbp), %rax
movq 0x140(%rax), %rdi
movq -0x68(%rbp), %rax
movq 0x8(%rax), %rsi
callq 0x5140
movq %rax, %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq $0x0, -0xa0(%rbp)
movq -0x60(%rbp), %rdi
callq 0xc0720
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0xb0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_group_s_push_inexpandable_func_from_sc
er_t xoico_group_s_push_inexpandable_func_from_sc( xoico_group_s* o, sc_t sc )
{
    // xoico_group.x:367:1
    BLM_INIT_LEVEL(0);
    xoico_func_s* func = ((xoico_func_s*)BLM_LEVEL_T_PUSH(0,xoico_func_s,xoico_func_s_create()));
    func->expandable = false;
    BLM_TRY(xoico_func_s_parse(func,((const xoico_host*)(o)), ((x_source*)BLM_LEVEL_A_PUSH(0,x_source_create_from_sc(sc ))) ))
    BLM_TRY(xoico_group_s_push_func_d(o,((xoico_func_s*)bcore_fork(func)) ))
    BLM_RETURNV(er_t, 0)
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
leaq 0x1a1076(%rip), %rax    # 0x1b2330
movq (%rax), %rax
movq %rax, -0x20(%rbp)
leaq -0x50(%rbp), %rax
movq %rax, -0x58(%rbp)
movq -0x58(%rbp), %rdi
movq -0x20(%rbp), %rsi
callq 0xbfe80
movq -0x58(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x10(%rax)
movq -0x20(%rbp), %rax
movq %rax, -0xa8(%rbp)
callq 0xb5a0
movq -0xa8(%rbp), %rdi
movq %rax, %rcx
xorl %eax, %eax
movl %eax, %esi
movabsq $-0x58b74b3ddbc4f8b6, %rdx # imm = 0xA748B4C2243B074A
callq 0xc01a0
movq %rax, -0x60(%rbp)
movq -0x60(%rbp), %rax
movb $0x0, 0x28(%rax)
movq -0x60(%rbp), %rax
movq %rax, -0x98(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x90(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xa0(%rbp)
movq -0x18(%rbp), %rdi
callq 0x4e20
movq -0xa0(%rbp), %rdi
movq %rax, %rdx
xorl %eax, %eax
movl %eax, %esi
callq 0xc0500
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
movq %rax, %rdx
callq 0xb960
movq %rax, -0x68(%rbp)
cmpq $0x0, -0x68(%rbp)
je 0x1139c
movq -0x68(%rbp), %rax
movq %rax, -0x70(%rbp)
movq -0x58(%rbp), %rdi
callq 0xc0720
movq -0x70(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x11404
movq -0x10(%rbp), %rax
movq %rax, -0xb0(%rbp)
movq -0x60(%rbp), %rdi
callq 0x9d3d0
movq -0xb0(%rbp), %rdi
movq %rax, %rsi
callq 0x11420
movq %rax, -0x78(%rbp)
cmpq $0x0, -0x78(%rbp)
je 0x113e5
movq -0x78(%rbp), %rax
movq %rax, -0x80(%rbp)
movq -0x58(%rbp), %rdi
callq 0xc0720
movq -0x80(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x11404
movq $0x0, -0x88(%rbp)
movq -0x58(%rbp), %rdi
callq 0xc0720
movq -0x88(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0xb0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)