// File: ddu1[P]polarizedtext/src/args.cc
// Function: fasttext::Args::parseArgs(int, char**)
void Args::parseArgs(int argc, char** argv) {
  std::string command(argv[1]);
  if (command == "supervised") {
    model = model_name::sup;
    loss = loss_name::softmax;
    minCount = 1;
    minn = 0;
    maxn = 0;
    lr = 0.1;
  } else if (command == "pwv") { // polarized word vector model
    model = model_name::pwv;
    loss = loss_name::polar;
    minCount = 1;
    minn = 3;
    maxn = 6;
    lr = 0.1;       
  } else if (command == "cbow") {
    model = model_name::cbow;
  }
  int ai = 2;
  while (ai < argc) {
    if (argv[ai][0] != '-') {
      std::cout << "Provided argument without a dash! Usage:" << std::endl;
      printHelp();
      exit(EXIT_FAILURE);
    }
    if (strcmp(argv[ai], "-h") == 0) {
      std::cout << "Here is the help! Usage:" << std::endl;
      printHelp();
      exit(EXIT_FAILURE);
    } else if (strcmp(argv[ai], "-input") == 0) {
      input = std::string(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-test") == 0) {
      test = std::string(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-output") == 0) {
      output = std::string(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-lr") == 0) {
      lr = atof(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-lrUpdateRate") == 0) {
      lrUpdateRate = atoi(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-dim") == 0) {
      dim = atoi(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-ws") == 0) {
      ws = atoi(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-epoch") == 0) {
      epoch = atoi(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-minCount") == 0) {
      minCount = atoi(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-minCountLabel") == 0) {
      minCountLabel = atoi(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-neg") == 0) {
      neg = atoi(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-wordNgrams") == 0) {
      wordNgrams = atoi(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-loss") == 0) {
      if (strcmp(argv[ai + 1], "hs") == 0) {
        loss = loss_name::hs;
      } else if (strcmp(argv[ai + 1], "ns") == 0) {
        loss = loss_name::ns;
      } else if (strcmp(argv[ai + 1], "softmax") == 0) {
        loss = loss_name::softmax;
      } else {
        std::cout << "Unknown loss: " << argv[ai + 1] << std::endl;
        printHelp();
        exit(EXIT_FAILURE);
      }
    } else if (strcmp(argv[ai], "-bucket") == 0) {
      bucket = atoi(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-minn") == 0) {
      minn = atoi(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-maxn") == 0) {
      maxn = atoi(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-thread") == 0) {
      thread = atoi(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-t") == 0) {
      t = atof(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-label") == 0) {
      label = std::string(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-verbose") == 0) {
      verbose = atoi(argv[ai + 1]);
    } else if (strcmp(argv[ai], "-pretrainedVectors") == 0) {
      pretrainedVectors = std::string(argv[ai + 1]);
    } else {
      std::cout << "Unknown argument: " << argv[ai] << std::endl;
      printHelp();
      exit(EXIT_FAILURE);
    }
    ai += 2;
  }
  if (input.empty() || output.empty()) {
    std::cout << "Empty input or output path." << std::endl;
    printHelp();
    exit(EXIT_FAILURE);
  }
  if (wordNgrams <= 1 && maxn == 0) {
    bucket = 0;
  }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x1c0, %rsp            # imm = 0x1C0
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x130(%rbp)
movq -0x18(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0x128(%rbp)
leaq -0x39(%rbp), %rdi
movq %rdi, -0x120(%rbp)
callq 0x45c0
movq -0x128(%rbp), %rsi
movq -0x120(%rbp), %rdx
leaq -0x38(%rbp), %rdi
callq 0x6210
jmp 0x4c39
leaq -0x39(%rbp), %rdi
callq 0x4330
leaq 0x243d1(%rip), %rsi     # 0x2901a
leaq -0x38(%rbp), %rdi
callq 0x62c0
movb %al, -0x131(%rbp)
jmp 0x4c5a
movb -0x131(%rbp), %al
testb $0x1, %al
jne 0x4c66
jmp 0x4cd9
movq -0x130(%rbp), %rax
movl $0x3, 0x8c(%rax)
movl $0x3, 0x88(%rax)
movl $0x1, 0x78(%rax)
movl $0x0, 0x94(%rax)
movl $0x0, 0x98(%rax)
movsd 0x24364(%rip), %xmm0    # 0x29008
movsd %xmm0, 0x60(%rax)
jmp 0x4d7b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x39(%rbp), %rdi
callq 0x4330
jmp 0x5871
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x5868
leaq 0x24345(%rip), %rsi     # 0x29025
leaq -0x38(%rbp), %rdi
callq 0x62c0
movb %al, -0x132(%rbp)
jmp 0x4cf1
movb -0x132(%rbp), %al
testb $0x1, %al
jne 0x4cfd
jmp 0x4d42
movq -0x130(%rbp), %rax
movl $0x4, 0x8c(%rax)
movl $0x4, 0x88(%rax)
movl $0x1, 0x78(%rax)
movl $0x3, 0x94(%rax)
movl $0x6, 0x98(%rax)
movsd 0x242cd(%rip), %xmm0    # 0x29008
movsd %xmm0, 0x60(%rax)
jmp 0x4d79
leaq 0x242e0(%rip), %rsi     # 0x29029
leaq -0x38(%rbp), %rdi
callq 0x62c0
movb %al, -0x133(%rbp)
jmp 0x4d5a
movb -0x133(%rbp), %al
testb $0x1, %al
jne 0x4d66
jmp 0x4d77
movq -0x130(%rbp), %rax
movl $0x1, 0x8c(%rax)
jmp 0x4d79
jmp 0x4d7b
movl $0x2, -0x50(%rbp)
movl -0x50(%rbp), %eax
cmpl -0xc(%rbp), %eax
jge 0x57b6
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movsbl (%rax), %eax
cmpl $0x2d, %eax
je 0x4deb
movq 0x37217(%rip), %rdi     # 0x3bfc0
leaq 0x2427e(%rip), %rsi     # 0x2902e
callq 0x42e0
movq %rax, -0x140(%rbp)
jmp 0x4dbe
movq -0x140(%rbp), %rdi
movq 0x371cc(%rip), %rsi     # 0x3bf98
callq 0x4310
jmp 0x4dd3
movq -0x130(%rbp), %rdi
callq 0x5880
jmp 0x4de1
movl $0x1, %edi
callq 0x4390
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x24259(%rip), %rsi     # 0x29057
callq 0x4490
cmpl $0x0, %eax
jne 0x4e51
movq 0x371b1(%rip), %rdi     # 0x3bfc0
leaq 0x24244(%rip), %rsi     # 0x2905a
callq 0x42e0
movq %rax, -0x148(%rbp)
jmp 0x4e24
movq -0x148(%rbp), %rdi
movq 0x37166(%rip), %rsi     # 0x3bf98
callq 0x4310
jmp 0x4e39
movq -0x130(%rbp), %rdi
callq 0x5880
jmp 0x4e47
movl $0x1, %edi
callq 0x4390
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x2420f(%rip), %rsi     # 0x29073
callq 0x4490
cmpl $0x0, %eax
jne 0x4eec
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rax
movq %rax, -0x158(%rbp)
leaq -0x71(%rbp), %rdi
movq %rdi, -0x150(%rbp)
callq 0x45c0
movq -0x158(%rbp), %rsi
movq -0x150(%rbp), %rdx
leaq -0x70(%rbp), %rdi
callq 0x6210
jmp 0x4eab
movq -0x130(%rbp), %rdi
leaq -0x70(%rbp), %rsi
callq 0x43a0
leaq -0x70(%rbp), %rdi
callq 0x4688
leaq -0x71(%rbp), %rdi
callq 0x4330
jmp 0x57a6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x71(%rbp), %rdi
callq 0x4330
jmp 0x5868
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x2417b(%rip), %rsi     # 0x2907a
callq 0x4490
cmpl $0x0, %eax
jne 0x4fa1
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rax
movq %rax, -0x168(%rbp)
leaq -0x99(%rbp), %rdi
movq %rdi, -0x160(%rbp)
callq 0x45c0
movq -0x168(%rbp), %rsi
movq -0x160(%rbp), %rdx
leaq -0x98(%rbp), %rdi
callq 0x6210
jmp 0x4f50
movq -0x130(%rbp), %rdi
addq $0x20, %rdi
leaq -0x98(%rbp), %rsi
callq 0x43a0
leaq -0x98(%rbp), %rdi
callq 0x4688
leaq -0x99(%rbp), %rdi
callq 0x4330
jmp 0x57a4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x99(%rbp), %rdi
callq 0x4330
jmp 0x5868
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x240cc(%rip), %rsi     # 0x29080
callq 0x4490
cmpl $0x0, %eax
jne 0x5056
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rax
movq %rax, -0x178(%rbp)
leaq -0xc1(%rbp), %rdi
movq %rdi, -0x170(%rbp)
callq 0x45c0
movq -0x178(%rbp), %rsi
movq -0x170(%rbp), %rdx
leaq -0xc0(%rbp), %rdi
callq 0x6210
jmp 0x5005
movq -0x130(%rbp), %rdi
addq $0x40, %rdi
leaq -0xc0(%rbp), %rsi
callq 0x43a0
leaq -0xc0(%rbp), %rdi
callq 0x4688
leaq -0xc1(%rbp), %rdi
callq 0x4330
jmp 0x57a2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0xc1(%rbp), %rdi
callq 0x4330
jmp 0x5868
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x2401f(%rip), %rsi     # 0x29088
callq 0x4490
cmpl $0x0, %eax
jne 0x509a
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x43c0
movq -0x130(%rbp), %rax
movsd %xmm0, 0x60(%rax)
jmp 0x57a0
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23fdf(%rip), %rsi     # 0x2908c
callq 0x4490
cmpl $0x0, %eax
jne 0x50de
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x44e0
movl %eax, %ecx
movq -0x130(%rbp), %rax
movl %ecx, 0x68(%rax)
jmp 0x579e
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23fa9(%rip), %rsi     # 0x2909a
callq 0x4490
cmpl $0x0, %eax
jne 0x5122
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x44e0
movl %eax, %ecx
movq -0x130(%rbp), %rax
movl %ecx, 0x6c(%rax)
jmp 0x579c
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23f6a(%rip), %rsi     # 0x2909f
callq 0x4490
cmpl $0x0, %eax
jne 0x5166
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x44e0
movl %eax, %ecx
movq -0x130(%rbp), %rax
movl %ecx, 0x70(%rax)
jmp 0x579a
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23f2a(%rip), %rsi     # 0x290a3
callq 0x4490
cmpl $0x0, %eax
jne 0x51aa
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x44e0
movl %eax, %ecx
movq -0x130(%rbp), %rax
movl %ecx, 0x74(%rax)
jmp 0x5798
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23eed(%rip), %rsi     # 0x290aa
callq 0x4490
cmpl $0x0, %eax
jne 0x51ee
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x44e0
movl %eax, %ecx
movq -0x130(%rbp), %rax
movl %ecx, 0x78(%rax)
jmp 0x5796
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23eb3(%rip), %rsi     # 0x290b4
callq 0x4490
cmpl $0x0, %eax
jne 0x5232
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x44e0
movl %eax, %ecx
movq -0x130(%rbp), %rax
movl %ecx, 0x7c(%rax)
jmp 0x5794
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23e7e(%rip), %rsi     # 0x290c3
callq 0x4490
cmpl $0x0, %eax
jne 0x5279
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x44e0
movl %eax, %ecx
movq -0x130(%rbp), %rax
movl %ecx, 0x80(%rax)
jmp 0x5792
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23e3c(%rip), %rsi     # 0x290c8
callq 0x4490
cmpl $0x0, %eax
jne 0x52c0
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x44e0
movl %eax, %ecx
movq -0x130(%rbp), %rax
movl %ecx, 0x84(%rax)
jmp 0x5790
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23e01(%rip), %rsi     # 0x290d4
callq 0x4490
cmpl $0x0, %eax
jne 0x53fa
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23de1(%rip), %rsi     # 0x290da
callq 0x4490
cmpl $0x0, %eax
jne 0x5319
movq -0x130(%rbp), %rax
movl $0x1, 0x88(%rax)
jmp 0x53f5
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23dac(%rip), %rsi     # 0x290dd
callq 0x4490
cmpl $0x0, %eax
jne 0x5351
movq -0x130(%rbp), %rax
movl $0x2, 0x88(%rax)
jmp 0x53f3
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23d77(%rip), %rsi     # 0x290e0
callq 0x4490
cmpl $0x0, %eax
jne 0x5386
movq -0x130(%rbp), %rax
movl $0x3, 0x88(%rax)
jmp 0x53f1
movq 0x36c33(%rip), %rdi     # 0x3bfc0
leaq 0x23d54(%rip), %rsi     # 0x290e8
callq 0x42e0
movq %rax, -0x180(%rbp)
jmp 0x53a2
movq -0x180(%rbp), %rdi
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rsi
callq 0x42e0
movq %rax, -0x188(%rbp)
jmp 0x53c4
movq -0x188(%rbp), %rdi
movq 0x36bc6(%rip), %rsi     # 0x3bf98
callq 0x4310
jmp 0x53d9
movq -0x130(%rbp), %rdi
callq 0x5880
jmp 0x53e7
movl $0x1, %edi
callq 0x4390
jmp 0x53f3
jmp 0x53f5
jmp 0x578e
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23cea(%rip), %rsi     # 0x290f7
callq 0x4490
cmpl $0x0, %eax
jne 0x5441
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x44e0
movl %eax, %ecx
movq -0x130(%rbp), %rax
movl %ecx, 0x90(%rax)
jmp 0x578c
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23cab(%rip), %rsi     # 0x290ff
callq 0x4490
cmpl $0x0, %eax
jne 0x5488
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x44e0
movl %eax, %ecx
movq -0x130(%rbp), %rax
movl %ecx, 0x94(%rax)
jmp 0x578a
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23c6a(%rip), %rsi     # 0x29105
callq 0x4490
cmpl $0x0, %eax
jne 0x54cf
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x44e0
movl %eax, %ecx
movq -0x130(%rbp), %rax
movl %ecx, 0x98(%rax)
jmp 0x5788
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23c29(%rip), %rsi     # 0x2910b
callq 0x4490
cmpl $0x0, %eax
jne 0x5516
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x44e0
movl %eax, %ecx
movq -0x130(%rbp), %rax
movl %ecx, 0x9c(%rax)
jmp 0x5786
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23bea(%rip), %rsi     # 0x29113
callq 0x4490
cmpl $0x0, %eax
jne 0x555d
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x43c0
movq -0x130(%rbp), %rax
movsd %xmm0, 0xa0(%rax)
jmp 0x5784
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23ba6(%rip), %rsi     # 0x29116
callq 0x4490
cmpl $0x0, %eax
jne 0x5615
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rax
movq %rax, -0x198(%rbp)
leaq -0xe9(%rbp), %rdi
movq %rdi, -0x190(%rbp)
callq 0x45c0
movq -0x198(%rbp), %rsi
movq -0x190(%rbp), %rdx
leaq -0xe8(%rbp), %rdi
callq 0x6210
jmp 0x55c1
movq -0x130(%rbp), %rdi
addq $0xa8, %rdi
leaq -0xe8(%rbp), %rsi
callq 0x43a0
leaq -0xe8(%rbp), %rdi
callq 0x4688
leaq -0xe9(%rbp), %rdi
callq 0x4330
jmp 0x5782
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0xe9(%rbp), %rdi
callq 0x4330
jmp 0x5868
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23af5(%rip), %rsi     # 0x2911d
callq 0x4490
cmpl $0x0, %eax
jne 0x565c
movq -0x18(%rbp), %rax
movl -0x50(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x44e0
movl %eax, %ecx
movq -0x130(%rbp), %rax
movl %ecx, 0xc8(%rax)
jmp 0x5780
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0x23ab7(%rip), %rsi     # 0x29126
callq 0x4490
cmpl $0x0, %eax
jne 0x5714
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rax
movq %rax, -0x1a8(%rbp)
leaq -0x111(%rbp), %rdi
movq %rdi, -0x1a0(%rbp)
callq 0x45c0
movq -0x1a8(%rbp), %rsi
movq -0x1a0(%rbp), %rdx
leaq -0x110(%rbp), %rdi
callq 0x6210
jmp 0x56c0
movq -0x130(%rbp), %rdi
addq $0xd0, %rdi
leaq -0x110(%rbp), %rsi
callq 0x43a0
leaq -0x110(%rbp), %rdi
callq 0x4688
leaq -0x111(%rbp), %rdi
callq 0x4330
jmp 0x577e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x111(%rbp), %rdi
callq 0x4330
jmp 0x5868
movq 0x368a5(%rip), %rdi     # 0x3bfc0
leaq 0x23a17(%rip), %rsi     # 0x29139
callq 0x42e0
movq %rax, -0x1b0(%rbp)
jmp 0x5730
movq -0x1b0(%rbp), %rdi
movq -0x18(%rbp), %rax
movslq -0x50(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
callq 0x42e0
movq %rax, -0x1b8(%rbp)
jmp 0x5751
movq -0x1b8(%rbp), %rdi
movq 0x36839(%rip), %rsi     # 0x3bf98
callq 0x4310
jmp 0x5766
movq -0x130(%rbp), %rdi
callq 0x5880
jmp 0x5774
movl $0x1, %edi
callq 0x4390
jmp 0x5780
jmp 0x5782
jmp 0x5784
jmp 0x5786
jmp 0x5788
jmp 0x578a
jmp 0x578c
jmp 0x578e
jmp 0x5790
jmp 0x5792
jmp 0x5794
jmp 0x5796
jmp 0x5798
jmp 0x579a
jmp 0x579c
jmp 0x579e
jmp 0x57a0
jmp 0x57a2
jmp 0x57a4
jmp 0x57a6
jmp 0x57a8
movl -0x50(%rbp), %eax
addl $0x2, %eax
movl %eax, -0x50(%rbp)
jmp 0x4d82
movq -0x130(%rbp), %rdi
callq 0x4550
testb $0x1, %al
jne 0x57dc
movq -0x130(%rbp), %rdi
addq $0x40, %rdi
callq 0x4550
testb $0x1, %al
jne 0x57dc
jmp 0x5825
movq 0x367dd(%rip), %rdi     # 0x3bfc0
leaq 0x23962(%rip), %rsi     # 0x2914c
callq 0x42e0
movq %rax, -0x1c0(%rbp)
jmp 0x57f8
movq -0x1c0(%rbp), %rdi
movq 0x36792(%rip), %rsi     # 0x3bf98
callq 0x4310
jmp 0x580d
movq -0x130(%rbp), %rdi
callq 0x5880
jmp 0x581b
movl $0x1, %edi
callq 0x4390
movq -0x130(%rbp), %rax
cmpl $0x1, 0x84(%rax)
jg 0x5856
movq -0x130(%rbp), %rax
cmpl $0x0, 0x98(%rax)
jne 0x5856
movq -0x130(%rbp), %rax
movl $0x0, 0x90(%rax)
leaq -0x38(%rbp), %rdi
callq 0x4688
addq $0x1c0, %rsp            # imm = 0x1C0
popq %rbp
retq
leaq -0x38(%rbp), %rdi
callq 0x4688
movq -0x48(%rbp), %rdi
callq 0x45b0
nopw (%rax,%rax)