// File: /workspace/github_cpp_makefile_star2_O2/tewalds[P]pentagod/./pentagogtp.h
// Function: PentagoGTP::PentagoGTP(_IO_FILE*, _IO_FILE*, _IO_FILE*)
PentagoGTP(FILE * i = stdin, FILE * o = stdout, FILE * l = NULL){
		GTPclient(i, o, l);

		verbose = 1;
		colorboard = true;

		time_remain = time.game;
		mem_allowed = 1000;

		agent = new AgentMCTS();

		set_board();

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

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

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

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

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

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x7b8, %rsp            # imm = 0x7B8
movq %rdx, %r15
movq 0x2631c(%rip), %rdx     # 0x2afc0
movq 0x2632d(%rip), %rax     # 0x2afd8
movq %rsi, %r12
movq %rcx, %r14
movq %rdi, %rbx
xorl %ecx, %ecx
movq (%rax), %rsi
movq (%rdx), %rdx
callq 0x68f0
vmovsd 0x1734f(%rip), %xmm1    # 0x1c018
vxorps %xmm0, %xmm0, %xmm0
movabsq $0x4014000000000000, %rax # imm = 0x4014000000000000
andq $0x0, 0x48(%rbx)
vmovups %xmm0, 0x38(%rbx)
movl $0x2, 0x58(%rbx)
vmovups %xmm1, 0x60(%rbx)
movq %rax, 0x70(%rbx)
movb $0x1, 0x78(%rbx)
andl $0x0, 0x7c(%rbx)
leaq 0x780(%rsp), %rdi
movq %r12, %rsi
movq %r15, %rdx
movq %r14, %rcx
callq 0x68f0
leaq 0x780(%rsp), %rdi
callq 0x6f6c
movl $0x1, 0x50(%rbx)
movb $0x1, 0x54(%rbx)
vmovsd 0x68(%rbx), %xmm0
vmovsd %xmm0, 0x80(%rbx)
movl $0x3e8, 0x88(%rbx)      # imm = 0x3E8
movl $0xb68, %edi            # imm = 0xB68
callq 0x42f0
movq %rax, %rdi
movq %rax, %r15
callq 0x14080
movq %r15, 0x90(%rbx)
pushq $0x1
popq %rsi
movq %rbx, %rdi
callq 0x6f8c
leaq 0x175e1(%rip), %rsi     # 0x1c34d
leaq 0x760(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x58e9(%rip), %rax      # 0xa66e
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x175ab(%rip), %rsi     # 0x1c352
leaq 0x740(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x760(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x740(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x740(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x760(%rsp), %rdi
callq 0x4130
leaq 0x17aee(%rip), %rsi     # 0x1c8ef
leaq 0x720(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x58b0(%rip), %rax      # 0xa6ca
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x1752a(%rip), %rsi     # 0x1c366
leaq 0x700(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x720(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x700(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x700(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x720(%rsp), %rdi
callq 0x4130
leaq 0x17407(%rip), %rsi     # 0x1c29d
leaq 0x6e0(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x5877(%rip), %rax      # 0xa726
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x174ac(%rip), %rsi     # 0x1c37d
leaq 0x6c0(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x6e0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x6c0(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x6c0(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x6e0(%rsp), %rdi
callq 0x4130
leaq 0x1748f(%rip), %rsi     # 0x1c3ba
leaq 0x6a0(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x4828(%rip), %rax      # 0x976c
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x17459(%rip), %rsi     # 0x1c3bf
leaq 0x680(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x6a0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x680(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x680(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x6a0(%rsp), %rdi
callq 0x4130
leaq 0x17424(%rip), %rsi     # 0x1c3e4
leaq 0x660(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x57f3(%rip), %rax      # 0xa7cc
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x173f4(%rip), %rsi     # 0x1c3ef
leaq 0x640(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x660(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x640(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x640(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x660(%rsp), %rdi
callq 0x4130
leaq 0x173da(%rip), %rsi     # 0x1c42f
leaq 0x620(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x47f6(%rip), %r14      # 0x9864
leaq 0x28(%rsp), %rsi
movq %r14, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x17380(%rip), %rsi     # 0x1c410
leaq 0x600(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x620(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x600(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x600(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x620(%rsp), %rdi
callq 0x4130
leaq 0x17335(%rip), %rsi     # 0x1c41f
leaq 0x5e0(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x28(%rsp), %rsi
movq %r14, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x17307(%rip), %rsi     # 0x1c425
leaq 0x5c0(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x5e0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x5c0(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x5c0(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x5e0(%rsp), %rdi
callq 0x4130
leaq 0x17307(%rip), %rsi     # 0x1c47f
leaq 0x5a0(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x4669(%rip), %rax      # 0x97fa
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x17286(%rip), %rsi     # 0x1c439
leaq 0x580(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x5a0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x580(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x580(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x5a0(%rsp), %rdi
callq 0x4130
leaq 0x17278(%rip), %rsi     # 0x1c485
leaq 0x560(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x5656(%rip), %rax      # 0xa87c
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x17242(%rip), %rsi     # 0x1c48a
leaq 0x540(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x560(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x540(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x540(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x560(%rsp), %rdi
callq 0x4130
leaq 0x17244(%rip), %rsi     # 0x1c4e6
leaq 0x520(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x4745(%rip), %r14      # 0x9a00
leaq 0x28(%rsp), %rsi
movq %r14, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x171d6(%rip), %rsi     # 0x1c4b3
leaq 0x500(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x520(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x500(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x500(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x520(%rsp), %rdi
callq 0x4130
leaq 0x1719f(%rip), %rsi     # 0x1c4d6
leaq 0x4e0(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x28(%rsp), %rsi
movq %r14, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x17171(%rip), %rsi     # 0x1c4dc
leaq 0x4c0(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x4e0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x4c0(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x4c0(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x4e0(%rsp), %rdi
callq 0x4130
leaq 0x1712d(%rip), %rsi     # 0x1c4f2
leaq 0x4a0(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x28(%rsp), %rsi
movq %r14, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x17103(%rip), %rsi     # 0x1c4fc
leaq 0x480(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x4a0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x480(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x480(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x4a0(%rsp), %rdi
callq 0x4130
leaq 0x170d4(%rip), %rsi     # 0x1c527
leaq 0x460(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x4fca(%rip), %rax      # 0xa436
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x1709e(%rip), %rsi     # 0x1c52c
leaq 0x440(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x460(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x440(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x440(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x460(%rsp), %rdi
callq 0x4130
leaq 0x1706b(%rip), %rsi     # 0x1c553
leaq 0x420(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x500f(%rip), %rax      # 0xa510
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x17036(%rip), %rsi     # 0x1c559
leaq 0x400(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x420(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x400(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x400(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x420(%rsp), %rdi
callq 0x4130
leaq 0x17002(%rip), %rsi     # 0x1c57f
leaq 0x3e0(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x4ff4(%rip), %rax      # 0xa58a
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16fcd(%rip), %rsi     # 0x1c585
leaq 0x3c0(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x3e0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x3c0(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x3c0(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x3e0(%rsp), %rdi
callq 0x4130
leaq 0x16f99(%rip), %rsi     # 0x1c5ab
leaq 0x3a0(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x4499(%rip), %rax      # 0x9ac4
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16f63(%rip), %rsi     # 0x1c5b0
leaq 0x380(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x3a0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x380(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x380(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x3a0(%rsp), %rdi
callq 0x4130
leaq 0x16f6a(%rip), %rsi     # 0x1c611
leaq 0x360(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x5f7c(%rip), %rax      # 0xb63c
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16efc(%rip), %rsi     # 0x1c5de
leaq 0x340(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x360(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x340(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x340(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x360(%rsp), %rdi
callq 0x4130
leaq 0x16eda(%rip), %rsi     # 0x1c616
leaq 0x320(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x7079(%rip), %rax      # 0xc7ce
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16ea7(%rip), %rsi     # 0x1c61e
leaq 0x300(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x320(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x300(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x300(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x320(%rsp), %rdi
callq 0x4130
leaq 0x16f3f(%rip), %rsi     # 0x1c710
leaq 0x2e0(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x6c3c(%rip), %rax      # 0xc426
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16e3a(%rip), %rsi     # 0x1c646
leaq 0x2c0(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x2e0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x2c0(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x2c0(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x2e0(%rsp), %rdi
callq 0x4130
leaq 0x16dfb(%rip), %rsi     # 0x1c661
leaq 0x2a0(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x3ca9(%rip), %rax      # 0x9528
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16dc5(%rip), %rsi     # 0x1c666
leaq 0x280(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x2a0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x280(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x280(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x2a0(%rsp), %rdi
callq 0x4130
leaq 0x16da9(%rip), %rsi     # 0x1c6a4
leaq 0x260(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x3cd6(%rip), %rax      # 0x95ea
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16d72(%rip), %rsi     # 0x1c6a8
leaq 0x240(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x260(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x240(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x240(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x260(%rsp), %rdi
callq 0x4130
leaq 0x16d52(%rip), %rsi     # 0x1c6e2
leaq 0x220(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x3d03(%rip), %rax      # 0x96ac
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16d1a(%rip), %rsi     # 0x1c6e5
leaq 0x200(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x220(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x200(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x200(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x220(%rsp), %rdi
callq 0x4130
leaq 0x16cf1(%rip), %rsi     # 0x1c716
leaq 0x1e0(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x41ec(%rip), %rax      # 0x9c2a
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16cc0(%rip), %rsi     # 0x1c720
leaq 0x1c0(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x1e0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x1c0(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x1c0(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x1e0(%rsp), %rdi
callq 0x4130
leaq 0x16c7b(%rip), %rsi     # 0x1c735
leaq 0x1a0(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x42c5(%rip), %rax      # 0x9d98
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16c48(%rip), %rsi     # 0x1c73d
leaq 0x180(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x1a0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x180(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x180(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x1a0(%rsp), %rdi
callq 0x4130
leaq 0x16c03(%rip), %rsi     # 0x1c752
leaq 0x160(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x47e2(%rip), %rax      # 0xa34a
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16bd1(%rip), %rsi     # 0x1c75b
leaq 0x140(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x160(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x140(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x140(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x160(%rsp), %rdi
callq 0x4130
leaq 0x16b8c(%rip), %rsi     # 0x1c770
leaq 0x120(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x4a07(%rip), %rax      # 0xa604
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16b58(%rip), %rsi     # 0x1c777
leaq 0x100(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x120(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x100(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x100(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x120(%rsp), %rdi
callq 0x4130
leaq 0x16b1b(%rip), %rsi     # 0x1c794
leaq 0xe0(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x6eee(%rip), %rax      # 0xcb80
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16ae3(%rip), %rsi     # 0x1c797
leaq 0xc0(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0xe0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0xc0(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0xc0(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0xe0(%rsp), %rdi
callq 0x4130
leaq 0x16acd(%rip), %rsi     # 0x1c7db
leaq 0xa0(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x66a9(%rip), %rax      # 0xc3d0
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16a9d(%rip), %rsi     # 0x1c7e6
leaq 0x80(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0xa0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x80(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x80(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0xa0(%rsp), %rdi
callq 0x4130
leaq 0x16a7e(%rip), %rsi     # 0x1c821
leaq 0x60(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x6f0b(%rip), %rax      # 0xccc4
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x70b0
leaq 0x16a4d(%rip), %rsi     # 0x1c828
leaq 0x40(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x60(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x40(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x40(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x60(%rsp), %rdi
callq 0x4130
addq $0x7b8, %rsp            # imm = 0x7B8
popq %rbx
popq %r12
popq %r14
popq %r15
retq
leaq 0x40(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x5e40
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x5e4f
movq %rax, %r14
leaq 0x60(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x80(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x5e73
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x5e82
movq %rax, %r14
leaq 0xa0(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0xc0(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x5ea9
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x5eb8
movq %rax, %r14
leaq 0xe0(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x100(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x5edf
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x5eee
movq %rax, %r14
leaq 0x120(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x140(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x5f15
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x5f24
movq %rax, %r14
leaq 0x160(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x180(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x5f4b
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x5f5a
movq %rax, %r14
leaq 0x1a0(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x1c0(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x5f81
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x5f90
movq %rax, %r14
leaq 0x1e0(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x200(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x5fb7
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x5fc6
movq %rax, %r14
leaq 0x220(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x240(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x5fed
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x5ffc
movq %rax, %r14
leaq 0x260(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x280(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6023
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6032
movq %rax, %r14
leaq 0x2a0(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x2c0(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6059
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6068
movq %rax, %r14
leaq 0x2e0(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x300(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x608f
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x609e
movq %rax, %r14
leaq 0x320(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x340(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x60c5
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x60d4
movq %rax, %r14
leaq 0x360(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x380(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x60fb
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x610a
movq %rax, %r14
leaq 0x3a0(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x3c0(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6131
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6140
movq %rax, %r14
leaq 0x3e0(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x400(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6167
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6176
movq %rax, %r14
leaq 0x420(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x440(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x619d
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x61ac
movq %rax, %r14
leaq 0x460(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x480(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x61d3
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x61e2
movq %rax, %r14
leaq 0x4a0(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x4c0(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6209
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6218
movq %rax, %r14
leaq 0x4e0(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x500(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x623f
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x624e
movq %rax, %r14
leaq 0x520(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x540(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6275
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6284
movq %rax, %r14
leaq 0x560(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x580(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x62ab
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x62ba
movq %rax, %r14
leaq 0x5a0(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x5c0(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x62e1
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x62f0
movq %rax, %r14
leaq 0x5e0(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x600(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6317
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6326
movq %rax, %r14
leaq 0x620(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x640(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x634d
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x635c
movq %rax, %r14
leaq 0x660(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x680(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6383
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6392
movq %rax, %r14
leaq 0x6a0(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x6c0(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x63b9
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x63c8
movq %rax, %r14
leaq 0x6e0(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x700(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x63e9
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x63f8
movq %rax, %r14
leaq 0x720(%rsp), %rdi
jmp 0x6430
jmp 0x6446
leaq 0x740(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6419
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6428
movq %rax, %r14
leaq 0x760(%rsp), %rdi
callq 0x4130
jmp 0x6449
jmp 0x6446
movq %r15, %rdi
movq %rax, %r14
callq 0x42c0
jmp 0x6449
movq %rax, %r14
leaq 0x38(%rbx), %rdi
callq 0x8958
movq %rbx, %rdi
callq 0x6f6c
movq %r14, %rdi
callq 0x4590