// File: /workspace/github_cpp_makefile_star2_O2/shammellee[P]mdl/mdl.cpp
// Function: main
int main(int argc, char* argv[])
{
  command_init();

  try
  {
    po::options_description options("Options");
    options.add_options()
      ("help,h", "display help info")
      ("type,t", po::value<string>(&media_type)->value_name("TYPE")->default_value(MDL_VIDEO_PLAYLIST), MDL_MEDIATYPE_DESCRIPTION.c_str())
      ("list-formats,F", "List available download formats")
      ("format,f", po::value<string>(&audio_format)->value_name("FORMAT")->default_value(MDL_MP3), "audio format")
      ("format-id,i", po::value<string>(&format_id)->value_name("REGEX"), "download video whose format id matches specified regex (eg, \"^480[pP]$\")")
      ("closest-video-resolution,c", po::value<int>(&closest_video_resolution)->value_name("RESOLUTION"), "download video with resolution closest to value specified (eg, 480)")
      ("rate,r", po::value<string>(&rate)->value_name("RATE"), "download rate (eg, 420k, 4.2M, etc)")
      ("filter,q", po::value<string>(&filter)->value_name("FILTER"), "quality filter (eg, 22, 135, 136, best, worst, bestvideo, worstaudio, etc)")
      ("subtitles,s", "Include subtitles")
      ("manifest-file,m", po::value<string>(&manifest_file_path)->value_name("FILE")->default_value(MDL_DEFAULT_MANIFEST), "manifest file")
      ("dry-run,N", "show command line instead of downloading")
      ;

    po::positional_options_description p;
    p.add("manifest-file", -1);

    po::variables_map vm;
    po::store(po::command_line_parser(argc, argv).options(options).positional(p).run(), vm);
    po::notify(vm);

    if(vm.count("help"))
    {
      cout << options << endl;

      return 0;
    }

    if(vm.count("list-formats"))
    {
      command_add_flag("--list-formats");
    }

    media_type_to_lower = media_type;
    boost::to_lower(media_type_to_lower);
    audio_format_to_lower = audio_format;
    boost::to_lower(audio_format_to_lower);

    if(is_audio(media_type_to_lower))
    {
      if(
        audio_format_to_lower == MDL_MP3
        || audio_format_to_lower == MDL_M4A
        || audio_format == MDL_WAV
      )
      {
        command_add_flag("--extract-audio");
        command_add_flag("--audio-format " + audio_format_to_lower);
      }else
      {
        cout << "Invalid audio format: " << audio_format << endl;

        return 1;
      }
    }

    if(vm.count("format-id"))
    {
      command_add_flag("--format '[format_id~=\"" + format_id + "\"]'");
    }

    if(closest_video_resolution)
    {
      command_add_flag("--format-sort 'res~" + std::to_string(closest_video_resolution) + "'");
    }

    if(!rate.empty()) command_add_flag("--rate " + rate);

    if(!filter.empty()) command_add_flag("--format " + filter);

    if(vm.count("subtitles"))
    {
      command_add_flag("--write-auto-sub");
      command_add_flag("--sub-format srt/vtt/ttml/best");
      command_add_flag("--sub-lang en");
      command_add_flag("--embed-subs");
      command_add_flag("--convert-subs srt");
    }

    command_add_flag("--output " + (is_playlist(media_type_to_lower) ? MDL_PLAYLIST_TEMPLATE : MDL_FILE_TEMPLATE));

    if(vm.count("dry-run")) dry_run = true;

    command_call();
  }
  catch(exception& error)
  {
    cerr << "error: " << error.what() << endl;

    return 1;
  }
  catch(...)
  {
    cerr << "Unknown exception!" << endl;
  }

  return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x448, %rsp            # imm = 0x448
movq %rsi, %rbx
movl %edi, %ebp
callq 0x5b66
leaq 0x5392(%rip), %rsi      # 0xb129
leaq 0x308(%rsp), %rdi
leaq 0x30(%rsp), %rdx
callq 0x6b2a
movq 0xb1f0(%rip), %rax      # 0x10fa0
movl (%rax), %edx
movl %edx, %ecx
shrl %ecx
leaq 0x3c8(%rsp), %rdi
leaq 0x308(%rsp), %rsi
callq 0x5360
leaq 0x308(%rsp), %rdi
callq 0x54d8
leaq 0x3c8(%rsp), %rdi
callq 0x52d0
leaq 0x300(%rsp), %rdi
movq %rax, (%rdi)
leaq 0x533a(%rip), %rsi      # 0xb131
leaq 0x533a(%rip), %rdx      # 0xb138
callq 0x5470
movq %rax, %r14
leaq 0xb63b(%rip), %rdi      # 0x11448
callq 0x6c42
movq %rax, %r15
leaq 0x5335(%rip), %rsi      # 0xb151
leaq 0x308(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x6b2a
leaq 0x18(%r15), %rdi
leaq 0x308(%rsp), %rsi
callq 0x5160
leaq 0xb4fa(%rip), %rsi      # 0x11340
movq %r15, %rdi
callq 0x6c84
movq 0xb58b(%rip), %rcx      # 0x113e0
leaq 0x52ee(%rip), %rsi      # 0xb14a
movq %r14, %rdi
movq %rax, %rdx
callq 0x54a0
leaq 0x52e8(%rip), %rsi      # 0xb156
leaq 0x52f0(%rip), %rdx      # 0xb165
movq %rax, %rdi
callq 0x5470
movq %rax, %r14
leaq 0xb601(%rip), %rdi      # 0x11488
callq 0x6c42
movq %rax, %r15
leaq 0x52f8(%rip), %rsi      # 0xb18e
leaq 0x30(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x6b2a
leaq 0x18(%r15), %rdi
leaq 0x30(%rsp), %rsi
callq 0x5160
leaq 0xb4c6(%rip), %rsi      # 0x11380
movq %r15, %rdi
callq 0x6c84
leaq 0x52bc(%rip), %rsi      # 0xb185
leaq 0x52c5(%rip), %rcx      # 0xb195
movq %r14, %rdi
movq %rax, %rdx
callq 0x54a0
movq %rax, %r14
leaq 0xb5e3(%rip), %rdi      # 0x114c8
callq 0x6c42
movq %rax, %r15
leaq 0x52ba(%rip), %rsi      # 0xb1ae
leaq 0xa8(%rsp), %rdi
leaq 0x5(%rsp), %rdx
callq 0x6b2a
leaq 0x18(%r15), %rdi
leaq 0xa8(%rsp), %rsi
callq 0x5160
leaq 0x5284(%rip), %rsi      # 0xb1a2
leaq 0x528f(%rip), %rcx      # 0xb1b4
movq %r14, %rdi
movq %r15, %rdx
callq 0x54a0
movq %rax, %r14
leaq 0xb4ea(%rip), %rdi      # 0x11424
callq 0x6cf6
movq %rax, %r15
leaq 0x52cf(%rip), %rsi      # 0xb218
leaq 0x8(%rsp), %rdi
leaq 0x4(%rsp), %rdx
callq 0x6b2a
leaq 0x18(%r15), %rdi
leaq 0x8(%rsp), %rsi
callq 0x5160
leaq 0x5290(%rip), %rsi      # 0xb1fd
leaq 0x52af(%rip), %rcx      # 0xb223
movq %r14, %rdi
movq %r15, %rdx
callq 0x54a0
movq %rax, %r14
leaq 0xb57f(%rip), %rdi      # 0x11508
callq 0x6c42
movq %rax, %r15
leaq 0x52d6(%rip), %rsi      # 0xb26e
leaq 0x2e0(%rsp), %rdi
leaq 0x3(%rsp), %rdx
callq 0x6b2a
leaq 0x18(%r15), %rdi
leaq 0x2e0(%rsp), %rsi
callq 0x5160
leaq 0x52a5(%rip), %rsi      # 0xb267
leaq 0x52aa(%rip), %rcx      # 0xb273
movq %r14, %rdi
movq %r15, %rdx
callq 0x54a0
movq %rax, %r14
leaq 0xb54a(%rip), %rdi      # 0x11528
callq 0x6c42
movq %rax, %r15
leaq 0x52b3(%rip), %rsi      # 0xb2a0
leaq 0x2c0(%rsp), %rdi
leaq 0x2(%rsp), %rdx
callq 0x6b2a
leaq 0x18(%r15), %rdi
leaq 0x2c0(%rsp), %rsi
callq 0x5160
leaq 0x5280(%rip), %rsi      # 0xb297
leaq 0x5289(%rip), %rcx      # 0xb2a7
movq %r14, %rdi
movq %r15, %rdx
callq 0x54a0
leaq 0x52c2(%rip), %rsi      # 0xb2f2
leaq 0x52c7(%rip), %rdx      # 0xb2fe
movq %rax, %rdi
callq 0x5470
movq %rax, %r14
leaq 0xb49f(%rip), %rdi      # 0x114e8
callq 0x6c42
movq %rax, %r15
leaq 0x52c8(%rip), %rsi      # 0xb320
leaq 0x2a0(%rsp), %rdi
leaq 0x1(%rsp), %rdx
callq 0x6b2a
leaq 0x18(%r15), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x5160
leaq 0xb37e(%rip), %rsi      # 0x11400
movq %r15, %rdi
callq 0x6c84
leaq 0x527f(%rip), %rsi      # 0xb310
leaq 0x528d(%rip), %rcx      # 0xb325
movq %r14, %rdi
movq %rax, %rdx
callq 0x54a0
leaq 0x5289(%rip), %rsi      # 0xb333
leaq 0x528c(%rip), %rdx      # 0xb33d
movq %rax, %rdi
callq 0x5470
leaq 0x2a0(%rsp), %rdi
callq 0x54d8
leaq 0x2c0(%rsp), %rdi
callq 0x54d8
leaq 0x2e0(%rsp), %rdi
callq 0x54d8
leaq 0x8(%rsp), %rdi
callq 0x54d8
leaq 0xa8(%rsp), %rdi
callq 0x54d8
leaq 0x30(%rsp), %rdi
callq 0x54d8
leaq 0x308(%rsp), %rdi
callq 0x54d8
leaq 0xa8(%rsp), %rdi
callq 0x5320
leaq 0x5244(%rip), %rsi      # 0xb366
leaq 0xa8(%rsp), %rdi
pushq $-0x1
popq %rdx
callq 0x52a0
leaq 0x308(%rsp), %rdi
callq 0x50f0
leaq 0x30(%rsp), %rdi
movl %ebp, %esi
movq %rbx, %rdx
callq 0x6d38
leaq 0x30(%rsp), %rdi
leaq 0x3c8(%rsp), %rsi
callq 0x6dc8
movq %rax, %rbx
leaq 0xa8(%rsp), %rsi
movq %rax, %rdi
callq 0x53f0
leaq 0x8(%rsp), %rdi
movq %rbx, %rsi
callq 0x6de6
leaq 0x8(%rsp), %rdi
leaq 0x308(%rsp), %rsi
xorl %edx, %edx
callq 0x5420
leaq 0x8(%rsp), %rdi
callq 0x6fcc
leaq 0x30(%rsp), %rdi
callq 0x6e74
leaq 0x308(%rsp), %rdi
callq 0x5170
leaq 0x51b8(%rip), %rsi      # 0xb374
leaq 0x30(%rsp), %rdi
leaq 0x8(%rsp), %rdx
callq 0x6b2a
leaq 0x318(%rsp), %rbx
leaq 0x30(%rsp), %rsi
movq %rbx, %rdi
callq 0x6e94
movq %rax, %r14
leaq 0x30(%rsp), %rdi
callq 0x54d8
testq %r14, %r14
je 0x6217
movq 0xadc7(%rip), %rdi      # 0x10fc0
leaq 0x3c8(%rsp), %rsi
callq 0x5070
xorl %ebp, %ebp
movq %rax, %rdi
callq 0x5130
xorl %ebx, %ebx
jmp 0x6740
leaq 0x515d(%rip), %rsi      # 0xb37b
leaq 0x30(%rsp), %rdi
leaq 0x8(%rsp), %rdx
callq 0x6b2a
leaq 0x30(%rsp), %rsi
movq %rbx, %rdi
callq 0x6e94
movq %rax, %r14
leaq 0x30(%rsp), %rdi
callq 0x54d8
testq %r14, %r14
je 0x627f
leaq 0x5126(%rip), %rsi      # 0xb379
leaq 0x280(%rsp), %rdi
leaq 0x30(%rsp), %rdx
callq 0x6b2a
leaq 0x280(%rsp), %rdi
callq 0x5b1c
leaq 0x280(%rsp), %rdi
callq 0x54d8
leaq 0xb1e2(%rip), %rdi      # 0x11468
leaq 0xb1bb(%rip), %rsi      # 0x11448
callq 0x5160
leaq 0x30(%rsp), %r14
movq %r14, %rdi
callq 0x54c0
leaq 0xb1c2(%rip), %rdi      # 0x11468
movq %r14, %rsi
callq 0x6eae
leaq 0x30(%rsp), %rdi
callq 0x5380
leaq 0xb1e9(%rip), %rdi      # 0x114a8
leaq 0xb1c2(%rip), %rsi      # 0x11488
callq 0x5160
leaq 0x30(%rsp), %r14
movq %r14, %rdi
callq 0x54c0
leaq 0xb1c9(%rip), %rdi      # 0x114a8
movq %r14, %rsi
callq 0x6eae
leaq 0x30(%rsp), %rdi
callq 0x5380
leaq 0xb170(%rip), %rsi      # 0x11468
leaq 0x3a8(%rsp), %rdi
callq 0x5350
leaq 0x3a8(%rsp), %r14
movq %r14, %rdi
callq 0x5d23
movl %eax, %ebp
movq %r14, %rdi
callq 0x54d8
testb %bpl, %bpl
je 0x63d9
leaq 0xb179(%rip), %rdi      # 0x114a8
leaq 0xb04a(%rip), %rsi      # 0x11380
callq 0x6c19
testb %al, %al
jne 0x6371
leaq 0xb162(%rip), %rdi      # 0x114a8
leaq 0xb053(%rip), %rsi      # 0x113a0
callq 0x6c19
testb %al, %al
jne 0x6371
leaq 0xb12b(%rip), %rdi      # 0x11488
leaq 0xb05c(%rip), %rsi      # 0x113c0
callq 0x6c19
testb %al, %al
je 0x677e
leaq 0x5010(%rip), %rsi      # 0xb388
leaq 0x260(%rsp), %rdi
leaq 0x30(%rsp), %rdx
callq 0x6b2a
leaq 0x260(%rsp), %rdi
callq 0x5b1c
leaq 0x260(%rsp), %rdi
callq 0x54d8
leaq 0x4fed(%rip), %rsi      # 0xb398
leaq 0xb0f6(%rip), %rdx      # 0x114a8
leaq 0x240(%rsp), %rdi
callq 0x6ba3
leaq 0x240(%rsp), %rdi
callq 0x5b1c
leaq 0x240(%rsp), %rdi
callq 0x54d8
leaq 0x4fdf(%rip), %rsi      # 0xb3bf
leaq 0x30(%rsp), %rdi
leaq 0x8(%rsp), %rdx
callq 0x6b2a
leaq 0x30(%rsp), %rsi
movq %rbx, %rdi
callq 0x6e94
movq %rax, %r14
leaq 0x30(%rsp), %rdi
callq 0x54d8
testq %r14, %r14
je 0x6463
leaq 0x4fb4(%rip), %rsi      # 0xb3c9
leaq 0xb0ac(%rip), %rdx      # 0x114c8
leaq 0x30(%rsp), %rdi
callq 0x6ba3
leaq 0x4fb4(%rip), %rdx      # 0xb3e1
leaq 0x220(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0x6b65
leaq 0x220(%rsp), %rdi
callq 0x5b1c
leaq 0x220(%rsp), %rdi
callq 0x54d8
leaq 0x30(%rsp), %rdi
callq 0x54d8
movl 0xafbb(%rip), %esi      # 0x11424
testl %esi, %esi
je 0x64d4
leaq 0x8(%rsp), %rdi
callq 0x6ef6
leaq 0x4f67(%rip), %rsi      # 0xb3e5
leaq 0x30(%rsp), %rdi
leaq 0x8(%rsp), %rdx
callq 0x6ed2
leaq 0x4f4f(%rip), %rdx      # 0xb3e3
leaq 0x200(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0x6b65
leaq 0x200(%rsp), %rdi
callq 0x5b1c
leaq 0x200(%rsp), %rdi
callq 0x54d8
leaq 0x30(%rsp), %rdi
callq 0x54d8
leaq 0x8(%rsp), %rdi
callq 0x54d8
cmpq $0x0, 0xb034(%rip)      # 0x11510
je 0x6513
leaq 0x4f14(%rip), %rsi      # 0xb3f9
leaq 0xb01c(%rip), %rdx      # 0x11508
leaq 0x1e0(%rsp), %rdi
callq 0x6ba3
leaq 0x1e0(%rsp), %rdi
callq 0x5b1c
leaq 0x1e0(%rsp), %rdi
callq 0x54d8
cmpq $0x0, 0xb015(%rip)      # 0x11530
je 0x6552
leaq 0x4edd(%rip), %rsi      # 0xb401
leaq 0xaffd(%rip), %rdx      # 0x11528
leaq 0x1c0(%rsp), %rdi
callq 0x6ba3
leaq 0x1c0(%rsp), %rdi
callq 0x5b1c
leaq 0x1c0(%rsp), %rdi
callq 0x54d8
leaq 0x4dad(%rip), %rsi      # 0xb306
leaq 0x30(%rsp), %rdi
leaq 0x8(%rsp), %rdx
callq 0x6b2a
leaq 0x30(%rsp), %rsi
movq %rbx, %rdi
callq 0x6e94
movq %rax, %r14
leaq 0x30(%rsp), %rdi
callq 0x54d8
testq %r14, %r14
je 0x668a
leaq 0x4e79(%rip), %rsi      # 0xb40b
leaq 0x1a0(%rsp), %rdi
leaq 0x30(%rsp), %rdx
callq 0x6b2a
leaq 0x1a0(%rsp), %rdi
callq 0x5b1c
leaq 0x1a0(%rsp), %rdi
callq 0x54d8
leaq 0x4e57(%rip), %rsi      # 0xb41c
leaq 0x180(%rsp), %rdi
leaq 0x30(%rsp), %rdx
callq 0x6b2a
leaq 0x180(%rsp), %rdi
callq 0x5b1c
leaq 0x180(%rsp), %rdi
callq 0x54d8
leaq 0x4e43(%rip), %rsi      # 0xb43b
leaq 0x160(%rsp), %rdi
leaq 0x30(%rsp), %rdx
callq 0x6b2a
leaq 0x160(%rsp), %rdi
callq 0x5b1c
leaq 0x160(%rsp), %rdi
callq 0x54d8
leaq 0x4e1e(%rip), %rsi      # 0xb449
leaq 0x140(%rsp), %rdi
leaq 0x30(%rsp), %rdx
callq 0x6b2a
leaq 0x140(%rsp), %rdi
callq 0x5b1c
leaq 0x140(%rsp), %rdi
callq 0x54d8
leaq 0x4df8(%rip), %rsi      # 0xb456
leaq 0x120(%rsp), %rdi
leaq 0x30(%rsp), %rdx
callq 0x6b2a
leaq 0x120(%rsp), %rdi
callq 0x5b1c
leaq 0x120(%rsp), %rdi
callq 0x54d8
leaq 0xadd7(%rip), %rsi      # 0x11468
leaq 0xe0(%rsp), %rdi
callq 0x5350
leaq 0xe0(%rsp), %rdi
callq 0x5cf8
leaq 0xac2e(%rip), %rcx      # 0x112e0
leaq 0xac07(%rip), %rdx      # 0x112c0
testb %al, %al
cmovneq %rcx, %rdx
leaq 0x4da3(%rip), %rsi      # 0xb469
leaq 0x100(%rsp), %rdi
callq 0x6ba3
leaq 0x100(%rsp), %rdi
callq 0x5b1c
leaq 0x100(%rsp), %rdi
callq 0x54d8
leaq 0xe0(%rsp), %rdi
callq 0x54d8
leaq 0x4d72(%rip), %rsi      # 0xb473
leaq 0x30(%rsp), %rdi
leaq 0x8(%rsp), %rdx
callq 0x6b2a
leaq 0x30(%rsp), %rsi
movq %rbx, %rdi
callq 0x6e94
movq %rax, %rbx
leaq 0x30(%rsp), %rdi
callq 0x54d8
testq %rbx, %rbx
je 0x6736
movb $0x1, 0xacea(%rip)      # 0x11420
callq 0x5c57
xorl %ebx, %ebx
movb $0x1, %bpl
leaq 0x308(%rsp), %rdi
callq 0x6f50
leaq 0xa8(%rsp), %rdi
callq 0x6f82
leaq 0x3c8(%rsp), %rdi
callq 0x6f98
testb %bpl, %bpl
je 0x676e
xorl %ebx, %ebx
movl %ebx, %eax
addq $0x448, %rsp            # imm = 0x448
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movq 0xa83b(%rip), %rdi      # 0x10fc0
leaq 0x4c1c(%rip), %rsi      # 0xb3a8
callq 0x5260
leaq 0xacf0(%rip), %rsi      # 0x11488
movq %rax, %rdi
callq 0x5240
movq %rax, %rdi
callq 0x5130
pushq $0x1
popq %rbx
xorl %ebp, %ebp
jmp 0x6740
movq %rdx, %rbx
movq %rax, %r14
leaq 0x240(%rsp), %rdi
jmp 0x6948
movq %rdx, %rbx
movq %rax, %r14
leaq 0x260(%rsp), %rdi
jmp 0x6948
jmp 0x6a5c
movq %rdx, %rbx
movq %rax, %r14
leaq 0x120(%rsp), %rdi
jmp 0x6948
jmp 0x6a5c
movq %rdx, %rbx
movq %rax, %r14
leaq 0x140(%rsp), %rdi
jmp 0x6948
jmp 0x6a5c
movq %rdx, %rbx
movq %rax, %r14
leaq 0x160(%rsp), %rdi
jmp 0x6948
jmp 0x6a5c
movq %rdx, %rbx
movq %rax, %r14
leaq 0x180(%rsp), %rdi
jmp 0x6948
jmp 0x6a5c
movq %rdx, %rbx
movq %rax, %r14
leaq 0x1a0(%rsp), %rdi
jmp 0x6948
jmp 0x6a5c
movq %rdx, %rbx
movq %rax, %r14
leaq 0x1c0(%rsp), %rdi
jmp 0x6948
movq %rdx, %rbx
movq %rax, %r14
leaq 0x1e0(%rsp), %rdi
jmp 0x6948
movq %rdx, %rbx
movq %rax, %r14
leaq 0x200(%rsp), %rdi
callq 0x54d8
jmp 0x6893
movq %rdx, %rbx
movq %rax, %r14
leaq 0x30(%rsp), %rdi
callq 0x54d8
jmp 0x68a5
movq %rdx, %rbx
movq %rax, %r14
leaq 0x8(%rsp), %rdi
jmp 0x6948
movq %rdx, %rbx
movq %rax, %r14
leaq 0x220(%rsp), %rdi
callq 0x54d8
jmp 0x6943
jmp 0x6a5c
jmp 0x693d
jmp 0x6a5c
movq %rdx, %rbx
movq %rax, %r14
leaq 0x280(%rsp), %rdi
jmp 0x6948
jmp 0x6a5c
jmp 0x693d
jmp 0x6a5c
movq %rdx, %rbx
movq %rax, %r14
leaq 0x100(%rsp), %rdi
callq 0x54d8
jmp 0x6907
movq %rdx, %rbx
movq %rax, %r14
leaq 0xe0(%rsp), %rdi
jmp 0x6948
jmp 0x693d
jmp 0x6a5c
jmp 0x693d
jmp 0x6a5c
jmp 0x6921
movq %rdx, %rbx
movq %rax, %r14
leaq 0x30(%rsp), %rdi
callq 0x5380
jmp 0x6a62
jmp 0x693d
jmp 0x6a5c
movq %rdx, %rbx
movq %rax, %r14
leaq 0x30(%rsp), %rdi
callq 0x54d8
jmp 0x6a62
jmp 0x6a5c
movq %rdx, %rbx
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x6fcc
jmp 0x69bd
jmp 0x6a5c
jmp 0x6970
movq %rdx, %rbx
movq %rax, %r14
jmp 0x6a6f
jmp 0x69e4
jmp 0x6a04
jmp 0x69cc
jmp 0x69d4
jmp 0x69dc
jmp 0x6a54
jmp 0x6b1f
jmp 0x69e4
movq %rdx, %rbx
movq %rax, %r14
leaq 0x308(%rsp), %rdi
callq 0x54d8
jmp 0x6a89
movq %rdx, %rbx
movq %rax, %r14
jmp 0x6a89
movq %rdx, %rbx
movq %rax, %r14
leaq 0x30(%rsp), %rdi
callq 0x6e74
jmp 0x6a62
movq %rdx, %rbx
movq %rax, %r14
jmp 0x6a17
movq %rdx, %rbx
movq %rax, %r14
jmp 0x6a24
movq %rdx, %rbx
movq %rax, %r14
jmp 0x6a2e
movq %rdx, %rbx
movq %rax, %r14
jmp 0x6a7c
movq %rdx, %rbx
movq %rax, %r14
leaq 0x2a0(%rsp), %rdi
callq 0x54d8
jmp 0x6a0a
movq %rdx, %rbx
movq %rax, %r14
leaq 0x2c0(%rsp), %rdi
callq 0x54d8
leaq 0x2e0(%rsp), %rdi
callq 0x54d8
leaq 0x8(%rsp), %rdi
callq 0x54d8
leaq 0xa8(%rsp), %rdi
callq 0x54d8
leaq 0x30(%rsp), %rdi
callq 0x54d8
leaq 0x308(%rsp), %rdi
callq 0x54d8
jmp 0x6a7c
movq %rdx, %rbx
movq %rax, %r14
jmp 0x6a3b
movq %rdx, %rbx
movq %rax, %r14
leaq 0x308(%rsp), %rdi
callq 0x6f50
leaq 0xa8(%rsp), %rdi
callq 0x6f82
leaq 0x3c8(%rsp), %rdi
callq 0x6f98
movq %r14, %rdi
callq 0x50d0
cmpl $0x2, %ebx
jne 0x6ad8
movq %rax, %r14
movq 0xa550(%rip), %rdi      # 0x10ff0
leaq 0x49e7(%rip), %rsi      # 0xb48e
callq 0x5260
movq %rax, %rbx
movq (%r14), %rax
movq %r14, %rdi
callq *0x10(%rax)
movq %rbx, %rdi
movq %rax, %rsi
callq 0x5260
movq %rax, %rdi
callq 0x5130
callq 0x53d0
pushq $0x1
popq %rbx
jmp 0x676e
movq 0xa511(%rip), %rdi      # 0x10ff0
leaq 0x4995(%rip), %rsi      # 0xb47b
callq 0x5260
movq %rax, %rdi
callq 0x5130
callq 0x53d0
jmp 0x676c
movq %rax, %rbx
callq 0x53d0
jmp 0x6b0f
movq %rax, %rbx
callq 0x53d0
movq %rbx, %rdi
callq 0x5430
movq %rax, %rdi
callq 0x6fc0
movq %rdx, %rbx
movq %rax, %r14
jmp 0x6a45