// File: /workspace/github_c_makefile_star2_O2/baskerville[P]bspwm/src/subscribe.c
// Function: print_report
int print_report(FILE *stream)
{
	fprintf(stream, "%s", status_prefix);
	for (monitor_t *m = mon_head; m != NULL; m = m->next) {
		fprintf(stream, "%c%s", (mon == m ? 'M' : 'm'), m->name);
		for (desktop_t *d = m->desk_head; d != NULL; d = d->next) {
			char c = (is_urgent(d) ? 'u' : (d->root == NULL ? 'f' : 'o'));
			if (m->desk == d) {
				c = toupper(c);
			}
			fprintf(stream, ":%c%s", c, d->name);
		}
		if (m->desk != NULL) {
			fprintf(stream, ":L%c", LAYOUT_CHR(m->desk->layout));
			if (m->desk->focus != NULL) {
				node_t *n = m->desk->focus;
				if (n->client != NULL) {
					fprintf(stream, ":T%c", STATE_CHR(n->client->state));
				} else {
					fprintf(stream, ":T@");
				}
				int i = 0;
				char flags[5];
				if (n->sticky) {
					flags[i++] = 'S';
				}
				if (n->private) {
					flags[i++] = 'P';
				}
				if (n->locked) {
					flags[i++] = 'L';
				}
				if (n->marked) {
					flags[i++] = 'M';
				}
				flags[i] = '\0';
				fprintf(stream, ":G%s", flags);
			}
		}
		if (m != mon_tail) {
			fprintf(stream, "%s", ":");
		}
	}
	fprintf(stream, "%s", "\n");
	return fflush(stream);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
leaq 0xba0d(%rip), %rdi      # 0x288a0
movq %rbx, %rsi
callq 0x4670
leaq 0xb866(%rip), %r14      # 0x28708
leaq 0x371d(%rip), %r15      # 0x205c6
leaq 0x3715(%rip), %rbp      # 0x205c5
movq (%r14), %r14
testq %r14, %r14
je 0x1d057
xorl %edx, %edx
leaq 0xb84b(%rip), %rax      # 0x28710
cmpq %r14, (%rax)
setne %dl
shll $0x5, %edx
orl $0x4d, %edx
movq %rbx, %rdi
movq %r15, %rsi
movq %r14, %rcx
xorl %eax, %eax
callq 0x4a30
leaq 0x60(%r14), %r12
movq (%r12), %r12
testq %r12, %r12
je 0x1cf40
movq %r12, %rdi
callq 0x8634
movb $0x75, %r13b
testb %al, %al
jne 0x1cf10
xorl %eax, %eax
cmpq $0x0, 0x30(%r12)
setne %al
leal (%rax,%rax,8), %r13d
addl $0x66, %r13d
cmpq %r12, 0x58(%r14)
jne 0x1cf26
callq 0x4400
movq (%rax), %rax
movzbl %r13b, %ecx
movb (%rax,%rcx,4), %r13b
movsbl %r13b, %edx
movq %rbx, %rdi
movq %rbp, %rsi
movq %r12, %rcx
xorl %eax, %eax
callq 0x4a30
addq $0x48, %r12
jmp 0x1cee5
movq 0x58(%r14), %rax
testq %rax, %rax
je 0x1d033
cmpl $0x0, 0x24(%rax)
pushq $0x4d
popq %rdx
pushq $0x54
popq %rax
cmovel %eax, %edx
movq %rbx, %rdi
leaq 0x3667(%rip), %rsi      # 0x205cb
xorl %eax, %eax
callq 0x4a30
movq 0x58(%r14), %rax
movq 0x38(%rax), %r12
testq %r12, %r12
je 0x1d033
movq 0x48(%r12), %rax
testq %rax, %rax
je 0x1cf9d
movl 0x308(%rax), %eax
pushq $0x54
popq %rdx
testl %eax, %eax
je 0x1cfc0
cmpl $0x2, %eax
jne 0x1cfb4
pushq $0x46
popq %rdx
jmp 0x1cfc0
leaq 0x3631(%rip), %rdi      # 0x205d5
pushq $0x3
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x49e0
jmp 0x1cfd1
cmpl $0x3, %eax
pushq $0x50
popq %rdx
pushq $0x3d
popq %rax
cmovel %eax, %edx
movq %rbx, %rdi
leaq 0x3606(%rip), %rsi      # 0x205d0
xorl %eax, %eax
callq 0x4a30
xorl %eax, %eax
cmpb $0x1, 0x26(%r12)
jne 0x1cfe3
movb $0x53, 0x3(%rsp)
pushq $0x1
popq %rax
cmpb $0x1, 0x27(%r12)
jne 0x1cff4
movl %eax, %ecx
incl %eax
movb $0x50, 0x3(%rsp,%rcx)
cmpb $0x1, 0x28(%r12)
jne 0x1d005
movl %eax, %ecx
incl %eax
movb $0x4c, 0x3(%rsp,%rcx)
cmpb $0x1, 0x29(%r12)
jne 0x1d016
movl %eax, %ecx
incl %eax
movb $0x4d, 0x3(%rsp,%rcx)
movl %eax, %eax
movb $0x0, 0x3(%rsp,%rax)
movq %rbx, %rdi
leaq 0x35b2(%rip), %rsi      # 0x205d9
leaq 0x3(%rsp), %rdx
xorl %eax, %eax
callq 0x4a30
leaq 0xb6c6(%rip), %rax      # 0x28700
cmpq (%rax), %r14
je 0x1d04e
leaq 0x2f50(%rip), %rdi      # 0x1ff96
movq %rbx, %rsi
callq 0x4670
addq $0x78, %r14
jmp 0x1ceb0
leaq 0x34f9(%rip), %rdi      # 0x20557
movq %rbx, %rsi
callq 0x4670
movq %rbx, %rdi
callq 0x4af0
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq