// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: member
static s7_pointer member(s7_scheme *sc, s7_pointer obj, s7_pointer x)
                {
                    s7_pointer y;

                    y = x;
                    if (is_string(obj))
                    {
                        while (true)
                        {
                            if ((obj == car(x)) ||
                                    ((is_string(car(x))) &&
                                     (scheme_strings_are_equal(obj, car(x)))))
                                return(x);
                            x = cdr(x);
                            if (!is_pair(x)) return(sc->F);

                            if ((obj == car(x)) ||
                                    ((is_string(car(x))) &&
                                     (scheme_strings_are_equal(obj, car(x)))))
                                return(x);
                            x = cdr(x);
                            if (!is_pair(x)) return(sc->F);

                            y = cdr(y);
                            if (x == y) return(sc->F);
                        }
                        return(sc->F);
                    }

                    while (true)
                    {
                        LOOP_4(if (s7_is_equal(sc, obj, car(x))) return(x); x = cdr(x); if (!is_pair(x)) return(sc->F));
                        y = cdr(y);
                        if (x == y) return(sc->F);
                    }
                    return(sc->F); /* not reached */
                }

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x18(%rsp)
movq %rsi, 0x10(%rsp)
movq %rdx, 0x8(%rsp)
movq 0x8(%rsp), %rax
movq %rax, (%rsp)
movq 0x10(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x13, %eax
jne 0x1c9b35
jmp 0x1c9a0f
movq 0x10(%rsp), %rax
movq 0x8(%rsp), %rcx
cmpq 0x8(%rcx), %rax
je 0x1c9a49
movq 0x8(%rsp), %rax
movq 0x8(%rax), %rax
movzbl (%rax), %eax
cmpl $0x13, %eax
jne 0x1c9a58
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %rax
movq 0x8(%rax), %rsi
callq 0x1b64f0
testb $0x1, %al
jne 0x1c9a49
jmp 0x1c9a58
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
jmp 0x1c9cdc
movq 0x8(%rsp), %rax
movq 0x10(%rax), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x1, %eax
je 0x1c9a89
movq 0x18(%rsp), %rax
movq 0x120(%rax), %rax
movq %rax, 0x20(%rsp)
jmp 0x1c9cdc
movq 0x10(%rsp), %rax
movq 0x8(%rsp), %rcx
cmpq 0x8(%rcx), %rax
je 0x1c9ac3
movq 0x8(%rsp), %rax
movq 0x8(%rax), %rax
movzbl (%rax), %eax
cmpl $0x13, %eax
jne 0x1c9ad2
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %rax
movq 0x8(%rax), %rsi
callq 0x1b64f0
testb $0x1, %al
jne 0x1c9ac3
jmp 0x1c9ad2
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
jmp 0x1c9cdc
movq 0x8(%rsp), %rax
movq 0x10(%rax), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x1, %eax
je 0x1c9b03
movq 0x18(%rsp), %rax
movq 0x120(%rax), %rax
movq %rax, 0x20(%rsp)
jmp 0x1c9cdc
movq (%rsp), %rax
movq 0x10(%rax), %rax
movq %rax, (%rsp)
movq 0x8(%rsp), %rax
cmpq (%rsp), %rax
jne 0x1c9b30
movq 0x18(%rsp), %rax
movq 0x120(%rax), %rax
movq %rax, 0x20(%rsp)
jmp 0x1c9cdc
jmp 0x1c9a0f
jmp 0x1c9b37
jmp 0x1c9b39
movq 0x18(%rsp), %rdi
movq 0x10(%rsp), %rsi
movq 0x8(%rsp), %rax
movq 0x8(%rax), %rdx
callq 0x2f770
testb $0x1, %al
jne 0x1c9b57
jmp 0x1c9b66
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
jmp 0x1c9cdc
movq 0x8(%rsp), %rax
movq 0x10(%rax), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x1, %eax
je 0x1c9b97
movq 0x18(%rsp), %rax
movq 0x120(%rax), %rax
movq %rax, 0x20(%rsp)
jmp 0x1c9cdc
movq 0x18(%rsp), %rdi
movq 0x10(%rsp), %rsi
movq 0x8(%rsp), %rax
movq 0x8(%rax), %rdx
callq 0x2f770
testb $0x1, %al
jne 0x1c9bb5
jmp 0x1c9bc4
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
jmp 0x1c9cdc
movq 0x8(%rsp), %rax
movq 0x10(%rax), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x1, %eax
je 0x1c9bf5
movq 0x18(%rsp), %rax
movq 0x120(%rax), %rax
movq %rax, 0x20(%rsp)
jmp 0x1c9cdc
movq 0x18(%rsp), %rdi
movq 0x10(%rsp), %rsi
movq 0x8(%rsp), %rax
movq 0x8(%rax), %rdx
callq 0x2f770
testb $0x1, %al
jne 0x1c9c13
jmp 0x1c9c22
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
jmp 0x1c9cdc
movq 0x8(%rsp), %rax
movq 0x10(%rax), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x1, %eax
je 0x1c9c53
movq 0x18(%rsp), %rax
movq 0x120(%rax), %rax
movq %rax, 0x20(%rsp)
jmp 0x1c9cdc
movq 0x18(%rsp), %rdi
movq 0x10(%rsp), %rsi
movq 0x8(%rsp), %rax
movq 0x8(%rax), %rdx
callq 0x2f770
testb $0x1, %al
jne 0x1c9c71
jmp 0x1c9c7d
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
jmp 0x1c9cdc
movq 0x8(%rsp), %rax
movq 0x10(%rax), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x1, %eax
je 0x1c9cab
movq 0x18(%rsp), %rax
movq 0x120(%rax), %rax
movq %rax, 0x20(%rsp)
jmp 0x1c9cdc
jmp 0x1c9cad
movq (%rsp), %rax
movq 0x10(%rax), %rax
movq %rax, (%rsp)
movq 0x8(%rsp), %rax
cmpq (%rsp), %rax
jne 0x1c9cd7
movq 0x18(%rsp), %rax
movq 0x120(%rax), %rax
movq %rax, 0x20(%rsp)
jmp 0x1c9cdc
jmp 0x1c9b37
movq 0x20(%rsp), %rax
addq $0x28, %rsp
retq
nopw %cs:(%rax,%rax)