// File: /workspace/github_c_makefile_star2_O2/mishun[P]plantri/plantri.c
// Function: write_dual_edgecode
static void
write_dual_edgecode(FILE *f, int doflip)   

/* Write in edge_code format.  Always write in next direction,
   and if doflip != 0 also write in prev direction. */
{
    int length, headerlength;
    unsigned char code[MAXF+MAXE+4], mirrorcode[MAXF+MAXE+4];


      if ((ne/2)>UCHAR_MAX) 
	{ fprintf(stderr,
         ">E %s: Output routine write_dual_edgecode not prepared for ",cmdname);
	  fprintf(stderr,"that many edges\n");
	  exit(1);
	}

    compute_dual_edgecode(code,&length,&headerlength);
    if (fwrite(code,sizeof(unsigned char),length,f) != length)
    {
        fprintf(stderr,">E %s: fwrite() failed\n",cmdname);
        perror(">E ");
        exit(1);
    }
    if (doflip)
      { mirror_of_edgecode(mirrorcode, code, 0,length,headerlength);
        if (fwrite(mirrorcode,sizeof(unsigned char),length,f) != length)
	  {
	    fprintf(stderr,">E %s: fwrite() failed\n",cmdname);
	    perror(">E ");
	    exit(1);
	  }
      }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x3f8, %rsp            # imm = 0x3F8
movl 0x238736(%rip), %ecx    # 0x242604
cmpl $0x200, %ecx            # imm = 0x200
jge 0xa10c
movl %esi, %ebp
movq %rdi, %rbx
movl 0x1a197(%rip), %eax     # 0x2407c
leal 0x2(%rax), %edi
movl %edi, 0x1a18e(%rip)     # 0x2407c
pushq $0x2
popq %r8
cmpl $0x752f, %eax           # imm = 0x752F
jl 0x9f22
movl $0x2, 0x1a179(%rip)     # 0x2407c
pushq $0x30
popq %rax
pushq $0x2
popq %rdi
leaq 0x238700(%rip), %rdx    # 0x242610
cmpq $0x46630, %rax          # imm = 0x46630
je 0x9f22
andl $0x0, (%rax,%rdx)
addq $0x40, %rax
jmp 0x9f10
movl 0x1a14f(%rip), %r9d     # 0x24078
movl 0x2386d1(%rip), %esi    # 0x242600
notl %r9d
movl %ecx, %eax
cltd
idivl %r8d
subl %esi, %ecx
leal (%rcx,%rax), %edx
addl %eax, %ecx
incl %ecx
cmpl $0xfe, %edx
jg 0x9f54
leaq 0x1(%rsp), %rax
pushq $0x1
popq %r14
jmp 0x9f6e
leaq 0x4(%rsp), %rax
movb $0x21, -0x3(%rax)
movb %ch, 0x2(%rsp)
movb %cl, -0x1(%rax)
pushq $0x4
popq %r14
pushq $0x5
popq %r8
xorl %ecx, %ecx
shrl $0x1f, %r9d
movb %cl, (%rsp)
movq 0x23868c(%rip), %r10    # 0x242608
testq %r10, %r10
jne 0x9f88
movq 0x1ba58(%rip), %r10     # 0x259e0
addl %r9d, %esi
addl %r8d, %edx
leal 0x1(%rdi), %r8d
incq %rax
xorl %ecx, %ecx
movq %r10, %r9
cmpl %edi, 0x30(%r9)
jge 0x9fb7
movq 0x20(%r9), %r11
movl %edi, 0x30(%r11)
movb %cl, -0x1(%rax)
movzbl %cl, %r15d
movl %r15d, 0x34(%r11)
incl %ecx
jmp 0x9fbf
movb 0x34(%r9), %r11b
movb %r11b, -0x1(%rax)
movl %r8d, 0x30(%r9)
movq 0x10(%r9), %r9
movq 0x20(%r9), %r9
incq %rax
cmpq %r10, %r9
jne 0x9f9a
movb $-0x1, -0x1(%rax)
xorl %edi, %edi
testl %esi, %esi
cmovlel %edi, %esi
leaq 0x1b9fb(%rip), %r8      # 0x259e0
leaq 0x1bbf4(%rip), %r9      # 0x25be0
cmpq %rsi, %rdi
je 0xa07f
movl 0x1a07c(%rip), %r10d    # 0x24078
cmpq %r10, %rdi
jne 0xa006
incq %rdi
jmp 0x9fec
leaq (%r8,%rdi,8), %r10
xorl %r11d, %r11d
cmpl (%r9,%rdi,4), %r11d
jge 0xa001
movq (%r10), %r10
movl 0x1a05f(%rip), %r12d    # 0x2407c
cmpl %r12d, 0x30(%r10)
jg 0xa076
incq %rax
movq %r10, %r15
cmpl %r12d, 0x30(%r15)
jge 0xa04a
movq 0x20(%r15), %r13
movl %r12d, 0x30(%r13)
movb %cl, -0x1(%rax)
movzbl %cl, %r12d
movq 0x20(%r15), %r13
movl %r12d, 0x34(%r13)
incl %ecx
jmp 0xa052
movb 0x34(%r15), %r12b
movb %r12b, -0x1(%rax)
movl 0x1a023(%rip), %r12d    # 0x2407c
leal 0x1(%r12), %r13d
movl %r13d, 0x30(%r15)
movq 0x10(%r15), %r15
movq 0x20(%r15), %r15
incq %rax
cmpq %r10, %r15
jne 0xa029
movb $-0x1, -0x1(%rax)
incl %r11d
addq $0x18, %r10
jmp 0xa00d
movslq %edx, %r15
movq %rsp, %rdi
pushq $0x1
popq %rsi
movq %r15, %rdx
movq %rbx, %rcx
callq 0x10c0
cmpq %r15, %rax
jne 0xa0df
testl %ebp, %ebp
je 0xa0cd
leaq 0x200(%rsp), %r12
movq %rsp, %rsi
movq %r12, %rdi
xorl %edx, %edx
movl %r15d, %ecx
movl %r14d, %r8d
callq 0xab77
pushq $0x1
popq %rsi
movq %r12, %rdi
movq %r15, %rdx
movq %rbx, %rcx
callq 0x10c0
cmpq %r15, %rax
jne 0xa0df
addq $0x3f8, %rsp            # imm = 0x3F8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x19f12(%rip), %rax     # 0x23ff8
movq (%rax), %rdi
movq 0x19fc0(%rip), %rdx     # 0x240b0
leaq 0x143ea(%rip), %rsi     # 0x1e4e1
xorl %eax, %eax
callq 0x1050
leaq 0x14370(%rip), %rdi     # 0x1e475
callq 0x1090
jmp 0xa140
movq 0x19ee5(%rip), %rbx     # 0x23ff8
movq (%rbx), %rdi
movq 0x19f93(%rip), %rdx     # 0x240b0
leaq 0x1445a(%rip), %rsi     # 0x1e57e
xorl %eax, %eax
callq 0x1050
movq (%rbx), %rcx
leaq 0x143fb(%rip), %rdi     # 0x1e530
pushq $0x10
popq %rsi
pushq $0x1
popq %rdx
callq 0x10c0
pushq $0x1
popq %rdi
callq 0x10b0