// File: /workspace/github_c_makefile_star2_O2/BernardTatin[P]s7sh/s7.c
// Function: wrap_recur_if_a_a_opla_laq
static void wrap_recur_if_a_a_opla_laq(s7_scheme *sc, bool a_op)
                {
                    opt_pid_t choice;
                    tick_tc_rec(sc);
                    choice = opinit_if_a_a_opla_laq(sc, a_op);
                    if ((choice == OPT_INT) || (choice == OPT_INT_0))
                    {
                        if (choice == OPT_INT_0)
                            sc->value = make_integer(sc, (a_op) ? oprec_i_if_a_a_opla_laq_0(sc) : oprec_i_if_a_opla_laq_a_0(sc));
                        else sc->value = make_integer(sc, (a_op) ? oprec_i_if_a_a_opla_laq(sc) : oprec_i_if_a_opla_laq_a(sc));
                    }
                    else
                    {
                        if (choice == OPT_PTR)
                        {
                            sc->rec_stack = recur_make_stack(sc);
                            sc->value = (a_op) ? oprec_if_a_a_opla_laq(sc) : oprec_if_a_opla_laq_a(sc);
                            sc->rec_loc = 0;
                        }
                        else sc->value = make_real(sc, (a_op) ? oprec_d_if_a_a_opla_laq(sc) : oprec_d_if_a_opla_laq_a(sc));
                    }
                }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %esi, %ebp
