// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: oprec_if_a_a_lopl3a_l3a_l3aq
static s7_pointer oprec_if_a_a_lopl3a_l3a_l3aq(s7_scheme *sc)
                {
                    if (sc->rec_testf(sc, sc->rec_testp) != sc->F)
                        return(sc->rec_resf(sc, sc->rec_resp));

                    recur_push(sc, sc->rec_f1f(sc, sc->rec_f1p));
                    recur_push(sc, sc->rec_f2f(sc, sc->rec_f2p));
                    recur_push(sc, sc->rec_f3f(sc, sc->rec_f3p));
                    recur_push(sc, sc->rec_f4f(sc, sc->rec_f4p));
                    recur_push(sc, sc->rec_f5f(sc, sc->rec_f5p));
                    recur_push(sc, sc->rec_f6f(sc, sc->rec_f6p));
                    recur_push(sc, sc->rec_f7f(sc, sc->rec_f7p));
                    recur_push(sc, sc->rec_f8f(sc, sc->rec_f8p));
                    slot_set_value(sc->rec_slot3, sc->rec_f9f(sc, sc->rec_f9p));
                    slot_set_value(sc->rec_slot2, recur_pop(sc));
                    slot_set_value(sc->rec_slot1, recur_pop(sc));
                    recur_push(sc, oprec_if_a_a_lopl3a_l3a_l3aq(sc));
                    slot_set_value(sc->rec_slot3, recur_ref(sc, 2));
                    slot_set_value(sc->rec_slot2, recur_ref(sc, 3));
                    slot_set_value(sc->rec_slot1, recur_ref(sc, 4));
                    recur_push(sc, oprec_if_a_a_lopl3a_l3a_l3aq(sc));
                    slot_set_value(sc->rec_slot3, recur_ref(sc, 6));
                    slot_set_value(sc->rec_slot2, recur_ref(sc, 7));
                    slot_set_value(sc->rec_slot1, recur_ref(sc, 8));
                    slot_set_value(sc->rec_slot1, oprec_if_a_a_lopl3a_l3a_l3aq(sc));
                    slot_set_value(sc->rec_slot2, recur_pop(sc));
                    slot_set_value(sc->rec_slot3, recur_pop(sc));
                    sc->rec_loc -= 6;
                    return(oprec_if_a_a_lopl3a_l3a_l3aq(sc));
                }

