// File: /workspace/github_c_makefile_star2_O0/baskerville[P]bspwm/src/messages.c
// Function: cmd_desktop
void cmd_desktop(char **args, int num, FILE *rsp)
{
	if (num < 1) {
		fail(rsp, "desktop: Missing arguments.\n");
		return;
	}

	coordinates_t ref = {mon, mon->desk, NULL};
	coordinates_t trg = ref;

	if ((*args)[0] != OPT_CHR) {
		int ret;
		if ((ret = desktop_from_desc(*args, &ref, &trg)) == SELECTOR_OK) {
			num--, args++;
		} else {
			handle_failure(ret, "desktop", *args, rsp);
			return;
		}
	}

	if (num < 1) {
		fail(rsp, "desktop: Missing commands.\n");
		return;
	}

	bool changed = false;

	while (num > 0) {
		if (streq("-f", *args) || streq("--focus", *args)) {
			coordinates_t dst = trg;
			if (num > 1 && *(args + 1)[0] != OPT_CHR) {
				num--, args++;
				int ret;
				if ((ret = desktop_from_desc(*args, &ref, &dst)) != SELECTOR_OK) {
					handle_failure(ret, "desktop -f", *args, rsp);
					break;
				}
			}
			focus_node(dst.monitor, dst.desktop, NULL);
		} else if (streq("-a", *args) || streq("--activate", *args)) {
			coordinates_t dst = trg;
			if (num > 1 && *(args + 1)[0] != OPT_CHR) {
				num--, args++;
				int ret;
				if ((ret = desktop_from_desc(*args, &ref, &dst)) != SELECTOR_OK) {
					handle_failure(ret, "desktop -a", *args, rsp);
					break;
				}
			}
			if (activate_desktop(dst.monitor, dst.desktop)) {
				activate_node(dst.monitor, dst.desktop, NULL);
			} else {
				fail(rsp, "");
				break;
			}
		} else if (streq("-m", *args) || streq("--to-monitor", *args)) {
			num--, args++;
			if (num < 1) {
				fail(rsp, "desktop %s: Not enough arguments.\n", *(args - 1));
				break;
			}
			if (trg.monitor->desk_head == trg.monitor->desk_tail) {
				fail(rsp, "");
				break;
			}
			coordinates_t dst;
			int ret;
			if ((ret = monitor_from_desc(*args, &ref, &dst)) == SELECTOR_OK) {
				bool follow = false;
				if (num > 1 && streq("--follow", *(args+1))) {
					follow = true;
					num--, args++;
				}
				if (transfer_desktop(trg.monitor, dst.monitor, trg.desktop, follow)) {
					trg.monitor = dst.monitor;
				} else {
					fail(rsp, "");
					break;
				}
			} else {
				handle_failure(ret, "desktop -m", *args, rsp);
				break;
			}
		} else if (streq("-s", *args) || streq("--swap", *args)) {
			num--, args++;
			if (num < 1) {
				fail(rsp, "desktop %s: Not enough arguments.\n", *(args - 1));
				break;
			}
			coordinates_t dst;
			int ret;
			if ((ret = desktop_from_desc(*args, &ref, &dst)) == SELECTOR_OK) {
				bool follow = false;
				if (num > 1 && streq("--follow", *(args+1))) {
					follow = true;
					num--, args++;
				}
				if (swap_desktops(trg.monitor, trg.desktop, dst.monitor, dst.desktop, follow)) {
					trg.monitor = dst.monitor;
				} else {
					fail(rsp, "");
					break;
				}
			} else {
				handle_failure(ret, "desktop -s", *args, rsp);
				break;
			}
		} else if (streq("-b", *args) || streq("--bubble", *args)) {
			num--, args++;
			if (num < 1) {
				fail(rsp, "desktop %s: Not enough arguments.\n", *(args - 1));
				break;
			}
			cycle_dir_t cyc;
			if (parse_cycle_direction(*args, &cyc)) {
				desktop_t *d = trg.desktop;
				if (cyc == CYCLE_PREV) {
					if (d->prev == NULL) {
						while (d->next != NULL) {
							swap_desktops(trg.monitor, d, trg.monitor, d->next, false);
						}
					} else {
						swap_desktops(trg.monitor, d, trg.monitor, d->prev, false);
					}
				} else {
					if (d->next == NULL) {
						while (d->prev != NULL) {
							swap_desktops(trg.monitor, d, trg.monitor, d->prev, false);
						}
					} else {
						swap_desktops(trg.monitor, d, trg.monitor, d->next, false);
					}
				}
			} else {
				fail(rsp, "desktop %s: Invalid argument: '%s'.\n", *(args - 1), *args);
				break;
			}
		} else if (streq("-l", *args) || streq("--layout", *args)) {
			num--, args++;
			if (num < 1) {
				fail(rsp, "desktop %s: Not enough arguments.\n", *(args - 1));
				break;
			}
			bool ret;
			layout_t lyt;
			cycle_dir_t cyc;
			if (parse_cycle_direction(*args, &cyc)) {
				ret = set_layout(trg.monitor, trg.desktop, (trg.desktop->user_layout + 1) % 2, true);
			} else if (parse_layout(*args, &lyt)) {
				ret = set_layout(trg.monitor, trg.desktop, lyt, true);
			} else {
				fail(rsp, "desktop %s: Invalid argument: '%s'.\n", *(args - 1), *args);
				break;
			}
			if (!ret) {
				fail(rsp, "");
				break;
			}
		} else if (streq("-n", *args) || streq("--rename", *args)) {
			num--, args++;
			if (num < 1) {
				fail(rsp, "desktop %s: Not enough arguments.\n", *(args - 1));
				break;
			}
			rename_desktop(trg.monitor, trg.desktop, *args);
		} else if (streq("-r", *args) || streq("--remove", *args)) {
			if (num > 1) {
				fail(rsp, "desktop %s: Trailing commands.\n", *args);
				break;
			}
			if (trg.monitor->desk_head != trg.monitor->desk_tail) {
				desktop_t *fallback = trg.desktop->prev == NULL ?
				                      trg.desktop->next :
				                      trg.desktop->prev;
				merge_desktops(trg.monitor, trg.desktop, trg.monitor, fallback);
				remove_desktop(trg.monitor, trg.desktop);
				return;
			} else {
				fail(rsp, "");
				break;
			}
		} else {
			fail(rsp, "desktop: Unknown command: '%s'.\n", *args);
			break;
		}
		num--, args++;
	}

	if (changed) {
		arrange(trg.monitor, trg.desktop);
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x100, %rsp            # imm = 0x100
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movq %rdx, -0x18(%rbp)
cmpl $0x1, -0xc(%rbp)
jge 0x1afc3
movq -0x18(%rbp), %rdi
leaq 0x13169(%rip), %rsi     # 0x2e120
movb $0x0, %al
callq 0x18d60
jmp 0x1b9ac
leaq 0x1a736(%rip), %rax     # 0x35700
movq (%rax), %rax
movq %rax, -0x30(%rbp)
leaq 0x1a728(%rip), %rax     # 0x35700
movq (%rax), %rax
movq 0x58(%rax), %rax
movq %rax, -0x28(%rbp)
movq $0x0, -0x20(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movsbl (%rax), %eax
cmpl $0x2d, %eax
je 0x1b066
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq -0x30(%rbp), %rsi
leaq -0x48(%rbp), %rdx
callq 0x25140
movl %eax, -0x4c(%rbp)
cmpl $0x0, %eax
jne 0x1b045
movl -0xc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0xc(%rbp)
movq -0x8(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x8(%rbp)
jmp 0x1b064
movl -0x4c(%rbp), %edi
movq -0x8(%rbp), %rax
movq (%rax), %rdx
movq -0x18(%rbp), %rcx
leaq 0x13365(%rip), %rsi     # 0x2e3bf
callq 0x1df60
jmp 0x1b9ac
jmp 0x1b066
cmpl $0x1, -0xc(%rbp)
jge 0x1b083
movq -0x18(%rbp), %rdi
leaq 0x130c6(%rip), %rsi     # 0x2e13d
movb $0x0, %al
callq 0x18d60
jmp 0x1b9ac
movb $0x0, -0x4d(%rbp)
cmpl $0x0, -0xc(%rbp)
jle 0x1b999
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x12dd1(%rip), %rdi     # 0x2de70
callq 0x4800
cmpl $0x0, %eax
je 0x1b0c5
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x12dac(%rip), %rdi     # 0x2de63
callq 0x4800
cmpl $0x0, %eax
jne 0x1b15b
movq -0x48(%rbp), %rax
movq %rax, -0x68(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x58(%rbp)
cmpl $0x1, -0xc(%rbp)
jle 0x1b145
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rax
movsbl (%rax), %eax
cmpl $0x2d, %eax
je 0x1b145
movl -0xc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0xc(%rbp)
movq -0x8(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq -0x30(%rbp), %rsi
leaq -0x68(%rbp), %rdx
callq 0x25140
movl %eax, -0x6c(%rbp)
cmpl $0x0, %eax
je 0x1b143
movl -0x6c(%rbp), %edi
movq -0x8(%rbp), %rax
movq (%rax), %rdx
movq -0x18(%rbp), %rcx
leaq 0x13020(%rip), %rsi     # 0x2e159
callq 0x1df60
jmp 0x1b999
jmp 0x1b145
movq -0x68(%rbp), %rdi
movq -0x60(%rbp), %rsi
xorl %eax, %eax
movl %eax, %edx
callq 0xd720
jmp 0x1b97f
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x12d1a(%rip), %rdi     # 0x2de83
callq 0x4800
cmpl $0x0, %eax
je 0x1b18f
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x12cf2(%rip), %rdi     # 0x2de73
callq 0x4800
cmpl $0x0, %eax
jne 0x1b263
movq -0x48(%rbp), %rax
movq %rax, -0x88(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x80(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x78(%rbp)
cmpl $0x1, -0xc(%rbp)
jle 0x1b21b
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rax
movsbl (%rax), %eax
cmpl $0x2d, %eax
je 0x1b21b
movl -0xc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0xc(%rbp)
movq -0x8(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq -0x30(%rbp), %rsi
leaq -0x88(%rbp), %rdx
callq 0x25140
movl %eax, -0x8c(%rbp)
cmpl $0x0, %eax
je 0x1b219
movl -0x8c(%rbp), %edi
movq -0x8(%rbp), %rax
movq (%rax), %rdx
movq -0x18(%rbp), %rcx
leaq 0x12f55(%rip), %rsi     # 0x2e164
callq 0x1df60
jmp 0x1b999
jmp 0x1b21b
movq -0x88(%rbp), %rdi
movq -0x80(%rbp), %rsi
callq 0x99e0
testb $0x1, %al
jne 0x1b231
jmp 0x1b247
movq -0x88(%rbp), %rdi
movq -0x80(%rbp), %rsi
xorl %eax, %eax
movl %eax, %edx
callq 0xccb0
jmp 0x1b25e
movq -0x18(%rbp), %rdi
leaq 0x1396e(%rip), %rsi     # 0x2ebc0
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
jmp 0x1b97d
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x12c65(%rip), %rdi     # 0x2ded6
callq 0x4800
cmpl $0x0, %eax
je 0x1b297
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x12c3b(%rip), %rdi     # 0x2dec4
callq 0x4800
cmpl $0x0, %eax
jne 0x1b3d4
movl -0xc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0xc(%rbp)
movq -0x8(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x8(%rbp)
cmpl $0x1, -0xc(%rbp)
jge 0x1b2d1
movq -0x18(%rbp), %rdi
movq -0x8(%rbp), %rax
movq -0x8(%rax), %rdx
leaq 0x12eaa(%rip), %rsi     # 0x2e16f
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
movq -0x48(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x48(%rbp), %rcx
cmpq 0x68(%rcx), %rax
jne 0x1b2fa
movq -0x18(%rbp), %rdi
leaq 0x138d2(%rip), %rsi     # 0x2ebc0
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq -0x30(%rbp), %rsi
leaq -0xa8(%rbp), %rdx
callq 0x24c20
movl %eax, -0xac(%rbp)
cmpl $0x0, %eax
jne 0x1b3ad
movb $0x0, -0xad(%rbp)
cmpl $0x1, -0xc(%rbp)
jle 0x1b362
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rsi
leaq 0x12b77(%rip), %rdi     # 0x2deb3
callq 0x4800
cmpl $0x0, %eax
jne 0x1b362
movb $0x1, -0xad(%rbp)
movl -0xc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0xc(%rbp)
movq -0x8(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x8(%rbp)
movq -0x48(%rbp), %rdi
movq -0xa8(%rbp), %rsi
movq -0x40(%rbp), %rdx
movb -0xad(%rbp), %al
andb $0x1, %al
movzbl %al, %ecx
callq 0xa020
testb $0x1, %al
jne 0x1b387
jmp 0x1b394
movq -0xa8(%rbp), %rax
movq %rax, -0x48(%rbp)
jmp 0x1b3ab
movq -0x18(%rbp), %rdi
leaq 0x13821(%rip), %rsi     # 0x2ebc0
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
jmp 0x1b3cf
movl -0xac(%rbp), %edi
movq -0x8(%rbp), %rax
movq (%rax), %rdx
movq -0x18(%rbp), %rcx
leaq 0x12dcd(%rip), %rsi     # 0x2e192
callq 0x1df60
jmp 0x1b999
jmp 0x1b97b
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x12b15(%rip), %rdi     # 0x2def7
callq 0x4800
cmpl $0x0, %eax
je 0x1b408
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x12af1(%rip), %rdi     # 0x2deeb
callq 0x4800
cmpl $0x0, %eax
jne 0x1b524
movl -0xc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0xc(%rbp)
movq -0x8(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x8(%rbp)
cmpl $0x1, -0xc(%rbp)
jge 0x1b442
movq -0x18(%rbp), %rdi
movq -0x8(%rbp), %rax
movq -0x8(%rax), %rdx
leaq 0x12d39(%rip), %rsi     # 0x2e16f
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq -0x30(%rbp), %rsi
leaq -0xc8(%rbp), %rdx
callq 0x25140
movl %eax, -0xcc(%rbp)
cmpl $0x0, %eax
jne 0x1b4fd
movb $0x0, -0xcd(%rbp)
cmpl $0x1, -0xc(%rbp)
jle 0x1b4aa
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rsi
leaq 0x12a2f(%rip), %rdi     # 0x2deb3
callq 0x4800
cmpl $0x0, %eax
jne 0x1b4aa
movb $0x1, -0xcd(%rbp)
movl -0xc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0xc(%rbp)
movq -0x8(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x8(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
movq -0xc8(%rbp), %rdx
movq -0xc0(%rbp), %rcx
movb -0xcd(%rbp), %al
andb $0x1, %al
movzbl %al, %r8d
callq 0xa890
testb $0x1, %al
jne 0x1b4d7
jmp 0x1b4e4
movq -0xc8(%rbp), %rax
movq %rax, -0x48(%rbp)
jmp 0x1b4fb
movq -0x18(%rbp), %rdi
leaq 0x136d1(%rip), %rsi     # 0x2ebc0
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
jmp 0x1b51f
movl -0xcc(%rbp), %edi
movq -0x8(%rbp), %rax
movq (%rax), %rdx
movq -0x18(%rbp), %rcx
leaq 0x12c88(%rip), %rsi     # 0x2e19d
callq 0x1df60
jmp 0x1b999
jmp 0x1b979
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x12c76(%rip), %rdi     # 0x2e1a8
callq 0x4800
cmpl $0x0, %eax
je 0x1b558
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x12c61(%rip), %rdi     # 0x2e1ab
callq 0x4800
cmpl $0x0, %eax
jne 0x1b6bf
movl -0xc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0xc(%rbp)
movq -0x8(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x8(%rbp)
cmpl $0x1, -0xc(%rbp)
jge 0x1b592
movq -0x18(%rbp), %rdi
movq -0x8(%rbp), %rax
movq -0x8(%rax), %rdx
leaq 0x12be9(%rip), %rsi     # 0x2e16f
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq -0xd4(%rbp), %rsi
callq 0x20cb0
testb $0x1, %al
jne 0x1b5ae
jmp 0x1b694
movq -0x40(%rbp), %rax
movq %rax, -0xe0(%rbp)
cmpl $0x1, -0xd4(%rbp)
jne 0x1b62a
movq -0xe0(%rbp), %rax
cmpq $0x0, 0x40(%rax)
jne 0x1b606
jmp 0x1b5d2
movq -0xe0(%rbp), %rax
cmpq $0x0, 0x48(%rax)
je 0x1b604
movq -0x48(%rbp), %rdi
movq -0xe0(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq -0xe0(%rbp), %rax
movq 0x48(%rax), %rcx
xorl %r8d, %r8d
callq 0xa890
jmp 0x1b5d2
jmp 0x1b628
movq -0x48(%rbp), %rdi
movq -0xe0(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq -0xe0(%rbp), %rax
movq 0x40(%rax), %rcx
xorl %r8d, %r8d
callq 0xa890
jmp 0x1b692
movq -0xe0(%rbp), %rax
cmpq $0x0, 0x48(%rax)
jne 0x1b66e
jmp 0x1b63a
movq -0xe0(%rbp), %rax
cmpq $0x0, 0x40(%rax)
je 0x1b66c
movq -0x48(%rbp), %rdi
movq -0xe0(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq -0xe0(%rbp), %rax
movq 0x40(%rax), %rcx
xorl %r8d, %r8d
callq 0xa890
jmp 0x1b63a
jmp 0x1b690
movq -0x48(%rbp), %rdi
movq -0xe0(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq -0xe0(%rbp), %rax
movq 0x48(%rax), %rcx
xorl %r8d, %r8d
callq 0xa890
jmp 0x1b692
jmp 0x1b6ba
movq -0x18(%rbp), %rdi
movq -0x8(%rbp), %rax
movq -0x8(%rax), %rdx
movq -0x8(%rbp), %rax
movq (%rax), %rcx
leaq 0x12b06(%rip), %rsi     # 0x2e1b4
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
jmp 0x1b977
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x1282d(%rip), %rdi     # 0x2defa
callq 0x4800
cmpl $0x0, %eax
je 0x1b6f3
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x12af4(%rip), %rdi     # 0x2e1d9
callq 0x4800
cmpl $0x0, %eax
jne 0x1b7f7
movl -0xc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0xc(%rbp)
movq -0x8(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x8(%rbp)
cmpl $0x1, -0xc(%rbp)
jge 0x1b72d
movq -0x18(%rbp), %rdi
movq -0x8(%rbp), %rax
movq -0x8(%rax), %rdx
leaq 0x12a4e(%rip), %rsi     # 0x2e16f
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq -0xec(%rbp), %rsi
callq 0x20cb0
testb $0x1, %al
jne 0x1b746
jmp 0x1b76f
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
movq -0x40(%rbp), %rax
movl 0x28(%rax), %edx
addl $0x1, %edx
andl $0x1, %edx
movl $0x1, %ecx
callq 0x9e80
andb $0x1, %al
movb %al, -0xe1(%rbp)
jmp 0x1b7d2
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq -0xe8(%rbp), %rsi
callq 0x20a20
testb $0x1, %al
jne 0x1b788
jmp 0x1b7aa
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
movl -0xe8(%rbp), %edx
movl $0x1, %ecx
callq 0x9e80
andb $0x1, %al
movb %al, -0xe1(%rbp)
jmp 0x1b7d0
movq -0x18(%rbp), %rdi
movq -0x8(%rbp), %rax
movq -0x8(%rax), %rdx
movq -0x8(%rbp), %rax
movq (%rax), %rcx
leaq 0x129f0(%rip), %rsi     # 0x2e1b4
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
jmp 0x1b7d2
testb $0x1, -0xe1(%rbp)
jne 0x1b7f2
movq -0x18(%rbp), %rdi
leaq 0x133da(%rip), %rsi     # 0x2ebc0
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
jmp 0x1b975
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x126e3(%rip), %rdi     # 0x2dee8
callq 0x4800
cmpl $0x0, %eax
je 0x1b827
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x129c5(%rip), %rdi     # 0x2e1e2
callq 0x4800
cmpl $0x0, %eax
jne 0x1b87a
movl -0xc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0xc(%rbp)
movq -0x8(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x8(%rbp)
cmpl $0x1, -0xc(%rbp)
jge 0x1b861
movq -0x18(%rbp), %rdi
movq -0x8(%rbp), %rax
movq -0x8(%rax), %rdx
leaq 0x1291a(%rip), %rsi     # 0x2e16f
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
movq -0x8(%rbp), %rax
movq (%rax), %rdx
callq 0xa5a0
jmp 0x1b973
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x127e3(%rip), %rdi     # 0x2e06b
callq 0x4800
cmpl $0x0, %eax
je 0x1b8ae
movq -0x8(%rbp), %rax
movq (%rax), %rsi
leaq 0x1294b(%rip), %rdi     # 0x2e1eb
callq 0x4800
cmpl $0x0, %eax
jne 0x1b958
cmpl $0x1, -0xc(%rbp)
jle 0x1b8d2
movq -0x18(%rbp), %rdi
movq -0x8(%rbp), %rax
movq (%rax), %rdx
leaq 0x1292e(%rip), %rsi     # 0x2e1f4
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
movq -0x48(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x48(%rbp), %rcx
cmpq 0x68(%rcx), %rax
je 0x1b944
movq -0x40(%rbp), %rax
cmpq $0x0, 0x40(%rax)
jne 0x1b900
movq -0x40(%rbp), %rax
movq 0x48(%rax), %rax
movq %rax, -0x100(%rbp)
jmp 0x1b90f
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rax
movq %rax, -0x100(%rbp)
movq -0x100(%rbp), %rax
movq %rax, -0xf8(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq -0xf8(%rbp), %rcx
callq 0xa820
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xa710
jmp 0x1b9ac
movq -0x18(%rbp), %rdi
leaq 0x13271(%rip), %rsi     # 0x2ebc0
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
movq -0x18(%rbp), %rdi
movq -0x8(%rbp), %rax
movq (%rax), %rdx
leaq 0x128aa(%rip), %rsi     # 0x2e214
movb $0x0, %al
callq 0x18d60
jmp 0x1b999
jmp 0x1b975
jmp 0x1b977
jmp 0x1b979
jmp 0x1b97b
jmp 0x1b97d
jmp 0x1b97f
movl -0xc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0xc(%rbp)
movq -0x8(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x8(%rbp)
jmp 0x1b087
testb $0x1, -0x4d(%rbp)
je 0x1b9ac
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xafd0
addq $0x100, %rsp            # imm = 0x100
popq %rbp
retq
nopw %cs:(%rax,%rax)