// File: /workspace/github_c_makefile_star2_O0/baskerville[P]sxhkd/src/grab.c
// Function: grab_key_button
void grab_key_button(xcb_keycode_t keycode, xcb_button_t button, uint16_t modfield)
{
	grab_key_button_checked(keycode, button, modfield);
	if (modfield == XCB_MOD_MASK_ANY)
		return;
	if (num_lock != 0)
		grab_key_button_checked(keycode, button, modfield | num_lock);
	if (caps_lock != 0)
		grab_key_button_checked(keycode, button, modfield | caps_lock);
	if (scroll_lock != 0)
		grab_key_button_checked(keycode, button, modfield | scroll_lock);
	if (num_lock != 0 && caps_lock != 0)
		grab_key_button_checked(keycode, button, modfield | num_lock | caps_lock);
	if (caps_lock != 0 && scroll_lock != 0)
		grab_key_button_checked(keycode, button, modfield | caps_lock | scroll_lock);
	if (num_lock != 0 && scroll_lock != 0)
		grab_key_button_checked(keycode, button, modfield | num_lock | scroll_lock);
	if (num_lock != 0 && caps_lock != 0 && scroll_lock != 0)
		grab_key_button_checked(keycode, button, modfield | num_lock | caps_lock | scroll_lock);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movw %dx, %ax
movb %sil, %cl
movb %dil, %dl
movb %dl, -0x1(%rbp)
movb %cl, -0x2(%rbp)
movw %ax, -0x4(%rbp)
movb -0x1(%rbp), %cl
movb -0x2(%rbp), %al
movzbl %cl, %edi
movzbl %al, %esi
movzwl -0x4(%rbp), %edx
callq 0xf440
movzwl -0x4(%rbp), %eax
cmpl $0x8000, %eax           # imm = 0x8000
jne 0xf240
jmp 0xf42c
leaq 0x14259(%rip), %rax     # 0x234a0
movzwl (%rax), %eax
cmpl $0x0, %eax
je 0xf273
movb -0x1(%rbp), %dl
movb -0x2(%rbp), %cl
movzwl -0x4(%rbp), %eax
leaq 0x14240(%rip), %rsi     # 0x234a0
movzwl (%rsi), %esi
orl %esi, %eax
movzbl %dl, %edi
movzbl %cl, %esi
movzwl %ax, %edx
callq 0xf440
leaq 0x14228(%rip), %rax     # 0x234a2
movzwl (%rax), %eax
cmpl $0x0, %eax
je 0xf2a6
movb -0x1(%rbp), %dl
movb -0x2(%rbp), %cl
movzwl -0x4(%rbp), %eax
leaq 0x1420f(%rip), %rsi     # 0x234a2
movzwl (%rsi), %esi
orl %esi, %eax
movzbl %dl, %edi
movzbl %cl, %esi
movzwl %ax, %edx
callq 0xf440
leaq 0x141f7(%rip), %rax     # 0x234a4
movzwl (%rax), %eax
cmpl $0x0, %eax
je 0xf2d9
movb -0x1(%rbp), %dl
movb -0x2(%rbp), %cl
movzwl -0x4(%rbp), %eax
leaq 0x141de(%rip), %rsi     # 0x234a4
movzwl (%rsi), %esi
orl %esi, %eax
movzbl %dl, %edi
movzbl %cl, %esi
movzwl %ax, %edx
callq 0xf440
leaq 0x141c0(%rip), %rax     # 0x234a0
movzwl (%rax), %eax
cmpl $0x0, %eax
je 0xf327
leaq 0x141b3(%rip), %rax     # 0x234a2
movzwl (%rax), %eax
cmpl $0x0, %eax
je 0xf327
movb -0x1(%rbp), %dl
movb -0x2(%rbp), %cl
movzwl -0x4(%rbp), %eax
leaq 0x14198(%rip), %rsi     # 0x234a0
movzwl (%rsi), %esi
orl %esi, %eax
leaq 0x1418e(%rip), %rsi     # 0x234a2
movzwl (%rsi), %esi
orl %esi, %eax
movzbl %dl, %edi
movzbl %cl, %esi
movzwl %ax, %edx
callq 0xf440
leaq 0x14174(%rip), %rax     # 0x234a2
movzwl (%rax), %eax
cmpl $0x0, %eax
je 0xf375
leaq 0x14167(%rip), %rax     # 0x234a4
movzwl (%rax), %eax
cmpl $0x0, %eax
je 0xf375
movb -0x1(%rbp), %dl
movb -0x2(%rbp), %cl
movzwl -0x4(%rbp), %eax
leaq 0x1414c(%rip), %rsi     # 0x234a2
movzwl (%rsi), %esi
orl %esi, %eax
leaq 0x14142(%rip), %rsi     # 0x234a4
movzwl (%rsi), %esi
orl %esi, %eax
movzbl %dl, %edi
movzbl %cl, %esi
movzwl %ax, %edx
callq 0xf440
leaq 0x14124(%rip), %rax     # 0x234a0
movzwl (%rax), %eax
cmpl $0x0, %eax
je 0xf3c3
leaq 0x14119(%rip), %rax     # 0x234a4
movzwl (%rax), %eax
cmpl $0x0, %eax
je 0xf3c3
movb -0x1(%rbp), %dl
movb -0x2(%rbp), %cl
movzwl -0x4(%rbp), %eax
leaq 0x140fc(%rip), %rsi     # 0x234a0
movzwl (%rsi), %esi
orl %esi, %eax
leaq 0x140f4(%rip), %rsi     # 0x234a4
movzwl (%rsi), %esi
orl %esi, %eax
movzbl %dl, %edi
movzbl %cl, %esi
movzwl %ax, %edx
callq 0xf440
leaq 0x140d6(%rip), %rax     # 0x234a0
movzwl (%rax), %eax
cmpl $0x0, %eax
je 0xf42c
leaq 0x140c9(%rip), %rax     # 0x234a2
movzwl (%rax), %eax
cmpl $0x0, %eax
je 0xf42c
leaq 0x140bc(%rip), %rax     # 0x234a4
movzwl (%rax), %eax
cmpl $0x0, %eax
je 0xf42c
movb -0x1(%rbp), %dl
movb -0x2(%rbp), %cl
movzwl -0x4(%rbp), %eax
leaq 0x1409f(%rip), %rsi     # 0x234a0
movzwl (%rsi), %esi
orl %esi, %eax
leaq 0x14095(%rip), %rsi     # 0x234a2
movzwl (%rsi), %esi
orl %esi, %eax
leaq 0x1408b(%rip), %rsi     # 0x234a4
movzwl (%rsi), %esi
orl %esi, %eax
movzbl %dl, %edi
movzbl %cl, %esi
movzwl %ax, %edx
callq 0xf440
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)