// Assembly:
subq $0x68, %rsp
movq %rdi, 0x58(%rsp)
movq 0x58(%rsp), %rax
movq 0x360(%rax), %rax
movq 0x58(%rsp), %rdi
movq 0x58(%rsp), %rcx
movq 0x2f0(%rcx), %rsi
callq *%rax
movq 0x58(%rsp), %rcx
cmpq 0x120(%rcx), %rax
je 0x16713f
movq 0x58(%rsp), %rax
movq 0x3b0(%rax), %rax
movq 0x58(%rsp), %rdi
movq 0x58(%rsp), %rcx
movq 0x340(%rcx), %rsi
callq *%rax
movq %rax, 0x60(%rsp)
jmp 0x1674e6
movq 0x58(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x58(%rsp), %rax
movq 0x368(%rax), %rax
movq 0x58(%rsp), %rdi
movq 0x58(%rsp), %rcx
movq 0x2f8(%rcx), %rsi
callq *%rax
movq 0x8(%rsp), %rdi
movq %rax, %rsi
callq 0x1650c0
movq 0x58(%rsp), %rax
movq %rax, 0x10(%rsp)
movq 0x58(%rsp), %rax
movq 0x370(%rax), %rax
movq 0x58(%rsp), %rdi
movq 0x58(%rsp), %rcx
movq 0x300(%rcx), %rsi
callq *%rax
movq 0x10(%rsp), %rdi
movq %rax, %rsi
callq 0x1650c0
movq 0x58(%rsp), %rax
movq %rax, 0x18(%rsp)
movq 0x58(%rsp), %rax
movq 0x378(%rax), %rax
movq 0x58(%rsp), %rdi
movq 0x58(%rsp), %rcx
movq 0x308(%rcx), %rsi
callq *%rax
movq 0x18(%rsp), %rdi
movq %rax, %rsi
callq 0x1650c0
movq 0x58(%rsp), %rax
movq %rax, 0x20(%rsp)
movq 0x58(%rsp), %rax
movq 0x380(%rax), %rax
movq 0x58(%rsp), %rdi
movq 0x58(%rsp), %rcx
movq 0x310(%rcx), %rsi
callq *%rax
movq 0x20(%rsp), %rdi
movq %rax, %rsi
callq 0x1650c0
movq 0x58(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x58(%rsp), %rax
movq 0x388(%rax), %rax
movq 0x58(%rsp), %rdi
movq 0x58(%rsp), %rcx
movq 0x318(%rcx), %rsi
callq *%rax
movq 0x28(%rsp), %rdi
movq %rax, %rsi
callq 0x1650c0
movq 0x58(%rsp), %rax
movq %rax, 0x30(%rsp)
movq 0x58(%rsp), %rax
movq 0x390(%rax), %rax
movq 0x58(%rsp), %rdi
movq 0x58(%rsp), %rcx
movq 0x320(%rcx), %rsi
callq *%rax
movq 0x30(%rsp), %rdi
movq %rax, %rsi
callq 0x1650c0
movq 0x58(%rsp), %rax
movq %rax, 0x38(%rsp)
movq 0x58(%rsp), %rax
movq 0x398(%rax), %rax
movq 0x58(%rsp), %rdi
movq 0x58(%rsp), %rcx
movq 0x328(%rcx), %rsi
callq *%rax
movq 0x38(%rsp), %rdi
movq %rax, %rsi
callq 0x1650c0
movq 0x58(%rsp), %rax
movq %rax, 0x40(%rsp)
movq 0x58(%rsp), %rax
movq 0x3a0(%rax), %rax
movq 0x58(%rsp), %rdi
movq 0x58(%rsp), %rcx
movq 0x330(%rcx), %rsi
callq *%rax
movq 0x40(%rsp), %rdi
movq %rax, %rsi
callq 0x1650c0
movq 0x58(%rsp), %rax
movq 0x3a8(%rax), %rax
movq 0x58(%rsp), %rdi
movq 0x58(%rsp), %rcx
movq 0x338(%rcx), %rsi
callq *%rax
movq %rax, %rcx
movq 0x58(%rsp), %rax
movq 0x358(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x58(%rsp), %rdi
callq 0x165140
movq %rax, %rcx
movq 0x58(%rsp), %rax
movq 0x350(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x58(%rsp), %rdi
callq 0x165140
movq %rax, %rcx
movq 0x58(%rsp), %rax
movq 0x348(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x58(%rsp), %rax
movq %rax, 0x48(%rsp)
movq 0x58(%rsp), %rdi
callq 0x1670e0
movq 0x48(%rsp), %rdi
movq %rax, %rsi
callq 0x1650c0
movq 0x58(%rsp), %rdi
movl $0x2, %esi
callq 0x167610
movq %rax, %rcx
movq 0x58(%rsp), %rax
movq 0x358(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x58(%rsp), %rdi
movl $0x3, %esi
callq 0x167610
movq %rax, %rcx
movq 0x58(%rsp), %rax
movq 0x350(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x58(%rsp), %rdi
movl $0x4, %esi
callq 0x167610
movq %rax, %rcx
movq 0x58(%rsp), %rax
movq 0x348(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x58(%rsp), %rax
movq %rax, 0x50(%rsp)
movq 0x58(%rsp), %rdi
callq 0x1670e0
movq 0x50(%rsp), %rdi
movq %rax, %rsi
callq 0x1650c0
movq 0x58(%rsp), %rdi
movl $0x6, %esi
callq 0x167610
movq %rax, %rcx
movq 0x58(%rsp), %rax
movq 0x358(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x58(%rsp), %rdi
movl $0x7, %esi
callq 0x167610
movq %rax, %rcx
movq 0x58(%rsp), %rax
movq 0x350(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x58(%rsp), %rdi
movl $0x8, %esi
callq 0x167610
movq %rax, %rcx
movq 0x58(%rsp), %rax
movq 0x348(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x58(%rsp), %rdi
callq 0x1670e0
movq %rax, %rcx
movq 0x58(%rsp), %rax
movq 0x348(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x58(%rsp), %rdi
callq 0x165140
movq %rax, %rcx
movq 0x58(%rsp), %rax
movq 0x350(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x58(%rsp), %rdi
callq 0x165140
movq %rax, %rcx
movq 0x58(%rsp), %rax
movq 0x358(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x58(%rsp), %rax
movq 0x2d0(%rax), %rcx
subq $0x6, %rcx
movq %rcx, 0x2d0(%rax)
movq 0x58(%rsp), %rdi
callq 0x1670e0
movq %rax, 0x60(%rsp)
movq 0x60(%rsp), %rax
addq $0x68, %rsp
retq