movq %rdi, %rbx
movq (%rdi), %r13
movq 0x28(%r13), %r15
movq 0x8(%r15), %rsi
cmpb $0xa, (%rsi)
jne 0x9a9f9
movq 0x10(%rsi), %r14
testb $0x1, 0x2(%rsi)
jne 0x9a770
cmpb $0x20, (%r14)
jne 0x9a9f9
movq %rbx, %rdi
callq 0xb00b
cmpq %r14, %rax
jne 0x9a9f9
movq 0x10(%r14), %r14
cmpb $0x30, (%r14)
jb 0x9a9f9
movq 0x8(%rbx), %rax
movq 0x8(%rax), %r12
andl $0x0, 0x2258(%rbx)
movq 0x2260(%rbx), %rax
movq %rax, 0x400(%rbx)
movq 0x10(%r13), %rsi
movq %rbx, %rdi
callq 0x87220
testb %al, %al
je 0x9a9f9
movl 0x2258(%rbx), %eax
movslq %eax, %r13
movq 0x2260(%rbx,%r13,8), %rax
movq %rax, 0x408(%rbx)
movq 0x10(%r12), %rax
cmpb $0xb, (%rax)
jne 0x9a901
movq %r14, %rdi
callq 0x36807
movq %rax, 0x440(%rbx)
testq %rax, %rax
je 0x9a901
movq %rbx, %rax
testb %bpl, %bpl
jne 0x9a7fc
movq (%rbx), %rax
addq $0x10, %rax
movq (%rax), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0x7e94f
testb %al, %al
je 0x9a901
movslq 0x2258(%rbx), %rax
movq 0x2260(%rbx,%rax,8), %rax
movq %rax, 0x410(%rbx)
movq 0x10(%r15), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0x7e94f
testb %al, %al
je 0x9a901
movslq 0x2258(%rbx), %rax
movl %eax, 0x460(%rbx)
movq 0x2260(%rbx,%rax,8), %rax
movq %rax, 0x418(%rbx)
movq 0x28(%r15), %rax
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0x7e94f
testb %al, %al
je 0x9a901
movq 0x10(%r12), %rax
movq 0x8(%rax), %rsi
movq %rbx, %rdi
callq 0x7c936
movq %rax, 0x450(%rbx)
movq %rax, 0x10(%r12)
cmpl $0x4, 0x2258(%rbx)
jne 0x9aaf1
movq 0x400(%rbx), %rax
movq 0x408(%rbx), %rcx
movq (%rax), %rax
movq %rax, 0x3f0(%rbx)
movq (%rcx), %rax
movq %rax, 0x3c0(%rbx)
movq 0x410(%rbx), %rax
movq (%rax), %rax
movq %rax, 0x3c8(%rbx)
movq 0x418(%rbx), %rax
movq (%rax), %rax
movq %rax, 0x3d0(%rbx)
movq %rbx, %rdi
testb %bpl, %bpl
je 0x9ab4b
callq 0xa65cf
jmp 0x9ab57
movq 0x10(%r12), %rax
cmpb $0xd, (%rax)
jne 0x9a9f9
movq %r14, %rdi
callq 0x366e5
movq %rax, 0x448(%rbx)
testq %rax, %rax
je 0x9a9f9
movl %r13d, 0x2258(%rbx)
movq 0x2260(%rbx,%r13,8), %rax
movq %rax, 0x408(%rbx)
movq %rbx, %rax
testb %bpl, %bpl
jne 0x9a94c
movq (%rbx), %rax
addq $0x10, %rax
movq (%rax), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0x36881
testb %al, %al
je 0x9a9f9
movslq 0x2258(%rbx), %rax
movl %eax, 0x460(%rbx)
movq 0x2260(%rbx,%rax,8), %rax
movq %rax, 0x410(%rbx)
movq 0x10(%r15), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0x36881
testb %al, %al
je 0x9a9f9
movslq 0x2258(%rbx), %rax
movq 0x2260(%rbx,%rax,8), %rax
movq %rax, 0x418(%rbx)
movq 0x28(%r15), %rax
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0x36881
testb %al, %al
je 0x9a9f9
movq 0x10(%r12), %rax
movsd 0x8(%rax), %xmm0
movq %rbx, %rdi
callq 0xc0fe
movq %rax, 0x450(%rbx)
movq %rax, 0x10(%r12)
movq %rbx, %rdi
testb %bpl, %bpl
je 0x9ab00
callq 0xa6afc
jmp 0x9ab05
movq (%rbx), %rax
movq 0x10(%rax), %rcx
movq %rcx, 0x2f0(%rbx)
movq 0x20(%rcx), %rdx
movq %rdx, 0x360(%rbx)
movq 0x8(%rcx), %rcx
movq %rcx, 0x2f0(%rbx)
testb %bpl, %bpl
jne 0x9aa26
movq 0x10(%rax), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rax
movq %rax, 0x340(%rbx)
movq 0x20(%rax), %rcx
movq %rcx, 0x3b0(%rbx)
movq 0x8(%rax), %rax
movq %rax, 0x340(%rbx)
movq 0x10(%r15), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rax
movq %rax, 0x2f8(%rbx)
movq 0x20(%rax), %rcx
movq %rcx, 0x368(%rbx)
movq 0x8(%rax), %rax
movq %rax, 0x2f8(%rbx)
movq 0x28(%r15), %rax
movq 0x10(%rax), %rax
movq %rax, 0x300(%rbx)
movq 0x20(%rax), %rcx
movq %rcx, 0x370(%rbx)
movq 0x8(%rax), %rax
movq %rax, 0x300(%rbx)
movq 0x8(%rbx), %rax
movq 0x8(%rax), %rax
movq %rax, 0x348(%rbx)
movq 0x20(%r15), %rax
movq %rax, 0x3b8(%rbx)
movq %rbx, %rdi
callq 0xa5fef
movq %rax, 0x2e8(%rbx)
movq %rbx, %rdi
testb %bpl, %bpl
je 0x9aad1
callq 0xa6923
jmp 0x9aad6
callq 0xa6a0f
movq %rax, 0x20(%rbx)
andq $0x0, 0x2d0(%rbx)
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rbx, %rdi
testb %bpl, %bpl
je 0x9ab52
callq 0xa67f5
jmp 0x9ab57
callq 0xa6ba1
movq 0x90(%rbx), %rax
cmpq 0x98(%rbx), %rax
ja 0x9ab2e
movq %rbx, %rdi
movsd %xmm0, (%rsp)
callq 0x9c27
movsd (%rsp), %xmm0
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0xd, (%rax)
movsd %xmm0, 0x8(%rax)
jmp 0x9aba8
callq 0xa66e0
jmp 0x9ab57
callq 0xa688c
movq %rax, %r14
cmpq $0x7ff, %rax            # imm = 0x7FF
ja 0x9ab6f
leaq 0x7ade7(%rip), %rax     # 0x115950
movq (%rax,%r14,8), %rax
jmp 0x9aba8
movq 0x90(%rbx), %rax
cmpq 0x98(%rbx), %rax
ja 0x9ab8e
movq %rbx, %rdi
callq 0x9c27
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0xb, (%rax)
movq %r14, 0x8(%rax)
movq %rax, 0x20(%rbx)
jmp 0x9aae2