// File: /workspace/github_c_makefile_star2_O3/yhg926[P]public_kssd/global_wrapper.c
// Function: parse_global
static error_t parse_global(int key, char* arg, struct argp_state* state)
{
  if(key == '?' || key=='u')
   state->name = long_domain;
 else if (key == 'l'){
  printf("%s\n",doc_license);
  return EINVAL;
 }
  else if(key==ARGP_KEY_ARG){
      assert( arg );
      state->name = domain;
      if(strcmp(arg, "shuffle") == 0) {
         cmd_shuffle(state);
      }
   else if(strcmp(arg, "set") == 0) {
    cmd_set(state);
   }
   else if(strcmp(arg, "dist") == 0)
   {
    cmd_dist(state);
   }
   else if(strcmp(arg, "reverse") == 0)
    cmd_reverse(state);
   else if(strcmp(arg, "composite") == 0)
    cmd_composite(state);
   else if(strcmp(arg, "primer") == 0)
     for(int i = 8;i<52;i++ )
       printf("%llu\n",find_lgst_primer_2pow(i));
   else {
        argp_error(state, "%s is not a valid command", arg);
      }
  }
  else if(key == ARGP_KEY_NO_ARGS){
        state->name = long_domain;
    printf("\n%s\n\n",argp_program_version);
    printf("Unit_space_size = %d\n\n", COMPONENT_SZ);
    printf("Type 'kssd --license' for license and copyright information.\n\n");
        argp_state_help(state,stdout,ARGP_HELP_SHORT_USAGE);
        printf("\v");
        argp_state_help(state,stdout,ARGP_HELP_POST_DOC);
        return EINVAL;
  }
  else if(key == ARGP_KEY_INVALID){
      state->name = state->argv[0] = domain;
      return ARGP_ERR_UNKNOWN;
  }
  else return ARGP_ERR_UNKNOWN;
  return 0;
}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
movq %rdx, %rbx
movl $0x7, %ebp
cmpl $0x74, %edi
jg 0x12b5f
testl %edi, %edi
je 0x12b92
cmpl $0x3f, %edi
je 0x12b80
cmpl $0x6c, %edi
jne 0x12cda
leaq 0xb70b(%rip), %rdi      # 0x1e260
callq 0x30a0
jmp 0x12cd5
cmpl $0x1000003, %edi        # imm = 0x1000003
je 0x12c4e
cmpl $0x1000002, %edi        # imm = 0x1000002
je 0x12c62
cmpl $0x75, %edi
jne 0x12cda
movq 0x4ba81(%rip), %rax     # 0x5e608
movq %rax, 0x40(%rbx)
xorl %ebp, %ebp
jmp 0x12cda
movq %rsi, %r14
testq %rsi, %rsi
je 0x12d4d
movq 0x4ba5b(%rip), %rax     # 0x5e600
movq %rax, 0x40(%rbx)
leaq 0x4a6f(%rip), %rsi      # 0x1761f
movq %r14, %rdi
callq 0x32b0
testl %eax, %eax
je 0x12ce1
leaq 0x4429(%rip), %rsi      # 0x16ff0
movq %r14, %rdi
callq 0x32b0
testl %eax, %eax
je 0x12cee
leaq 0x3ac7(%rip), %rsi      # 0x166a5
movq %r14, %rdi
callq 0x32b0
testl %eax, %eax
je 0x12cfb
leaq 0x41ac(%rip), %rsi      # 0x16da1
movq %r14, %rdi
callq 0x32b0
testl %eax, %eax
je 0x12d08
leaq 0x26d4(%rip), %rsi      # 0x152e0
movq %r14, %rdi
callq 0x32b0
testl %eax, %eax
je 0x12d15
leaq 0x5480(%rip), %rsi      # 0x180a3
movq %r14, %rdi
callq 0x32b0
testl %eax, %eax
je 0x12d22
leaq 0x5470(%rip), %rsi      # 0x180aa
xorl %ebp, %ebp
movq %rbx, %rdi
movq %r14, %rdx
xorl %eax, %eax
callq 0x31c0
jmp 0x12cda
movq 0x4b9ab(%rip), %rax     # 0x5e600
movq 0x10(%rbx), %rcx
movq %rax, (%rcx)
movq %rax, 0x40(%rbx)
jmp 0x12cda
movq 0x4b99f(%rip), %rax     # 0x5e608
movq %rax, 0x40(%rbx)
leaq 0xb834(%rip), %rax      # 0x1e4a8
movq (%rax), %rsi
leaq 0x5446(%rip), %rdi      # 0x180c4
xorl %eax, %eax
callq 0x3170
leaq 0x543e(%rip), %rdi      # 0x180ca
movl $0x7, %esi
xorl %eax, %eax
callq 0x3170
leaq 0x5442(%rip), %rdi      # 0x180e1
callq 0x30a0
movq 0x932d(%rip), %r14      # 0x1bfd8
movq (%r14), %rsi
movq %rbx, %rdi
movl $0x2, %edx
callq 0x30e0
movl $0xb, %edi
callq 0x3050
movq (%r14), %rsi
movq %rbx, %rdi
movl $0x20, %edx
callq 0x30e0
movl $0x16, %ebp
movl %ebp, %eax
popq %rbx
popq %r14
popq %rbp
retq
movq %rbx, %rdi
callq 0x10ea4
jmp 0x12b8b
movq %rbx, %rdi
callq 0xe470
jmp 0x12b8b
movq %rbx, %rdi
callq 0xcf18
jmp 0x12b8b
movq %rbx, %rdi
callq 0xd534
jmp 0x12b8b
movq %rbx, %rdi
callq 0x47a4
jmp 0x12b8b
movl $0x8, %ebx
leaq 0x4132(%rip), %r14      # 0x16e60
xorl %ebp, %ebp
movl %ebx, %edi
callq 0x128e7
movq %r14, %rdi
movq %rax, %rsi
xorl %eax, %eax
callq 0x3170
incl %ebx
cmpl $0x34, %ebx
jne 0x12d30
jmp 0x12cda
leaq 0x5303(%rip), %rdi      # 0x18057
leaq 0x5300(%rip), %rsi      # 0x1805b
leaq 0x530a(%rip), %rcx      # 0x1806c
movl $0x4e, %edx
callq 0x3200