// File: /workspace/github_c_makefile_star2_O0/mmayer[P]pcal/src/writefil.c
// Function: print_word
char *print_word (char *p)
{
   char c, buf[STRSIZ];
   int first = TRUE;   /* flag to avoid printing null strings */

   if (*p == '\0' || *(p += strspn(p, WHITESPACE)) == '\0') return NULL;
   
   while ((c = *p) && !isspace(c & CHAR_MSK)) {
      if (c == '%' && p[1] != '\0') {
         p = expand_fmt(buf, p + 1);
         if (*buf && first) {
            printf("(");
            first = FALSE;
         }
         PUTSTR(isalnum, buf, stdout);
      } 
      else {
         if (first) printf("(");
         first = FALSE;
         PUTCHAR(isalnum, c, stdout);
         p++;
      }
   }
   
   if (!first) printf(")");
   
   return p;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x110, %rsp            # imm = 0x110
movq %rdi, -0x10(%rbp)
movl $0x1, -0xe4(%rbp)
movq -0x10(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x0, %eax
je 0x162bf
movq -0x10(%rbp), %rdi
leaq 0xe3b7(%rip), %rsi      # 0x24657
callq 0x5160
movq %rax, %rcx
movq -0x10(%rbp), %rax
movq %rax, %rdx
addq %rcx, %rdx
movq %rdx, -0x10(%rbp)
movsbl (%rax,%rcx), %eax
cmpl $0x0, %eax
jne 0x162cc
movq $0x0, -0x8(%rbp)
jmp 0x16520
jmp 0x162ce
movq -0x10(%rbp), %rax
movb (%rax), %al
movb %al, -0x11(%rbp)
movsbl %al, %ecx
xorl %eax, %eax
cmpl $0x0, %ecx
movb %al, -0xf1(%rbp)
je 0x16313
callq 0x52e0
movq (%rax), %rax
movsbl -0x11(%rbp), %ecx
andl $0xff, %ecx
movslq %ecx, %rcx
movzwl (%rax,%rcx,2), %eax
andl $0x2000, %eax           # imm = 0x2000
cmpl $0x0, %eax
setne %al
xorb $-0x1, %al
movb %al, -0xf1(%rbp)
movb -0xf1(%rbp), %al
testb $0x1, %al
jne 0x16322
jmp 0x16501
movsbl -0x11(%rbp), %eax
cmpl $0x25, %eax
jne 0x16452
movq -0x10(%rbp), %rax
movsbl 0x1(%rax), %eax
cmpl $0x0, %eax
je 0x16452
leaq -0xe0(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x1, %rsi
callq 0x188f0
movq %rax, -0x10(%rbp)
movsbl -0xe0(%rbp), %eax
cmpl $0x0, %eax
je 0x16385
cmpl $0x0, -0xe4(%rbp)
je 0x16385
leaq 0x1443b(%rip), %rdi     # 0x2a7af
movb $0x0, %al
callq 0x5110
movl $0x0, -0xe4(%rbp)
jmp 0x16387
leaq -0xe0(%rbp), %rax
movq %rax, -0xf0(%rbp)
movq -0xf0(%rbp), %rax
cmpb $0x0, (%rax)
je 0x1644b
movq 0x17c2c(%rip), %rax     # 0x2dfd8
movq (%rax), %rax
movq %rax, -0x100(%rbp)
movq -0xf0(%rbp), %rax
movsbl (%rax), %ecx
movb $0x1, %al
cmpl $0x20, %ecx
movb %al, -0xf2(%rbp)
je 0x163fb
callq 0x52e0
movq (%rax), %rax
movq -0xf0(%rbp), %rcx
movsbl (%rcx), %ecx
andl $0xff, %ecx
movslq %ecx, %rcx
movzwl (%rax,%rcx,2), %eax
andl $0x8, %eax
cmpl $0x0, %eax
setne %al
movb %al, -0xf2(%rbp)
movq -0x100(%rbp), %rdi
movb -0xf2(%rbp), %cl
leaq 0xebbd(%rip), %rsi      # 0x24fcc
leaq 0x14200(%rip), %rax     # 0x2a616
testb $0x1, %cl
cmovneq %rax, %rsi
movq -0xf0(%rbp), %rax
movsbl (%rax), %edx
andl $0xff, %edx
movb $0x0, %al
callq 0x51b0
movq -0xf0(%rbp), %rax
addq $0x1, %rax
movq %rax, -0xf0(%rbp)
jmp 0x16395
jmp 0x1644d
jmp 0x164fc
cmpl $0x0, -0xe4(%rbp)
je 0x16469
leaq 0x1434d(%rip), %rdi     # 0x2a7af
movb $0x0, %al
callq 0x5110
movl $0x0, -0xe4(%rbp)
movq 0x17b5e(%rip), %rax     # 0x2dfd8
movq (%rax), %rax
movq %rax, -0x110(%rbp)
movsbl -0x11(%rbp), %ecx
movb $0x1, %al
cmpl $0x20, %ecx
movb %al, -0x101(%rbp)
je 0x164bd
callq 0x52e0
movq (%rax), %rax
movsbl -0x11(%rbp), %ecx
andl $0xff, %ecx
movslq %ecx, %rcx
movzwl (%rax,%rcx,2), %eax
andl $0x8, %eax
cmpl $0x0, %eax
setne %al
movb %al, -0x101(%rbp)
movq -0x110(%rbp), %rdi
movb -0x101(%rbp), %cl
leaq 0xeafb(%rip), %rsi      # 0x24fcc
leaq 0x1413e(%rip), %rax     # 0x2a616
testb $0x1, %cl
cmovneq %rax, %rsi
movsbl -0x11(%rbp), %edx
andl $0xff, %edx
movb $0x0, %al
callq 0x51b0
movq -0x10(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x10(%rbp)
jmp 0x162ce
cmpl $0x0, -0xe4(%rbp)
jne 0x16518
leaq 0x5412(%rip), %rdi      # 0x1b923
movb $0x0, %al
callq 0x5110
movq -0x10(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x110, %rsp            # imm = 0x110
popq %rbp
retq
nopl (%rax)