// File: /workspace/github_c_makefile_star2_O3/blakemcbride[P]LISP9/ls9.c
// Function: entcol
void entcol(int fix) {
	int	n, na, i, s, d;
	cell	a, x, new;

	na = fixval(stackref(Sp-2));
	if (na < fix)
		error("too few arguments", UNDEF);
	protect(a = NIL);
	i = Sp-fix-3;
	for (n = na-fix; n; n--) {
		x = cons(boxref(stackref(i)), NIL);
		if (NIL == a) {
			a = x;
			car(Protected) = a;
		}
		else {
			cdr(a) = x;
			a = cdr(a);
		}
		i--;
	}
	a = unprot(1);
	if (na > fix) {
		new = box(a);
		stackset(Sp-fix-3, new);
	}
	else {
		push(NIL);
		s = Sp - na - 3;
		d = Sp - na - 2;
		for (i = na + 2; i >= 0; i--)
			stackset(d+i, stackref(s+i));
		new = mkfix(1+fix);
		stackset(Sp-2, new);
		new = box(NIL);
		stackset(Sp-fix-3, new);
	}
	push(mkfix(Fp));
	Fp = Sp-4;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq 0xb58e(%rip), %rax      # 0x19340
movq 0xb58f(%rip), %rcx      # 0x19348
movslq 0xb39c(%rip), %rdx      # 0x1915c
movslq (%rcx,%rdx,4), %rdx
shlq $0x2, %rdx
addq 0xb589(%rip), %rdx      # 0x19358
movslq 0xb38a(%rip), %rsi      # 0x19160
movslq -0x8(%rdx,%rsi,4), %rdx
movslq (%rcx,%rdx,4), %rcx
movslq (%rax,%rcx,4), %r14
cmpl %edi, %r14d
jl 0xe065
movl %edi, %ebx
movl 0xb37c(%rip), %esi      # 0x19170
movl $0xffffffff, %ebp       # imm = 0xFFFFFFFF
movl $0xffffffff, %edi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x30e7
movl %eax, 0xb365(%rip)      # 0x19170
movq %rbx, (%rsp)
cmpl %ebx, %r14d
je 0xde99
movl 0xb342(%rip), %eax      # 0x19160
movq (%rsp), %rcx
subl %ecx, %eax
addl $-0x3, %eax
movslq %eax, %r15
movl %ecx, %r12d
subl %r14d, %r12d
leaq 0xb509(%rip), %r13      # 0x19340
leaq 0xb50a(%rip), %rbx      # 0x19348
movq 0xb4fb(%rip), %rax      # 0x19340
movq 0xb4fc(%rip), %rcx      # 0x19348
movslq 0xb309(%rip), %rdx      # 0x1915c
movslq (%rcx,%rdx,4), %rcx
shlq $0x2, %rcx
addq 0xb4f6(%rip), %rcx      # 0x19358
movslq (%rcx,%r15,4), %rcx
movl (%rax,%rcx,4), %edi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x30e7
movq %rbx, %rcx
cmpl $-0x1, %ebp
jne 0xde86
movl 0xb2ed(%rip), %ebp      # 0x19170
movq %r13, %rcx
movq (%rcx), %rcx
movslq %ebp, %rdx
movl %eax, (%rcx,%rdx,4)
decq %r15
movl %eax, %ebp
incl %r12d
jne 0xde3e
movl $0x1, %edi
callq 0x335c
movq (%rsp), %rbx
cmpl %ebx, %r14d
jle 0xdeb3
movl %eax, %ebp
jmp 0xdf97
movl $0xffffffff, %ebp       # imm = 0xFFFFFFFF
movl %ebp, 0xb2b6(%rip)      # 0x19174
movl $0x1, %edi
callq 0xd6c2
movl %ebp, 0xb2a6(%rip)      # 0x19174
movslq 0xb28b(%rip), %rcx      # 0x19160
leaq 0x1(%rcx), %rax
movl %eax, 0xb281(%rip)      # 0x19160
movq 0xb472(%rip), %rdx      # 0x19358
movq 0xb45b(%rip), %rax      # 0x19348
movslq 0xb268(%rip), %rsi      # 0x1915c
movslq (%rax,%rsi,4), %rsi
leaq (%rdx,%rsi,4), %rsi
movl %ebp, 0x4(%rsi,%rcx,4)
cmpl $-0x2, %r14d
jl 0xdf4c
leal 0x2(%r14), %ecx
movslq 0xb24f(%rip), %rsi      # 0x19160
movslq %ecx, %rcx
leaq (,%rcx,4), %rdi
leaq (%rdi,%rsi,4), %rsi
shlq $0x2, %r14
subq %r14, %rsi
addq %rsi, %rdx
addq $-0xc, %rdx
incq %rcx
movslq 0xb224(%rip), %rsi      # 0x1915c
movslq (%rax,%rsi,4), %rsi
movl (%rdx,%rsi,4), %edi
movl %edi, 0x4(%rdx,%rsi,4)
addq $-0x4, %rdx
decq %rcx
jg 0xdf31
leal 0x1(%rbx), %edi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
movl $0x1, %edx
callq 0x30e7
movl $0xfffffff2, %edi       # imm = 0xFFFFFFF2
movl %eax, %esi
movl $0x1, %edx
callq 0x30e7
movq 0xb3d2(%rip), %rcx      # 0x19348
movslq 0xb1df(%rip), %rdx      # 0x1915c
movslq (%rcx,%rdx,4), %rcx
shlq $0x2, %rcx
addq 0xb3cc(%rip), %rcx      # 0x19358
movslq 0xb1cd(%rip), %rdx      # 0x19160
movl %eax, -0x8(%rcx,%rdx,4)
movl %ebp, %edi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x30e7
movq 0xb39c(%rip), %rcx      # 0x19348
movslq 0xb1a9(%rip), %rdx      # 0x1915c
movslq (%rcx,%rdx,4), %rcx
shlq $0x2, %rcx
addq 0xb396(%rip), %rcx      # 0x19358
movslq 0xb197(%rip), %rdx      # 0x19160
movslq %ebx, %rsi
subq %rsi, %rdx
movl %eax, -0xc(%rcx,%rdx,4)
movl 0xb1ef(%rip), %edi      # 0x191c8
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
movl $0x1, %edx
callq 0x30e7
movl $0xfffffff2, %edi       # imm = 0xFFFFFFF2
movl %eax, %esi
movl $0x1, %edx
callq 0x30e7
movl %eax, %ebx
movl %eax, 0xb173(%rip)      # 0x19174
movl $0x1, %edi
callq 0xd6c2
movl $0xffffffff, 0xb15f(%rip) # imm = 0xFFFFFFFF
movslq 0xb144(%rip), %rax      # 0x19160
leaq 0x1(%rax), %rcx
movl %ecx, 0xb13a(%rip)      # 0x19160
movq 0xb31b(%rip), %rcx      # 0x19348
movslq 0xb128(%rip), %rdx      # 0x1915c
movslq (%rcx,%rdx,4), %rcx
shlq $0x2, %rcx
addq 0xb315(%rip), %rcx      # 0x19358
movl %ebx, 0x4(%rcx,%rax,4)
movl 0xb113(%rip), %eax      # 0x19160
addl $-0x4, %eax
movl %eax, 0xb172(%rip)      # 0x191c8
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x57bf(%rip), %rdi      # 0x1382b
movl $0xfffffffc, %esi       # imm = 0xFFFFFFFC
callq 0x2643