// File: /workspace/github_cpp_makefile_star2_O3/tewalds[P]morat/pentago/gtp.h
// Function: Morat::Pentago::GTP::GTP(_IO_FILE*, _IO_FILE*)
GTP(FILE * i = stdin, FILE * o = stdout) : GTPCommon(i, o), hist(Board(Board::default_size)) {
		verbose = 1;
		colorboard = true;

		mem_allowed = 1000;

		agent = new AgentMCTS();

		set_board();

		newcallback("name",            std::bind(&GTP::gtp_name,          this, _1), "Name of the program");
		newcallback("version",         std::bind(&GTP::gtp_version,       this, _1), "Version of the program");
		newcallback("verbose",         std::bind(&GTP::gtp_verbose,       this, _1), "Set verbosity, 0 for quiet, 1 for normal, 2+ for more output");
		newcallback("colorboard",      std::bind(&GTP::gtp_colorboard,    this, _1), "Turn on or off the colored board");
		newcallback("showboard",       std::bind(&GTP::gtp_print,         this, _1), "Show the board");
		newcallback("print",           std::bind(&GTP::gtp_print,         this, _1), "Alias for showboard");
		newcallback("state",           std::bind(&GTP::gtp_state,         this, _1), "Output the board state in a simpler form than print, or set the board state");
		newcallback("hash",            std::bind(&GTP::gtp_hash,          this, _1), "Output the hash for the current position");
		newcallback("clear_board",     std::bind(&GTP::gtp_clearboard,    this, _1), "Clear the board, but keep the size");
		newcallback("clear",           std::bind(&GTP::gtp_clearboard,    this, _1), "Alias for clear_board");
		newcallback("boardsize",       std::bind(&GTP::gtp_clearboard,    this, _1), "Alias for clear_board, board is fixed size");
		newcallback("size",            std::bind(&GTP::gtp_clearboard,    this, _1), "Alias for board_size");
		newcallback("play",            std::bind(&GTP::gtp_play,          this, _1), "Place a stone: play <color> <location>");
		newcallback("white",           std::bind(&GTP::gtp_playwhite,     this, _1), "Place a white stone: white <location>");
		newcallback("black",           std::bind(&GTP::gtp_playblack,     this, _1), "Place a black stone: black <location>");
		newcallback("undo",            std::bind(&GTP::gtp_undo,          this, _1), "Undo one or more moves: undo [amount to undo]");
		newcallback("time",            std::bind(&GTP::gtp_time,          this, _1), "Set the time limits and the algorithm for per game time");
		newcallback("genmove",         std::bind(&GTP::gtp_genmove,       this, _1), "Generate a move: genmove [color] [time]");
		newcallback("solve",           std::bind(&GTP::gtp_solve,         this, _1), "Try to solve this position");

		newcallback("ab",              std::bind(&GTP::gtp_ab,            this, _1), "Switch to use the Alpha/Beta agent to play/solve");
		newcallback("mcts",            std::bind(&GTP::gtp_mcts,          this, _1), "Switch to use the Monte Carlo Tree Search agent to play/solve");
		newcallback("pns",             std::bind(&GTP::gtp_pns,           this, _1), "Switch to use the Proof Number Search agent to play/solve");

		newcallback("all_legal",       std::bind(&GTP::gtp_all_legal,     this, _1), "List all legal moves");
		newcallback("history",         std::bind(&GTP::gtp_history,       this, _1), "List of played moves");
		newcallback("playgame",        std::bind(&GTP::gtp_playgame,      this, _1), "Play a list of moves");
		newcallback("winner",          std::bind(&GTP::gtp_winner,        this, _1), "Check the winner of the game");

		newcallback("pv",              std::bind(&GTP::gtp_pv,            this, _1), "Output the principle variation for the player tree as it stands now");
		newcallback("move_stats",      std::bind(&GTP::gtp_move_stats,    this, _1), "Output the move stats for the player tree as it stands now");

		newcallback("params",          std::bind(&GTP::gtp_params,        this, _1), "Set the options for the player, no args gives options");

		newcallback("save_sgf",        std::bind(&GTP::gtp_save_sgf,      this, _1), "Output an sgf of the current tree");
		newcallback("load_sgf",        std::bind(&GTP::gtp_load_sgf,      this, _1), "Load an sgf generated by save_sgf");
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x808, %rsp            # imm = 0x808
movq %rdi, %rbx
callq 0x9130
leaq 0x7f8(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x2b308(%rip), %rsi     # 0x31916
leaq 0x2b302(%rip), %rdx     # 0x31917
leaq 0x7e8(%rsp), %rdi
callq 0xb026
leaq 0x2b779(%rip), %rax     # 0x31da2
leaq 0x2b775(%rip), %rcx     # 0x31da5
leaq 0x68(%rbx), %r12
vxorps %xmm0, %xmm0, %xmm0
movb (%rax), %al
movb (%rcx), %cl
vmovups %ymm0, 0x11(%r12)
vmovups %ymm0, (%r12)
movb %al, 0x99(%rbx)
movb %cl, 0x9a(%rbx)
movw $0xdead, 0x9c(%rbx)     # imm = 0xDEAD
movq $0x0, 0xa0(%rbx)
movq 0x7e8(%rsp), %rdi
cmpq %r14, %rdi
je 0x667e
vzeroupper
callq 0x5310
movl $0x1, 0xa8(%rbx)
movb $0x1, 0xac(%rbx)
movl $0x3e8, 0xb0(%rbx)      # imm = 0x3E8
movl $0x1590, %edi           # imm = 0x1590
movq %r12, 0x20(%rsp)
vzeroupper
callq 0x5350
movq %rax, %rdi
movq %rax, %r15
callq 0x111b6
movq %r15, 0xb8(%rbx)
leaq 0x80(%rbx), %rsi
movq (%r15), %rax
movl $0x1, %edx
movq %r15, %rdi
callq *0x20(%rax)
leaq 0x7d8(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x25afc(%rip), %rsi     # 0x2c1e1
leaq 0x25af9(%rip), %rdx     # 0x2c1e5
leaq 0x7c8(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x192cb(%rip), %rcx     # 0x1f9de
leaq 0x7b8(%rsp), %rbp
leaq 0x4278(%rip), %r14      # 0xa99a
leaq 0x4289(%rip), %r15      # 0xa9b2
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %rbp, -0x10(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x25a95(%rip), %rsi     # 0x2c1e6
leaq 0x25aa1(%rip), %rdx     # 0x2c1f9
leaq 0x7a8(%rsp), %rdi
callq 0xb026
leaq 0x7c8(%rsp), %rsi
leaq 0x7a8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x7a8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x6792
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x67a9
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x7c8(%rsp), %rdi
cmpq %r13, %rdi
je 0x67bb
callq 0x5310
leaq 0x798(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x26017(%rip), %rsi     # 0x2c7e5
leaq 0x26017(%rip), %rdx     # 0x2c7ec
leaq 0x788(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x192ce(%rip), %rcx     # 0x1faca
leaq 0x778(%rsp), %rbp
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %rbp, -0x10(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x259ce(%rip), %rsi     # 0x2c1fa
leaq 0x259dd(%rip), %rdx     # 0x2c210
leaq 0x768(%rsp), %rdi
callq 0xb026
leaq 0x788(%rsp), %rsi
leaq 0x768(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x768(%rsp), %rdi
cmpq %rbp, %rdi
je 0x686d
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x6884
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x788(%rsp), %rdi
cmpq %r13, %rdi
je 0x6896
callq 0x5310
leaq 0x758(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x258c8(%rip), %rsi     # 0x2c171
leaq 0x258c8(%rip), %rdx     # 0x2c178
leaq 0x748(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x19265(%rip), %rcx     # 0x1fb3c
leaq 0x738(%rsp), %rbp
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %rbp, -0x10(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x2590a(%rip), %rsi     # 0x2c211
leaq 0x2593f(%rip), %rdx     # 0x2c24d
leaq 0x728(%rsp), %rdi
callq 0xb026
leaq 0x748(%rsp), %rsi
leaq 0x728(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x728(%rsp), %rdi
cmpq %rbp, %rdi
je 0x6948
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x695f
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x748(%rsp), %rdi
cmpq %r13, %rdi
je 0x6971
callq 0x5310
leaq 0x718(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x258ca(%rip), %rsi     # 0x2c24e
leaq 0x258cd(%rip), %rdx     # 0x2c258
leaq 0x708(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x192a4(%rip), %rcx     # 0x1fc56
leaq 0x6f8(%rsp), %rbp
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %rbp, -0x10(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x25877(%rip), %rsi     # 0x2c259
leaq 0x25890(%rip), %rdx     # 0x2c279
leaq 0x6e8(%rsp), %rdi
callq 0xb026
leaq 0x708(%rsp), %rsi
leaq 0x6e8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x6e8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x6a23
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x6a3a
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x708(%rsp), %rdi
cmpq %r13, %rdi
je 0x6a4c
callq 0x5310
leaq 0x6d8(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x2583a(%rip), %rsi     # 0x2c299
leaq 0x2583c(%rip), %rdx     # 0x2c2a2
leaq 0x6c8(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x17d57(%rip), %rbp     # 0x1e7e4
leaq 0x6b8(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rbp, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x257bc(%rip), %rsi     # 0x2c27a
leaq 0x257c3(%rip), %rdx     # 0x2c288
leaq 0x6a8(%rsp), %rdi
callq 0xb026
leaq 0x6c8(%rsp), %rsi
leaq 0x6a8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x6a8(%rsp), %rdi
cmpq %r12, %rdi
je 0x6aff
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x6b16
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x6c8(%rsp), %rdi
cmpq %r13, %rdi
je 0x6b28
callq 0x5310
leaq 0x698(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x2574e(%rip), %rsi     # 0x2c289
leaq 0x2574c(%rip), %rdx     # 0x2c28e
leaq 0x688(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x678(%rsp), %r12
movq %rbp, (%rax)
movq $0x0, 0x8(%rax)
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %rbx, 0x10(%rax)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
leaq 0x256fc(%rip), %rsi     # 0x2c28f
leaq 0x25708(%rip), %rdx     # 0x2c2a2
leaq 0x668(%rsp), %rdi
callq 0xb026
leaq 0x688(%rsp), %rsi
leaq 0x668(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x668(%rsp), %rdi
cmpq %r12, %rdi
je 0x6bd4
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x6beb
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x688(%rsp), %rdi
cmpq %r13, %rdi
je 0x6bfd
callq 0x5310
leaq 0x658(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x256d9(%rip), %rsi     # 0x2c2e9
leaq 0x256d7(%rip), %rdx     # 0x2c2ee
leaq 0x648(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x17b3e(%rip), %rcx     # 0x1e77c
leaq 0x638(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x25634(%rip), %rsi     # 0x2c2a3
leaq 0x25678(%rip), %rdx     # 0x2c2ee
leaq 0x628(%rsp), %rdi
callq 0xb026
leaq 0x648(%rsp), %rsi
leaq 0x628(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x628(%rsp), %rdi
cmpq %r12, %rdi
je 0x6cb0
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x6cc7
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x648(%rsp), %rdi
cmpq %r13, %rdi
je 0x6cd9
callq 0x5310
leaq 0x618(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x25603(%rip), %rsi     # 0x2c2ef
leaq 0x25600(%rip), %rdx     # 0x2c2f3
leaq 0x608(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x19060(%rip), %rcx     # 0x1fd7a
leaq 0x5f8(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x255a9(%rip), %rsi     # 0x2c2f4
leaq 0x255ca(%rip), %rdx     # 0x2c31c
leaq 0x5e8(%rsp), %rdi
callq 0xb026
leaq 0x608(%rsp), %rsi
leaq 0x5e8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x5e8(%rsp), %rdi
cmpq %r12, %rdi
je 0x6d8c
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x6da3
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x608(%rsp), %rdi
cmpq %r13, %rdi
je 0x6db5
callq 0x5310
leaq 0x5d8(%rsp), %rbp
movq %rbp, -0x10(%rbp)
leaq 0x25588(%rip), %rsi     # 0x2c350
leaq 0x2558c(%rip), %rdx     # 0x2c35b
leaq 0x5c8(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x17ba6(%rip), %r13     # 0x1e99c
leaq 0x5b8(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %r13, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x254f6(%rip), %rsi     # 0x2c31d
leaq 0x25511(%rip), %rdx     # 0x2c33f
leaq 0x5a8(%rsp), %rdi
callq 0xb026
leaq 0x5c8(%rsp), %rsi
leaq 0x5a8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x5a8(%rsp), %rdi
cmpq %r12, %rdi
je 0x6e68
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x6e7f
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x5c8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x6e91
callq 0x5310
leaq 0x598(%rsp), %rbp
movq %rbp, -0x10(%rbp)
leaq 0x2549c(%rip), %rsi     # 0x2c340
leaq 0x2549a(%rip), %rdx     # 0x2c345
leaq 0x588(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x578(%rsp), %r12
movq %r13, (%rax)
movq $0x0, 0x8(%rax)
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %rbx, 0x10(%rax)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
leaq 0x2544a(%rip), %rsi     # 0x2c346
leaq 0x25458(%rip), %rdx     # 0x2c35b
leaq 0x568(%rsp), %rdi
callq 0xb026
leaq 0x588(%rsp), %rsi
leaq 0x568(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x568(%rsp), %rdi
cmpq %r12, %rdi
je 0x6f3d
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x6f54
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x588(%rsp), %rdi
cmpq %rbp, %rdi
je 0x6f66
callq 0x5310
leaq 0x558(%rsp), %rbp
movq %rbp, -0x10(%rbp)
leaq 0x253e3(%rip), %rsi     # 0x2c35c
leaq 0x253e5(%rip), %rdx     # 0x2c365
leaq 0x548(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x538(%rsp), %r12
movq %r13, (%rax)
movq $0x0, 0x8(%rax)
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %rbx, 0x10(%rax)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
leaq 0x25395(%rip), %rsi     # 0x2c366
leaq 0x253b8(%rip), %rdx     # 0x2c390
leaq 0x528(%rsp), %rdi
callq 0xb026
leaq 0x548(%rsp), %rsi
leaq 0x528(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x528(%rsp), %rdi
cmpq %r12, %rdi
je 0x7012
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x7029
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x548(%rsp), %rdi
cmpq %rbp, %rdi
je 0x703b
callq 0x5310
leaq 0x518(%rsp), %rbp
movq %rbp, -0x10(%rbp)
leaq 0x2a92f(%rip), %rsi     # 0x3197d
leaq 0x2a92c(%rip), %rdx     # 0x31981
leaq 0x508(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x4f8(%rsp), %r12
movq %r13, (%rax)
movq $0x0, 0x8(%rax)
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %rbx, 0x10(%rax)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
leaq 0x252eb(%rip), %rsi     # 0x2c391
leaq 0x252f8(%rip), %rdx     # 0x2c3a5
leaq 0x4e8(%rsp), %rdi
callq 0xb026
leaq 0x508(%rsp), %rsi
leaq 0x4e8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x4e8(%rsp), %rdi
cmpq %r12, %rdi
je 0x70e7
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x70fe
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x508(%rsp), %rdi
cmpq %rbp, %rdi
je 0x7110
callq 0x5310
leaq 0x4d8(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x25283(%rip), %rsi     # 0x2c3a6
leaq 0x25280(%rip), %rdx     # 0x2c3aa
leaq 0x4c8(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x185d1(%rip), %rcx     # 0x1f722
leaq 0x4b8(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x25229(%rip), %rsi     # 0x2c3ab
leaq 0x25248(%rip), %rdx     # 0x2c3d1
leaq 0x4a8(%rsp), %rdi
callq 0xb026
leaq 0x4c8(%rsp), %rsi
leaq 0x4a8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x4a8(%rsp), %rdi
cmpq %r12, %rdi
je 0x71c3
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x71da
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x4c8(%rsp), %rdi
cmpq %r13, %rdi
je 0x71ec
callq 0x5310
leaq 0x498(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x251d3(%rip), %rsi     # 0x2c3d2
leaq 0x251d1(%rip), %rdx     # 0x2c3d7
leaq 0x488(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x185f3(%rip), %rcx     # 0x1f820
leaq 0x478(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x2517a(%rip), %rsi     # 0x2c3d8
leaq 0x25198(%rip), %rdx     # 0x2c3fd
leaq 0x468(%rsp), %rdi
callq 0xb026
leaq 0x488(%rsp), %rsi
leaq 0x468(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x468(%rsp), %rdi
cmpq %r12, %rdi
je 0x729f
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x72b6
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x488(%rsp), %rdi
cmpq %r13, %rdi
je 0x72c8
callq 0x5310
leaq 0x458(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x25123(%rip), %rsi     # 0x2c3fe
leaq 0x25121(%rip), %rdx     # 0x2c403
leaq 0x448(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x185ad(%rip), %rcx     # 0x1f8b6
leaq 0x438(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x250ca(%rip), %rsi     # 0x2c404
leaq 0x250e8(%rip), %rdx     # 0x2c429
leaq 0x428(%rsp), %rdi
callq 0xb026
leaq 0x448(%rsp), %rsi
leaq 0x428(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x428(%rsp), %rdi
cmpq %r12, %rdi
je 0x737b
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x7392
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x448(%rsp), %rdi
cmpq %r13, %rdi
je 0x73a4
callq 0x5310
leaq 0x418(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x25073(%rip), %rsi     # 0x2c42a
leaq 0x25070(%rip), %rdx     # 0x2c42e
leaq 0x408(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x176a7(%rip), %rcx     # 0x1ea8c
leaq 0x3f8(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x25019(%rip), %rsi     # 0x2c42f
leaq 0x2503f(%rip), %rdx     # 0x2c45c
leaq 0x3e8(%rsp), %rdi
callq 0xb026
leaq 0x408(%rsp), %rsi
leaq 0x3e8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x3e8(%rsp), %rdi
cmpq %r12, %rdi
je 0x7457
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x746e
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x408(%rsp), %rdi
cmpq %r13, %rdi
je 0x7480
callq 0x5310
leaq 0x3d8(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x24ffd(%rip), %rsi     # 0x2c490
leaq 0x24ffa(%rip), %rdx     # 0x2c494
leaq 0x3c8(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x211df(%rip), %rcx     # 0x286a0
leaq 0x3b8(%rsp), %r12
leaq 0x35dc(%rip), %r8       # 0xaaac
movq %rax, (%rsp)
movq %r8, 0x18(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
leaq 0x35dc(%rip), %rcx      # 0xaac4
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
movq %rcx, 0x10(%rsp)
leaq 0x24f5d(%rip), %rsi     # 0x2c45d
leaq 0x24f8d(%rip), %rdx     # 0x2c494
leaq 0x3a8(%rsp), %rdi
callq 0xb026
leaq 0x3c8(%rsp), %rsi
leaq 0x3a8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x3a8(%rsp), %rdi
cmpq %r12, %rdi
je 0x7541
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x7558
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x3c8(%rsp), %rdi
cmpq %r13, %rdi
je 0x756a
callq 0x5310
leaq 0x398(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x24f18(%rip), %rsi     # 0x2c495
leaq 0x24f18(%rip), %rdx     # 0x2c49c
leaq 0x388(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x1a935(%rip), %rcx     # 0x21ee0
leaq 0x378(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x24ec1(%rip), %rsi     # 0x2c49d
leaq 0x24ee1(%rip), %rdx     # 0x2c4c4
leaq 0x368(%rsp), %rdi
callq 0xb026
leaq 0x388(%rsp), %rsi
leaq 0x368(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x368(%rsp), %rdi
cmpq %r12, %rdi
je 0x761d
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x7634
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x388(%rsp), %rdi
cmpq %r13, %rdi
je 0x7646
callq 0x5310
leaq 0x358(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x24eb5(%rip), %rsi     # 0x2c50e
leaq 0x24eb3(%rip), %rdx     # 0x2c513
leaq 0x348(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x1a0fd(%rip), %rcx     # 0x21784
leaq 0x338(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x24e0d(%rip), %rsi     # 0x2c4c5
leaq 0x24e20(%rip), %rdx     # 0x2c4df
leaq 0x328(%rsp), %rdi
callq 0xb026
leaq 0x348(%rsp), %rsi
leaq 0x328(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x328(%rsp), %rdi
cmpq %r12, %rdi
je 0x76f9
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x7710
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x348(%rsp), %rdi
cmpq %r13, %rdi
je 0x7722
callq 0x5310
leaq 0x318(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x24dab(%rip), %rsi     # 0x2c4e0
leaq 0x24da6(%rip), %rdx     # 0x2c4e2
leaq 0x308(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x16f5d(%rip), %rcx     # 0x1e6c0
leaq 0x2f8(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x24d4f(%rip), %rsi     # 0x2c4e3
leaq 0x24d78(%rip), %rdx     # 0x2c513
leaq 0x2e8(%rsp), %rdi
callq 0xb026
leaq 0x308(%rsp), %rsi
leaq 0x2e8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x2e8(%rsp), %rdi
cmpq %r12, %rdi
je 0x77d5
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x77ec
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x308(%rsp), %rdi
cmpq %r13, %rdi
je 0x77fe
callq 0x5310
leaq 0x2d8(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x24d03(%rip), %rsi     # 0x2c514
leaq 0x24d00(%rip), %rdx     # 0x2c518
leaq 0x2c8(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x16d09(%rip), %rcx     # 0x1e548
leaq 0x2b8(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x24ca9(%rip), %rsi     # 0x2c519
leaq 0x24cdf(%rip), %rdx     # 0x2c556
leaq 0x2a8(%rsp), %rdi
callq 0xb026
leaq 0x2c8(%rsp), %rsi
leaq 0x2a8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x2a8(%rsp), %rdi
cmpq %r12, %rdi
je 0x78b1
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x78c8
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x2c8(%rsp), %rdi
cmpq %r13, %rdi
je 0x78da
callq 0x5310
leaq 0x298(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x24c6a(%rip), %rsi     # 0x2c557
leaq 0x24c66(%rip), %rdx     # 0x2c55a
leaq 0x288(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x16ce9(%rip), %rcx     # 0x1e604
leaq 0x278(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x24c0f(%rip), %rsi     # 0x2c55b
leaq 0x24c41(%rip), %rdx     # 0x2c594
leaq 0x268(%rsp), %rdi
callq 0xb026
leaq 0x288(%rsp), %rsi
leaq 0x268(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x268(%rsp), %rdi
cmpq %r12, %rdi
je 0x798d
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x79a4
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x288(%rsp), %rdi
cmpq %r13, %rdi
je 0x79b6
callq 0x5310
leaq 0x258(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x24bcc(%rip), %rsi     # 0x2c595
leaq 0x24bce(%rip), %rdx     # 0x2c59e
leaq 0x248(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x171af(%rip), %rcx     # 0x1eba6
leaq 0x238(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x24b77(%rip), %rsi     # 0x2c59f
leaq 0x24b84(%rip), %rdx     # 0x2c5b3
leaq 0x228(%rsp), %rdi
callq 0xb026
leaq 0x248(%rsp), %rsi
leaq 0x228(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x228(%rsp), %rdi
cmpq %r12, %rdi
je 0x7a69
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x7a80
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x248(%rsp), %rdi
cmpq %r13, %rdi
je 0x7a92
callq 0x5310
leaq 0x218(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x24b0f(%rip), %rsi     # 0x2c5b4
leaq 0x24b0f(%rip), %rdx     # 0x2c5bb
leaq 0x208(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x172db(%rip), %rcx     # 0x1edae
leaq 0x1f8(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x24ab8(%rip), %rsi     # 0x2c5bc
leaq 0x24ac5(%rip), %rdx     # 0x2c5d0
leaq 0x1e8(%rsp), %rdi
callq 0xb026
leaq 0x208(%rsp), %rsi
leaq 0x1e8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x1e8(%rsp), %rdi
cmpq %r12, %rdi
je 0x7b45
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x7b5c
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x208(%rsp), %rdi
cmpq %r13, %rdi
je 0x7b6e
callq 0x5310
leaq 0x1d8(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x24a50(%rip), %rsi     # 0x2c5d1
leaq 0x24a51(%rip), %rdx     # 0x2c5d9
leaq 0x1c8(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x17a4b(%rip), %rcx     # 0x1f5fa
leaq 0x1b8(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x249fa(%rip), %rsi     # 0x2c5da
leaq 0x24a07(%rip), %rdx     # 0x2c5ee
leaq 0x1a8(%rsp), %rdi
callq 0xb026
leaq 0x1c8(%rsp), %rsi
leaq 0x1a8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x1a8(%rsp), %rdi
cmpq %r12, %rdi
je 0x7c21
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x7c38
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x1c8(%rsp), %rdi
cmpq %r13, %rdi
je 0x7c4a
callq 0x5310
leaq 0x198(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x24992(%rip), %rsi     # 0x2c5ef
leaq 0x24991(%rip), %rdx     # 0x2c5f5
leaq 0x188(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x17cc1(%rip), %rcx     # 0x1f94c
leaq 0x178(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x2493a(%rip), %rsi     # 0x2c5f6
leaq 0x2494f(%rip), %rdx     # 0x2c612
leaq 0x168(%rsp), %rdi
callq 0xb026
leaq 0x188(%rsp), %rsi
leaq 0x168(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x168(%rsp), %rdi
cmpq %r12, %rdi
je 0x7cfd
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x7d14
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x188(%rsp), %rdi
cmpq %r13, %rdi
je 0x7d26
callq 0x5310
leaq 0x158(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x248da(%rip), %rsi     # 0x2c613
leaq 0x248d5(%rip), %rdx     # 0x2c615
leaq 0x148(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x1a8f7(%rip), %rcx     # 0x2265e
leaq 0x138(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x2487e(%rip), %rsi     # 0x2c616
leaq 0x248ba(%rip), %rdx     # 0x2c659
leaq 0x128(%rsp), %rdi
callq 0xb026
leaq 0x148(%rsp), %rsi
leaq 0x128(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x128(%rsp), %rdi
cmpq %r12, %rdi
je 0x7dd9
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x7df0
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x148(%rsp), %rdi
cmpq %r13, %rdi
je 0x7e02
callq 0x5310
leaq 0x118(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x24845(%rip), %rsi     # 0x2c65a
leaq 0x24848(%rip), %rdx     # 0x2c664
leaq 0x108(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x197a9(%rip), %rcx     # 0x215ec
leaq 0xf8(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x247f1(%rip), %rsi     # 0x2c665
leaq 0x24824(%rip), %rdx     # 0x2c69f
leaq 0xe8(%rsp), %rdi
callq 0xb026
leaq 0x108(%rsp), %rsi
leaq 0xe8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0xe8(%rsp), %rdi
cmpq %r12, %rdi
je 0x7eb5
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x7ecc
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x108(%rsp), %rdi
cmpq %r13, %rdi
je 0x7ede
callq 0x5310
leaq 0xd8(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x247af(%rip), %rsi     # 0x2c6a0
leaq 0x247ae(%rip), %rdx     # 0x2c6a6
leaq 0xc8(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x1a959(%rip), %rcx     # 0x22878
leaq 0xb8(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x24757(%rip), %rsi     # 0x2c6a7
leaq 0x24785(%rip), %rdx     # 0x2c6dc
leaq 0xa8(%rsp), %rdi
callq 0xb026
leaq 0xc8(%rsp), %rsi
leaq 0xa8(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0xa8(%rsp), %rdi
cmpq %r12, %rdi
je 0x7f91
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x7fa8
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0xc8(%rsp), %rdi
cmpq %r13, %rdi
je 0x7fba
callq 0x5310
leaq 0x98(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x24754(%rip), %rsi     # 0x2c721
leaq 0x24755(%rip), %rdx     # 0x2c729
leaq 0x88(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x17df1(%rip), %rcx     # 0x1fdec
leaq 0x78(%rsp), %r12
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
movq %r12, -0x10(%r12)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x246b4(%rip), %rsi     # 0x2c6dd
leaq 0x246ce(%rip), %rdx     # 0x2c6fe
leaq 0x68(%rsp), %rdi
callq 0xb026
leaq 0x88(%rsp), %rsi
leaq 0x68(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x68(%rsp), %rdi
cmpq %r12, %rdi
je 0x8061
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8078
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x88(%rsp), %rdi
cmpq %r13, %rdi
je 0x808a
callq 0x5310
leaq 0x58(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x24665(%rip), %rsi     # 0x2c6ff
leaq 0x24666(%rip), %rdx     # 0x2c707
leaq 0x48(%rsp), %rdi
callq 0xb026
movq $0x0, 0x8(%rsp)
movl $0x18, %edi
callq 0x5350
leaq 0x1845b(%rip), %rcx     # 0x20520
movq %rax, (%rsp)
movq %r14, 0x18(%rsp)
movq %r15, 0x10(%rsp)
leaq 0x38(%rsp), %r15
movq %r15, -0x10(%r15)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq %rbx, 0x10(%rax)
leaq 0x24616(%rip), %rsi     # 0x2c708
leaq 0x24630(%rip), %rdx     # 0x2c729
leaq 0x28(%rsp), %rdi
callq 0xb026
leaq 0x48(%rsp), %rsi
leaq 0x28(%rsp), %rcx
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x93ea
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x8127
callq 0x5310
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x813e
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0x814d
callq 0x5310
addq $0x808, %rsp            # imm = 0x808
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
jmp 0x8b27
movq 0x28(%rsp), %rdi
movq %rax, %r14
cmpq %r15, %rdi
je 0x8211
callq 0x5310
jmp 0x8211
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8232
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8232
jmp 0x8b27
movq %rax, %r14
movq 0x48(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x68(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x8258
callq 0x5310
jmp 0x8258
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8279
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8279
jmp 0x8b27
movq %rax, %r14
movq 0x88(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0xa8(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x82a5
callq 0x5310
jmp 0x82a5
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x82c6
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x82c6
jmp 0x8b27
movq %rax, %r14
movq 0xc8(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0xe8(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x82f2
callq 0x5310
jmp 0x82f2
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8313
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8313
jmp 0x8b27
movq %rax, %r14
movq 0x108(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x128(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x833f
callq 0x5310
jmp 0x833f
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8360
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8360
jmp 0x8b27
movq %rax, %r14
movq 0x148(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x168(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x838c
callq 0x5310
jmp 0x838c
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x83ad
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x83ad
jmp 0x8b27
movq %rax, %r14
movq 0x188(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x1a8(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x83d9
callq 0x5310
jmp 0x83d9
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x83fa
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x83fa
jmp 0x8b27
movq %rax, %r14
movq 0x1c8(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x1e8(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x8426
callq 0x5310
jmp 0x8426
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8447
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8447
jmp 0x8b27
movq %rax, %r14
movq 0x208(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x228(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x8473
callq 0x5310
jmp 0x8473
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8494
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8494
jmp 0x8b27
movq %rax, %r14
movq 0x248(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x268(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x84c0
callq 0x5310
jmp 0x84c0
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x84e1
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x84e1
jmp 0x8b27
movq %rax, %r14
movq 0x288(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x2a8(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x850d
callq 0x5310
jmp 0x850d
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x852e
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x852e
jmp 0x8b27
movq %rax, %r14
movq 0x2c8(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x2e8(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x855a
callq 0x5310
jmp 0x855a
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x857b
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x857b
jmp 0x8b27
movq %rax, %r14
movq 0x308(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x328(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x85a7
callq 0x5310
jmp 0x85a7
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x85c8
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x85c8
jmp 0x8b27
movq %rax, %r14
movq 0x348(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x368(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x85f4
callq 0x5310
jmp 0x85f4
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8615
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8615
jmp 0x8b27
movq %rax, %r14
movq 0x388(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x3a8(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x8641
callq 0x5310
jmp 0x8641
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8662
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8662
jmp 0x8b27
movq %rax, %r14
movq 0x3c8(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x3e8(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x868e
callq 0x5310
jmp 0x868e
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x86af
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x86af
jmp 0x8b27
movq %rax, %r14
movq 0x408(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x428(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x86db
callq 0x5310
jmp 0x86db
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x86fc
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x86fc
jmp 0x8b27
movq %rax, %r14
movq 0x448(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x468(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x8728
callq 0x5310
jmp 0x8728
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8749
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8749
jmp 0x8b27
movq %rax, %r14
movq 0x488(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x4a8(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x8775
callq 0x5310
jmp 0x8775
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8796
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8796
jmp 0x8b27
movq %rax, %r14
movq 0x4c8(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x4e8(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x87c2
callq 0x5310
jmp 0x87c2
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x87e3
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x87e3
jmp 0x8b27
movq %rax, %r14
movq 0x508(%rsp), %rdi
jmp 0x88cf
jmp 0x8b55
movq 0x528(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x880f
callq 0x5310
jmp 0x880f
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8830
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8830
jmp 0x8b27
movq %rax, %r14
movq 0x548(%rsp), %rdi
jmp 0x88cf
jmp 0x8b55
movq 0x568(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x885c
callq 0x5310
jmp 0x885c
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x887d
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x887d
jmp 0x8b27
movq %rax, %r14
movq 0x588(%rsp), %rdi
jmp 0x88cf
jmp 0x8b55
movq 0x5a8(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x88a6
callq 0x5310
jmp 0x88a6
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x88c7
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x88c7
jmp 0x8b27
movq %rax, %r14
movq 0x5c8(%rsp), %rdi
cmpq %rbp, %rdi
jne 0x8b3f
jmp 0x8b58
jmp 0x8b55
movq 0x5e8(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x88fc
callq 0x5310
jmp 0x88fc
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x891d
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x891d
jmp 0x8b27
movq %rax, %r14
movq 0x608(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x628(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x8949
callq 0x5310
jmp 0x8949
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x896a
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x896a
jmp 0x8b27
movq %rax, %r14
movq 0x648(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x668(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x8996
callq 0x5310
jmp 0x8996
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x89b7
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x89b7
jmp 0x8b27
movq %rax, %r14
movq 0x688(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x6a8(%rsp), %rdi
movq %rax, %r14
cmpq %r12, %rdi
je 0x89e3
callq 0x5310
jmp 0x89e3
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8a04
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8a04
jmp 0x8b27
movq %rax, %r14
movq 0x6c8(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x6e8(%rsp), %rdi
movq %rax, %r14
cmpq %rbp, %rdi
je 0x8a30
callq 0x5310
jmp 0x8a30
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8a51
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8a51
jmp 0x8b27
movq %rax, %r14
movq 0x708(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x728(%rsp), %rdi
movq %rax, %r14
cmpq %rbp, %rdi
je 0x8a7d
callq 0x5310
jmp 0x8a7d
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8a9e
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8a9e
jmp 0x8b27
movq %rax, %r14
movq 0x748(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x768(%rsp), %rdi
movq %rax, %r14
cmpq %rbp, %rdi
je 0x8aca
callq 0x5310
jmp 0x8aca
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8ae8
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8ae8
jmp 0x8b27
movq %rax, %r14
movq 0x788(%rsp), %rdi
jmp 0x8b3a
jmp 0x8b55
movq 0x7a8(%rsp), %rdi
movq %rax, %r14
cmpq %rbp, %rdi
je 0x8b0e
callq 0x5310
jmp 0x8b0e
movq %rax, %r14
movq 0x10(%rsp), %rax
testq %rax, %rax
je 0x8b32
movl $0x3, %edx
movq %rsp, %rdi
movq %rdi, %rsi
callq *%rax
jmp 0x8b32
movq %rax, %rdi
callq 0x9eae
movq %rax, %r14
movq 0x7c8(%rsp), %rdi
cmpq %r13, %rdi
je 0x8b58
callq 0x5310
jmp 0x8b58
jmp 0x8b55
movq %rax, %r14
movq %r15, %rdi
jmp 0x8b3f
movq %rax, %r14
jmp 0x8b6a
movq %rax, %r14
movq 0x20(%rsp), %rax
movq (%rax), %rdi
testq %rdi, %rdi
je 0x8b6a
callq 0x5310
addq $0x10, %rbx
movq %rbx, %rdi
callq 0x9e86
movq %r14, %rdi
callq 0x56c0