// File: /workspace/github_cpp_makefile_star2_O2/leobru[P]ACPUfont/splitter.cc
// Function: Picture::dump(int, int, int, int, int)
void dump(int cline, int ccol, int lineno, int colno, int where) {
        if (cline-vsize/2 < 0 || ccol-hsize/2 < 0 ||
            cline + vsize/2 >= height || ccol + hsize/2 >= width) {
            fprintf(stderr, "Cell [%d,%d] with center (%d,%d) is out of bounds\n", lineno, colno, cline, ccol);
            return;
        }
        char fname[8192];
        sprintf(fname, "gost%03o", where);
        if (-1 == mkdir(fname, 0700) && errno != EEXIST) {
            perror(fname);
            exit(1);
        }
        if (postproc) 
            sprintf(fname, "%s > gost%03o/l%02dc%03d.pgm", postproc, where, lineno, colno);
        else 
            sprintf(fname, "gost%03o/l%02dc%03d.pgm", where, lineno, colno);
        FILE * f;
        if (postproc) {
            if (runs[currun]) {
                int ret = pclose(runs[currun]); 
                if (ret) {
                    fprintf(stderr, "Postproc failed with %d\n", ret);
                }
            }
            f = runs[currun] = popen(fname, "w") ;
            currun = (currun+1)%128;
        } else {
            f = fopen(fname, "w");
        }
        if (f == NULL) { perror(fname); exit(1); }
        fprintf(f, "P5\n%d %d\n%d\n", hsize, vsize, full);
        for (int i = cline - vsize/2; i <= cline + vsize/2; ++i) {
            for (int j = ccol - hsize/2; j <= ccol + hsize/2; ++j)
                putc(int(p(i,j)), f);
        }
        if (!postproc)
            fclose(f);
        else
            fflush(f);
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x2018, %rsp           # imm = 0x2018
movl %edx, %ebx
movl 0x2fd3(%rip), %eax      # 0x511c
pushq $0x2
popq %r13
cltd
idivl %r13d
movl %esi, 0x8(%rsp)
cmpl %esi, %eax
jg 0x2377
movq %rdi, %r14
movl %eax, %edi
movl 0x2fb0(%rip), %eax      # 0x5118
cltd
idivl %r13d
cmpl %ebx, %eax
jg 0x2377
addl 0x8(%rsp), %edi
cmpl 0x420(%r14), %edi
jge 0x2377
addl %ebx, %eax
cmpl 0x41c(%r14), %eax
jge 0x2377
movl %r9d, %r12d
movl %r8d, 0xc(%rsp)
movl %ecx, %ebp
leaq 0x1060(%rip), %rsi      # 0x3205
leaq 0x10(%rsp), %r15
movq %r15, %rdi
movl %r9d, %edx
xorl %eax, %eax
callq 0x1050
movq %r15, %rdi
movl $0x1c0, %esi            # imm = 0x1C0
callq 0x10c0
cmpl $-0x1, %eax
jne 0x21d7
callq 0x1030
cmpl $0x11, (%rax)
jne 0x23cc
movq 0x428(%r14), %rdx
testq %rdx, %rdx
je 0x2203
leaq 0x1024(%rip), %rsi      # 0x320e
leaq 0x10(%rsp), %rdi
movl %r12d, %ecx
movl %ebp, %r8d
movl 0xc(%rsp), %r9d
xorl %eax, %eax
callq 0x1050
jmp 0x2220
leaq 0x1009(%rip), %rsi      # 0x3213
leaq 0x10(%rsp), %rdi
movl %r12d, %edx
movl %ebp, %ecx
movl 0xc(%rsp), %r8d
xorl %eax, %eax
callq 0x1050
cmpq $0x0, 0x428(%r14)
je 0x227b
movslq 0x418(%r14), %rax
movq 0x18(%r14,%rax,8), %rdi
testq %rdi, %rdi
je 0x2248
callq 0x1180
testl %eax, %eax
jne 0x23ad
leaq 0xf74(%rip), %rsi       # 0x31c3
leaq 0x10(%rsp), %rdi
callq 0x1090
movq %rax, %r15
movslq 0x418(%r14), %rax
movq %r15, 0x18(%r14,%rax,8)
incl %eax
movl $0x80, %ecx
cltd
idivl %ecx
movl %edx, 0x418(%r14)
jmp 0x228f
leaq 0xf41(%rip), %rsi       # 0x31c3
leaq 0x10(%rsp), %rdi
callq 0x1160
movq %rax, %r15
testq %r15, %r15
je 0x23cc
movl 0x2e7a(%rip), %edx      # 0x5118
movl 0x2e78(%rip), %ecx      # 0x511c
movl 0x424(%r14), %r8d
leaq 0xf92(%rip), %rsi       # 0x3244
movq %r15, %rdi
xorl %eax, %eax
callq 0x1190
movl 0x2e5a(%rip), %ecx      # 0x511c
pushq $-0x2
popq %rsi
movl %ecx, %eax
cltd
idivl %esi
movl %eax, %edi
addl 0x8(%rsp), %edi
movl %ecx, %eax
cltd
idivl %r13d
addl 0x8(%rsp), %eax
cmpl %eax, %edi
jg 0x233b
movl 0x2e34(%rip), %ecx      # 0x5118
movl %ecx, %eax
cltd
pushq $-0x2
popq %rsi
idivl %esi
addl %ebx, %eax
movslq %eax, %rbp
movl %edi, 0xc(%rsp)
movslq %edi, %r12
movl %ecx, %eax
cltd
idivl %r13d
addl %ebx, %eax
cmpl %eax, %ebp
jg 0x232d
movslq 0x41c(%r14), %rax
imulq %r12, %rax
addq %rbp, %rax
movq (%r14), %rcx
cvttsd2si (%rcx,%rax,8), %edi
movq %r15, %rsi
callq 0x11f0
movl 0x2df0(%rip), %ecx      # 0x5118
incq %rbp
jmp 0x22f8
movl 0xc(%rsp), %edi
incl %edi
movl 0x2de3(%rip), %ecx      # 0x511c
jmp 0x22d0
cmpq $0x0, 0x428(%r14)
je 0x235e
movq %r15, %rdi
addq $0x2018, %rsp           # imm = 0x2018
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1150
movq %r15, %rdi
addq $0x2018, %rsp           # imm = 0x2018
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1110
movq 0x2c52(%rip), %rax      # 0x4fd0
movq (%rax), %rdi
leaq 0xe4a(%rip), %rsi       # 0x31d2
movl %ecx, %edx
movl %r8d, %ecx
movl 0x8(%rsp), %r8d
movl %ebx, %r9d
xorl %eax, %eax
addq $0x2018, %rsp           # imm = 0x2018
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1190
movq 0x2c1c(%rip), %rcx      # 0x4fd0
movq (%rcx), %rdi
leaq 0xe6d(%rip), %rsi       # 0x322b
movl %eax, %edx
xorl %eax, %eax
callq 0x1190
jmp 0x2248
leaq 0x10(%rsp), %rdi
callq 0x10f0
pushq $0x1
popq %rdi
callq 0x1170