// File: /workspace/github_c_makefile_star2_O0/blakemcbride[P]LISP9/ls9.c
// Function: expandbody
cell expandbody(cell x) {
	cell	n, vs, as;

	protect(vs = NIL);
	protect(as = NIL);
	while (	pairp(x) &&
		pairp(car(x)) &&
		(caar(x) == S_def ||
		 caar(x) == S_defun))
	{
		if (caar(x) == S_def) {
			n = car(x);
			vs = cons(cadr(n), vs);
			cadr(Protected) = vs;
			n = cons(caddr(n), NIL);
			as = cons(n, as);
			car(Protected) = as;
		}
		else {
			n = expanddef(car(x));
			protect(n);
			vs = cons(cadr(n), vs);
			caddr(Protected) = vs;
			n = cons(caddr(n), NIL);
			as = cons(n, as);
			cadr(Protected) = as;
			unprot(1);
		}
		x = cdr(x);
	}
	if (NIL == vs) {
		unprot(2);
		return x;
	}
	as = car(Protected) = nreverse(as);
	vs = cadr(Protected) = nreverse(vs);
	n = cons(zip(vs, as), x);
	n = cons(S_labels, n);
	n = cons(n, NIL);
	unprot(2);
	return n;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movl %edi, -0x8(%rbp)
movl $0xffffffff, -0x10(%rbp) # imm = 0xFFFFFFFF
movl 0x131d8(%rip), %esi     # 0x20170
movl $0xffffffff, %edi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x3990
movl %eax, 0x131c6(%rip)     # 0x20170
movl $0xffffffff, -0x14(%rbp) # imm = 0xFFFFFFFF
movl 0x131b9(%rip), %esi     # 0x20170
movl $0xffffffff, %edi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x3990
movl %eax, 0x131a7(%rip)     # 0x20170
xorl %eax, %eax
cmpl $0x0, -0x8(%rbp)
movb %al, -0x15(%rbp)
jl 0xd0d1
movq 0x13371(%rip), %rax     # 0x20350
movslq -0x8(%rbp), %rcx
movzbl (%rax,%rcx), %ecx
andl $0x1, %ecx
xorl %eax, %eax
cmpl $0x0, %ecx
movb %al, -0x15(%rbp)
jne 0xd0d1
movq 0x13351(%rip), %rax     # 0x20350
movslq -0x8(%rbp), %rcx
movzbl (%rax,%rcx), %ecx
andl $0x8, %ecx
xorl %eax, %eax
cmpl $0x0, %ecx
movb %al, -0x15(%rbp)
jne 0xd0d1
movq 0x13321(%rip), %rcx     # 0x20340
movslq -0x8(%rbp), %rdx
xorl %eax, %eax
cmpl $0x0, (%rcx,%rdx,4)
movb %al, -0x15(%rbp)
jl 0xd0d1
movq 0x13317(%rip), %rax     # 0x20350
movq 0x13300(%rip), %rcx     # 0x20340
movslq -0x8(%rbp), %rdx
movslq (%rcx,%rdx,4), %rcx
movzbl (%rax,%rcx), %ecx
andl $0x1, %ecx
xorl %eax, %eax
cmpl $0x0, %ecx
movb %al, -0x15(%rbp)
jne 0xd0d1
movq 0x132f0(%rip), %rax     # 0x20350
movq 0x132d9(%rip), %rcx     # 0x20340
movslq -0x8(%rbp), %rdx
movslq (%rcx,%rdx,4), %rcx
movzbl (%rax,%rcx), %ecx
andl $0x8, %ecx
xorl %eax, %eax
cmpl $0x0, %ecx
movb %al, -0x15(%rbp)
jne 0xd0d1
movq 0x132b9(%rip), %rax     # 0x20340
movq 0x132b2(%rip), %rcx     # 0x20340
movslq -0x8(%rbp), %rdx
movslq (%rcx,%rdx,4), %rcx
movl (%rax,%rcx,4), %ecx
movb $0x1, %al
cmpl 0x1367b(%rip), %ecx     # 0x2071c
movb %al, -0x16(%rbp)
je 0xd0cb
movq 0x13293(%rip), %rax     # 0x20340
movq 0x1328c(%rip), %rcx     # 0x20340
movslq -0x8(%rbp), %rdx
movslq (%rcx,%rdx,4), %rcx
movl (%rax,%rcx,4), %eax
cmpl 0x1387b(%rip), %eax     # 0x20940
sete %al
movb %al, -0x16(%rbp)
movb -0x16(%rbp), %al
movb %al, -0x15(%rbp)
movb -0x15(%rbp), %al
testb $0x1, %al
jne 0xd0dd
jmp 0xd2b2
movq 0x1325c(%rip), %rax     # 0x20340
movq 0x13255(%rip), %rcx     # 0x20340
movslq -0x8(%rbp), %rdx
movslq (%rcx,%rdx,4), %rcx
movl (%rax,%rcx,4), %eax
cmpl 0x13620(%rip), %eax     # 0x2071c
jne 0xd1b4
movq 0x13237(%rip), %rax     # 0x20340
movslq -0x8(%rbp), %rcx
movl (%rax,%rcx,4), %eax
movl %eax, -0xc(%rbp)
movq 0x13226(%rip), %rax     # 0x20340
movq 0x13227(%rip), %rcx     # 0x20348
movslq -0xc(%rbp), %rdx
movslq (%rcx,%rdx,4), %rcx
movl (%rax,%rcx,4), %edi
movl -0x10(%rbp), %esi
xorl %edx, %edx
callq 0x3990
movl %eax, -0x10(%rbp)
movl -0x10(%rbp), %edx
movq 0x131fd(%rip), %rax     # 0x20340
movq 0x131fe(%rip), %rcx     # 0x20348
movslq 0x1301f(%rip), %rsi     # 0x20170
movslq (%rcx,%rsi,4), %rcx
movl %edx, (%rax,%rcx,4)
movq 0x131e1(%rip), %rax     # 0x20340
movq 0x131e2(%rip), %rcx     # 0x20348
movq 0x131db(%rip), %rdx     # 0x20348
movslq -0xc(%rbp), %rsi
movslq (%rdx,%rsi,4), %rdx
movslq (%rcx,%rdx,4), %rcx
movl (%rax,%rcx,4), %edi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x3990
movl %eax, -0xc(%rbp)
movl -0xc(%rbp), %edi
movl -0x14(%rbp), %esi
xorl %edx, %edx
callq 0x3990
movl %eax, -0x14(%rbp)
movl -0x14(%rbp), %edx
movq 0x1319b(%rip), %rax     # 0x20340
movslq 0x12fc4(%rip), %rcx     # 0x20170
movl %edx, (%rax,%rcx,4)
jmp 0xd29c
movq 0x13185(%rip), %rax     # 0x20340
movslq -0x8(%rbp), %rcx
movl (%rax,%rcx,4), %edi
callq 0xd380
movl %eax, -0xc(%rbp)
movl -0xc(%rbp), %edi
movl 0x12f9d(%rip), %esi     # 0x20170
xorl %edx, %edx
callq 0x3990
movl %eax, 0x12f90(%rip)     # 0x20170
movq 0x13159(%rip), %rax     # 0x20340
movq 0x1315a(%rip), %rcx     # 0x20348
movslq -0xc(%rbp), %rdx
movslq (%rcx,%rdx,4), %rcx
movl (%rax,%rcx,4), %edi
movl -0x10(%rbp), %esi
xorl %edx, %edx
callq 0x3990
movl %eax, -0x10(%rbp)
movl -0x10(%rbp), %edx
movq 0x13130(%rip), %rax     # 0x20340
movq 0x13131(%rip), %rcx     # 0x20348
movq 0x1312a(%rip), %rsi     # 0x20348
movslq 0x12f4b(%rip), %rdi     # 0x20170
movslq (%rsi,%rdi,4), %rsi
movslq (%rcx,%rsi,4), %rcx
movl %edx, (%rax,%rcx,4)
movq 0x13109(%rip), %rax     # 0x20340
movq 0x1310a(%rip), %rcx     # 0x20348
movq 0x13103(%rip), %rdx     # 0x20348
movslq -0xc(%rbp), %rsi
movslq (%rdx,%rsi,4), %rdx
movslq (%rcx,%rdx,4), %rcx
movl (%rax,%rcx,4), %edi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x3990
movl %eax, -0xc(%rbp)
movl -0xc(%rbp), %edi
movl -0x14(%rbp), %esi
xorl %edx, %edx
callq 0x3990
movl %eax, -0x14(%rbp)
movl -0x14(%rbp), %edx
movq 0x130c3(%rip), %rax     # 0x20340
movq 0x130c4(%rip), %rcx     # 0x20348
movslq 0x12ee5(%rip), %rsi     # 0x20170
movslq (%rcx,%rsi,4), %rcx
movl %edx, (%rax,%rcx,4)
movl $0x1, %edi
callq 0x3d00
movq 0x130a5(%rip), %rax     # 0x20348
movslq -0x8(%rbp), %rcx
movl (%rax,%rcx,4), %eax
movl %eax, -0x8(%rbp)
jmp 0xcfc9
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpl -0x10(%rbp), %eax
jne 0xd2d1
movl $0x2, %edi
callq 0x3d00
movl -0x8(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0xd36d
movl -0x14(%rbp), %edi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x4e80
movq 0x1305b(%rip), %rcx     # 0x20340
movslq 0x12e84(%rip), %rdx     # 0x20170
movl %eax, (%rcx,%rdx,4)
movl %eax, -0x14(%rbp)
movl -0x10(%rbp), %edi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x4e80
movq 0x1303a(%rip), %rcx     # 0x20340
movq 0x1303b(%rip), %rdx     # 0x20348
movslq 0x12e5c(%rip), %rsi     # 0x20170
movslq (%rdx,%rsi,4), %rdx
movl %eax, (%rcx,%rdx,4)
movl %eax, -0x10(%rbp)
movl -0x10(%rbp), %edi
movl -0x14(%rbp), %esi
callq 0xcea0
movl %eax, %edi
movl -0x8(%rbp), %esi
xorl %edx, %edx
callq 0x3990
movl %eax, -0xc(%rbp)
movl 0x13606(%rip), %edi     # 0x20944
movl -0xc(%rbp), %esi
xorl %edx, %edx
callq 0x3990
movl %eax, -0xc(%rbp)
movl -0xc(%rbp), %edi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x3990
movl %eax, -0xc(%rbp)
movl $0x2, %edi
callq 0x3d00
movl -0xc(%rbp), %eax
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)