// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_btcl_operator_bop_s_solve
er_t x_btcl_operator_bop_s_solve( x_btcl_operator_bop_s* o, x_btcl_frame_s* frame, sr_s* result, bl_t* success )
{
    // bcore_x_btcl_operator.x:554:1
    
    // exportable operations
    BLM_TRY(x_btcl_operator_bop_s_solve_exportable_a_b(o,&(o->a),&( o->b), result, success ))
    if( (*(success)) ) return  0;
    
    (*(success)) = true;
    
    // residual (not exportable) operations
    switch( o->type )
    {
        case ((tp_t)(TYPEOF_chain)):
        {
            if( sr_s_type(&(o->a)) == ((tp_t)(TYPEOF_x_btcl_function_s)) && sr_s_type(&(o->b)) == ((tp_t)(TYPEOF_x_btcl_function_s)) )
            {BLM_INIT_LEVEL(4);
                x_btcl_function_s* fa = ((x_btcl_function_s*)BLM_LEVEL_T_PUSH(4,x_btcl_function_s,((x_btcl_function_s*)bcore_fork(((x_btcl_function_s*)(o->a.o))))));
                x_btcl_function_s* fb = ((x_btcl_function_s*)BLM_LEVEL_T_PUSH(4,x_btcl_function_s,((x_btcl_function_s*)bcore_fork(((x_btcl_function_s*)(o->b.o))))));
    
                if( !x_btcl_function_s_is_unary(fa) ) BLM_TRY(x_source_point_s_parse_error_fa(&(o->sp),"Operator *: Left argument is not a unary function.\n" ))
    
                x_btcl_function_s* fc = x_btcl_function_s_setup(((x_btcl_function_s*)BLM_LEVEL_T_PUSH(4,x_btcl_function_s,x_btcl_function_s_create())),fb->signature, fb->block, fb->tail );
                x_btcl_function_s_append_tail(fc,fa );
    
                sr_s_asm(result,((x_btcl_function_s*)bcore_fork(fc)) );
                BLM_RETURNV(er_t, 0)
            BLM_DOWN();}
        }
        break;
    
        case ((tp_t)(TYPEOF_mul)):
        {
            if( sr_s_type(&(o->a)) == ((tp_t)(TYPEOF_x_btcl_function_s)) )
            {BLM_INIT_LEVEL(4);
                x_btcl_function_s* f = ((x_btcl_function_s*)BLM_LEVEL_T_PUSH(4,x_btcl_function_s,((x_btcl_function_s*)bcore_fork(((x_btcl_function_s*)(o->a.o))))));
                bcore_arr_sr_s* arg_list = ((bcore_arr_sr_s*)BLM_LEVEL_T_PUSH(4,bcore_arr_sr_s,bcore_arr_sr_s_create()));
                sr_s_fork_from(bcore_arr_sr_s_push_sr(arg_list,sr_null() ),&(o->b ));
                BLM_TRY(x_btcl_function_s_call(f,&(o->sp), frame, arg_list, result ))
                BLM_RETURNV(er_t, 0)
            BLM_DOWN();}
        }
        break;
    
        case ((tp_t)(TYPEOF_spawn)):
        {
            if( sr_s_is_numeric(&(o->a)) )
            {BLM_INIT_LEVEL(4);
                x_btcl_list_s* list = ((x_btcl_list_s*)BLM_LEVEL_T_PUSH(4,x_btcl_list_s,x_btcl_list_s_create()));
                bcore_arr_sr_s_set_size(&(list->arr),sr_s_to_s3(&(o->a)) );
                if( sr_s_type(&(o->b)) == ((tp_t)(TYPEOF_x_btcl_function_s)) )
                {BLM_INIT_LEVEL(5);
                    x_btcl_frame_s* local_frame = x_btcl_frame_s_setup(((x_btcl_frame_s*)BLM_LEVEL_T_PUSH(5,x_btcl_frame_s,x_btcl_frame_s_create())),frame );
                    const x_btcl_function_s* function = ((const x_btcl_function_s*)(o->b.o));
                    if( x_btcl_function_s_args(function) != 1 ) BLM_RETURNV(er_t, x_source_point_s_parse_error_fa(&(o->sp),"Operator #<sc_t> :: #<sc_t>: Right operand must be unary (single argument).\n", bnameof( sr_s_type(&(o->a)) ), bnameof( sr_s_type(&(o->b)) ) ))
                    tp_t arg_name = x_btcl_function_s_arg_name(function,0 );
                    for(sz_t i = 0; i < list->arr.size; i++ )
                    {
                        x_btcl_frame_s_var_set(local_frame,arg_name, sr_s3(i ) );
                        BLM_TRY(x_btcl_block_s_eval(function->block,local_frame,&( list->arr.data[ i ] )))
                    }
                    sr_s_asc(result,((x_btcl_list_s*)bcore_fork(list)) );
                    BLM_RETURNV(er_t, 0)
                BLM_DOWN();}
            BLM_DOWN();}
            else if( sr_s_type(&(o->a)) == ((tp_t)(TYPEOF_x_btcl_list_s)) )
            {
                const x_btcl_list_s* list_a = ((const x_btcl_list_s*)(o->a.o));
    
                if( sr_s_type(&(o->b)) == ((tp_t)(TYPEOF_x_btcl_function_s)) )
                {BLM_INIT_LEVEL(6);
                    x_btcl_frame_s* local_frame = x_btcl_frame_s_setup(((x_btcl_frame_s*)BLM_LEVEL_T_PUSH(6,x_btcl_frame_s,x_btcl_frame_s_create())),frame );
                    const x_btcl_function_s* function = ((const x_btcl_function_s*)(o->b.o));
    
                    if( x_btcl_function_s_args(function) == 1 )
                    {BLM_INIT_LEVEL(7);
                        x_btcl_list_s* list = ((x_btcl_list_s*)BLM_LEVEL_T_PUSH(7,x_btcl_list_s,x_btcl_list_s_create()));
                        x_btcl_list_s_set_size(list,x_btcl_list_s_size(list_a) );
                        tp_t arg_name = x_btcl_function_s_arg_name(function,0 );
                        for(sz_t i = 0; i < list->arr.size; i++ )
                        {
                            x_btcl_frame_s_var_set(local_frame,arg_name, sr_cw( list_a->arr.data[ i ] ) );
                            BLM_TRY(x_btcl_block_s_eval(function->block,local_frame,&( list->arr.data[ i ] )))
                        }
                        sr_s_asc(result,((x_btcl_list_s*)bcore_fork(list)) );
                        BLM_RETURNV(er_t, 0)
                    BLM_DOWN();}
                    else if( x_btcl_function_s_args(function) == 2 )
                    {BLM_INIT_LEVEL(8);
                        if( list_a->arr.size < 1 )
                        {
                            BLM_RETURNV(er_t, x_source_point_s_parse_error_fa(&(o->sp),"Operator #<sc_t> :: #<sc_t>: Left operand must be a list of size >= 1.\n", bnameof( sr_s_type(&(o->a)) ), bnameof( sr_s_type(&(o->b)) ) ))
                        }
    
                        sr_s* sa = ((sr_s*)BLM_LEVEL_T_PUSH(8,sr_s,sr_s_create()));
                        (*(sa)) = sr_cw( list_a->arr.data[ 0 ] );
    
                        for(sz_t i = 1; i < list_a->arr.size; i++ )
                        {
                            x_btcl_frame_s_var_set(local_frame,x_btcl_function_s_arg_name(function,0 ),*( sa ));
                            (*(sa)) = sr_null();
                            x_btcl_frame_s_var_set(local_frame,x_btcl_function_s_arg_name(function,1 ), sr_cw( list_a->arr.data[ i ] ) );
                            BLM_TRY(x_btcl_block_s_eval(function->block,local_frame, sa ))
                        }
    
                        sr_s_fork_from(result,sa );
                        BLM_RETURNV(er_t, 0)
                    BLM_DOWN();}
                    else
                    {
                        BLM_RETURNV(er_t, x_source_point_s_parse_error_fa(&(o->sp),"Operator #<sc_t> :: #<sc_t>: Right operand must be unary (one argument) or binary (two arguments).\n", bnameof( sr_s_type(&(o->a)) ), bnameof( sr_s_type(&(o->b)) ) ))
                    }
                BLM_DOWN();}
                else if( sr_s_type(&(o->b)) == ((tp_t)(TYPEOF_x_btcl_list_s)) )
                {BLM_INIT_LEVEL(7);
                    const x_btcl_list_s* list_b = ((const x_btcl_list_s*)(o->b.o));
                    x_btcl_list_s* list_r = ((x_btcl_list_s*)BLM_LEVEL_T_PUSH(7,x_btcl_list_s,x_btcl_list_s_create()));
    
                    sz_t smin = sz_min( x_btcl_list_s_size(list_a), x_btcl_list_s_size(list_b) );
                    sz_t smax = sz_max( x_btcl_list_s_size(list_a), x_btcl_list_s_size(list_b) );
    
                    x_btcl_list_s_set_size(list_r,smax );
    
                    for(sz_t i = 0; i < smin; i++ ) BLM_TRY(x_btcl_bop_cat_ab(&(list_a->arr.data[ i ]),&( list_b->arr.data[ i ]),&( list_r->arr.data[ i ] )))
    
                    if( x_btcl_list_s_size(list_a) != x_btcl_list_s_size(list_b) )
                    {BLM_INIT_LEVEL(8);
    
                        sr_s* sr_list_empty = sr_s_asm(((sr_s*)BLM_LEVEL_T_PUSH(8,sr_s,sr_s_create())),x_btcl_list_s_create() );
                        for(sz_t i = smin; i < x_btcl_list_s_size(list_a); i++ ) BLM_TRY(x_btcl_bop_cat_ab(&(list_a->arr.data[ i ]), sr_list_empty,&(    list_r->arr.data[ i ] )))
                        for(sz_t i = smin; i < x_btcl_list_s_size(list_b); i++ ) BLM_TRY(x_btcl_bop_cat_ab(sr_list_empty,&(    list_b->arr.data[ i ]),&( list_r->arr.data[ i ] )))
                    BLM_DOWN();}
    
                    sr_s_asm(result,((x_btcl_list_s*)bcore_fork(list_r)) );
                    BLM_RETURNV(er_t, 0)
                BLM_DOWN();}
            }
        }
        break;
    
        case ((tp_t)(TYPEOF_shift_left)):
        {
            if( sr_s_type(&(o->a)) == ((tp_t)(TYPEOF_x_btcl_function_s)) )
            {BLM_INIT_LEVEL(4);
                x_btcl_function_s* f = ((x_btcl_function_s*)BLM_LEVEL_T_PUSH(4,x_btcl_function_s,((x_btcl_function_s*)bcore_fork(((x_btcl_function_s*)(o->a.o))))));
                bcore_arr_sr_s* arg_list = ((bcore_arr_sr_s*)BLM_LEVEL_T_PUSH(4,bcore_arr_sr_s,bcore_arr_sr_s_create()));
                sr_s_fork_from(bcore_arr_sr_s_push_sr(arg_list,sr_null() ),&(o->b ));
                BLM_TRY(x_btcl_function_s_call(f,&(o->sp), frame, arg_list, result ))
                BLM_RETURNV(er_t, 0)
            BLM_DOWN();}
        }
        break;
    
        default: break;
    }
    
    if( x_btcl_operator_sr_is_exportable_operand(&(o->a )) )
    {
        if( x_btcl_operator_sr_is_exportable_operand(&(o->b )) ) { sr_s_asc(result,((x_btcl_operator_bop_s*)bcore_fork(o)) ); return  0; }
        if( sr_s_is_numeric(&(o->b)) ) { sr_s_asc(result,((x_btcl_operator_bop_s*)bcore_fork(o)) ); return  0; }
    }
    
    if( x_btcl_operator_sr_is_exportable_operand(&(o->b )) )
    {
        if( sr_s_is_numeric(&(o->a)) ) { sr_s_asc(result,((x_btcl_operator_bop_s*)bcore_fork(o)) ); return  0; }
    }
    
    (*(success)) = false;
    return  0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x6b0, %rsp            # imm = 0x6B0
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x10, %rsi
movq -0x10(%rbp), %rdx
addq $0x28, %rdx
movq -0x20(%rbp), %rcx
movq -0x28(%rbp), %r8
callq 0x6a7d0
movq %rax, -0x30(%rbp)
cmpq $0x0, -0x30(%rbp)
je 0x6c1eb
movq -0x30(%rbp), %rax
movq %rax, -0x38(%rbp)
leaq 0x14615a(%rip), %rax    # 0x1b2330
movq (%rax), %rdi
callq 0xc0720
movq -0x38(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
movq -0x28(%rbp), %rax
testb $0x1, (%rax)
je 0x6c201
movq $0x0, -0x8(%rbp)
jmp 0x6d8b1
movq -0x28(%rbp), %rax
movb $0x1, (%rax)
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0x528(%rbp)
movabsq $-0x58bc6f89b3e5cfaa, %rcx # imm = 0xA74390764C1A3056
subq %rcx, %rax
je 0x6c27f
jmp 0x6c228
movq -0x528(%rbp), %rax
movabsq $-0xe64339e40c20067, %rcx # imm = 0xF19BCC61BF3DFF99
subq %rcx, %rax
je 0x6d5ea
jmp 0x6c244
movq -0x528(%rbp), %rax
movabsq $0x7e66519174a3ce1, %rcx # imm = 0x7E66519174A3CE1
subq %rcx, %rax
je 0x6c487
jmp 0x6c260
movq -0x528(%rbp), %rax
movabsq $0x4328f78ab20e1f98, %rcx # imm = 0x4328F78AB20E1F98
subq %rcx, %rax
je 0x6c650
jmp 0x6d7b0
movq -0x10(%rbp), %rdi
addq $0x10, %rdi
callq 0x45450
movabsq $-0x19831b480b40fba0, %rcx # imm = 0xE67CE4B7F4BF0460
cmpq %rcx, %rax
jne 0x6c482
movq -0x10(%rbp), %rdi
addq $0x28, %rdi
callq 0x45450
movabsq $-0x19831b480b40fba0, %rcx # imm = 0xE67CE4B7F4BF0460
cmpq %rcx, %rax
jne 0x6c482
leaq 0x14606a(%rip), %rax    # 0x1b2330
movq (%rax), %rax
movq %rax, -0x40(%rbp)
leaq -0x70(%rbp), %rax
movq %rax, -0x78(%rbp)
movq -0x78(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xbfe80
movq -0x78(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rax
movq $0x4, 0x10(%rax)
movq -0x40(%rbp), %rax
movq %rax, -0x538(%rbp)
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0x9d3d0
movq -0x538(%rbp), %rdi
movq %rax, %rcx
movl $0x4, %esi
movabsq $-0x19831b480b40fba0, %rdx # imm = 0xE67CE4B7F4BF0460
callq 0xc01a0
movq %rax, -0x80(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x530(%rbp)
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rdi
callq 0x9d3d0
movq -0x530(%rbp), %rdi
movq %rax, %rcx
movl $0x4, %esi
movabsq $-0x19831b480b40fba0, %rdx # imm = 0xE67CE4B7F4BF0460
callq 0xc01a0
movq %rax, -0x88(%rbp)
movq -0x80(%rbp), %rdi
callq 0x65710
testb $0x1, %al
jne 0x6c3ca
movq -0x10(%rbp), %rdi
addq $0x40, %rdi
leaq 0xd474a(%rip), %rsi     # 0x140ad3
movb $0x0, %al
callq 0x68020
movq %rax, -0x90(%rbp)
cmpq $0x0, -0x90(%rbp)
je 0x6c3c8
movq -0x90(%rbp), %rax
movq %rax, -0x98(%rbp)
movq -0x78(%rbp), %rdi
callq 0xc0720
movq -0x98(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
jmp 0x6c3ca
movq -0x40(%rbp), %rax
movq %rax, -0x548(%rbp)
callq 0x67b60
movq -0x548(%rbp), %rdi
movq %rax, %rcx
movl $0x4, %esi
movabsq $-0x19831b480b40fba0, %rdx # imm = 0xE67CE4B7F4BF0460
callq 0xc01a0
movq %rax, %rdi
movq -0x88(%rbp), %rax
movq 0x8(%rax), %rsi
movq -0x88(%rbp), %rax
movq 0x10(%rax), %rdx
movq -0x88(%rbp), %rax
movq 0x30(%rax), %rcx
callq 0x5e710
movq %rax, -0xa0(%rbp)
movq -0xa0(%rbp), %rdi
movq -0x80(%rbp), %rsi
callq 0x67ee0
movq -0x20(%rbp), %rax
movq %rax, -0x540(%rbp)
movq -0xa0(%rbp), %rdi
callq 0x9d3d0
movq -0x540(%rbp), %rdi
movq %rax, %rsi
callq 0x5e240
movq $0x0, -0xa8(%rbp)
movq -0x78(%rbp), %rdi
callq 0xc0720
movq -0xa8(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
jmp 0x6d7b2
movq -0x10(%rbp), %rdi
addq $0x10, %rdi
callq 0x45450
movabsq $-0x19831b480b40fba0, %rcx # imm = 0xE67CE4B7F4BF0460
cmpq %rcx, %rax
jne 0x6c64b
leaq 0x145e82(%rip), %rax    # 0x1b2330
movq (%rax), %rax
movq %rax, -0xb0(%rbp)
leaq -0xe0(%rbp), %rax
movq %rax, -0xe8(%rbp)
movq -0xe8(%rbp), %rdi
movq -0xb0(%rbp), %rsi
callq 0xbfe80
movq -0xe8(%rbp), %rax
movq %rax, -0xb0(%rbp)
movq -0xb0(%rbp), %rax
movq $0x4, 0x10(%rax)
movq -0xb0(%rbp), %rax
movq %rax, -0x560(%rbp)
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0x9d3d0
movq -0x560(%rbp), %rdi
movq %rax, %rcx
movl $0x4, %esi
movabsq $-0x19831b480b40fba0, %rdx # imm = 0xE67CE4B7F4BF0460
callq 0xc01a0
movq %rax, -0xf0(%rbp)
movq -0xb0(%rbp), %rax
movq %rax, -0x558(%rbp)
movb $0x0, %al
callq 0x97ba0
movq -0x558(%rbp), %rdi
movq %rax, %rcx
movl $0x4, %esi
movabsq $-0x78ea303a4f284a4, %rdx # imm = 0xF8715CFC5B0D7B5C
callq 0xc01a0
movq %rax, -0xf8(%rbp)
movq -0xf8(%rbp), %rax
movq %rax, -0x550(%rbp)
leaq -0x110(%rbp), %rdi
callq 0x8a380
movq -0x550(%rbp), %rdi
leaq -0x110(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%rsp)
movq 0x8(%rax), %rcx
movq %rcx, 0x8(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
callq 0x97f40
movq %rax, %rdi
movq -0x10(%rbp), %rsi
addq $0x28, %rsi
callq 0xfc070
movq -0xf0(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x40, %rsi
movq -0x18(%rbp), %rdx
movq -0xf8(%rbp), %rcx
movq -0x20(%rbp), %r8
callq 0x680d0
movq %rax, -0x118(%rbp)
cmpq $0x0, -0x118(%rbp)
je 0x6c624
movq -0x118(%rbp), %rax
movq %rax, -0x120(%rbp)
movq -0xe8(%rbp), %rdi
callq 0xc0720
movq -0x120(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
movq $0x0, -0x128(%rbp)
movq -0xe8(%rbp), %rdi
callq 0xc0720
movq -0x128(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
jmp 0x6d7b2
movq -0x10(%rbp), %rdi
addq $0x10, %rdi
callq 0xfc220
testb $0x1, %al
jne 0x6c666
jmp 0x6c9ed
leaq 0x145cc3(%rip), %rax    # 0x1b2330
movq (%rax), %rax
movq %rax, -0x130(%rbp)
leaq -0x160(%rbp), %rax
movq %rax, -0x168(%rbp)
movq -0x168(%rbp), %rdi
movq -0x130(%rbp), %rsi
callq 0xbfe80
movq -0x168(%rbp), %rax
movq %rax, -0x130(%rbp)
movq -0x130(%rbp), %rax
movq $0x4, 0x10(%rax)
movq -0x130(%rbp), %rax
movq %rax, -0x570(%rbp)
callq 0x67200
movq -0x570(%rbp), %rdi
movq %rax, %rcx
movl $0x4, %esi
movabsq $-0x240ec4eb25c1f3e8, %rdx # imm = 0xDBF13B14DA3E0C18
callq 0xc01a0
movq %rax, -0x170(%rbp)
movq -0x170(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x568(%rbp)
movq -0x10(%rbp), %rdi
addq $0x10, %rdi
callq 0xfce10
movq -0x568(%rbp), %rdi
movq %rax, %rsi
callq 0x97d70
movq -0x10(%rbp), %rdi
addq $0x28, %rdi
callq 0x45450
movabsq $-0x19831b480b40fba0, %rcx # imm = 0xE67CE4B7F4BF0460
cmpq %rcx, %rax
jne 0x6c9dc
movq -0x168(%rbp), %rax
movq %rax, -0x178(%rbp)
leaq -0x1a8(%rbp), %rax
movq %rax, -0x1b0(%rbp)
movq -0x1b0(%rbp), %rdi
movq -0x178(%rbp), %rsi
callq 0xbfe80
movq -0x1b0(%rbp), %rax
movq %rax, -0x178(%rbp)
movq -0x178(%rbp), %rax
movq $0x5, 0x10(%rax)
movq -0x178(%rbp), %rax
movq %rax, -0x578(%rbp)
callq 0x5a570
movq -0x578(%rbp), %rdi
movq %rax, %rcx
movl $0x5, %esi
movabsq $-0x8f0f83b86d2b0b3, %rdx # imm = 0xF70F07C4792D4F4D
callq 0xc01a0
movq %rax, %rdi
movq -0x18(%rbp), %rsi
callq 0x5a6a0
movq %rax, -0x1b8(%rbp)
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rax
movq %rax, -0x1c0(%rbp)
movq -0x1c0(%rbp), %rdi
callq 0x6d8c0
cmpq $0x1, %rax
je 0x6c872
movq -0x10(%rbp), %rax
addq $0x40, %rax
movq %rax, -0x588(%rbp)
movq -0x10(%rbp), %rdi
addq $0x10, %rdi
callq 0x45450
movq %rax, %rdi
callq 0x44d00
movq %rax, -0x580(%rbp)
movq -0x10(%rbp), %rdi
addq $0x28, %rdi
callq 0x45450
movq %rax, %rdi
callq 0x44d00
movq -0x588(%rbp), %rdi
movq -0x580(%rbp), %rdx
movq %rax, %rcx
leaq 0xd42bf(%rip), %rsi     # 0x140b07
movb $0x0, %al
callq 0x68020
movq %rax, -0x1c8(%rbp)
movq -0x1b0(%rbp), %rdi
callq 0xc0720
movq -0x1c8(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
movq -0x1c0(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x6d8e0
movq %rax, -0x1d0(%rbp)
movq $0x0, -0x1d8(%rbp)
movq -0x1d8(%rbp), %rax
movq -0x170(%rbp), %rcx
cmpq 0x18(%rcx), %rax
jae 0x6c98f
movq -0x1b8(%rbp), %rax
movq %rax, -0x598(%rbp)
movq -0x1d0(%rbp), %rax
movq %rax, -0x590(%rbp)
movq -0x1d8(%rbp), %rsi
leaq -0x1f0(%rbp), %rdi
callq 0xfbb00
movq -0x598(%rbp), %rdi
movq -0x590(%rbp), %rsi
leaq -0x1f0(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%rsp)
movq 0x8(%rax), %rcx
movq %rcx, 0x8(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
callq 0x5a8d0
movq -0x1c0(%rbp), %rax
movq 0x10(%rax), %rdi
movq -0x1b8(%rbp), %rsi
movq -0x170(%rbp), %rax
movq 0x10(%rax), %rdx
imulq $0x18, -0x1d8(%rbp), %rax
addq %rax, %rdx
callq 0x5e490
movq %rax, -0x1f8(%rbp)
cmpq $0x0, -0x1f8(%rbp)
je 0x6c976
movq -0x1f8(%rbp), %rax
movq %rax, -0x200(%rbp)
movq -0x1b0(%rbp), %rdi
callq 0xc0720
movq -0x200(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
jmp 0x6c978
movq -0x1d8(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x1d8(%rbp)
jmp 0x6c894
movq -0x20(%rbp), %rax
movq %rax, -0x5a0(%rbp)
movq -0x170(%rbp), %rdi
callq 0x9d3d0
movq -0x5a0(%rbp), %rdi
movq %rax, %rsi
callq 0x616b0
movq $0x0, -0x208(%rbp)
movq -0x1b0(%rbp), %rdi
callq 0xc0720
movq -0x208(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
leaq -0x168(%rbp), %rdi
callq 0xc06e0
jmp 0x6d5e5
movq -0x10(%rbp), %rdi
addq $0x10, %rdi
callq 0x45450
movabsq $-0x240ec4eb25c1f3e8, %rcx # imm = 0xDBF13B14DA3E0C18
cmpq %rcx, %rax
jne 0x6d5e3
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x210(%rbp)
movq -0x10(%rbp), %rdi
addq $0x28, %rdi
callq 0x45450
movabsq $-0x19831b480b40fba0, %rcx # imm = 0xE67CE4B7F4BF0460
cmpq %rcx, %rax
jne 0x6d138
leaq 0x1458ed(%rip), %rax    # 0x1b2330
movq (%rax), %rax
movq %rax, -0x218(%rbp)
leaq -0x248(%rbp), %rax
movq %rax, -0x250(%rbp)
movq -0x250(%rbp), %rdi
movq -0x218(%rbp), %rsi
callq 0xbfe80
movq -0x250(%rbp), %rax
movq %rax, -0x218(%rbp)
movq -0x218(%rbp), %rax
movq $0x6, 0x10(%rax)
movq -0x218(%rbp), %rax
movq %rax, -0x5a8(%rbp)
callq 0x5a570
movq -0x5a8(%rbp), %rdi
movq %rax, %rcx
movl $0x6, %esi
movabsq $-0x8f0f83b86d2b0b3, %rdx # imm = 0xF70F07C4792D4F4D
callq 0xc01a0
movq %rax, %rdi
movq -0x18(%rbp), %rsi
callq 0x5a6a0
movq %rax, -0x258(%rbp)
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rax
movq %rax, -0x260(%rbp)
movq -0x260(%rbp), %rdi
callq 0x6d8c0
cmpq $0x1, %rax
jne 0x6cd33
movq -0x250(%rbp), %rax
movq %rax, -0x268(%rbp)
leaq -0x298(%rbp), %rax
movq %rax, -0x2a0(%rbp)
movq -0x2a0(%rbp), %rdi
movq -0x268(%rbp), %rsi
callq 0xbfe80
movq -0x2a0(%rbp), %rax
movq %rax, -0x268(%rbp)
movq -0x268(%rbp), %rax
movq $0x7, 0x10(%rax)
movq -0x268(%rbp), %rax
movq %rax, -0x5b8(%rbp)
callq 0x67200
movq -0x5b8(%rbp), %rdi
movq %rax, %rcx
movl $0x7, %esi
movabsq $-0x240ec4eb25c1f3e8, %rdx # imm = 0xDBF13B14DA3E0C18
callq 0xc01a0
movq %rax, -0x2a8(%rbp)
movq -0x2a8(%rbp), %rax
movq %rax, -0x5b0(%rbp)
movq -0x210(%rbp), %rdi
callq 0x65770
movq -0x5b0(%rbp), %rdi
movq %rax, %rsi
callq 0x65740
movq -0x260(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x6d8e0
movq %rax, -0x2b0(%rbp)
movq $0x0, -0x2b8(%rbp)
movq -0x2b8(%rbp), %rax
movq -0x2a8(%rbp), %rcx
cmpq 0x18(%rcx), %rax
jae 0x6cce6
movq -0x258(%rbp), %rax
movq %rax, -0x5c8(%rbp)
movq -0x2b0(%rbp), %rax
movq %rax, -0x5c0(%rbp)
movq -0x210(%rbp), %rax
movq 0x10(%rax), %rax
imulq $0x18, -0x2b8(%rbp), %rcx
addq %rcx, %rax
leaq -0x2d0(%rbp), %rdi
movq (%rax), %rcx
movq %rcx, (%rsp)
movq 0x8(%rax), %rcx
movq %rcx, 0x8(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
callq 0x636f0
movq -0x5c8(%rbp), %rdi
movq -0x5c0(%rbp), %rsi
leaq -0x2d0(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%rsp)
movq 0x8(%rax), %rcx
movq %rcx, 0x8(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
callq 0x5a8d0
movq -0x260(%rbp), %rax
movq 0x10(%rax), %rdi
movq -0x258(%rbp), %rsi
movq -0x2a8(%rbp), %rax
movq 0x10(%rax), %rdx
imulq $0x18, -0x2b8(%rbp), %rax
addq %rax, %rdx
callq 0x5e490
movq %rax, -0x2d8(%rbp)
cmpq $0x0, -0x2d8(%rbp)
je 0x6cccd
movq -0x2d8(%rbp), %rax
movq %rax, -0x2e0(%rbp)
movq -0x2a0(%rbp), %rdi
callq 0xc0720
movq -0x2e0(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
jmp 0x6cccf
movq -0x2b8(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x2b8(%rbp)
jmp 0x6cbc3
movq -0x20(%rbp), %rax
movq %rax, -0x5d0(%rbp)
movq -0x2a8(%rbp), %rdi
callq 0x9d3d0
movq -0x5d0(%rbp), %rdi
movq %rax, %rsi
callq 0x616b0
movq $0x0, -0x2e8(%rbp)
movq -0x2a0(%rbp), %rdi
callq 0xc0720
movq -0x2e8(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
movq -0x260(%rbp), %rdi
callq 0x6d8c0
cmpq $0x2, %rax
jne 0x6d0b6
movq -0x250(%rbp), %rax
movq %rax, -0x2f0(%rbp)
leaq -0x320(%rbp), %rax
movq %rax, -0x328(%rbp)
movq -0x328(%rbp), %rdi
movq -0x2f0(%rbp), %rsi
callq 0xbfe80
movq -0x328(%rbp), %rax
movq %rax, -0x2f0(%rbp)
movq -0x2f0(%rbp), %rax
movq $0x8, 0x10(%rax)
movq -0x210(%rbp), %rax
cmpq $0x1, 0x18(%rax)
jae 0x6ce29
movq -0x10(%rbp), %rax
addq $0x40, %rax
movq %rax, -0x5e0(%rbp)
movq -0x10(%rbp), %rdi
addq $0x10, %rdi
callq 0x45450
movq %rax, %rdi
callq 0x44d00
movq %rax, -0x5d8(%rbp)
movq -0x10(%rbp), %rdi
addq $0x28, %rdi
callq 0x45450
movq %rax, %rdi
callq 0x44d00
movq -0x5e0(%rbp), %rdi
movq -0x5d8(%rbp), %rdx
movq %rax, %rcx
leaq 0xd3d55(%rip), %rsi     # 0x140b54
movb $0x0, %al
callq 0x68020
movq %rax, -0x330(%rbp)
movq -0x328(%rbp), %rdi
callq 0xc0720
movq -0x330(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
movq -0x2f0(%rbp), %rax
movq %rax, -0x5f0(%rbp)
movb $0x0, %al
callq 0xfbfb0
movq -0x5f0(%rbp), %rdi
movq %rax, %rcx
movl $0x8, %esi
movabsq $0x79b76918ff0af12a, %rdx # imm = 0x79B76918FF0AF12A
callq 0xc01a0
movq %rax, -0x338(%rbp)
movq -0x338(%rbp), %rax
movq %rax, -0x5e8(%rbp)
movq -0x210(%rbp), %rax
movq 0x10(%rax), %rax
leaq -0x350(%rbp), %rdi
movq (%rax), %rcx
movq %rcx, (%rsp)
movq 0x8(%rax), %rcx
movq %rcx, 0x8(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
callq 0x636f0
movq -0x5e8(%rbp), %rax
movq -0x350(%rbp), %rcx
movq %rcx, (%rax)
movq -0x348(%rbp), %rcx
movq %rcx, 0x8(%rax)
movq -0x340(%rbp), %rcx
movq %rcx, 0x10(%rax)
movq $0x1, -0x358(%rbp)
movq -0x358(%rbp), %rax
movq -0x210(%rbp), %rcx
cmpq 0x18(%rcx), %rax
jae 0x6d07f
movq -0x258(%rbp), %rax
movq %rax, -0x610(%rbp)
movq -0x260(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x6d8e0
movq -0x610(%rbp), %rdi
movq %rax, %rsi
movq -0x338(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%rsp)
movq 0x8(%rax), %rcx
movq %rcx, 0x8(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
callq 0x5a8d0
movq -0x338(%rbp), %rax
movq %rax, -0x608(%rbp)
leaq -0x370(%rbp), %rdi
callq 0x8a380
movq -0x608(%rbp), %rax
movq -0x370(%rbp), %rcx
movq %rcx, (%rax)
movq -0x368(%rbp), %rcx
movq %rcx, 0x8(%rax)
movq -0x360(%rbp), %rcx
movq %rcx, 0x10(%rax)
movq -0x258(%rbp), %rax
movq %rax, -0x600(%rbp)
movq -0x260(%rbp), %rdi
movl $0x1, %esi
callq 0x6d8e0
movq %rax, -0x5f8(%rbp)
movq -0x210(%rbp), %rax
movq 0x10(%rax), %rax
imulq $0x18, -0x358(%rbp), %rcx
addq %rcx, %rax
leaq -0x388(%rbp), %rdi
movq (%rax), %rcx
movq %rcx, (%rsp)
movq 0x8(%rax), %rcx
movq %rcx, 0x8(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
callq 0x636f0
movq -0x600(%rbp), %rdi
movq -0x5f8(%rbp), %rsi
leaq -0x388(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%rsp)
movq 0x8(%rax), %rcx
movq %rcx, 0x8(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
callq 0x5a8d0
movq -0x260(%rbp), %rax
movq 0x10(%rax), %rdi
movq -0x258(%rbp), %rsi
movq -0x338(%rbp), %rdx
callq 0x5e490
movq %rax, -0x390(%rbp)
cmpq $0x0, -0x390(%rbp)
je 0x6d066
movq -0x390(%rbp), %rax
movq %rax, -0x398(%rbp)
movq -0x328(%rbp), %rdi
callq 0xc0720
movq -0x398(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
jmp 0x6d068
movq -0x358(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x358(%rbp)
jmp 0x6ced3
movq -0x20(%rbp), %rdi
movq -0x338(%rbp), %rsi
callq 0xfc070
movq $0x0, -0x3a0(%rbp)
movq -0x328(%rbp), %rdi
callq 0xc0720
movq -0x3a0(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
movq -0x10(%rbp), %rax
addq $0x40, %rax
movq %rax, -0x620(%rbp)
movq -0x10(%rbp), %rdi
addq $0x10, %rdi
callq 0x45450
movq %rax, %rdi
callq 0x44d00
movq %rax, -0x618(%rbp)
movq -0x10(%rbp), %rdi
addq $0x28, %rdi
callq 0x45450
movq %rax, %rdi
callq 0x44d00
movq -0x620(%rbp), %rdi
movq -0x618(%rbp), %rdx
movq %rax, %rcx
leaq 0xd3a8e(%rip), %rsi     # 0x140b9c
movb $0x0, %al
callq 0x68020
movq %rax, -0x3a8(%rbp)
movq -0x250(%rbp), %rdi
callq 0xc0720
movq -0x3a8(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
movq -0x10(%rbp), %rdi
addq $0x28, %rdi
callq 0x45450
movabsq $-0x240ec4eb25c1f3e8, %rcx # imm = 0xDBF13B14DA3E0C18
cmpq %rcx, %rax
jne 0x6d5df
leaq 0x1451d1(%rip), %rax    # 0x1b2330
movq (%rax), %rax
movq %rax, -0x3b0(%rbp)
leaq -0x3e0(%rbp), %rax
movq %rax, -0x3e8(%rbp)
movq -0x3e8(%rbp), %rdi
movq -0x3b0(%rbp), %rsi
callq 0xbfe80
movq -0x3e8(%rbp), %rax
movq %rax, -0x3b0(%rbp)
movq -0x3b0(%rbp), %rax
movq $0x7, 0x10(%rax)
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rax
movq %rax, -0x3f0(%rbp)
movq -0x3b0(%rbp), %rax
movq %rax, -0x638(%rbp)
callq 0x67200
movq -0x638(%rbp), %rdi
movq %rax, %rcx
movl $0x7, %esi
movabsq $-0x240ec4eb25c1f3e8, %rdx # imm = 0xDBF13B14DA3E0C18
callq 0xc01a0
movq %rax, -0x3f8(%rbp)
movq -0x210(%rbp), %rdi
callq 0x65770
movq %rax, -0x630(%rbp)
movq -0x3f0(%rbp), %rdi
callq 0x65770
movq -0x630(%rbp), %rdi
movq %rax, %rsi
callq 0x6d910
movq %rax, -0x400(%rbp)
movq -0x210(%rbp), %rdi
callq 0x65770
movq %rax, -0x628(%rbp)
movq -0x3f0(%rbp), %rdi
callq 0x65770
movq -0x628(%rbp), %rdi
movq %rax, %rsi
callq 0x4f720
movq %rax, -0x408(%rbp)
movq -0x3f8(%rbp), %rdi
movq -0x408(%rbp), %rsi
callq 0x65740
movq $0x0, -0x410(%rbp)
movq -0x410(%rbp), %rax
cmpq -0x400(%rbp), %rax
jge 0x6d325
movq -0x210(%rbp), %rax
movq 0x10(%rax), %rdi
imulq $0x18, -0x410(%rbp), %rax
addq %rax, %rdi
movq -0x3f0(%rbp), %rax
movq 0x10(%rax), %rsi
imulq $0x18, -0x410(%rbp), %rax
addq %rax, %rsi
movq -0x3f8(%rbp), %rax
movq 0x10(%rax), %rdx
imulq $0x18, -0x410(%rbp), %rax
addq %rax, %rdx
callq 0x690a0
movq %rax, -0x418(%rbp)
cmpq $0x0, -0x418(%rbp)
je 0x6d30c
movq -0x418(%rbp), %rax
movq %rax, -0x420(%rbp)
movq -0x3e8(%rbp), %rdi
callq 0xc0720
movq -0x420(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
jmp 0x6d30e
movq -0x410(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x410(%rbp)
jmp 0x6d276
movq -0x210(%rbp), %rdi
callq 0x65770
movq %rax, -0x640(%rbp)
movq -0x3f0(%rbp), %rdi
callq 0x65770
movq %rax, %rcx
movq -0x640(%rbp), %rax
cmpq %rcx, %rax
je 0x6d592
movq -0x3e8(%rbp), %rax
movq %rax, -0x428(%rbp)
leaq -0x458(%rbp), %rax
movq %rax, -0x460(%rbp)
movq -0x460(%rbp), %rdi
movq -0x428(%rbp), %rsi
callq 0xbfe80
movq -0x460(%rbp), %rax
movq %rax, -0x428(%rbp)
movq -0x428(%rbp), %rax
movq $0x8, 0x10(%rax)
movq -0x428(%rbp), %rax
movq %rax, -0x650(%rbp)
movb $0x0, %al
callq 0xfbfb0
movq -0x650(%rbp), %rdi
movq %rax, %rcx
movl $0x8, %esi
movabsq $0x79b76918ff0af12a, %rdx # imm = 0x79B76918FF0AF12A
callq 0xc01a0
movq %rax, -0x648(%rbp)
callq 0x67200
movq -0x648(%rbp), %rdi
movq %rax, %rsi
callq 0x5e240
movq %rax, -0x468(%rbp)
movq -0x400(%rbp), %rax
movq %rax, -0x470(%rbp)
movq -0x470(%rbp), %rax
movq %rax, -0x658(%rbp)
movq -0x210(%rbp), %rdi
callq 0x65770
movq %rax, %rcx
movq -0x658(%rbp), %rax
cmpq %rcx, %rax
jge 0x6d4bf
movq -0x210(%rbp), %rax
movq 0x10(%rax), %rdi
imulq $0x18, -0x470(%rbp), %rax
addq %rax, %rdi
movq -0x468(%rbp), %rsi
movq -0x3f8(%rbp), %rax
movq 0x10(%rax), %rdx
imulq $0x18, -0x470(%rbp), %rax
addq %rax, %rdx
callq 0x690a0
movq %rax, -0x478(%rbp)
cmpq $0x0, -0x478(%rbp)
je 0x6d4a6
movq -0x478(%rbp), %rax
movq %rax, -0x480(%rbp)
movq -0x460(%rbp), %rdi
callq 0xc0720
movq -0x480(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
jmp 0x6d4a8
movq -0x470(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x470(%rbp)
jmp 0x6d406
movq -0x400(%rbp), %rax
movq %rax, -0x488(%rbp)
movq -0x488(%rbp), %rax
movq %rax, -0x660(%rbp)
movq -0x3f0(%rbp), %rdi
callq 0x65770
movq %rax, %rcx
movq -0x660(%rbp), %rax
cmpq %rcx, %rax
jge 0x6d586
movq -0x468(%rbp), %rdi
movq -0x3f0(%rbp), %rax
movq 0x10(%rax), %rsi
imulq $0x18, -0x488(%rbp), %rax
addq %rax, %rsi
movq -0x3f8(%rbp), %rax
movq 0x10(%rax), %rdx
imulq $0x18, -0x488(%rbp), %rax
addq %rax, %rdx
callq 0x690a0
movq %rax, -0x490(%rbp)
cmpq $0x0, -0x490(%rbp)
je 0x6d56d
movq -0x490(%rbp), %rax
movq %rax, -0x498(%rbp)
movq -0x460(%rbp), %rdi
callq 0xc0720
movq -0x498(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
jmp 0x6d56f
movq -0x488(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x488(%rbp)
jmp 0x6d4cd
leaq -0x460(%rbp), %rdi
callq 0xc06e0
movq -0x20(%rbp), %rax
movq %rax, -0x668(%rbp)
movq -0x3f8(%rbp), %rdi
callq 0x9d3d0
movq -0x668(%rbp), %rdi
movq %rax, %rsi
callq 0x5e240
movq $0x0, -0x4a0(%rbp)
movq -0x3e8(%rbp), %rdi
callq 0xc0720
movq -0x4a0(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
jmp 0x6d5e1
jmp 0x6d5e3
jmp 0x6d5e5
jmp 0x6d7b2
movq -0x10(%rbp), %rdi
addq $0x10, %rdi
callq 0x45450
movabsq $-0x19831b480b40fba0, %rcx # imm = 0xE67CE4B7F4BF0460
cmpq %rcx, %rax
jne 0x6d7ae
leaq 0x144d1f(%rip), %rax    # 0x1b2330
movq (%rax), %rax
movq %rax, -0x4a8(%rbp)
leaq -0x4d8(%rbp), %rax
movq %rax, -0x4e0(%rbp)
movq -0x4e0(%rbp), %rdi
movq -0x4a8(%rbp), %rsi
callq 0xbfe80
movq -0x4e0(%rbp), %rax
movq %rax, -0x4a8(%rbp)
movq -0x4a8(%rbp), %rax
movq $0x4, 0x10(%rax)
movq -0x4a8(%rbp), %rax
movq %rax, -0x680(%rbp)
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0x9d3d0
movq -0x680(%rbp), %rdi
movq %rax, %rcx
movl $0x4, %esi
movabsq $-0x19831b480b40fba0, %rdx # imm = 0xE67CE4B7F4BF0460
callq 0xc01a0
movq %rax, -0x4e8(%rbp)
movq -0x4a8(%rbp), %rax
movq %rax, -0x678(%rbp)
movb $0x0, %al
callq 0x97ba0
movq -0x678(%rbp), %rdi
movq %rax, %rcx
movl $0x4, %esi
movabsq $-0x78ea303a4f284a4, %rdx # imm = 0xF8715CFC5B0D7B5C
callq 0xc01a0
movq %rax, -0x4f0(%rbp)
movq -0x4f0(%rbp), %rax
movq %rax, -0x670(%rbp)
leaq -0x508(%rbp), %rdi
callq 0x8a380
movq -0x670(%rbp), %rdi
leaq -0x508(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%rsp)
movq 0x8(%rax), %rcx
movq %rcx, 0x8(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
callq 0x97f40
movq %rax, %rdi
movq -0x10(%rbp), %rsi
addq $0x28, %rsi
callq 0xfc070
movq -0x4e8(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x40, %rsi
movq -0x18(%rbp), %rdx
movq -0x4f0(%rbp), %rcx
movq -0x20(%rbp), %r8
callq 0x680d0
movq %rax, -0x510(%rbp)
cmpq $0x0, -0x510(%rbp)
je 0x6d787
movq -0x510(%rbp), %rax
movq %rax, -0x518(%rbp)
movq -0x4e0(%rbp), %rdi
callq 0xc0720
movq -0x518(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
movq $0x0, -0x520(%rbp)
movq -0x4e0(%rbp), %rdi
callq 0xc0720
movq -0x520(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x6d8b1
jmp 0x6d7b2
jmp 0x6d7b2
movq -0x10(%rbp), %rdi
addq $0x10, %rdi
callq 0x6a310
testb $0x1, %al
jne 0x6d7c8
jmp 0x6d84d
movq -0x10(%rbp), %rdi
addq $0x28, %rdi
callq 0x6a310
testb $0x1, %al
jne 0x6d7db
jmp 0x6d80b
movq -0x20(%rbp), %rax
movq %rax, -0x688(%rbp)
movq -0x10(%rbp), %rdi
callq 0x9d3d0
movq -0x688(%rbp), %rdi
movq %rax, %rsi
callq 0x616b0
movq $0x0, -0x8(%rbp)
jmp 0x6d8b1
movq -0x10(%rbp), %rdi
addq $0x28, %rdi
callq 0xfc220
testb $0x1, %al
jne 0x6d81e
jmp 0x6d84b
movq -0x20(%rbp), %rax
movq %rax, -0x690(%rbp)
movq -0x10(%rbp), %rdi
callq 0x9d3d0
movq -0x690(%rbp), %rdi
movq %rax, %rsi
callq 0x616b0
movq $0x0, -0x8(%rbp)
jmp 0x6d8b1
jmp 0x6d84d
movq -0x10(%rbp), %rdi
addq $0x28, %rdi
callq 0x6a310
testb $0x1, %al
jne 0x6d860
jmp 0x6d8a2
movq -0x10(%rbp), %rdi
addq $0x10, %rdi
callq 0xfc220
testb $0x1, %al
jne 0x6d873
jmp 0x6d8a0
movq -0x20(%rbp), %rax
movq %rax, -0x698(%rbp)
movq -0x10(%rbp), %rdi
callq 0x9d3d0
movq -0x698(%rbp), %rdi
movq %rax, %rsi
callq 0x616b0
movq $0x0, -0x8(%rbp)
jmp 0x6d8b1
jmp 0x6d8a2
movq -0x28(%rbp), %rax
movb $0x0, (%rax)
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x6b0, %rsp            # imm = 0x6B0
popq %rbp
retq
nop