// File: /workspace/github_c_makefile_star2_O0/nimble-code[P]Modex/Src/xtract.c
// Function: trav_lut
void
trav_lut(FILE *lf, char *zz)
{	Cache *c, *x;
	char ubuf[64];
	int cntr, printline;

	cntr = 0;
	x = comms;

	if (FreshLut && nblanks == 0)
	{	fprintf(lf, "\n");
		nblanks++;
	}
	for (c = cache; c; c = c->nxt)
	{	if (c->level > 1)	/* 2 and up not visible */
			continue;

		while (x && cntr >= (int) x->hit)
		{	printline = 0;
			if (strlen(x->s) > 0)
				printline = 1;
			else if (nblanks++ == 0)
				printline = 1;

			if (printline)
				fprintf(lf, "%s\n", x->s); /* user-defined comments */

			x = x->nxt;
			cntr++;
		}
		if (c->printed == 0
		&& (!zz
		|| strlen(zz) == 0
		|| strncmp(c->s, zz, strlen(zz)) == 0))
		{	c->printed = 1;

			if (!c->udef
			&& !strncmp(c->s, "D: ", 3)
			&&  use_c_code
			&& !(Verbose&2))
				continue;	/* don't print declarations */

			if (!c->hit)
			{	if (!(Verbose&2))
					continue;
				fprintf(lf, "## ");
			}
			handle_special(lf, c->s, "\t");
			add_padding(lf, c->s);
			if (!c->udef)
				sprintf(ubuf, "	/* default-rule */\n");
			else
				sprintf(ubuf, "\n");
			handle_special(lf, c->t, ubuf);
			nblanks = 0;
		}
		cntr++;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x80, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl $0x0, -0x64(%rbp)
movq 0x39fcf(%rip), %rax     # 0x4dc90
movq %rax, -0x20(%rbp)
cmpl $0x0, 0x39fb8(%rip)     # 0x4dc84
je 0x13cf8
cmpl $0x0, 0x39fc3(%rip)     # 0x4dc98
jne 0x13cf8
movq -0x8(%rbp), %rdi
leaq 0x21d75(%rip), %rsi     # 0x35a57
movb $0x0, %al
callq 0x4190
movl 0x39fa9(%rip), %eax     # 0x4dc98
addl $0x1, %eax
movl %eax, 0x39fa0(%rip)     # 0x4dc98
movq 0x39f89(%rip), %rax     # 0x4dc88
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
je 0x13f2d
movq -0x18(%rbp), %rax
cmpl $0x1, 0x1c(%rax)
jle 0x13d1d
jmp 0x13f1c
jmp 0x13d1f
xorl %eax, %eax
cmpq $0x0, -0x20(%rbp)
movb %al, -0x69(%rbp)
je 0x13d3b
movl -0x64(%rbp), %eax
movq -0x20(%rbp), %rcx
cmpl 0x14(%rcx), %eax
setge %al
movb %al, -0x69(%rbp)
movb -0x69(%rbp), %al
testb $0x1, %al
jne 0x13d44
jmp 0x13dbe
movl $0x0, -0x68(%rbp)
movq -0x20(%rbp), %rax
movq (%rax), %rdi
callq 0x40f0
cmpq $0x0, %rax
jbe 0x13d66
movl $0x1, -0x68(%rbp)
jmp 0x13d85
movl 0x39f2c(%rip), %eax     # 0x4dc98
movl %eax, %ecx
addl $0x1, %ecx
movl %ecx, 0x39f21(%rip)     # 0x4dc98
cmpl $0x0, %eax
jne 0x13d83
movl $0x1, -0x68(%rbp)
jmp 0x13d85
cmpl $0x0, -0x68(%rbp)
je 0x13da4
movq -0x8(%rbp), %rdi
movq -0x20(%rbp), %rax
movq (%rax), %rdx
leaq 0x218cc(%rip), %rsi     # 0x35669
movb $0x0, %al
callq 0x4190
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x20(%rbp)
movl -0x64(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x64(%rbp)
jmp 0x13d1f
movq -0x18(%rbp), %rax
cmpl $0x0, 0x18(%rax)
jne 0x13f13
cmpq $0x0, -0x10(%rbp)
je 0x13e17
movq -0x10(%rbp), %rdi
callq 0x40f0
cmpq $0x0, %rax
je 0x13e17
movq -0x18(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x80(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x78(%rbp)
movq -0x10(%rbp), %rdi
callq 0x40f0
movq -0x80(%rbp), %rdi
movq -0x78(%rbp), %rsi
movq %rax, %rdx
callq 0x4090
cmpl $0x0, %eax
jne 0x13f13
movq -0x18(%rbp), %rax
movl $0x1, 0x18(%rax)
movq -0x18(%rbp), %rax
cmpl $0x0, 0x10(%rax)
jne 0x13e6b
movq -0x18(%rbp), %rax
movq (%rax), %rdi
leaq 0x2366c(%rip), %rsi     # 0x374a6
movl $0x3, %edx
callq 0x4090
cmpl $0x0, %eax
jne 0x13e6b
leaq 0x31374(%rip), %rax     # 0x451c4
cmpl $0x0, (%rax)
je 0x13e6b
leaq 0x33df0(%rip), %rax     # 0x47c4c
movl (%rax), %eax
andl $0x2, %eax
cmpl $0x0, %eax
jne 0x13e6b
jmp 0x13f1c
movq -0x18(%rbp), %rax
cmpl $0x0, 0x14(%rax)
jne 0x13e9d
leaq 0x33dd0(%rip), %rax     # 0x47c4c
movl (%rax), %eax
andl $0x2, %eax
cmpl $0x0, %eax
jne 0x13e8b
jmp 0x13f1c
movq -0x8(%rbp), %rdi
leaq 0x21f3e(%rip), %rsi     # 0x35dd4
movb $0x0, %al
callq 0x4190
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movq (%rax), %rsi
leaq 0x2360e(%rip), %rdx     # 0x374bd
callq 0xcbb0
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movq (%rax), %rsi
callq 0x13c00
movq -0x18(%rbp), %rax
cmpl $0x0, 0x10(%rax)
jne 0x13ee2
leaq -0x60(%rbp), %rdi
leaq 0x21eff(%rip), %rsi     # 0x35dd8
movb $0x0, %al
callq 0x4260
jmp 0x13ef4
leaq -0x60(%rbp), %rdi
leaq 0x21b6a(%rip), %rsi     # 0x35a57
movb $0x0, %al
callq 0x4260
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movq 0x8(%rax), %rsi
leaq -0x60(%rbp), %rdx
callq 0xcbb0
movl $0x0, 0x39d85(%rip)     # 0x4dc98
movl -0x64(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x64(%rbp)
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x18(%rbp)
jmp 0x13d03
addq $0x80, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)