// File: /workspace/github_c_makefile_star2_O3/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), %rax
movq 0x28(%rax), %r14
movq 0x8(%r14), %rsi
cmpb $0xa, (%rsi)
jne 0xc51ab
testb $0x1, 0x2(%rsi)
movq 0x10(%rsi), %rcx
jne 0xc50b4
cmpb $0x20, (%rcx)
jne 0xc51ab
movq 0x8(%rbx), %rdx
movq 0x18(%rdx), %r10
movq 0x20(%rsi), %r9
movl $0x18, %edi
cmpq %r9, %r10
je 0xc50a5
movq %rdx, %r8
jle 0xc509c
movq %rdx, %r8
movq 0x10(%r8), %r8
movq 0x18(%r8), %r10
cmpq %r10, %r9
jl 0xc508f
cmpq %r9, %r10
jne 0xc513b
movq (%rsi,%rdi), %r9
cmpq %rcx, %r9
jne 0xc51ab
jmp 0xc50b8
movq 0x8(%rbx), %rdx
movq 0x10(%rcx), %r13
cmpb $0x30, (%r13)
jb 0xc51ab
movq 0x8(%rdx), %r15
movl $0x0, 0x2258(%rbx)
movq 0x2260(%rbx), %rcx
movq %rcx, 0x400(%rbx)
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0xa9b3b
testb %al, %al
je 0xc51ab
movl 0x2258(%rbx), %eax
movslq %eax, %r12
movq 0x2260(%rbx,%r12,8), %rax
movq %rax, 0x408(%rbx)
movq 0x10(%r15), %rax
cmpb $0xb, (%rax)
jne 0xc5174
cmpb $0x30, (%r13)
jb 0xc5169
movq 0x8(%r13), %rax
movq 0x20(%rax), %rax
testq %rax, %rax
je 0xc5169
cmpl $0x13, (%rax)
je 0xc5419
movq 0x10(%rax), %rax
jmp 0xc5127
movl $0x10, %edi
cmpb $0x1c, (%r8)
jne 0xc50a5
movq 0x8(%r8), %r9
testq %r9, %r9
je 0xc5163
cmpq %rsi, 0x8(%r9)
je 0xc50a9
movq 0x18(%r9), %r9
jmp 0xc514e
movq 0x10(%r8), %r8
jmp 0xc5140
movq $0x0, 0x440(%rbx)
movq 0x10(%r15), %rax
cmpb $0xd, (%rax)
jne 0xc51ab
cmpb $0x30, (%r13)
jb 0xc51a0
movq 0x8(%r13), %rax
movq 0x20(%rax), %rax
testq %rax, %rax
je 0xc51a0
cmpl $0xd, (%rax)
je 0xc5570
movq 0x10(%rax), %rax
jmp 0xc518c
movq $0x0, 0x448(%rbx)
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 0xc51d8
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(%r14), %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(%r14), %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(%r14), %rax
movq %rax, 0x3b8(%rbx)
cmpq $0x0, 0x2e8(%rbx)
jne 0xc53dc
movq 0x90(%rbx), %rax
cmpq 0x98(%rbx), %rax
ja 0xc5292
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %r15
movq $0x200015, (%r15)       # imm = 0x200015
movq $0x400, 0x8(%r15)       # imm = 0x400
movq 0x8a0(%rbx), %r14
testq %r14, %r14
je 0xc52cc
movq 0x18(%r14), %rax
movq %rax, 0x8a0(%rbx)
jmp 0xc535e
movq 0x838(%rbx), %r14
testq %r14, %r14
jne 0xc5317
movl $0x2800, %edi           # imm = 0x2800
callq 0x8480
movq %rax, %r14
movq %rax, 0x838(%rbx)
addq $0x28, %rax
movl $0xff, %ecx
movq %rax, -0x10(%rax)
movl $0x0, -0x20(%rax)
addq $0x28, %rax
decl %ecx
jne 0xc52f5
movq $0x0, -0x10(%rax)
movl $0x0, -0x20(%rax)
movq 0x18(%r14), %rax
movq %rax, 0x838(%rbx)
movq 0x8c8(%rbx), %rax
leaq 0x2000(%rax), %rcx
cmpq $0x10000, %rcx          # imm = 0x10000
jbe 0xc5345
movl $0x2000, %edi           # imm = 0x2000
callq 0x8480
jmp 0xc5353
addq 0x8d0(%rbx), %rax
movq %rcx, 0x8c8(%rbx)
movq %rax, (%r14)
movl $0xd, 0x8(%r14)
movq $0x2000, 0x10(%r14)     # imm = 0x2000
movq %r14, 0x18(%r15)
movq (%r14), %rax
movq %rax, 0x10(%r15)
movq $0x0, 0x20(%r14)
leaq -0x69137(%rip), %rax    # 0x5c249
movq %rax, 0x20(%r15)
leaq -0x69139(%rip), %rax    # 0x5c252
movq %rax, 0x28(%r15)
movq 0x740(%rbx), %r14
movq (%r14), %rax
movq 0x10(%r14), %rsi
cmpq 0x8(%r14), %rsi
jne 0xc53be
leaq (%rsi,%rsi), %rcx
movq %rcx, 0x8(%r14)
shlq $0x4, %rsi
movq %rax, %rdi
callq 0x8510
movq %rax, (%r14)
movq 0x10(%r14), %rsi
leaq 0x1(%rsi), %rcx
movq %rcx, 0x10(%r14)
movq %r15, (%rax,%rsi,8)
movq %r15, 0x2e8(%rbx)
movq $0x400, 0x2d8(%rbx) # imm = 0x400
movq $0x0, 0x2d0(%rbx)
movq %rbx, %rdi
testb %bpl, %bpl
je 0xc53f6
callq 0xd234b
jmp 0xc53fb
callq 0xd24a4
movq %rax, 0x20(%rbx)
movq $0x0, 0x2d0(%rbx)
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x8(%rax), %rax
movq %rax, 0x440(%rbx)
testq %rax, %rax
je 0xc5174
movq %rbx, %rax
testb %bpl, %bpl
jne 0xc543c
movq (%rbx), %rax
addq $0x10, %rax
movq (%rax), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0x9fbc8
testb %al, %al
je 0xc5174
movslq 0x2258(%rbx), %rax
movq 0x2260(%rbx,%rax,8), %rax
movq %rax, 0x410(%rbx)
movq 0x10(%r14), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0x9fbc8
testb %al, %al
je 0xc5174
movslq 0x2258(%rbx), %rax
movl %eax, 0x460(%rbx)
movq 0x2260(%rbx,%rax,8), %rax
movq %rax, 0x418(%rbx)
movq 0x28(%r14), %rax
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0x9fbc8
testb %al, %al
je 0xc5174
movq 0x10(%r15), %rax
movq 0x8(%rax), %r14
movq 0x90(%rbx), %rax
cmpq 0x98(%rbx), %rax
ja 0xc54e4
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x500000b, (%rax)      # imm = 0x500000B
movq %r14, 0x8(%rax)
movq %rax, 0x450(%rbx)
movq %rax, 0x10(%r15)
cmpl $0x4, 0x2258(%rbx)
jne 0xc5691
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 0xc56eb
callq 0xd1ff1
jmp 0xc56f7
movq 0x8(%rax), %rax
movq %rax, 0x448(%rbx)
testq %rax, %rax
je 0xc51ab
movl %r12d, 0x2258(%rbx)
movq 0x2260(%rbx,%r12,8), %rax
movq %rax, 0x408(%rbx)
movq %rbx, %rax
testb %bpl, %bpl
jne 0xc55a9
movq (%rbx), %rax
addq $0x10, %rax
movq (%rax), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0x44f61
testb %al, %al
je 0xc51ab
movslq 0x2258(%rbx), %rax
movl %eax, 0x460(%rbx)
movq 0x2260(%rbx,%rax,8), %rax
movq %rax, 0x410(%rbx)
movq 0x10(%r14), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0x44f61
testb %al, %al
je 0xc51ab
movslq 0x2258(%rbx), %rax
movq 0x2260(%rbx,%rax,8), %rax
movq %rax, 0x418(%rbx)
movq 0x28(%r14), %rax
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0x44f61
testb %al, %al
je 0xc51ab
movq 0x10(%r15), %rax
movsd 0x8(%rax), %xmm0
movq 0x90(%rbx), %rax
cmpq 0x98(%rbx), %rax
ja 0xc565c
movq %rbx, %rdi
movsd %xmm0, (%rsp)
callq 0xa550
movsd (%rsp), %xmm0
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x500000d, (%rax)      # imm = 0x500000D
movsd %xmm0, 0x8(%rax)
movq %rax, 0x450(%rbx)
movq %rax, 0x10(%r15)
movq %rbx, %rdi
testb %bpl, %bpl
je 0xc56a0
callq 0xd25fe
jmp 0xc56a5
movq %rbx, %rdi
testb %bpl, %bpl
je 0xc56f2
callq 0xd2217
jmp 0xc56f7
callq 0xd26a6
movq 0x90(%rbx), %rax
cmpq 0x98(%rbx), %rax
ja 0xc56ce
movq %rbx, %rdi
movsd %xmm0, (%rsp)
callq 0xa550
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 0xc5748
callq 0xd2102
jmp 0xc56f7
callq 0xd22b1
movq %rax, %r14
cmpq $0x7ff, %rax            # imm = 0x7FF
ja 0xc570f
leaq 0x81247(%rip), %rax     # 0x146950
movq (%rax,%r14,8), %rax
jmp 0xc5748
movq 0x90(%rbx), %rax
cmpq 0x98(%rbx), %rax
ja 0xc572e
movq %rbx, %rdi
callq 0xa550
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 0xc540a