// File: /workspace/github_c_makefile_star2_O1/mishun[P]plantri/plantri.c
// Function: min4_dispatch
static void
min4_dispatch(void)

/* Case of minimum degree >= 4, except for polygons and polytopes. */
{
    int startingsize,nbtot,nbop,hint;
    triangle nft[MAXN];

    if (minimumdeg <= 0) minimumdeg = 4;
    if (minconnec <= 0) minconnec = 3;
    startingsize = 6;

    CHECKRANGE(maxnv,"n",startingsize,MAXN);
    CHECKRANGE(minconnec,"-c",3,4);
    CHECKRANGE(minimumdeg,"-m",4,4);

    INCOMPAT(tswitch,"-m4 or -c4","-t");
    INCOMPAT(qswitch,"-m4 or -c4","-q");
    INCOMPAT(edgebound[0]>=0,"-m4 without -p","-e");
    INCOMPAT(maxfacesize>=0,"-m4 without -p","-f");
    
    if (dswitch) strcpy(outtypename,"cubic graphs");
    else         strcpy(outtypename,"triangulations");

    open_output_file();

    needgroup = Gswitch;
    if (minconnec == 4) xswitch = TRUE;

    xconnec = minconnec;

    hint = MIN(maxnv <= 19 ? maxnv-4 : maxnv-5, 17);
    initialize_splitting(startingsize,hint,maxnv-3);
    if (splitlevel == 0 && res > 0) return;

    initialize_min4();
    canon(degree,numbering,&nbtot,&nbop);
    
#ifdef FAST_FILTER_MIN4
    if (FAST_FILTER_MIN4)
#endif
    {
        if (xswitch || minconnec == 4)
	    scanmin4c(nbtot,nbop,splitlevel==6,NULL,nft,0);
        else
	    scanmin4(nbtot,nbop,splitlevel==6,NULL);
    }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x618, %rsp            # imm = 0x618
cmpl $0x0, 0x20a1b(%rip)     # 0x261b8
jg 0x57a9
movl $0x4, 0x20a0f(%rip)     # 0x261b8
cmpl $0x0, 0x20900(%rip)     # 0x260b0
jg 0x57bc
movl $0x3, 0x208f4(%rip)     # 0x260b0
movl 0x20aae(%rip), %eax     # 0x26270
addl $-0x41, %eax
cmpl $-0x3c, %eax
jbe 0x5976
movl 0x208dc(%rip), %eax     # 0x260b0
addl $-0x5, %eax
cmpl $-0x3, %eax
jbe 0x597b
cmpl $0x4, 0x209d1(%rip)     # 0x261b8
jne 0x5980
cmpb $0x1, 0x208c0(%rip)     # 0x260b4
je 0x5985
cmpb $0x1, 0x209b3(%rip)     # 0x261b4
je 0x598a
cmpl $0x0, 0x20a4e(%rip)     # 0x2625c
jns 0x598f
cmpl $0x0, 0x20a49(%rip)     # 0x26264
jns 0x5994
cmpb $0x1, 0x20a24(%rip)     # 0x2624c
jne 0x5847
movabsq $0x73687061726720, %rax # imm = 0x73687061726720
movq %rax, 0x209ba(%rip)     # 0x261f5
movabsq $0x7267206369627563, %rax # imm = 0x7267206369627563
jmp 0x5862
movabsq $0x736e6f6974616c, %rax # imm = 0x736E6F6974616C
movq %rax, 0x2099f(%rip)     # 0x261f7
movabsq $0x6c75676e61697274, %rax # imm = 0x6C75676E61697274
movq %rax, 0x20987(%rip)     # 0x261f0
callq 0x5e7f
movzbl 0x209cf(%rip), %eax     # 0x26244
movl %eax, 0x22165(%rip)     # 0x279e0
movl 0x2082f(%rip), %ebp     # 0x260b0
cmpl $0x4, %ebp
jne 0x588d
movb $0x1, 0x2082b(%rip)     # 0x260b8
movl 0x209dd(%rip), %eax     # 0x26270
xorl %ecx, %ecx
cmpl $0x14, %eax
setl %cl
addl %eax, %ecx
addl $-0x5, %ecx
cmpl $0x11, %ecx
movl $0x11, %edx
cmovll %ecx, %edx
movl %ebp, 0x209c3(%rip)     # 0x26274
leal -0x3(%rax), %ecx
movzbl 0x2099d(%rip), %esi     # 0x26258
addl %edx, %esi
cmpl %ecx, %esi
cmovgel %ecx, %esi
xorl %ecx, %ecx
cmpl $0x9, %eax
movl $0x6, %r15d
cmovll %ecx, %r15d
leal -0x1(%rsi), %eax
cmpl $0x5, %eax
cmovael %esi, %r15d
cmpl $0x1, 0x2098a(%rip)     # 0x2626c
cmovel %ecx, %r15d
movl %r15d, 0x220f7(%rip)    # 0x279e4
movl 0x20975(%rip), %eax     # 0x26268
movl %eax, 0x285327(%rip)    # 0x28ac20
testl %r15d, %r15d
sete %cl
testl %eax, %eax
setg %al
testb %al, %cl
jne 0x5968
callq 0x10391
leaq 0x222dc(%rip), %rdi     # 0x27bf0
leaq 0xc(%rsp), %rbx
leaq 0x8(%rsp), %r14
movq %rbx, %rsi
movq %r14, %rdx
callq 0x6408
xorl %edx, %edx
cmpl $0x6, %r15d
sete %dl
movl (%rbx), %edi
movl (%r14), %esi
cmpl $0x4, %ebp
je 0x5959
testb $0x1, 0x20775(%rip)     # 0x260b8
jne 0x5959
xorl %ecx, %ecx
addq $0x618, %rsp            # imm = 0x618
popq %rbx
popq %r14
popq %r15
popq %rbp
jmp 0x106c3
leaq 0x10(%rsp), %r8
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x1ee21
addq $0x618, %rsp            # imm = 0x618
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
callq 0x2202
callq 0x21bc
callq 0x20a1
callq 0x2186
callq 0x2150
callq 0x211a
callq 0x20e4