// File: /workspace/github_c_makefile_star2_O2/inflex[P]ripMIME/ripmime.c
// Function: RIPMIME_parse_parameters
int RIPMIME_parse_parameters (struct RIPMIME_globals *glb, int argc, char **argv)
{
   int i;
   int result = 0;

   MIME_set_filename_report_fn (RIPMIME_report_filename_decoded);

   for (i = 1; i < argc; i++)
   {
       // if the first char of the argument is a '-', then we possibly have a flag

       if (argv[i][0] == '-')
       {
           // test the 2nd char of the parameter

           switch (argv[i][1])
           {
               case 'i':
                   if (argv[i][2] != '\0')
                   {
                       glb->inputfile = &argv[i][2];
                   }
                   else
                   {
                       i++;
                       if (i < argc)
                       {
                           glb->inputfile = argv[i];
                       }
                       else
                       {
                           LOGGER_log("ERROR: insufficient parameters after '-i'\n");
                       }
                   }
                   break;

               case 'd':
                   if (argv[i][2] != '\0')
                   {
                       glb->dir = &(argv[i][2]);
                   }
                   else
                   {
                       i++;
                       if (i < argc)
                       {
                           glb->dir = argv[i];
                       }
                       else
                       {
                           LOGGER_log("ERROR: insufficient parameters after '-d'\n");
                       }
                   }

                   break;

               case 'p':
                   if (argv[i][2] != '\0')
                   {
                       MIME_set_blankfileprefix (&argv[i][2]);
                   }
                   else
                   {
                       i++;
                       if (i < argc)
                       {
                           MIME_set_blankfileprefix (argv[i]);
                       }
                       else
                       {
                           LOGGER_log("ERROR: insufficient parameters after '-p'\n");
                       }
                   }
                   break;      // this is in mime.h

               case 'e':
                   MIME_set_dumpheaders (1);
                   if (argv[i][2] != '\0')
                   {
                       MIME_set_headersname (&argv[i][2]);
                   }
                   else
                   {
                       if ((i < (argc - 1)) && (argv[i + 1][0] != '-'))
                           MIME_set_headersname (argv[++i]);
                   }
                   break;      // makes MIME dump out the headers to a file
#ifdef RIPMIME_BLANKZONE
               case 'b':
                   if (argv[i][2] != '\0')
                   {
                       MIME_set_blankzone_filename (&argv[i][2]);
                   }
                   else
                   {
                       if ((i < (argc - 1)) && (argv[i + 1][0] != '-'))
                           MIME_set_blankzone_filename (argv[++i]);
                   }
                   break;      // blankzone storage option
#endif

               case 'v':
                   MIME_set_verbosity (1);
                   glb->verbose = 1;
                   break;

               case 'q':
                   glb->quiet = 1;
                   MIME_set_quiet(glb->quiet);
                   break;

               case 'V':
                   fprintf (stdout, "%s\n", version);
                   exit (1);
                   break;
               case 'h':
                   fprintf (stdout, "%s\n", help);
                   exit (1);
                   break;

                   // if we get ANOTHER - symbol, then we have an extended flag

               case '-':
                   if (strncmp (&(argv[i][2]), "verbose-contenttype", strlen ("verbose-contenttype")) == 0) {
                       MIME_set_verbosity_contenttype (1);

                   /** 20051117-0927:PLD:
                    ** If client uses --verbose-mime, then make ripMIME report when it
                    ** detects a MIME encoded email **/
                   } else if (strncmp(&(argv[i][2]), "verbose-mime", strlen("verbose-mime"))==0) {
                       MIME_set_report_MIME(1);

                   } else if (strncmp (&(argv[i][2]), "verbose-oldstyle", strlen ("verbose-oldstyle")) == 0) {
                           MIME_set_verbosity_12x_style (1);
                           MIME_set_filename_report_fn (NULL);
                       }
                       else if (strncmp (&(argv[i][2]), "verbose-defects",15) == 0)
                       {
                           glb->verbose_defects = 1;
                           MIME_set_verbose_defects(1);
                       }
                       else if (strncmp (&(argv[i][2]), "paranoid", 8) == 0)
                       {
                           MIME_set_paranoid (1);
                       }
                       else if (strncmp (&(argv[i][2]), "no_paranoid", 11) == 0)
                       {
                           MIME_set_paranoid (0);
                       }
                       else if (strncmp (&(argv[i][2]), "no-paranoid", 11) == 0)
                       {
                           MIME_set_paranoid (0);
                       }
                       else if (strncmp (&(argv[i][2]), "prefix", 6) == 0)
                       {
                           MIME_set_renamemethod (_MIME_RENAME_METHOD_PREFIX);
                       }
                       else if (strncmp (&(argv[i][2]), "postfix", 7) == 0)
                       {
                           MIME_set_renamemethod (_MIME_RENAME_METHOD_POSTFIX);
                       }
                       else if (strncmp (&(argv[i][2]), "infix", 5) == 0)
                       {
                           MIME_set_renamemethod (_MIME_RENAME_METHOD_INFIX);
                       }
                       /* New methods of generating file name: add counter and random number*/
                       else if (strncmp (&(argv[i][2]), "randprefix", 10) == 0)
                       {
                           MIME_set_renamemethod (_MIME_RENAME_METHOD_RANDPREFIX);
                       }
                       else if (strncmp (&(argv[i][2]), "randpostfix", 11) == 0)
                       {
                           MIME_set_renamemethod (_MIME_RENAME_METHOD_RANDPOSTFIX);
                       }
                       else if (strncmp (&(argv[i][2]), "randinfix", 9) == 0)
                       {
                           MIME_set_renamemethod (_MIME_RENAME_METHOD_RANDINFIX);
                       }
                       else if (strncmp (&(argv[i][2]), "overwrite", 9) == 0)
                       {
                           MIME_set_uniquenames (0);
                       }
                       else if (strncmp (&(argv[i][2]), "unique_names", 12) == 0)
                       {
                           MIME_set_uniquenames (1);
                       }
                       else if (strncmp (&(argv[i][2]), "unique-names", 12) == 0)
                       {
                           MIME_set_uniquenames (1);
                       }
                       else if (strncmp(&(argv[i][2]), "name-by-type", 12) == 0)
                       {
                           MIME_set_name_by_type(1);
                       }
                       else if (strncmp (&(argv[i][2]), "syslog", 9) == 0)
                       {
                           LOGGER_set_output_mode (_LOGGER_SYSLOG);
                           LOGGER_set_syslog_mode (LOG_MAIL | LOG_INFO);
                       }
                       else if (strncmp (&(argv[i][2]), "stderr", 10) == 0)
                       {
                           LOGGER_set_output_mode (_LOGGER_STDERR);
                       }
                       else if (strncmp (&(argv[i][2]), "stdout", 9) == 0)
                       {
                           LOGGER_set_output_mode (_LOGGER_STDOUT);
                       }
                       else if (strncmp (&(argv[i][2]), "no_nameless", 11) == 0)
                       {
                           MIME_set_no_nameless (1);
                       }
                       else if (strncmp (&(argv[i][2]), "no-nameless", 11) == 0)
                       {
                           MIME_set_no_nameless (1);
                       }
                       else if (strncmp (&(argv[i][2]), "debug", 5) == 0)
                       {
                           MIME_set_debug (1);
                       }
                       else if (strncmp (&(argv[i][2]), "mailbox", 7) == 0)
                       {
                           MIME_set_mailboxformat (1);
                       }
                       else if (strncmp(&(argv[i][2]), "formdata", 8) == 0)
                       {
                           // Form data usually contains embedded \0 sequences
                           //      so we need to explicitly turn this off.
                           FFGET_set_allow_nul(1);
                       }
                       else if (strncmp (&(argv[i][2]), "no_uudecode", 11) == 0)
                       {
                           // We are transitioning away from negative-logic function
                           //  names because they can cause confusion when reading, so
                           // from here on, we will use things like _set_foo() rather
                           // than _set_no_foo()

                           MIME_set_decode_uudecode(0);
                       }
                       else if (strncmp (&(argv[i][2]), "no-uudecode", 11) == 0)
                       {
                           MIME_set_decode_uudecode(0);
                       }
                       else if (strncmp (&(argv[i][2]), "no-tnef", 7) == 0)
                       {
                           MIME_set_decode_tnef (0);
                       }
                       else if (strncmp (&(argv[i][2]), "no-ole", 6) == 0)
                       {
                           MIME_set_decode_ole(0);
                       }
                       else if (strncmp (&(argv[i][2]), "no-base64", 9) == 0)
                       {
                           MIME_set_decode_base64(0);
                       }
                       else if (strncmp (&(argv[i][2]), "no-quotedprintable", strlen("no-quotedprintable")) == 0)
                       {
                           MIME_set_decode_qp(0);
                       }
                       else if (strncmp(&(argv[i][2]), "no-doublecr", strlen("no-doublecr")) == 0)
                       {
                           MIME_set_decode_doubleCR(0);
                       }
                       else if (strncmp(&(argv[i][2]), "no-mht", strlen("no-mht")) == 0)
                       {
                           MIME_set_decode_mht(0);
                       }
                   else if (strncmp(&(argv[i][2]), "disable-header-fix", strlen("disable-headerfix")) == 0) {
                           MIMEH_set_headerfix(0);
                   }
                       else if (strncmp(&(argv[i][2]), "qmail-bounce", strlen("qmail-bounce")) == 0)
                       {
                           MIME_set_header_longsearch(1);
                       }
                       else if (strncmp(&(argv[i][2]), "disable-qmail-bounce", strlen("disable-qmail-bounce")) == 0)
                       {
                           MIME_set_header_longsearch(0);
                       }
                       else if (strncmp(&(argv[i][2]), "no-multiple-filenames", strlen("no-multiple-filenames")) == 0)
                       {
                           MIME_set_multiple_filenames(0);
                       }
                       else if (strncmp(&(argv[i][2]), "recursion-max", strlen("recursion-max")) == 0)
                       {
                           if (argv[i+1] != NULL)
                           {
                               int level;

                               level = atoi(argv[i+1]);
                               if (level > 0)
                               {
                                   MIME_set_recursion_level(level);
                               }
                           }
                       }
                       else if (strncmp(&(argv[i][2]), "timeout", strlen("timeout")) == 0)
                       {
                           if (argv[i+1] != NULL)
                           {
                               int seconds;

                               seconds = atoi(argv[i+1]);
                               if (seconds > 0)
                               {
                                   glb->timeout = seconds;
                               }
                           }
                       }
                       else if (strncmp (&(argv[i][2]), "buildcodes", 10) == 0)
                       {
                           fprintf(stdout,"%s\n%s\n%s\n", BUILD_CODE, BUILD_DATE, BUILD_BOX);
                           exit(0);
                       }
                       else if (strncmp (&(argv[i][2]), "version", 7) == 0)
                       {
                           fprintf (stdout, "%s\n", version);
                           exit (0);
                       }
                       else if (strncmp(&(argv[i][2]), "extended-errors", strlen("extended-errors")) == 0)
                       {
                           glb->use_return_codes = 1;
                       }
                       else
                       {
                           LOGGER_log ("Cannot interpret option \"%s\"\n%s\n", argv[i],
                                   help);
                           exit (1);
                           break;
                       }
                   break;

                   // else, just dump out the help message

               default:
                   LOGGER_log ("Cannot interpret option \"%s\"\n%s\n", argv[i],
                           help);
                   exit (1);
                   break;

           }           // Switch argv[i][1]

       }           // if argv[i][0] == -

   }               // for

   return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq %rdx, %rbx
movl %esi, %r14d
movq %rdi, %r13
leaq -0x6e(%rip), %rdi       # 0x24fc
callq 0x34d9
leal -0x1(%r14), %eax
movl %eax, 0x14(%rsp)
pushq $0x1
popq %r15
movq %r13, 0x8(%rsp)
cmpl %r14d, %r15d
jge 0x2ce4
movslq %r15d, %rbp
movq (%rbx,%rbp,8), %r12
cmpb $0x2d, (%r12)
jne 0x2bb5
movzbl 0x1(%r12), %eax
leal -0x64(%rax), %ecx
cmpl $0xd, %ecx
ja 0x25d2
leaq 0xea54(%rip), %rdx      # 0x11004
movslq (%rdx,%rcx,4), %rax
addq %rdx, %rax
jmpq *%rax
cmpb $0x0, 0x2(%r12)
je 0x2ad6
addq $0x2, %r12
movq %r12, 0x8(%r13)
jmp 0x2bb5
cmpl $0x2d, %eax
je 0x2663
cmpl $0x76, %eax
jne 0x2cf5
pushq $0x1
popq %rdi
callq 0x33a5
movl $0x1, 0x20(%r13)
jmp 0x2bb5
cmpb $0x0, 0x2(%r12)
je 0x2abe
addq $0x2, %r12
movq %r12, (%r13)
jmp 0x2bb5
cmpb $0x0, 0x2(%r12)
je 0x2aee
addq $0x2, %r12
movq %r12, %rdi
jmp 0x2afd
pushq $0x1
popq %rdi
callq 0x34f5
movq (%rbx,%rbp,8), %rdi
cmpb $0x0, 0x2(%rdi)
je 0x2b07
addq $0x2, %rdi
callq 0x3507
jmp 0x2bb5
movl $0x1, 0x18(%r13)
pushq $0x1
popq %rdi
callq 0x3388
jmp 0x2bb5
leaq 0x2(%r12), %r13
movq %r13, %rdi
leaq 0xea85(%rip), %rsi      # 0x110f7
pushq $0x13
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2b28
movq %r13, %rdi
leaq 0xea7f(%rip), %rsi      # 0x1110b
pushq $0xc
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2b32
movq %r13, %rdi
leaq 0xea72(%rip), %rsi      # 0x11118
pushq $0x10
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2b5e
movq %r13, %rdi
leaq 0xea69(%rip), %rsi      # 0x11129
pushq $0xf
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2b6f
movq %r13, %rdi
leaq 0xea6e(%rip), %rsi      # 0x11148
pushq $0x8
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2b8a
movq %r13, %rdi
leaq 0xea45(%rip), %rsi      # 0x11139
pushq $0xb
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2b86
movq %r13, %rdi
leaq 0xea37(%rip), %rsi      # 0x11145
pushq $0xb
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2b86
movq %r13, %rdi
leaq 0xea2d(%rip), %rsi      # 0x11155
pushq $0x6
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2b94
movq %r13, %rdi
leaq 0xea1e(%rip), %rsi      # 0x11160
pushq $0x7
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2b98
movq %r13, %rdi
leaq 0xea10(%rip), %rsi      # 0x1116c
pushq $0x5
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2b9c
movq %r13, %rdi
leaq 0xe9db(%rip), %rsi      # 0x11151
pushq $0xa
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2ba0
movq %r13, %rdi
leaq 0xe9cc(%rip), %rsi      # 0x1115c
pushq $0xb
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2ba4
movq %r13, %rdi
leaq 0xe9be(%rip), %rsi      # 0x11168
pushq $0x9
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2ba8
movq %r13, %rdi
leaq 0xe9ae(%rip), %rsi      # 0x11172
pushq $0x9
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2bc2
movq %r13, %rdi
leaq 0xe99e(%rip), %rsi      # 0x1117c
pushq $0xc
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2bbd
movq %r13, %rdi
leaq 0xe991(%rip), %rsi      # 0x11189
pushq $0xc
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2bbd
movq %r13, %rdi
leaq 0xe984(%rip), %rsi      # 0x11196
pushq $0xc
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2bcb
movq %r13, %rdi
leaq 0xe977(%rip), %rsi      # 0x111a3
pushq $0x9
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2bd5
movq %r13, %rdi
leaq 0xe964(%rip), %rsi      # 0x111aa
pushq $0xa
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2be7
movq %r13, %rdi
leaq 0xe951(%rip), %rsi      # 0x111b1
pushq $0x9
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2bf5
movq %r13, %rdi
leaq 0xe93e(%rip), %rsi      # 0x111b8
pushq $0xb
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2beb
movq %r13, %rdi
leaq 0xe930(%rip), %rsi      # 0x111c4
pushq $0xb
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2beb
movq %r13, %rdi
leaq 0xe922(%rip), %rsi      # 0x111d0
pushq $0x5
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2bff
movq %r13, %rdi
leaq 0xe90e(%rip), %rsi      # 0x111d6
pushq $0x7
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c09
movq %r13, %rdi
leaq 0xe8fc(%rip), %rsi      # 0x111de
pushq $0x8
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c1c
movq %r13, %rdi
leaq 0xe8eb(%rip), %rsi      # 0x111e7
pushq $0xb
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c13
movq %r13, %rdi
leaq 0xe8dd(%rip), %rsi      # 0x111f3
pushq $0xb
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c13
movq %r13, %rdi
leaq 0xe8cf(%rip), %rsi      # 0x111ff
pushq $0x7
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c26
movq %r13, %rdi
leaq 0xe8bd(%rip), %rsi      # 0x11207
pushq $0x6
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c2f
movq %r13, %rdi
leaq 0xe8aa(%rip), %rsi      # 0x1120e
pushq $0x9
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c3b
movq %r13, %rdi
leaq 0xe89a(%rip), %rsi      # 0x11218
pushq $0x12
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c47
movq %r13, %rdi
leaq 0xe893(%rip), %rsi      # 0x1122b
pushq $0xb
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c53
movq %r13, %rdi
leaq 0xe885(%rip), %rsi      # 0x11237
pushq $0x6
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c5f
movq %r13, %rdi
leaq 0xe872(%rip), %rsi      # 0x1123e
pushq $0x11
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c6b
movq %r13, %rdi
leaq 0xe873(%rip), %rsi      # 0x11259
pushq $0xc
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c77
movq %r13, %rdi
leaq 0xe851(%rip), %rsi      # 0x11251
pushq $0x14
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c7c
movq %r13, %rdi
leaq 0xe84c(%rip), %rsi      # 0x11266
pushq $0x15
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c88
movq %r13, %rdi
leaq 0xe848(%rip), %rsi      # 0x1127c
pushq $0xd
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2c94
movq %r13, %rdi
leaq 0xe83c(%rip), %rsi      # 0x1128a
pushq $0x7
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2cbb
movq %r13, %rdi
leaq 0xe82a(%rip), %rsi      # 0x11292
pushq $0xa
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2d55
movq %r13, %rdi
leaq 0xe8bd(%rip), %rsi      # 0x1133f
pushq $0x7
popq %rdx
callq 0x20a0
testl %eax, %eax
je 0x2d84
movq %r13, %rdi
leaq 0xe8ab(%rip), %rsi      # 0x11347
pushq $0xf
popq %rdx
callq 0x20a0
testl %eax, %eax
jne 0x2d14
movq 0x8(%rsp), %r13
movl $0x1, 0x10(%r13)
jmp 0x2bb5
incl %r15d
cmpl %r14d, %r15d
jge 0x2b3c
movslq %r15d, %rax
movq (%rbx,%rax,8), %rax
movq %rax, (%r13)
jmp 0x2bb5
incl %r15d
cmpl %r14d, %r15d
jge 0x2b45
movslq %r15d, %rax
movq (%rbx,%rax,8), %rax
movq %rax, 0x8(%r13)
jmp 0x2bb5
incl %r15d
cmpl %r14d, %r15d
jge 0x2b4e
movslq %r15d, %rax
movq (%rbx,%rax,8), %rdi
callq 0x3466
jmp 0x2bb5
cmpl 0x14(%rsp), %r15d
jge 0x2bb5
movq 0x8(%rbx,%rbp,8), %rdi
cmpb $0x2d, (%rdi)
je 0x2bb5
incl %r15d
jmp 0x2644
pushq $0x1
popq %rdi
callq 0x34a3
jmp 0x2bb0
pushq $0x1
popq %rdi
callq 0x34d0
jmp 0x2bb0
leaq 0xe533(%rip), %rdi      # 0x11076
jmp 0x2b55
leaq 0xe555(%rip), %rdi      # 0x110a1
jmp 0x2b55
leaq 0xe577(%rip), %rdi      # 0x110cc
xorl %eax, %eax
callq 0xc2a1
jmp 0x2bb5
pushq $0x1
popq %rdi
callq 0x3491
xorl %edi, %edi
callq 0x34d9
jmp 0x2bb0
movq 0x8(%rsp), %r13
movl $0x1, 0x1c(%r13)
pushq $0x1
popq %rdi
callq 0x34c7
jmp 0x2bb5
xorl %edi, %edi
jmp 0x2b8d
pushq $0x1
popq %rdi
callq 0x3542
jmp 0x2bb0
pushq $0x2
jmp 0x2baa
pushq $0x3
jmp 0x2baa
pushq $0x1
jmp 0x2baa
pushq $0x5
jmp 0x2baa
pushq $0x6
jmp 0x2baa
pushq $0x4
popq %rdi
callq 0x355e
movq 0x8(%rsp), %r13
incl %r15d
jmp 0x2580
pushq $0x1
popq %rdi
jmp 0x2bc4
xorl %edi, %edi
callq 0x3539
jmp 0x2bb0
pushq $0x1
popq %rdi
callq 0x3346
jmp 0x2bb0
pushq $0x4
popq %rdi
callq 0xc0cc
pushq $0x16
popq %rdi
callq 0xc0df
jmp 0x2bb0
pushq $0x1
jmp 0x2bf7
pushq $0x1
popq %rdi
callq 0x3530
jmp 0x2bb0
pushq $0x2
popq %rdi
callq 0xc0cc
jmp 0x2bb0
pushq $0x1
popq %rdi
callq 0x334f
jmp 0x2bb0
pushq $0x1
popq %rdi
callq 0x354e
jmp 0x2bb0
xorl %edi, %edi
callq 0x33fe
jmp 0x2bb0
pushq $0x1
popq %rdi
callq 0x73e5
jmp 0x2bb0
xorl %edi, %edi
callq 0x33e3
jmp 0x2bb0
xorl %edi, %edi
callq 0x33f5
jmp 0x2bb0
xorl %edi, %edi
callq 0x3412
jmp 0x2bb0
xorl %edi, %edi
callq 0x341b
jmp 0x2bb0
xorl %edi, %edi
callq 0x342f
jmp 0x2bb0
xorl %edi, %edi
callq 0x343b
jmp 0x2bb0
xorl %edi, %edi
callq 0x7c24
jmp 0x2bb0
pushq $0x1
popq %rdi
jmp 0x2c7e
xorl %edi, %edi
callq 0x3444
jmp 0x2bb0
xorl %edi, %edi
callq 0x34fe
jmp 0x2bb0
movq 0x8(%rbx,%rbp,8), %rdi
testq %rdi, %rdi
je 0x2bb0
callq 0x2360
testl %eax, %eax
jle 0x2bb0
movl %eax, %edi
callq 0x33da
jmp 0x2bb0
movq 0x8(%rbx,%rbp,8), %rdi
testq %rdi, %rdi
je 0x2bb0
callq 0x2360
testl %eax, %eax
jle 0x2bb0
movq 0x8(%rsp), %r13
movl %eax, 0x14(%r13)
jmp 0x2bb5
xorl %eax, %eax
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
cmpl $0x56, %eax
jne 0x2d14
movq 0x1c2cf(%rip), %rax     # 0x1efd0
movq (%rax), %rdi
leaq 0x14a18(%rip), %rsi     # 0x17723
leaq 0x1c50e(%rip), %rdx     # 0x1f220
jmp 0x2d46
leaq 0xe63c(%rip), %rdi      # 0x11357
leaq 0x1c54e(%rip), %rdx     # 0x1f270
movq %r12, %rsi
xorl %eax, %eax
callq 0xc2a1
jmp 0x2d4d
movq 0x1c29b(%rip), %rax     # 0x1efd0
movq (%rax), %rdi
leaq 0x149e4(%rip), %rsi     # 0x17723
leaq 0x1c52a(%rip), %rdx     # 0x1f270
xorl %eax, %eax
callq 0x2210
pushq $0x1
popq %rdi
callq 0x2390
movq 0x1c274(%rip), %rax     # 0x1efd0
movq (%rax), %rdi
leaq 0xe537(%rip), %rsi      # 0x1129d
leaq 0xe53a(%rip), %rdx      # 0x112a7
leaq 0xe53e(%rip), %rcx      # 0x112b2
leaq 0xe554(%rip), %r8       # 0x112cf
xorl %eax, %eax
callq 0x2210
jmp 0x2da3
movq 0x1c245(%rip), %rax     # 0x1efd0
movq (%rax), %rdi
leaq 0x1498e(%rip), %rsi     # 0x17723
leaq 0x1c484(%rip), %rdx     # 0x1f220
xorl %eax, %eax
callq 0x2210
xorl %edi, %edi
callq 0x2390