// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: oprec_i_cond_a_a_a_laa_lopa_laaq
static s7_int oprec_i_cond_a_a_a_laa_lopa_laaq(s7_scheme *sc)
                {
                    s7_int i1, i2;
                    sc->pc = 0;
                    if (sc->rec_test_o->v[0].fb(sc->rec_test_o))
                    {
                        sc->pc++;
                        return(sc->rec_result_o->v[0].fi(sc->rec_result_o));
                    }
                    sc->pc = sc->rec_pc1;
                    if (sc->rec_a1_o->v[0].fb(sc->rec_a1_o))
                    {
                        i1 = sc->rec_a2_o->v[0].fi(sc->rec_a2_o);
                        sc->pc++;
                        integer(sc->rec_val2) = sc->rec_a3_o->v[0].fi(sc->rec_a3_o);
                        integer(sc->rec_val1) = i1;
                        return(oprec_i_cond_a_a_a_laa_lopa_laaq(sc));
                    }
                    sc->pc = sc->rec_pc2;
                    i1 = sc->rec_a4_o->v[0].fi(sc->rec_a4_o);
                    sc->pc++;
                    i2 = sc->rec_a5_o->v[0].fi(sc->rec_a5_o);
                    sc->pc++;
                    integer(sc->rec_val2) = sc->rec_a6_o->v[0].fi(sc->rec_a6_o);
                    integer(sc->rec_val1) = i2;
                    integer(sc->rec_val2) = oprec_i_cond_a_a_a_laa_lopa_laaq(sc);
                    integer(sc->rec_val1) = i1;
                    return(oprec_i_cond_a_a_a_laa_lopa_laaq(sc));
                }

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x18(%rsp)
movq 0x18(%rsp), %rax
movl $0x0, 0x2258(%rax)
movq 0x18(%rsp), %rax
movq 0x400(%rax), %rax
movq (%rax), %rax
movq 0x18(%rsp), %rcx
movq 0x400(%rcx), %rdi
callq *%rax
testb $0x1, %al
jne 0x1694bb
jmp 0x1694f6
movq 0x18(%rsp), %rax
movl 0x2258(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0x2258(%rax)
movq 0x18(%rsp), %rax
movq 0x408(%rax), %rax
movq (%rax), %rax
movq 0x18(%rsp), %rcx
movq 0x408(%rcx), %rdi
callq *%rax
movq %rax, 0x20(%rsp)
jmp 0x1696c9
movq 0x18(%rsp), %rax
movl 0x460(%rax), %ecx
movq 0x18(%rsp), %rax
movl %ecx, 0x2258(%rax)
movq 0x18(%rsp), %rax
movq 0x410(%rax), %rax
movq (%rax), %rax
movq 0x18(%rsp), %rcx
movq 0x410(%rcx), %rdi
callq *%rax
testb $0x1, %al
jne 0x169532
jmp 0x1695c1
movq 0x18(%rsp), %rax
movq 0x418(%rax), %rax
movq (%rax), %rax
movq 0x18(%rsp), %rcx
movq 0x418(%rcx), %rdi
callq *%rax
movq %rax, 0x10(%rsp)
movq 0x18(%rsp), %rax
movl 0x2258(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0x2258(%rax)
movq 0x18(%rsp), %rax
movq 0x420(%rax), %rax
movq (%rax), %rax
movq 0x18(%rsp), %rcx
movq 0x420(%rcx), %rdi
callq *%rax
movq %rax, %rcx
movq 0x18(%rsp), %rax
movq 0x458(%rax), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rsp), %rcx
movq 0x18(%rsp), %rax
movq 0x450(%rax), %rax
movq %rcx, 0x8(%rax)
movq 0x18(%rsp), %rdi
callq 0x169480
movq %rax, 0x20(%rsp)
jmp 0x1696c9
movq 0x18(%rsp), %rax
movl 0x464(%rax), %ecx
movq 0x18(%rsp), %rax
movl %ecx, 0x2258(%rax)
movq 0x18(%rsp), %rax
movq 0x428(%rax), %rax
movq (%rax), %rax
movq 0x18(%rsp), %rcx
movq 0x428(%rcx), %rdi
callq *%rax
movq %rax, 0x10(%rsp)
movq 0x18(%rsp), %rax
movl 0x2258(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0x2258(%rax)
movq 0x18(%rsp), %rax
movq 0x430(%rax), %rax
movq (%rax), %rax
movq 0x18(%rsp), %rcx
movq 0x430(%rcx), %rdi
callq *%rax
movq %rax, 0x8(%rsp)
movq 0x18(%rsp), %rax
movl 0x2258(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0x2258(%rax)
movq 0x18(%rsp), %rax
movq 0x438(%rax), %rax
movq (%rax), %rax
movq 0x18(%rsp), %rcx
movq 0x438(%rcx), %rdi
callq *%rax
movq %rax, %rcx
movq 0x18(%rsp), %rax
movq 0x458(%rax), %rax
movq %rcx, 0x8(%rax)
movq 0x8(%rsp), %rcx
movq 0x18(%rsp), %rax
movq 0x450(%rax), %rax
movq %rcx, 0x8(%rax)
movq 0x18(%rsp), %rdi
callq 0x169480
movq %rax, %rcx
movq 0x18(%rsp), %rax
movq 0x458(%rax), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rsp), %rcx
movq 0x18(%rsp), %rax
movq 0x450(%rax), %rax
movq %rcx, 0x8(%rax)
movq 0x18(%rsp), %rdi
callq 0x169480
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rax
addq $0x28, %rsp
retq
nopw %cs:(%rax,%rax)