// File: /workspace/github_c_makefile_star2_O0/coapp-packages[P]bzip2/bzip2.c
// Function: cleanUpAndFail
static 
void cleanUpAndFail ( Int32 ec )
{
   IntNative      retVal;
   struct MY_STAT statBuf;

   if ( srcMode == SM_F2F 
        && opMode != OM_TEST
        && deleteOutputOnInterrupt ) {

      /* Check whether input file still exists.  Delete output file
         only if input exists to avoid loss of data.  Joerg Prante, 5
         January 2002.  (JRS 06-Jan-2002: other changes in 1.0.2 mean
         this is less likely to happen.  But to be ultra-paranoid, we
         do the check anyway.)  */
      retVal = MY_STAT ( inName, &statBuf );
      if (retVal == 0) {
         if (noisy)
            fprintf ( stderr, 
                      "%s: Deleting output file %s, if it exists.\n",
                      progName, outName );
         if (outputHandleJustInCase != NULL)
            fclose ( outputHandleJustInCase );
         retVal = remove ( outName );
         if (retVal != 0)
            fprintf ( stderr,
                      "%s: WARNING: deletion of output file "
                      "(apparently) failed.\n",
                      progName );
      } else {
         fprintf ( stderr,
                   "%s: WARNING: deletion of output file suppressed\n",
                    progName );
         fprintf ( stderr,
                   "%s:    since input file no longer exists.  Output file\n",
                   progName );
         fprintf ( stderr,
                   "%s:    `%s' may be incomplete.\n",
                   progName, outName );
         fprintf ( stderr, 
                   "%s:    I suggest doing an integrity test (bzip2 -tv)"
                   " of it.\n",
                   progName );
      }
   }

   if (noisy && numFileNames > 0 && numFilesProcessed < numFileNames) {
      fprintf ( stderr, 
                "%s: WARNING: some files have not been processed:\n"
                "%s:    %d specified on command line, %d not processed yet.\n\n",
                progName, progName,
                numFileNames, numFileNames - numFilesProcessed );
   }
   setExit(ec);
   exit(exitValue);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xa0, %rsp
movl %edi, -0x4(%rbp)
cmpl $0x3, 0x1a2a7(%rip)     # 0x1eadc
jne 0x4977
cmpl $0x3, 0x1a29e(%rip)     # 0x1eae0
je 0x4977
movzbl 0x19645(%rip), %eax     # 0x1de94
cmpl $0x0, %eax
je 0x4977
leaq 0x19641(%rip), %rdi     # 0x1dea0
leaq -0x98(%rbp), %rsi
callq 0x2180
movl %eax, -0x8(%rbp)
cmpl $0x0, -0x8(%rbp)
jne 0x48f2
cmpb $0x0, 0x19600(%rip)     # 0x1de7b
je 0x48a3
movq 0x18774(%rip), %rax     # 0x1cff8
movq (%rax), %rdi
movq 0x1a242(%rip), %rdx     # 0x1ead0
leaq 0x14197(%rip), %rsi     # 0x18a2c
leaq 0x19a14(%rip), %rcx     # 0x1e2b0
movb $0x0, %al
callq 0x2170
cmpq $0x0, 0x195c5(%rip)     # 0x1de70
je 0x48b9
movq 0x195bc(%rip), %rdi     # 0x1de70
callq 0x20e0
leaq 0x199f0(%rip), %rdi     # 0x1e2b0
callq 0x2080
movl %eax, -0x8(%rbp)
cmpl $0x0, -0x8(%rbp)
je 0x48ed
movq 0x18723(%rip), %rax     # 0x1cff8
movq (%rax), %rdi
movq 0x1a1f1(%rip), %rdx     # 0x1ead0
leaq 0x14172(%rip), %rsi     # 0x18a58
movb $0x0, %al
callq 0x2170
jmp 0x4975
movq 0x186ff(%rip), %rax     # 0x1cff8
movq (%rax), %rdi
movq 0x1a1cd(%rip), %rdx     # 0x1ead0
leaq 0x14189(%rip), %rsi     # 0x18a93
movb $0x0, %al
callq 0x2170
movq 0x186e0(%rip), %rax     # 0x1cff8
movq (%rax), %rdi
movq 0x1a1ae(%rip), %rdx     # 0x1ead0
leaq 0x1419b(%rip), %rsi     # 0x18ac4
movb $0x0, %al
callq 0x2170
movq 0x186c1(%rip), %rax     # 0x1cff8
movq (%rax), %rdi
movq 0x1a18f(%rip), %rdx     # 0x1ead0
leaq 0x141b4(%rip), %rsi     # 0x18afc
leaq 0x19961(%rip), %rcx     # 0x1e2b0
movb $0x0, %al
callq 0x2170
movq 0x1869b(%rip), %rax     # 0x1cff8
movq (%rax), %rdi
movq 0x1a169(%rip), %rdx     # 0x1ead0
leaq 0x141ae(%rip), %rsi     # 0x18b1c
movb $0x0, %al
callq 0x2170
jmp 0x4977
movzbl 0x194fd(%rip), %eax     # 0x1de7b
cmpl $0x0, %eax
je 0x49d5
cmpl $0x0, 0x194fe(%rip)     # 0x1de88
jle 0x49d5
movl 0x194fa(%rip), %eax     # 0x1de8c
cmpl 0x194f0(%rip), %eax     # 0x1de88
jge 0x49d5
movq 0x18657(%rip), %rax     # 0x1cff8
movq (%rax), %rdi
movq 0x1a125(%rip), %rdx     # 0x1ead0
movq 0x1a11e(%rip), %rcx     # 0x1ead0
movl 0x194cf(%rip), %r8d     # 0x1de88
movl 0x194c8(%rip), %r9d     # 0x1de88
subl 0x194c5(%rip), %r9d     # 0x1de8c
leaq 0x1418b(%rip), %rsi     # 0x18b59
movb $0x0, %al
callq 0x2170
movl -0x4(%rbp), %edi
callq 0x4400
movl 0x194b5(%rip), %edi     # 0x1de98
callq 0x2240
nopl (%rax,%rax)