// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_group_s_parse_func
er_t xoico_group_s_parse_func( xoico_group_s* o, x_source* source, bl_t register_in_function_manager )
{
    // xoico_group.x:389:1
    BLM_INIT_LEVEL(0);
    xoico_func_s* func = ((xoico_func_s*)BLM_LEVEL_T_PUSH(0,xoico_func_s,xoico_func_s_create()));
    BLM_TRY(xoico_func_s_parse(func,((const xoico_host*)(o)), source ))
    func->register_in_function_manager = register_in_function_manager;
    
    if( func->name == ((tp_t)(TYPEOF_group_signal_init1)) )
    {
        o->defines_group_signal_init1 = true;
    }
    
    if( func->name == ((tp_t)(TYPEOF_group_signal_down1)) )
    {
        o->defines_group_signal_down1 = true;
    }
    
    BLM_TRY(xoico_group_s_push_func_d(o,((xoico_func_s*)bcore_fork(func)) ))
    if( func->signature_global_name == ((tp_t)(TYPEOF_x_inst_main)) || func->signature_global_name == ((tp_t)(TYPEOF_x_inst_main_c)) )
    {
        BLM_TRY(xoico_target_s_set_main_function(o->xoico_source->target,func ))
    }
    BLM_RETURNV(er_t, 0)
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movb %dl, %al
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
andb $0x1, %al
movb %al, -0x19(%rbp)
leaq 0x1a0bbf(%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)
callq 0xb5a0
movq -0xa8(%rbp), %rdi
movq %rax, %rcx
xorl %eax, %eax
movl %eax, %esi
movabsq $-0x58b74b3ddbc4f8b6, %rdx # imm = 0xA748B4C2243B074A
callq 0xc01a0
movq %rax, -0x68(%rbp)
movq -0x68(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x18(%rbp), %rdx
callq 0xb960
movq %rax, -0x70(%rbp)
cmpq $0x0, -0x70(%rbp)
je 0x1180c
movq -0x70(%rbp), %rax
movq %rax, -0x78(%rbp)
movq -0x60(%rbp), %rdi
callq 0xc0720
movq -0x78(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x11942
movb -0x19(%rbp), %cl
movq -0x68(%rbp), %rax
andb $0x1, %cl
movb %cl, 0x2b(%rax)
movq -0x68(%rbp), %rax
movabsq $-0xaafc4c24e667991, %rcx # imm = 0xF5503B3DB199866F
cmpq %rcx, 0x8(%rax)
jne 0x11838
movq -0x10(%rbp), %rax
movb $0x1, 0xd9(%rax)
movq -0x68(%rbp), %rax
movabsq $-0x548727f5f9a4038b, %rcx # imm = 0xAB78D80A065BFC75
cmpq %rcx, 0x8(%rax)
jne 0x11857
movq -0x10(%rbp), %rax
movb $0x1, 0xda(%rax)
movq -0x10(%rbp), %rax
movq %rax, -0xb0(%rbp)
movq -0x68(%rbp), %rdi
callq 0x9d3d0
movq -0xb0(%rbp), %rdi
movq %rax, %rsi
callq 0x11420
movq %rax, -0x80(%rbp)
cmpq $0x0, -0x80(%rbp)
je 0x118a9
movq -0x80(%rbp), %rax
movq %rax, -0x88(%rbp)
movq -0x60(%rbp), %rdi
callq 0xc0720
movq -0x88(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x11942
movq -0x68(%rbp), %rax
movabsq $0x242b13df94fa288, %rcx # imm = 0x242B13DF94FA288
cmpq %rcx, 0x20(%rax)
je 0x118d1
movq -0x68(%rbp), %rax
movabsq $-0x7a452b622f2c7b3e, %rcx # imm = 0x85BAD49DD0D384C2
cmpq %rcx, 0x20(%rax)
jne 0x11923
movq -0x10(%rbp), %rax
movq 0x138(%rax), %rax
movq 0x90(%rax), %rdi
movq -0x68(%rbp), %rsi
callq 0x11950
movq %rax, -0x90(%rbp)
cmpq $0x0, -0x90(%rbp)
je 0x11921
movq -0x90(%rbp), %rax
movq %rax, -0x98(%rbp)
movq -0x60(%rbp), %rdi
callq 0xc0720
movq -0x98(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x11942
jmp 0x11923
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
nop