// File: /workspace/github_c_makefile_star2_O0/evanwire[P]GitClone/client.c
// Function: checkArgs
void checkArgs(int argc, char** argv){

  //Checking if there is an appropiate number of command line arguments
  if(argc < 3){
    printf("\nError: too few command line arguments. Please double check your arguments before running again.\n");
    exit(1);
  }
  if(argc > 4){
    printf("\nError: too many command line arguments. Please double check your arguments before running again.\n");
    exit(1);
  }

  //Checking to make sure a valid command is specified
  if(strcmp(argv[1], "push") != 0 && strcmp(argv[1], "create") != 0 && strcmp(argv[1], "destroy") != 0 && strcmp(argv[1], "currentversion") != 0 && strcmp(argv[1], "history") != 0 && strcmp(argv[1], "rollback") != 0 && strcmp(argv[1], "remove") != 0 && strcmp(argv[1], "add") != 0 && strcmp(argv[1], "configure") != 0 && strcmp(argv[1], "checkout") != 0 && strcmp(argv[1], "update") != 0 && strcmp(argv[1], "upgrade") != 0 && strcmp(argv[1], "commit") != 0) {
    printf("\nError: %s is not a valid command. Please make sure you specify a command from the following list:\n\t- push\n\t- create\n\t- destroy\n\t- add\n\t- remove\n\t- currentversion\n\t- history\n\t- rollback\n\t- configure\n\t- checkout\n\t- update\n\t- upgrade\n\t- commit\n", argv[1]);
    exit(1);
  }

  //Checking if there is an appropriate number of command line arguments depending on the command specified
  if((strcmp(argv[1], "push") == 0 || strcmp(argv[1], "create") == 0 || strcmp(argv[1], "destroy") == 0 || strcmp(argv[1], "currentversion") == 0 || strcmp(argv[1], "history") == 0 || strcmp(argv[1], "checkout") == 0 || strcmp(argv[1], "update") == 0 || strcmp(argv[1], "upgrade") == 0 || strcmp(argv[1], "commit") == 0) && argc > 3){
    printf("\nError: too many command line arguments to run %s. Please double check your arguments before running again.\n", argv[1]);
    exit(1);
  }
  if((strcmp(argv[1], "push") == 0 || strcmp(argv[1], "create") == 0 || strcmp(argv[1], "destroy") == 0 || strcmp(argv[1], "currentversion") == 0 || strcmp(argv[1], "history") == 0 || strcmp(argv[1], "checkout") == 0 || strcmp(argv[1], "update") == 0 || strcmp(argv[1], "upgrade") == 0 || strcmp(argv[1], "commit") == 0) && argc < 3){
    printf("\nError: too few command line arguments to run %s. Please double check your arguments before running again.\n", argv[1]);
    exit(1);
  }

  if((strcmp(argv[1], "rollback") == 0 || strcmp(argv[1], "remove") == 0 || strcmp(argv[1], "add") == 0 || strcmp(argv[1], "configure") == 0 ) && argc > 4){
    printf("\nError: too many command line arguments to run %s. Please double check your arguments before running again.\n", argv[1]);
    exit(1);
  }
  if((strcmp(argv[1], "rollback") == 0 || strcmp(argv[1], "remove") == 0 || strcmp(argv[1], "add") == 0 || strcmp(argv[1], "configure") == 0) && argc < 4){
    printf("\nError: too few command line arguments to run %s. Please double check your arguments before running again.\n", argv[1]);
    exit(1);
  }


}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movl %edi, -0x4(%rbp)
movq %rsi, -0x10(%rbp)
cmpl $0x3, -0x4(%rbp)
jge 0x171d
leaq 0x5aa9(%rip), %rdi      # 0x71b5
movb $0x0, %al
callq 0x1040
movl $0x1, %edi
callq 0x1170
cmpl $0x4, -0x4(%rbp)
jle 0x173b
leaq 0x5aed(%rip), %rdi      # 0x7217
movb $0x0, %al
callq 0x1040
movl $0x1, %edi
callq 0x1170
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x595d(%rip), %rsi      # 0x70a7
callq 0x1190
cmpl $0x0, %eax
je 0x18c4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x5957(%rip), %rsi      # 0x70be
callq 0x1190
cmpl $0x0, %eax
je 0x18c4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x5955(%rip), %rsi      # 0x70d9
callq 0x1190
cmpl $0x0, %eax
je 0x18c4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x5998(%rip), %rsi      # 0x7139
callq 0x1190
cmpl $0x0, %eax
je 0x18c4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x59aa(%rip), %rsi      # 0x7168
callq 0x1190
cmpl $0x0, %eax
je 0x18c4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x59ad(%rip), %rsi      # 0x7188
callq 0x1190
cmpl $0x0, %eax
je 0x18c4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x5919(%rip), %rsi      # 0x7111
callq 0x1190
cmpl $0x0, %eax
je 0x18c4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x58e1(%rip), %rsi      # 0x70f6
callq 0x1190
cmpl $0x0, %eax
je 0x18c4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x5c15(%rip), %rsi      # 0x7447
callq 0x1190
cmpl $0x0, %eax
je 0x18c4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x57e7(%rip), %rsi      # 0x7036
callq 0x1190
cmpl $0x0, %eax
je 0x18c4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x57ec(%rip), %rsi      # 0x7054
callq 0x1190
cmpl $0x0, %eax
je 0x18c4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x57ee(%rip), %rsi      # 0x706f
callq 0x1190
cmpl $0x0, %eax
je 0x18c4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x57f2(%rip), %rsi      # 0x708c
callq 0x1190
cmpl $0x0, %eax
je 0x18c4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rsi
leaq 0x59c7(%rip), %rdi      # 0x727a
movb $0x0, %al
callq 0x1040
movl $0x1, %edi
callq 0x1170
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x57d4(%rip), %rsi      # 0x70a7
callq 0x1190
cmpl $0x0, %eax
je 0x19b1
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x57ce(%rip), %rsi      # 0x70be
callq 0x1190
cmpl $0x0, %eax
je 0x19b1
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x57cc(%rip), %rsi      # 0x70d9
callq 0x1190
cmpl $0x0, %eax
je 0x19b1
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x580f(%rip), %rsi      # 0x7139
callq 0x1190
cmpl $0x0, %eax
je 0x19b1
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x5825(%rip), %rsi      # 0x7168
callq 0x1190
cmpl $0x0, %eax
je 0x19b1
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x56da(%rip), %rsi      # 0x7036
callq 0x1190
cmpl $0x0, %eax
je 0x19b1
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x56df(%rip), %rsi      # 0x7054
callq 0x1190
cmpl $0x0, %eax
je 0x19b1
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x56e1(%rip), %rsi      # 0x706f
callq 0x1190
cmpl $0x0, %eax
je 0x19b1
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x56e5(%rip), %rsi      # 0x708c
callq 0x1190
cmpl $0x0, %eax
jne 0x19d7
cmpl $0x3, -0x4(%rbp)
jle 0x19d7
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rsi
leaq 0x59a7(%rip), %rdi      # 0x736d
movb $0x0, %al
callq 0x1040
movl $0x1, %edi
callq 0x1170
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x56c1(%rip), %rsi      # 0x70a7
callq 0x1190
cmpl $0x0, %eax
je 0x1ac4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x56bb(%rip), %rsi      # 0x70be
callq 0x1190
cmpl $0x0, %eax
je 0x1ac4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x56b9(%rip), %rsi      # 0x70d9
callq 0x1190
cmpl $0x0, %eax
je 0x1ac4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x56fc(%rip), %rsi      # 0x7139
callq 0x1190
cmpl $0x0, %eax
je 0x1ac4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x5712(%rip), %rsi      # 0x7168
callq 0x1190
cmpl $0x0, %eax
je 0x1ac4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x55c7(%rip), %rsi      # 0x7036
callq 0x1190
cmpl $0x0, %eax
je 0x1ac4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x55cc(%rip), %rsi      # 0x7054
callq 0x1190
cmpl $0x0, %eax
je 0x1ac4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x55ce(%rip), %rsi      # 0x706f
callq 0x1190
cmpl $0x0, %eax
je 0x1ac4
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x55d2(%rip), %rsi      # 0x708c
callq 0x1190
cmpl $0x0, %eax
jne 0x1aea
cmpl $0x3, -0x4(%rbp)
jge 0x1aea
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rsi
leaq 0x5901(%rip), %rdi      # 0x73da
movb $0x0, %al
callq 0x1040
movl $0x1, %edi
callq 0x1170
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x568f(%rip), %rsi      # 0x7188
callq 0x1190
cmpl $0x0, %eax
je 0x1b4e
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x55ff(%rip), %rsi      # 0x7111
callq 0x1190
cmpl $0x0, %eax
je 0x1b4e
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x55cb(%rip), %rsi      # 0x70f6
callq 0x1190
cmpl $0x0, %eax
je 0x1b4e
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x5903(%rip), %rsi      # 0x7447
callq 0x1190
cmpl $0x0, %eax
jne 0x1b74
cmpl $0x4, -0x4(%rbp)
jle 0x1b74
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rsi
leaq 0x580a(%rip), %rdi      # 0x736d
movb $0x0, %al
callq 0x1040
movl $0x1, %edi
callq 0x1170
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x5605(%rip), %rsi      # 0x7188
callq 0x1190
cmpl $0x0, %eax
je 0x1bd8
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x5575(%rip), %rsi      # 0x7111
callq 0x1190
cmpl $0x0, %eax
je 0x1bd8
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x5541(%rip), %rsi      # 0x70f6
callq 0x1190
cmpl $0x0, %eax
je 0x1bd8
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
leaq 0x5879(%rip), %rsi      # 0x7447
callq 0x1190
cmpl $0x0, %eax
jne 0x1bfe
cmpl $0x4, -0x4(%rbp)
jge 0x1bfe
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rsi
leaq 0x57ed(%rip), %rdi      # 0x73da
movb $0x0, %al
callq 0x1040
movl $0x1, %edi
callq 0x1170
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)