// File: /workspace/github_c_makefile_star2_O0/Cloudef[P]dwm-fork/dwm.c
// Function: clientmessage
void
clientmessage(XEvent *e) {
   XClientMessageEvent *cme = &e->xclient;
   Client *c;

   if((c = wintoclient(cme->window))
         && (cme->message_type == netatom[NetWMState] && cme->data.l[1] == netatom[NetWMFullscreen]))
   {
      if(cme->data.l[0]) {
         XChangeProperty(dpy, cme->window, netatom[NetWMState], XA_ATOM, 32,
               PropModeReplace, (unsigned char*)&netatom[NetWMFullscreen], 1);
         c->isfullscreen = True;
         c->oldstate = c->isfloating;
         c->oldbw = c->bw;
         c->bw = 0;
         c->isfloating = 1;
         resizeclient(c, c->mon->ox, c->mon->oy, c->mon->ow, c->mon->oh);
         if(!c->isbelow) XRaiseWindow(dpy, c->win);
      }
      else {
         XChangeProperty(dpy, cme->window, netatom[NetWMState], XA_ATOM, 32,
               PropModeReplace, (unsigned char*)0, 0);
         c->isfullscreen = False;
         c->isfloating = c->oldstate;
         c->bw = c->oldbw;
         c->x = c->oldx;
         c->y = c->oldy;
         c->w = c->oldw;
         c->h = c->oldh;
         resizeclient(c, c->x, c->y, c->w, c->h);
      }
      arrange(c->mon);
   }
   else
      if(cme->window == traywin) {
         if(cme->data.l[1] == XEMBED_EMBEDDED_NOTIFY){
            systray_add(cme->data.l[2]);
            systray_update();
            updatestatus();
         }
      }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rdi
callq 0x8940
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
je 0xe72a
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rax
cmpq 0xa162(%rip), %rax      # 0x18660
jne 0xe72a
movq -0x10(%rbp), %rax
movq 0x40(%rax), %rax
cmpq 0xa155(%rip), %rax      # 0x18668
jne 0xe72a
movq -0x10(%rbp), %rax
cmpq $0x0, 0x38(%rax)
je 0xe625
movq 0xa0e9(%rip), %rdi      # 0x18618
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rsi
movq 0xa122(%rip), %rdx      # 0x18660
movl $0x4, %ecx
movl $0x20, %r8d
xorl %r9d, %r9d
leaq 0xa0fd(%rip), %rax      # 0x18650
addq $0x18, %rax
movq %rax, (%rsp)
movl $0x1, 0x8(%rsp)
callq 0x5670
movq -0x18(%rbp), %rax
movl $0x1, 0x160(%rax)
movq -0x18(%rbp), %rax
movl 0x168(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x188(%rax)
movq -0x18(%rbp), %rax
movl 0x150(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x154(%rax)
movq -0x18(%rbp), %rax
movl $0x0, 0x150(%rax)
movq -0x18(%rbp), %rax
movl $0x1, 0x168(%rax)
movq -0x18(%rbp), %rdi
movq -0x18(%rbp), %rax
movq 0x1a0(%rax), %rax
movl 0x48(%rax), %esi
movq -0x18(%rbp), %rax
movq 0x1a0(%rax), %rax
movl 0x4c(%rax), %edx
movq -0x18(%rbp), %rax
movq 0x1a0(%rax), %rax
movl 0x50(%rax), %ecx
movq -0x18(%rbp), %rax
movq 0x1a0(%rax), %rax
movl 0x54(%rax), %r8d
callq 0x8660
movq -0x18(%rbp), %rax
cmpl $0x0, 0x174(%rax)
jne 0xe620
movq 0xa008(%rip), %rdi      # 0x18618
movq -0x18(%rbp), %rax
movq 0x1a8(%rax), %rsi
callq 0x5180
jmp 0xe718
movq 0x9fec(%rip), %rdi      # 0x18618
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rsi
movq 0xa025(%rip), %rdx      # 0x18660
movl $0x4, %ecx
movl $0x20, %r8d
xorl %r9d, %r9d
xorl %eax, %eax
movq $0x0, (%rsp)
movl $0x0, 0x8(%rsp)
callq 0x5670
movq -0x18(%rbp), %rax
movl $0x0, 0x160(%rax)
movq -0x18(%rbp), %rax
movl 0x188(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x168(%rax)
movq -0x18(%rbp), %rax
movl 0x154(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x150(%rax)
movq -0x18(%rbp), %rax
movl 0x118(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x108(%rax)
movq -0x18(%rbp), %rax
movl 0x11c(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x10c(%rax)
movq -0x18(%rbp), %rax
movl 0x120(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x110(%rax)
movq -0x18(%rbp), %rax
movl 0x124(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x114(%rax)
movq -0x18(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x108(%rax), %esi
movq -0x18(%rbp), %rax
movl 0x10c(%rax), %edx
movq -0x18(%rbp), %rax
movl 0x110(%rax), %ecx
movq -0x18(%rbp), %rax
movl 0x114(%rax), %r8d
callq 0x8660
movq -0x18(%rbp), %rax
movq 0x1a0(%rax), %rdi
callq 0xbf30
jmp 0xe761
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rax
cmpq 0x9eef(%rip), %rax      # 0x18628
jne 0xe75f
movq -0x10(%rbp), %rax
cmpq $0x0, 0x40(%rax)
jne 0xe75d
movq -0x10(%rbp), %rax
movq 0x48(%rax), %rdi
callq 0x10150
callq 0xbfe0
callq 0x6d20
jmp 0xe75f
jmp 0xe761
addq $0x30, %rsp
popq %rbp
retq
nopw (%rax,%rax)