// File: /workspace/github_c_makefile_star2_O0/Cloudef[P]dwm-fork/dwm.c
// Function: keypress
void
keypress(XEvent *e) {
   unsigned int i;
   KeySym keysym;
   XKeyEvent *ev;

   ev = &e->xkey;
   keysym = XKeycodeToKeysym(dpy, (KeyCode)ev->keycode, 0);
   for(i = 0; i < LENGTH(keys); i++)
      if(keysym == keys[i].keysym
            && CLEANMASK(keys[i].mod) == CLEANMASK(ev->state)
            && keys[i].func)
         keys[i].func(&(keys[i].arg));

   if(menu && (cmenu = wintomenu(ev->window)))
   {
      keysym = XKeycodeToKeysym(dpy, (KeyCode)ev->keycode, 0);
      for(i = 0; i < LENGTH(menu_keys); i++)
         if(keysym == menu_keys[i].keysym
               && CLEANMASK(menu_keys[i].mod) == CLEANMASK(ev->state)
               && menu_keys[i].func)
            menu_keys[i].func(&(menu_keys[i].arg));
   }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x20(%rbp)
movq 0xb0fd(%rip), %rdi      # 0x18618
movq -0x20(%rbp), %rax
movl 0x54(%rax), %eax
xorl %edx, %edx
movzbl %al, %esi
callq 0x5580
movq %rax, -0x18(%rbp)
movl $0x0, -0xc(%rbp)
movl -0xc(%rbp), %eax
cmpq $0x49, %rax
jae 0xd5f9
movq -0x18(%rbp), %rax
movl -0xc(%rbp), %ecx
movl %ecx, %edx
leaq 0xa05c(%rip), %rcx      # 0x175b0
shlq $0x5, %rdx
addq %rdx, %rcx
cmpq 0x8(%rcx), %rax
jne 0xd5e9
movl -0xc(%rbp), %eax
movl %eax, %ecx
leaq 0xa03f(%rip), %rax      # 0x175b0
shlq $0x5, %rcx
addq %rcx, %rax
movl (%rax), %eax
movl 0xb3e8(%rip), %ecx      # 0x18968
orl $0x2, %ecx
xorl $-0x1, %ecx
andl %ecx, %eax
movq -0x20(%rbp), %rcx
movl 0x50(%rcx), %ecx
movl 0xb3d3(%rip), %edx      # 0x18968
orl $0x2, %edx
xorl $-0x1, %edx
andl %edx, %ecx
cmpl %ecx, %eax
jne 0xd5e9
movl -0xc(%rbp), %eax
movl %eax, %ecx
leaq 0xa003(%rip), %rax      # 0x175b0
shlq $0x5, %rcx
addq %rcx, %rax
cmpq $0x0, 0x10(%rax)
je 0xd5e9
movl -0xc(%rbp), %eax
movl %eax, %ecx
leaq 0x9fe9(%rip), %rax      # 0x175b0
shlq $0x5, %rcx
addq %rcx, %rax
movq 0x10(%rax), %rax
movl -0xc(%rbp), %ecx
leaq 0x9fd4(%rip), %rdi      # 0x175b0
shlq $0x5, %rcx
addq %rcx, %rdi
addq $0x18, %rdi
callq *%rax
jmp 0xd5eb
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0xd537
cmpq $0x0, 0xb00f(%rip)      # 0x18610
je 0xd70c
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rdi
callq 0x58c0
movq %rax, 0xb355(%rip)      # 0x18970
cmpq $0x0, %rax
je 0xd70c
movq 0xafec(%rip), %rdi      # 0x18618
movq -0x20(%rbp), %rax
movl 0x54(%rax), %eax
xorl %edx, %edx
movzbl %al, %esi
callq 0x5580
movq %rax, -0x18(%rbp)
movl $0x0, -0xc(%rbp)
movl -0xc(%rbp), %eax
cmpq $0x6, %rax
jae 0xd70a
movq -0x18(%rbp), %rax
movl -0xc(%rbp), %ecx
movl %ecx, %edx
leaq 0xab6b(%rip), %rcx      # 0x181d0
shlq $0x5, %rdx
addq %rdx, %rcx
cmpq 0x8(%rcx), %rax
jne 0xd6fa
movl -0xc(%rbp), %eax
movl %eax, %ecx
leaq 0xab4e(%rip), %rax      # 0x181d0
shlq $0x5, %rcx
addq %rcx, %rax
movl (%rax), %eax
movl 0xb2d7(%rip), %ecx      # 0x18968
orl $0x2, %ecx
xorl $-0x1, %ecx
andl %ecx, %eax
movq -0x20(%rbp), %rcx
movl 0x50(%rcx), %ecx
movl 0xb2c2(%rip), %edx      # 0x18968
orl $0x2, %edx
xorl $-0x1, %edx
andl %edx, %ecx
cmpl %ecx, %eax
jne 0xd6fa
movl -0xc(%rbp), %eax
movl %eax, %ecx
leaq 0xab12(%rip), %rax      # 0x181d0
shlq $0x5, %rcx
addq %rcx, %rax
cmpq $0x0, 0x10(%rax)
je 0xd6fa
movl -0xc(%rbp), %eax
movl %eax, %ecx
leaq 0xaaf8(%rip), %rax      # 0x181d0
shlq $0x5, %rcx
addq %rcx, %rax
movq 0x10(%rax), %rax
movl -0xc(%rbp), %ecx
leaq 0xaae3(%rip), %rdi      # 0x181d0
shlq $0x5, %rcx
addq %rcx, %rdi
addq $0x18, %rdi
callq *%rax
jmp 0xd6fc
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0xd648
jmp 0xd70c
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)