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

/* initialize edges for mindegree=4 generation, and make the
   inital octahedron */
{
    EDGE *run,*start;
    int i,n;

/* First initialise the edges for the four-operation. */

    for (n=6; n<=MAXN; n++)
      { start=four_op(n);
        for (i=0, run=start; i<6; i+=2)
          { run->start=n; run->min=run; run->invers=run+1; run++;
            run->end=n; run->invers=run->min=run-1; run++; }
        run=start; run->next=run+2; 
        run+=2; /*2*/ run->prev=start; run->next=run+2;
        run+=2; /*4*/ run->prev=start+2; 
      }

/* Then initialise the edges for the five-operation. */

    for (n=6; n<=MAXN; n++)
      { start=five_op(n);
        for (i=0, run=start; i<6; i+=2)
          { run->start=n; run->min=run; run->invers=run+1; run++;
            run->end=n; run->invers=run->min=run-1; run++; }
        run=start; run->next=run+2; 
        run+=2; /*2*/ run->prev=start;
      }

/* Then initialise the edges for the S-operation. */

    for (n=6; n<=MAXN-3; n++)
      { start=S_op(n);
        for (i=0;i<18;i+=2)
          { run=start+i; run->invers=run+1; run->min=run; 
            run++; run->invers=run->min=run-1; }

        run=start;    run->start=n+1; run->end=n; run->next=start+4;
                      run->prev=start+9;
        run++; /*1*/  run->start=n; run->end=n+1; run->next=start+11;
                      run->prev=start+3;
        run++; /*2*/  run->start=n+2; run->end=n; run->next=start+15;
                      run->prev=start+5;
        run++; /*3*/  run->start=n; run->end=n+2; run->next=start+1;
                      run->prev=start+13;
        run++; /*4*/  run->start=n+1; run->end=n+2; run->next=start+7;
                      run->prev=start;
        run++; /*5*/  run->start=n+2; run->end=n+1; run->next=start+2;
                      run->prev=start+17;
        run++; /*6*/  run->end=n+1; run->next=start+16; 
        run++; /*7*/  run->start=n+1; run->next=start+9; run->prev=start+4;
        run++; /*8*/  run->end=n+1; run->prev=start+10;
        run++; /*9*/  run->start=n+1; run->next=start; run->prev=start+7;
        run++; /*10*/ run->end=n; run->next=start+8; 
        run++; /*11*/ run->start=n;  run->next=start+13; run->prev=start+1;
        run++; /*12*/ run->end=n; run->prev=start+14;
        run++; /*13*/ run->start=n; run->next=start+3; run->prev=start+11;
        run++; /*14*/ run->end=n+2; run->next=start+12;
        run++; /*15*/ run->start=n+2; run->next=start+17; run->prev=start+2;
        run++; /*16*/ run->end=n+2; run->prev=start+6;
        run++; /*17*/ run->start=n+2; run->next=start+5; run->prev=start+15;
      }

    make_octahedron();
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
movl $0x6, %ecx
leaq 0x234279(%rip), %rax    # 0x244620
leaq (%rcx,%rcx,2), %rdx
shlq $0x7, %rdx
addq %rax, %rdx
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
movq %rdx, %rdi
movl %ecx, (%rdi)
movq %rdi, 0x28(%rdi)
leaq 0x40(%rdi), %r8
movq %r8, 0x20(%rdi)
movl %ecx, 0x44(%rdi)
movq %rdi, 0x68(%rdi)
movq %rdi, 0x60(%rdi)
addl $0x2, %esi
subq $-0x80, %rdi
cmpl $0x4, %esi
jb 0x103ba
leaq 0x80(%rdx), %rsi
movq %rsi, 0x18(%rdx)
movq %rdx, 0x90(%rdx)
leaq 0x100(%rdx), %rdi
movq %rdi, 0x98(%rdx)
movq %rsi, 0x110(%rdx)
incq %rcx
cmpq $0x41, %rcx
jne 0x103a7
movl $0x6, %ecx
leaq (%rcx,%rcx,2), %rdx
shlq $0x7, %rdx
addq %rax, %rdx
addq $0x6000, %rdx           # imm = 0x6000
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
movq %rdx, %rdi
movl %ecx, (%rdi)
movq %rdi, 0x28(%rdi)
leaq 0x40(%rdi), %r8
movq %r8, 0x20(%rdi)
movl %ecx, 0x44(%rdi)
movq %rdi, 0x68(%rdi)
movq %rdi, 0x60(%rdi)
addl $0x2, %esi
subq $-0x80, %rdi
cmpl $0x4, %esi
jb 0x1042e
leaq 0x80(%rdx), %rsi
movq %rsi, 0x18(%rdx)
movq %rdx, 0x90(%rdx)
incq %rcx
cmpq $0x41, %rcx
jne 0x10414
movl $0x6, %esi
leaq 0x241ca6(%rip), %r10    # 0x252120
leaq (%rsi,%rsi,8), %rdx
shlq $0x7, %rdx
addq %rax, %rdx
addq $0xc000, %rdx           # imm = 0xC000
movq $-0x2, %rdi
movq %r10, %r8
leaq 0x40(%r8), %r9
movq %r9, 0x20(%r8)
movq %r8, 0x28(%r8)
movq %r8, 0x68(%r8)
movq %r8, 0x60(%r8)
addq $0x2, %rdi
subq $-0x80, %r8
cmpq $0x10, %rdi
jb 0x10496
leaq 0x1(%rsi), %rdi
movl %edi, (%rdx)
movl %esi, 0x4(%rdx)
leaq 0x100(%rdx), %r12
movq %r12, 0x18(%rdx)
leaq 0x240(%rdx), %r13
movq %r13, 0x10(%rdx)
leaq 0x40(%rdx), %r14
movl %esi, 0x40(%rdx)
movl %edi, 0x44(%rdx)
leaq 0x2c0(%rdx), %r11
movq %r11, 0x58(%rdx)
leaq 0xc0(%rdx), %r15
movq %r15, 0x50(%rdx)
leaq 0x80(%rdx), %rcx
movq %rcx, -0x10(%rsp)
leal 0x2(%rsi), %r8d
movl %r8d, 0x80(%rdx)
movl %esi, 0x84(%rdx)
leaq 0x3c0(%rdx), %rax
movq %rax, -0x8(%rsp)
movq %rax, 0x98(%rdx)
leaq 0x140(%rdx), %rbx
movq %rbx, 0x90(%rdx)
movl %esi, 0xc0(%rdx)
movl %r8d, 0xc4(%rdx)
movq %r14, 0xd8(%rdx)
leaq 0x340(%rdx), %rbp
movq %rbp, 0xd0(%rdx)
movl %edi, 0x100(%rdx)
movl %r8d, 0x104(%rdx)
leaq 0x1c0(%rdx), %rax
movq %rax, 0x118(%rdx)
movq %rdx, 0x110(%rdx)
movl %r8d, 0x140(%rdx)
movl %edi, 0x144(%rdx)
movq %rcx, 0x158(%rdx)
leaq 0x440(%rdx), %rcx
movq %rcx, 0x150(%rdx)
movl %edi, 0x184(%rdx)
leaq 0x400(%rdx), %r9
movq %r9, 0x198(%rdx)
movl %edi, 0x1c0(%rdx)
movq %r13, 0x1d8(%rdx)
movq %r12, 0x1d0(%rdx)
movl %edi, 0x204(%rdx)
leaq 0x280(%rdx), %r9
movq %r9, 0x210(%rdx)
movl %edi, 0x240(%rdx)
movq %rdx, 0x258(%rdx)
movq %rax, 0x250(%rdx)
movl %esi, 0x284(%rdx)
leaq 0x200(%rdx), %rax
movq %rax, 0x298(%rdx)
movl %esi, 0x2c0(%rdx)
movq %rbp, 0x2d8(%rdx)
movq %r14, 0x2d0(%rdx)
movl %esi, 0x304(%rdx)
leaq 0x380(%rdx), %rax
movq %rax, 0x310(%rdx)
movl %esi, 0x340(%rdx)
movq %r15, 0x358(%rdx)
movq %r11, 0x350(%rdx)
movl %r8d, 0x384(%rdx)
leaq 0x300(%rdx), %rax
movq %rax, 0x398(%rdx)
movl %r8d, 0x3c0(%rdx)
movq %rcx, 0x3d8(%rdx)
movq -0x10(%rsp), %rax
movq %rax, 0x3d0(%rdx)
movl %r8d, 0x404(%rdx)
leaq 0x180(%rdx), %rax
movq %rax, 0x410(%rdx)
movl %r8d, 0x440(%rdx)
movq %rbx, 0x458(%rdx)
movq -0x8(%rsp), %rax
movq %rax, 0x450(%rdx)
addq $0x480, %r10            # imm = 0x480
movq %rdi, %rsi
cmpq $0x3e, %rdi
leaq 0x233f72(%rip), %rax    # 0x244620
jne 0x1047a
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x188eb