// File: /workspace/github_c_makefile_star2_O2/Cloudef[P]dwm-fork/dwm.c
// Function: restack
void
restack(Monitor *m) {
   Client *c;
   XEvent ev;
   XWindowChanges wc;
   Bool hasfullscreen = False;

   drawbar(m);
   if(!m->sel)
   { if(!m->showbartoggle) togglebarm(m, 1); return; } /* nothing */
   //if(m->sel->isfloating || !m->lt[m->sellt]->arrange)
   //   if(!m->sel->isbelow) XRaiseWindow(dpy, m->sel->win);
   if(m->lt[m->sellt]->arrange) {
      wc.stack_mode = Below;
      wc.sibling = m->barwin;
      for(c = m->stack; c; c = c->snext)
         if(!c->isfloating && ISVISIBLE(c) && !c->iswidget) {
            XConfigureWindow(dpy, c->win, CWSibling|CWStackMode, &wc);
            wc.sibling = c->win;
            XLowerWindow(dpy, c->win);
         }
   }
   while(XCheckMaskEvent(dpy, EnterWindowMask, &ev));
   while(XCheckMaskEvent(dpy, PointerMotionMask, &ev));

   /* always above && below */
   for(c = m->clients; c; c = c->next)
   {
      if(ISVISIBLE(c))
      {
         if(c->isabove)      XRaiseWindow(dpy,c->win);
         else if(c->isbelow) XLowerWindow(dpy, c->win);
         if(c->isfullscreen) hasfullscreen = True;
      }
   }
   if(!m->showbartoggle)
   { if(hasfullscreen) togglebarm(m, 0); else togglebarm(m, 1); } /* check if there was fullscreen window && show/hide bar */

   XSync(dpy, False);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0xe8, %rsp
movq %rdi, %rbx
callq 0x76a3
cmpq $0x0, 0x80(%rbx)
je 0xa225
movl 0x5c(%rbx), %eax
movq 0xa0(%rbx,%rax,8), %rax
cmpq $0x0, 0x10(%rax)
je 0xa144
movq %rsp, %r14
movl $0x1, 0x20(%r14)
movq 0x98(%rbx), %rax
movq %rax, 0x18(%r14)
leaq 0x88(%rbx), %r15
pushq $0x60
popq %rbp
movq (%r15), %r15
testq %r15, %r15
je 0xa144
cmpl $0x0, 0x168(%r15)
jne 0xa13b
cmpl $0x0, 0x180(%r15)
jne 0xa101
movq 0x1a0(%r15), %rax
movl 0x58(%rax), %ecx
movl 0x60(%rax,%rcx,4), %eax
testl %eax, 0x15c(%r15)
je 0xa13b
cmpl $0x0, 0x170(%r15)
jne 0xa13b
movq 0x9376(%rip), %rdi      # 0x13488
movq 0x1a8(%r15), %rsi
movl %ebp, %edx
movq %r14, %rcx
callq 0x50d0
movq 0x1a8(%r15), %rsi
movq %rsi, 0x18(%rsp)
movq 0x9352(%rip), %rdi      # 0x13488
callq 0x53e0
addq $0x198, %r15            # imm = 0x198
jmp 0xa0ce
movq 0x933d(%rip), %rdi      # 0x13488
pushq $0x10
popq %rsi
leaq 0x28(%rsp), %rdx
callq 0x5410
testl %eax, %eax
jne 0xa144
pushq $0x40
popq %r14
leaq 0x28(%rsp), %r15
movq 0x931c(%rip), %rdi      # 0x13488
movq %r14, %rsi
movq %r15, %rdx
callq 0x5410
testl %eax, %eax
jne 0xa165
leaq 0x78(%rbx), %r14
xorl %ebp, %ebp
pushq $0x1
popq %r15
movq (%r14), %r14
testq %r14, %r14
je 0xa1ff
cmpl $0x0, 0x180(%r14)
jne 0xa1ae
movq 0x1a0(%r14), %rax
movl 0x58(%rax), %ecx
movl 0x60(%rax,%rcx,4), %eax
testl %eax, 0x15c(%r14)
je 0xa1f6
cmpl $0x0, 0x178(%r14)
je 0xa1cd
movq 0x92c9(%rip), %rdi      # 0x13488
movq 0x1a8(%r14), %rsi
callq 0x5170
jmp 0xa1ea
cmpl $0x0, 0x174(%r14)
je 0xa1ea
movq 0x92aa(%rip), %rdi      # 0x13488
movq 0x1a8(%r14), %rsi
callq 0x53e0
cmpl $0x0, 0x160(%r14)
cmovnel %r15d, %ebp
addq $0x190, %r14            # imm = 0x190
jmp 0xa185
cmpl $0x0, 0x6c(%rbx)
jne 0xa215
xorl %esi, %esi
testl %ebp, %ebp
sete %sil
movq %rbx, %rdi
callq 0x94d2
movq 0x926c(%rip), %rdi      # 0x13488
xorl %esi, %esi
callq 0x54c0
jmp 0xa22b
cmpl $0x0, 0x6c(%rbx)
je 0xa239
addq $0xe8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
pushq $0x1
popq %rsi
movq %rbx, %rdi
addq $0xe8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
jmp 0x94d2