// File: /workspace/github_c_makefile_star2_O3/AK6DN[P]dec-utilities-for-pdp/d8tape/flow.c
// Function: flow
void
flow (void)
{
    pass1 ();
    pass2 ();
    pass3 ();
#ifdef PASS4_ENABLED
    pass4 ();   // this pass is fundamentally broken (well, maybe not the pass, but the interpretation of the results in dasm.c)
#endif
    verify_subroutines ();
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
leaq 0x765e(%rip), %r14      # 0xcf40
movl $0xe00, %ebp            # imm = 0xE00
leaq 0x9652(%rip), %r12      # 0xef40
leaq 0x763b(%rip), %rbx      # 0xcf30
leaq 0x440b(%rip), %r15      # 0x9d07
xorl %r13d, %r13d
movswl (%r14,%r13,2), %edx
cmpl $-0x1, %edx
je 0x5a1f
movl %edx, %eax
andl %ebp, %eax
cmpl %ebp, %eax
je 0x5939
cmpl $0xc00, %eax            # imm = 0xC00
jne 0x5956
movl %edx, %edi
xorl %esi, %esi
xorl %edx, %edx
callq 0x5586
testl %eax, %eax
jne 0x5a1f
orb $0x1, (%r12,%r13,2)
jmp 0x5a1f
movl %edx, %ecx
andl $0xf00, %ecx            # imm = 0xF00
movl %edx, %eax
notl %eax
cmpl $0xe00, %ecx            # imm = 0xE00
jne 0x59b3
testb $0xc, %al
je 0x59c5
jmp 0x5a1f
movl %r13d, %edi
movl %edx, %esi
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x5545
movslq %eax, %rcx
movswl (%r14,%rcx,2), %r8d
cmpl $-0x1, %r8d
je 0x59de
movswl (%r14,%r13,2), %edx
movl %edx, %esi
andl $0xf00, %esi            # imm = 0xF00
cmpl $0x800, %esi            # imm = 0x800
jne 0x5a1f
testw %r8w, %r8w
sete %sil
cmpl %r8d, %eax
sete %dil
orb %sil, %dil
je 0x5a02
orb $0x1, 0x1(%r12,%rcx,2)
cmpl $0x2, (%rbx)
jl 0x5a1f
leaq 0x440d(%rip), %rdi      # 0x9dbe
jmp 0x59f4
testl $0xf01, %eax            # imm = 0xF01
setne %al
testb $0x2e, %dl
sete %cl
orb %al, %cl
jne 0x5a1f
orb $0x1, (%r12,%r13,2)
cmpl $0x2, (%rbx)
jl 0x5a1f
movq %r15, %rdi
movl %r13d, %esi
xorl %eax, %eax
callq 0x30c0
jmp 0x5a1f
orb $0x1, (%r12,%r13,2)
cmpl $0x2, (%rbx)
jl 0x5a1f
movswl (%r14,%r13,2), %edx
leaq 0x433d(%rip), %rdi      # 0x9d31
movl %r13d, %esi
movl %eax, %ecx
xorl %eax, %eax
callq 0x30c0
jmp 0x5a1f
orb $0x1, (%r12,%r13,2)
cmpl $0x2, (%rbx)
jl 0x5a1f
leaq 0x436b(%rip), %rdi      # 0x9d7e
movl %r13d, %esi
movl %eax, %ecx
xorl %eax, %eax
callq 0x30c0
incq %r13
cmpq $0x1000, %r13           # imm = 0x1000
jne 0x58ff
xorl %ebp, %ebp
movswl (%r14,%rbp,2), %esi
cmpl $-0x1, %esi
je 0x5b3b
testb $0x1, (%r12,%rbp,2)
jne 0x5b3b
movl %ebp, %edi
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x5545
movl %eax, %r15d
movswl (%r14,%rbp,2), %edx
movl %edx, %eax
shrl $0x8, %eax
andl $0xf, %eax
cmpl $0x8, %eax
jae 0x5acd
movslq %r15d, %r13
orb $0x1, (%r12,%r13,2)
cmpl $0x2, (%rbx)
jl 0x5a8f
leaq 0x438a(%rip), %rdi      # 0x9e08
movl %ebp, %esi
movl %r15d, %ecx
xorl %eax, %eax
callq 0x30c0
movzwl (%r14,%rbp,2), %edx
movl %edx, %eax
andl $0xd00, %eax            # imm = 0xD00
orl $0x200, %eax            # imm = 0x200
cmpl $0x600, %eax            # imm = 0x600
jne 0x5b3b
orb $0x1, 0x1(%r12,%r13,2)
cmpl $0x2, (%rbx)
jl 0x5b3b
movswl %dx, %edx
leaq 0x4387(%rip), %rdi      # 0x9e46
movl %ebp, %esi
movl %r15d, %ecx
xorl %eax, %eax
callq 0x30c0
jmp 0x5b3b
je 0x5aea
cmpl $0xa, %eax
jne 0x5b3b
movslq %r15d, %rax
orb $0x4, (%r12,%rax,2)
cmpl $0x2, (%rbx)
jl 0x5b3b
leaq 0x4430(%rip), %rdi      # 0x9f18
jmp 0x5abf
movslq %r15d, %rax
movzwl (%r14,%rax,2), %ecx
testw %cx, %cx
sete %sil
movswl %cx, %r8d
cmpl %r8d, %r15d
sete %cl
orb %sil, %cl
cmpb $0x1, %cl
jne 0x5b1e
orb $0x2, (%r12,%rax,2)
cmpl $0x2, (%rbx)
jl 0x5b3b
leaq 0x435e(%rip), %rdi      # 0x9e7a
jmp 0x5b2f
orb $0x1, (%r12,%rbp,2)
cmpl $0x2, (%rbx)
jl 0x5b3b
leaq 0x439a(%rip), %rdi      # 0x9ec9
movl %ebp, %esi
movl %r15d, %ecx
xorl %eax, %eax
callq 0x30c0
incq %rbp
cmpq $0x1000, %rbp           # imm = 0x1000
jne 0x5a31
xorl %r13d, %r13d
movswl (%r14,%r13,2), %edx
cmpl $-0x1, %edx
je 0x5d2e
movzwl (%r12,%r13,2), %ecx
btl $0x8, %edx
jae 0x5c2c
movswl %dx, %eax
cmpl $0xbff, %eax            # imm = 0xBFF
jg 0x5c2c
movl %ecx, %eax
andl $0x1, %eax
jne 0x5c2c
movl %r13d, %edi
movl %edx, %esi
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x5545
movl %eax, %r15d
movswl (%r14,%r13,2), %edx
movl %edx, %eax
shrl $0x9, %eax
andl $0x7, %eax
cmpl $0x4, %eax
jae 0x5c4b
movslq %r15d, %rbp
movswq (%r14,%rbp,2), %r8
cmpq $-0x1, %r8
je 0x5d2e
testb $0x1, 0x1(%r12,%rbp,2)
jne 0x5d2e
orb $0x1, (%r12,%r8,2)
cmpl $0x2, (%rbx)
jl 0x5bec
leaq 0x4391(%rip), %rdi      # 0x9f6b
movl %r13d, %esi
movl %r15d, %ecx
xorl %eax, %eax
callq 0x30c0
movzwl (%r14,%r13,2), %edx
movl %edx, %eax
andl $0xc00, %eax            # imm = 0xC00
orl $0x200, %eax            # imm = 0x200
cmpl $0x600, %eax            # imm = 0x600
jne 0x5d2e
movswq (%r14,%rbp,2), %r8
orb $0x1, 0x1(%r12,%r8,2)
cmpl $0x2, (%rbx)
jl 0x5d2e
movswl %dx, %edx
leaq 0x43a1(%rip), %rdi      # 0x9fc2
movl %r13d, %esi
movl %r15d, %ecx
jmp 0x5d07
cmpl $0x3, (%rbx)
jl 0x5d2e
leaq 0x4309(%rip), %rdi      # 0x9f45
movl %r13d, %esi
xorl %eax, %eax
callq 0x30c0
jmp 0x5d2e
je 0x5ca1
cmpl $0x5, %eax
jne 0x5d2e
movslq %r15d, %rax
movswq (%r14,%rax,2), %r8
cmpq $-0x1, %r8
je 0x5cea
movzwl (%r12,%rax,2), %ecx
btl $0x8, %ecx
jb 0x5d2e
orl $0x401, %ecx            # imm = 0x401
movw %cx, (%r12,%rax,2)
orb $0x4, (%r12,%r8,2)
cmpl $0x2, (%rbx)
jl 0x5d2e
movswl (%r14,%r8,2), %r9d
leaq 0x4452(%rip), %rdi      # 0xa0ee
jmp 0x5d21
movslq %r15d, %rax
movswq (%r14,%rax,2), %r8
cmpq $-0x1, %r8
je 0x5d2e
testb $0x1, 0x1(%r12,%rax,2)
jne 0x5d2e
movswl (%r14,%r8,2), %r9d
testw %r9w, %r9w
setne %cl
cmpw %r8w, %r9w
setne %sil
testb %sil, %cl
jne 0x5d10
orb $0x2, (%r12,%r8,2)
orw $0x401, (%r12,%rax,2)   # imm = 0x401
cmpl $0x2, (%rbx)
jl 0x5d2e
leaq 0x432d(%rip), %rdi      # 0xa015
jmp 0x5d21
orb $0x1, (%r12,%r13,2)
cmpl $0x2, (%rbx)
jl 0x5d2e
leaq 0x4486(%rip), %rdi      # 0xa181
movl %r13d, %esi
movl %r15d, %ecx
movl $0xffffffff, %r8d       # imm = 0xFFFFFFFF
xorl %eax, %eax
callq 0x30c0
jmp 0x5d2e
orb $0x1, (%r12,%r13,2)
cmpl $0x2, (%rbx)
jl 0x5d2e
leaq 0x435e(%rip), %rdi      # 0xa07f
movl %r13d, %esi
movl %r15d, %ecx
xorl %eax, %eax
callq 0x30c0
incq %r13
cmpq $0x1000, %r13           # imm = 0x1000
jne 0x5b4e
xorl %r15d, %r15d
testb $0x2, (%r12,%r15,2)
je 0x5d94
movl %r15d, %r13d
orl $0x7f, %r13d
incl %r13d
xorl %ebp, %ebp
movq %r15, %rbx
movswl (%r14,%rbx,2), %esi
movl %esi, %eax
andl $0xf00, %eax            # imm = 0xF00
cmpl $0xb00, %eax            # imm = 0xB00
jne 0x5d83
movl %ebx, %edi
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x5545
movl %eax, %eax
cmpq %rax, %r15
jne 0x5d83
orb $0x8, (%r12,%rbx,2)
incl %ebp
incq %rbx
cmpq %rbx, %r13
jne 0x5d57
testl %ebp, %ebp
jne 0x5d94
andb $-0x3, (%r12,%r15,2)
incq %r15
cmpq $0x1000, %r15           # imm = 0x1000
jne 0x5d41
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
nop