// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_vector_ref_g_vector_ref_gs
static s7_pointer fx_vector_ref_g_vector_ref_gs(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer largs;
                    arg = cdr(arg);
                    largs = cdadr(arg);
                    return(vector_ref_p_pp(sc, lookup_global(sc, car(arg)),
                                vector_ref_p_pp(sc, lookup_global(sc, car(largs)), lookup(sc, opt2_sym(largs)))));
                }

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x8(%rax), %rsi
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %r15
testb $0x1, 0x2(%rsi)
jne 0xb3b93
movq 0x8(%rbx), %rax
movq 0x18(%rax), %rdx
movq 0x20(%rsi), %rcx
cmpq %rcx, %rdx
je 0xb3b79
jle 0xb3b70
movq 0x10(%rax), %rax
movq 0x18(%rax), %rdx
cmpq %rdx, %rcx
jl 0xb3b63
cmpq %rcx, %rdx
jne 0xb3d3d
movq 0x18(%rsi), %rcx
movq 0x10(%rcx), %r14
testq %r14, %r14
jne 0xb3b9b
movq %rbx, %rdi
callq 0x9c492
movq %rax, %r14
jmp 0xb3b9b
movq 0x10(%rsi), %rax
movq 0x10(%rax), %r14
movq 0x8(%r15), %rsi
testb $0x1, 0x2(%rsi)
jne 0xb3be5
movq 0x8(%rbx), %rax
movq 0x18(%rax), %rdx
movq 0x20(%rsi), %rcx
cmpq %rcx, %rdx
je 0xb3bce
jle 0xb3bc5
movq 0x10(%rax), %rax
movq 0x18(%rax), %rdx
cmpq %rdx, %rcx
jl 0xb3bb8
cmpq %rcx, %rdx
jne 0xb3d65
movq 0x18(%rsi), %rcx
movq 0x10(%rcx), %rax
testq %rax, %rax
jne 0xb3bed
movq %rbx, %rdi
callq 0x9c492
jmp 0xb3bed
movq 0x10(%rsi), %rax
movq 0x10(%rax), %rax
movq 0x20(%r15), %rcx
movq 0x8(%rbx), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb3c1a
jle 0xb3c11
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb3c04
cmpq %rsi, %rdi
jne 0xb3d19
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movzbl (%rax), %edx
leaq 0x96ff4(%rip), %r12     # 0x14ac20
cmpb $0x1, (%rdx,%r12)
jne 0xb3c6e
movq 0x18(%rax), %rdx
movq 0x20(%rdx), %rdx
testq %rdx, %rdx
je 0xb3c47
cmpq $0x1, 0x10(%rdx)
jne 0xb3c6e
cmpb $0xb, (%rcx)
jne 0xb3c6e
movq 0x8(%rcx), %rdx
testq %rdx, %rdx
js 0xb3da1
cmpq 0x8(%rax), %rdx
jge 0xb3da1
movq %rbx, %rdi
movq %rax, %rsi
callq *0x20(%rax)
jmp 0xb3c93
movq 0x708(%rbx), %rdx
movq %rax, 0x8(%rdx)
movq 0x710(%rbx), %rax
movq %rcx, 0x8(%rax)
movq 0x708(%rbx), %rsi
movq %rbx, %rdi
callq 0x79c8d
movq %rax, %r15
movzbl (%r14), %eax
cmpb $0x1, (%rax,%r12)
jne 0xb3ce9
movq 0x18(%r14), %rax
movq 0x20(%rax), %rax
testq %rax, %rax
je 0xb3cb5
cmpq $0x1, 0x10(%rax)
jne 0xb3ce9
cmpb $0xb, (%r15)
jne 0xb3ce9
movq 0x8(%r15), %rdx
testq %rdx, %rdx
js 0xb3e10
cmpq 0x8(%r14), %rdx
jge 0xb3e10
movq 0x20(%r14), %rax
movq %rbx, %rdi
movq %r14, %rsi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmpq *%rax
movq 0x708(%rbx), %rax
movq %r14, 0x8(%rax)
movq 0x710(%rbx), %rax
movq %r15, 0x8(%rax)
movq 0x708(%rbx), %rsi
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmp 0x79c8d
cmpb $0x1c, (%rdx)
jne 0xb3d8d
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb3d37
cmpq %rcx, 0x8(%rsi)
je 0xb3c1e
movq 0x18(%rsi), %rsi
jmp 0xb3d22
movq 0x10(%rdx), %rdx
jmp 0xb3d19
cmpb $0x1c, (%rax)
jne 0xb3e82
movq 0x8(%rax), %rcx
testq %rcx, %rcx
je 0xb3d5f
cmpq %rsi, 0x8(%rcx)
je 0xb3b7d
movq 0x18(%rcx), %rcx
jmp 0xb3d4a
movq 0x10(%rax), %rax
jmp 0xb3d3d
cmpb $0x1c, (%rax)
jne 0xb3e94
movq 0x8(%rax), %rcx
testq %rcx, %rcx
je 0xb3d87
cmpq %rsi, 0x8(%rcx)
je 0xb3bd2
movq 0x18(%rcx), %rcx
jmp 0xb3d72
movq 0x10(%rax), %rax
jmp 0xb3d65
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb3c1e
xorl %ecx, %ecx
jmp 0xb3c22
testq %rdx, %rdx
movq 0x1660(%rbx), %rax
movq 0x8(%rax), %rax
movq 0x92baa(%rip), %rdx     # 0x146960
leaq 0x96c8b(%rip), %rsi     # 0x14aa48
leaq 0x96c7c(%rip), %rdi     # 0x14aa40
cmovsq %rsi, %rdi
movq (%rdi), %rsi
movq 0x1ee8(%rbx), %rdi
movq 0x10(%rdi), %rdi
movq %rax, 0x8(%rdi)
movq 0x10(%rdi), %rax
movq %rdx, 0x8(%rax)
movq 0x10(%rax), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rax), %rax
movq %rsi, 0x8(%rax)
movq 0x1948(%rbx), %r15
movq 0x1ee8(%rbx), %rdx
movq %rbx, %rdi
movq %r15, %rsi
callq 0x38dfa
jmp 0xb3c96
testq %rdx, %rdx
movq 0x1660(%rbx), %rax
movq 0x8(%rax), %rax
leaq 0x96c23(%rip), %rcx     # 0x14aa48
leaq 0x96c14(%rip), %rdx     # 0x14aa40
cmovsq %rcx, %rdx
movq 0x92b29(%rip), %rcx     # 0x146960
movq (%rdx), %rdx
movq 0x1ee8(%rbx), %rsi
movq 0x10(%rsi), %rsi
movq %rax, 0x8(%rsi)
movq 0x10(%rsi), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rax), %rax
movq %r15, 0x8(%rax)
movq 0x10(%rax), %rax
movq %rdx, 0x8(%rax)
movq 0x1948(%rbx), %rsi
movq 0x1ee8(%rbx), %rdx
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmp 0x38dfa
movq 0x10(%rsi), %rcx
cmpb $0x20, (%rcx)
je 0xb3b7d
jmp 0xb3b86
movq 0x10(%rsi), %rcx
cmpb $0x20, (%rcx)
je 0xb3bd2
jmp 0xb3bdb