// File: tewalds[P]morat/havannah/board.cpp
// Function: Morat::Havannah::Board::to_s(bool, std::function<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> (Morat::Move)>) const
std::string Board::to_s(bool color, std::function<std::string(Move)> func) const {
	using std::string;
	string white = "O",
	       black = "@",
	       coord = "",
	       reset = "";
	if(color){
		string esc = "\033";
		reset = esc + "[0m";
		coord = esc + "[1;37m";
		white = esc + "[1;33m" + "@"; //yellow
		black = esc + "[1;34m" + "@"; //blue
	}

	string s;
	s += string(size_r_ + 3, ' ');
	for(int i = 0; i < size_r_; i++)
		s += " " + coord + char('A' + i);
	s += "\n";

	for(int y = 0; y < size_; y++){
		s += string(abs(size_r_m1_ - y) + (y + 1 < 10) + 1, ' ');
		s += coord + to_str(y + 1);
		int end = line_end(y);
		for(int x = line_start(y); x < end; x++){
			s += (last_move_ == Move(x, y)   ? coord + "[" :
			      last_move_ == Move(x-1, y) ? coord + "]" : " ");
			Side p = get(x, y);
			if(     p == Side::NONE) s += reset + func(Move(x, y));
			else if(p == Side::P1)   s += white;
			else if(p == Side::P2)   s += black;
			else                     s += "?";
		}
		s += (last_move_ == Move(end-1, y) ? coord + "]" : " ");
		if(y < size_r_m1_)
			s += coord + char('A' + size_r_ + y);
		s += '\n';
	}

	s += reset;
	return s;
}

// Assembly:
subq $0x428, %rsp            # imm = 0x428
movq %rcx, 0xa8(%rsp)
movq %rdi, 0xb0(%rsp)
movb %dl, %al
movq %rdi, %rdx
movq %rdx, 0xb8(%rsp)
movq %rdi, 0x420(%rsp)
movq %rsi, 0x418(%rsp)
andb $0x1, %al
movb %al, 0x417(%rsp)
movq %rcx, 0x408(%rsp)
movq 0x418(%rsp), %rax
movq %rax, 0xc0(%rsp)
leaq 0x3e7(%rsp), %rdi
movq %rdi, 0xc8(%rsp)
callq 0x5780
movq 0xc8(%rsp), %rdx
leaq 0x1bb37(%rip), %rsi     # 0x53080
leaq 0x3e8(%rsp), %rdi
callq 0x55a0
jmp 0x37558
leaq 0x3e7(%rsp), %rdi
callq 0x5460
leaq 0x3af(%rsp), %rdi
movq %rdi, 0xa0(%rsp)
callq 0x5780
movq 0xa0(%rsp), %rdx
leaq 0x1a6f4(%rip), %rsi     # 0x51c7d
leaq 0x3b0(%rsp), %rdi
callq 0x55a0
jmp 0x37598
leaq 0x3af(%rsp), %rdi
callq 0x5460
leaq 0x387(%rsp), %rdi
movq %rdi, 0x98(%rsp)
callq 0x5780
movq 0x98(%rsp), %rdx
leaq 0x1732a(%rip), %rsi     # 0x4e8f3
leaq 0x388(%rsp), %rdi
callq 0x55a0
jmp 0x375d8
leaq 0x387(%rsp), %rdi
callq 0x5460
leaq 0x35f(%rsp), %rdi
movq %rdi, 0x90(%rsp)
callq 0x5780
movq 0x90(%rsp), %rdx
leaq 0x172ea(%rip), %rsi     # 0x4e8f3
leaq 0x360(%rsp), %rdi
callq 0x55a0
jmp 0x37618
leaq 0x35f(%rsp), %rdi
callq 0x5460
testb $0x1, 0x417(%rsp)
je 0x37911
leaq 0x337(%rsp), %rdi
movq %rdi, 0x88(%rsp)
callq 0x5780
movq 0x88(%rsp), %rdx
leaq 0x1a628(%rip), %rsi     # 0x51c7f
leaq 0x338(%rsp), %rdi
callq 0x55a0
jmp 0x37666
leaq 0x337(%rsp), %rdi
callq 0x5460
leaq 0x1a607(%rip), %rdx     # 0x51c81
leaq 0x310(%rsp), %rdi
leaq 0x338(%rsp), %rsi
callq 0x26650
jmp 0x37691
leaq 0x360(%rsp), %rdi
leaq 0x310(%rsp), %rsi
movq %rsi, 0x80(%rsp)
callq 0x5510
movq 0x80(%rsp), %rdi
callq 0x5260
leaq 0x1a5c3(%rip), %rdx     # 0x51c85
leaq 0x2f0(%rsp), %rdi
leaq 0x338(%rsp), %rsi
callq 0x26650
jmp 0x376d9
leaq 0x388(%rsp), %rdi
leaq 0x2f0(%rsp), %rsi
movq %rsi, 0x78(%rsp)
callq 0x5510
movq 0x78(%rsp), %rdi
callq 0x5260
leaq 0x1a588(%rip), %rdx     # 0x51c8c
leaq 0x2b0(%rsp), %rdi
leaq 0x338(%rsp), %rsi
callq 0x26650
jmp 0x3771b
leaq 0x1a55b(%rip), %rdx     # 0x51c7d
leaq 0x2d0(%rsp), %rdi
leaq 0x2b0(%rsp), %rsi
callq 0xb920
jmp 0x37739
leaq 0x3e8(%rsp), %rdi
leaq 0x2d0(%rsp), %rsi
movq %rsi, 0x70(%rsp)
callq 0x5510
movq 0x70(%rsp), %rdi
callq 0x5260
leaq 0x2b0(%rsp), %rdi
callq 0x5260
leaq 0x1a522(%rip), %rdx     # 0x51c93
leaq 0x270(%rsp), %rdi
leaq 0x338(%rsp), %rsi
callq 0x26650
jmp 0x37788
leaq 0x1a4ee(%rip), %rdx     # 0x51c7d
leaq 0x290(%rsp), %rdi
leaq 0x270(%rsp), %rsi
callq 0xb920
jmp 0x377a6
leaq 0x3b0(%rsp), %rdi
leaq 0x290(%rsp), %rsi
callq 0x5510
leaq 0x290(%rsp), %rdi
callq 0x5260
leaq 0x270(%rsp), %rdi
callq 0x5260
leaq 0x338(%rsp), %rdi
callq 0x5260
jmp 0x37911
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0x3e7(%rsp), %rdi
callq 0x5460
jmp 0x38378
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0x3af(%rsp), %rdi
callq 0x5460
jmp 0x3836b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0x387(%rsp), %rdi
callq 0x5460
jmp 0x3835e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0x35f(%rsp), %rdi
callq 0x5460
jmp 0x38351
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0x337(%rsp), %rdi
callq 0x5460
jmp 0x38344
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
jmp 0x378ff
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0x2b0(%rsp), %rdi
callq 0x5260
jmp 0x378ff
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0x270(%rsp), %rdi
callq 0x5260
leaq 0x338(%rsp), %rdi
callq 0x5260
jmp 0x38344
movq 0xb0(%rsp), %rdi
movb $0x0, 0x26f(%rsp)
callq 0x55b0
movq 0xc0(%rsp), %rax
movsbl 0x1(%rax), %eax
addl $0x3, %eax
cltq
movq %rax, 0x60(%rsp)
leaq 0x247(%rsp), %rdi
movq %rdi, 0x68(%rsp)
callq 0x5780
movq 0x60(%rsp), %rsi
movq 0x68(%rsp), %rcx
leaq 0x248(%rsp), %rdi
movl $0x20, %edx
callq 0x52b0
jmp 0x3796c
movq 0xb0(%rsp), %rdi
leaq 0x248(%rsp), %rsi
callq 0x5530
jmp 0x37983
leaq 0x248(%rsp), %rdi
callq 0x5260
leaq 0x247(%rsp), %rdi
callq 0x5460
movl $0x0, 0x240(%rsp)
movq 0xc0(%rsp), %rcx
movl 0x240(%rsp), %eax
movsbl 0x1(%rcx), %ecx
cmpl %ecx, %eax
jge 0x37af7
leaq 0x1a7d8(%rip), %rsi     # 0x521a2
leaq 0x200(%rsp), %rdi
leaq 0x388(%rsp), %rdx
callq 0xb970
jmp 0x379e1
movl 0x240(%rsp), %eax
addl $0x41, %eax
movsbl %al, %edx
leaq 0x220(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x14e20
jmp 0x37a05
movq 0xb0(%rsp), %rdi
leaq 0x220(%rsp), %rsi
callq 0x5530
jmp 0x37a1c
leaq 0x220(%rsp), %rdi
callq 0x5260
leaq 0x200(%rsp), %rdi
callq 0x5260
movl 0x240(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x240(%rsp)
jmp 0x379a8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
jmp 0x37a83
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0x248(%rsp), %rdi
callq 0x5260
leaq 0x247(%rsp), %rdi
callq 0x5460
jmp 0x38337
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
jmp 0x38337
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
jmp 0x37ae5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0x220(%rsp), %rdi
callq 0x5260
leaq 0x200(%rsp), %rdi
callq 0x5260
jmp 0x38337
movq 0xb0(%rsp), %rdi
leaq 0x16dec(%rip), %rsi     # 0x4e8f2
callq 0x53c0
jmp 0x37b0d
movl $0x0, 0x1fc(%rsp)
movq 0xc0(%rsp), %rcx
movl 0x1fc(%rsp), %eax
movsbl (%rcx), %ecx
cmpl %ecx, %eax
jge 0x382bd
movq 0xc0(%rsp), %rax
movsbl 0x2(%rax), %ecx
movl 0x1fc(%rsp), %eax
subl %eax, %ecx
movl %ecx, %edx
negl %edx
cmovnsl %edx, %ecx
incl %eax
subl $0xa, %eax
setl %al
movzbl %al, %edx
movl %ecx, %eax
movl %edx, %ecx
leal 0x1(%rax,%rcx), %eax
cltq
movq %rax, 0x50(%rsp)
leaq 0x1d7(%rsp), %rdi
movq %rdi, 0x58(%rsp)
callq 0x5780
movq 0x50(%rsp), %rsi
movq 0x58(%rsp), %rcx
leaq 0x1d8(%rsp), %rdi
movl $0x20, %edx
callq 0x52b0
jmp 0x37b98
movq 0xb0(%rsp), %rdi
leaq 0x1d8(%rsp), %rsi
callq 0x5530
jmp 0x37baf
leaq 0x1d8(%rsp), %rdi
callq 0x5260
leaq 0x1d7(%rsp), %rdi
callq 0x5460
movl 0x1fc(%rsp), %esi
incl %esi
leaq 0x190(%rsp), %rdi
callq 0x1a5d0
jmp 0x37be1
leaq 0x1b0(%rsp), %rdi
leaq 0x388(%rsp), %rsi
leaq 0x190(%rsp), %rdx
callq 0x39310
jmp 0x37c00
movq 0xb0(%rsp), %rdi
leaq 0x1b0(%rsp), %rsi
callq 0x5530
jmp 0x37c17
leaq 0x1b0(%rsp), %rdi
callq 0x5260
leaq 0x190(%rsp), %rdi
callq 0x5260
movq 0xc0(%rsp), %rdi
movl 0x1fc(%rsp), %esi
callq 0x20520
movl %eax, 0x4c(%rsp)
jmp 0x37c4b
movq 0xc0(%rsp), %rdi
movl 0x4c(%rsp), %eax
movl %eax, 0x18c(%rsp)
movl 0x1fc(%rsp), %esi
callq 0x204b0
movl %eax, 0x48(%rsp)
jmp 0x37c70
movl 0x48(%rsp), %eax
movl %eax, 0x188(%rsp)
movl 0x188(%rsp), %eax
cmpl 0x18c(%rsp), %eax
jge 0x380b4
movq 0xc0(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x40(%rsp)
movl 0x188(%rsp), %esi
movl 0x1fc(%rsp), %edx
movb $0x0, 0x162(%rsp)
leaq 0x166(%rsp), %rdi
callq 0x116a0
jmp 0x37cc5
movq 0x40(%rsp), %rdi
leaq 0x166(%rsp), %rsi
callq 0x1c5b0
movb %al, 0x3f(%rsp)
jmp 0x37cdd
movb 0x3f(%rsp), %al
testb $0x1, %al
jne 0x37ce7
jmp 0x37d0a
leaq 0x1b9e5(%rip), %rdx     # 0x536d3
leaq 0x168(%rsp), %rdi
leaq 0x388(%rsp), %rsi
callq 0x26650
jmp 0x37d05
jmp 0x37db5
movq 0xc0(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x30(%rsp)
movl 0x188(%rsp), %esi
decl %esi
movl 0x1fc(%rsp), %edx
leaq 0x164(%rsp), %rdi
callq 0x116a0
jmp 0x37d3a
movq 0x30(%rsp), %rdi
leaq 0x164(%rsp), %rsi
callq 0x1c5b0
movb %al, 0x2f(%rsp)
jmp 0x37d52
movb 0x2f(%rsp), %al
testb $0x1, %al
jne 0x37d5c
jmp 0x37d7c
leaq 0x195d8(%rip), %rdx     # 0x5133b
leaq 0x168(%rsp), %rdi
leaq 0x388(%rsp), %rsi
callq 0x26650
jmp 0x37d7a
jmp 0x37db3
leaq 0x163(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0x5780
movq 0x20(%rsp), %rdx
movb $0x1, 0x162(%rsp)
leaq 0x1a400(%rip), %rsi     # 0x521a2
leaq 0x168(%rsp), %rdi
callq 0x55a0
jmp 0x37db1
jmp 0x37db3
jmp 0x37db5
movq 0xb0(%rsp), %rdi
leaq 0x168(%rsp), %rsi
callq 0x5530
jmp 0x37dcc
leaq 0x168(%rsp), %rdi
callq 0x5260
testb $0x1, 0x162(%rsp)
jne 0x37de5
jmp 0x37df2
leaq 0x163(%rsp), %rdi
callq 0x5460
movq 0xc0(%rsp), %rdi
movl 0x188(%rsp), %esi
movl 0x1fc(%rsp), %edx
callq 0x2c5f0
movb %al, 0x1f(%rsp)
jmp 0x37e13
movb 0x1f(%rsp), %al
movb %al, 0x161(%rsp)
leaq 0x376b6(%rip), %rsi     # 0x6f4db
leaq 0x161(%rsp), %rdi
callq 0x1fe90
movb %al, 0x1e(%rsp)
jmp 0x37e38
movb 0x1e(%rsp), %al
testb $0x1, %al
jne 0x37e45
jmp 0x38006
movl 0x188(%rsp), %esi
movl 0x1fc(%rsp), %edx
leaq 0x11e(%rsp), %rdi
callq 0x116a0
jmp 0x37e62
movq 0xa8(%rsp), %rsi
movzwl 0x11e(%rsp), %edx
leaq 0x120(%rsp), %rdi
callq 0x39360
jmp 0x37e81
leaq 0x140(%rsp), %rdi
leaq 0x360(%rsp), %rsi
leaq 0x120(%rsp), %rdx
callq 0x39310
jmp 0x37ea0
movq 0xb0(%rsp), %rdi
leaq 0x140(%rsp), %rsi
callq 0x5530
jmp 0x37eb7
leaq 0x140(%rsp), %rdi
callq 0x5260
leaq 0x120(%rsp), %rdi
callq 0x5260
jmp 0x3809c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
jmp 0x37f0d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0x1d8(%rsp), %rdi
callq 0x5260
leaq 0x1d7(%rsp), %rdi
callq 0x5460
jmp 0x38337
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
jmp 0x37f56
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0x1b0(%rsp), %rdi
callq 0x5260
leaq 0x190(%rsp), %rdi
callq 0x5260
jmp 0x38337
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
jmp 0x37f9f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0x168(%rsp), %rdi
callq 0x5260
testb $0x1, 0x162(%rsp)
jne 0x37fab
jmp 0x37fb8
leaq 0x163(%rsp), %rdi
callq 0x5460
jmp 0x38337
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
jmp 0x37ff4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0x140(%rsp), %rdi
callq 0x5260
leaq 0x120(%rsp), %rdi
callq 0x5260
jmp 0x38337
leaq 0x374cf(%rip), %rsi     # 0x6f4dc
leaq 0x161(%rsp), %rdi
callq 0x1fe90
movb %al, 0x1d(%rsp)
jmp 0x38020
movb 0x1d(%rsp), %al
testb $0x1, %al
jne 0x3802a
jmp 0x38043
movq 0xb0(%rsp), %rdi
leaq 0x3e8(%rsp), %rsi
callq 0x5530
jmp 0x38041
jmp 0x3809a
leaq 0x37493(%rip), %rsi     # 0x6f4dd
leaq 0x161(%rsp), %rdi
callq 0x1fe90
movb %al, 0x1c(%rsp)
jmp 0x3805d
movb 0x1c(%rsp), %al
testb $0x1, %al
jne 0x38067
jmp 0x38080
movq 0xb0(%rsp), %rdi
leaq 0x3b0(%rsp), %rsi
callq 0x5530
jmp 0x3807e
jmp 0x38098
movq 0xb0(%rsp), %rdi
leaq 0x19c0b(%rip), %rsi     # 0x51c9a
callq 0x53c0
jmp 0x38096
jmp 0x38098
jmp 0x3809a
jmp 0x3809c
jmp 0x3809e
movl 0x188(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x188(%rsp)
jmp 0x37c7b
movq 0xc0(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x10(%rsp)
movl 0x18c(%rsp), %esi
decl %esi
movl 0x1fc(%rsp), %edx
movb $0x0, 0xf4(%rsp)
leaq 0xf6(%rsp), %rdi
callq 0x116a0
jmp 0x380ec
movq 0x10(%rsp), %rdi
leaq 0xf6(%rsp), %rsi
callq 0x1c5b0
movb %al, 0xf(%rsp)
jmp 0x38104
movb 0xf(%rsp), %al
testb $0x1, %al
jne 0x3810e
jmp 0x3812e
leaq 0x19226(%rip), %rdx     # 0x5133b
leaq 0xf8(%rsp), %rdi
leaq 0x388(%rsp), %rsi
callq 0x26650
jmp 0x3812c
jmp 0x38163
leaq 0xf5(%rsp), %rdi
movq %rdi, (%rsp)
callq 0x5780
movq (%rsp), %rdx
movb $0x1, 0xf4(%rsp)
leaq 0x1a050(%rip), %rsi     # 0x521a2
leaq 0xf8(%rsp), %rdi
callq 0x55a0
jmp 0x38161
jmp 0x38163
movq 0xb0(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x5530
jmp 0x3817a
leaq 0xf8(%rsp), %rdi
callq 0x5260
testb $0x1, 0xf4(%rsp)
jne 0x38193
jmp 0x381a0
leaq 0xf5(%rsp), %rdi
callq 0x5460
movq 0xc0(%rsp), %rcx
movl 0x1fc(%rsp), %eax
movsbl 0x2(%rcx), %ecx
cmpl %ecx, %eax
jge 0x38291
movq 0xc0(%rsp), %rax
movzbl 0x1(%rax), %edx
movl 0x1fc(%rsp), %eax
movl %eax, %ecx
movl %edx, %eax
leal 0x41(%rax,%rcx), %eax
movsbl %al, %edx
leaq 0xd0(%rsp), %rdi
leaq 0x388(%rsp), %rsi
callq 0x393c0
jmp 0x381f0
movq 0xb0(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
callq 0x5530
jmp 0x38207
leaq 0xd0(%rsp), %rdi
callq 0x5260
jmp 0x38291
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
jmp 0x3824d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0xf8(%rsp), %rdi
callq 0x5260
testb $0x1, 0xf4(%rsp)
jne 0x38259
jmp 0x38266
leaq 0xf5(%rsp), %rdi
callq 0x5460
jmp 0x38337
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x3d8(%rsp)
movl %eax, 0x3d4(%rsp)
leaq 0xd0(%rsp), %rdi
callq 0x5260
jmp 0x38337
movq 0xb0(%rsp), %rdi
movl $0xa, %esi
callq 0x5270
jmp 0x382a5
jmp 0x382a7
movl 0x1fc(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1fc(%rsp)
jmp 0x37b18
movq 0xb0(%rsp), %rdi
leaq 0x360(%rsp), %rsi
callq 0x5530
jmp 0x382d4
movb $0x1, 0x26f(%rsp)
testb $0x1, 0x26f(%rsp)
jne 0x382f3
movq 0xb0(%rsp), %rdi
callq 0x5260
leaq 0x360(%rsp), %rdi
callq 0x5260
leaq 0x388(%rsp), %rdi
callq 0x5260
leaq 0x3b0(%rsp), %rdi
callq 0x5260
leaq 0x3e8(%rsp), %rdi
callq 0x5260
movq 0xb8(%rsp), %rax
addq $0x428, %rsp            # imm = 0x428
retq
movq 0xb0(%rsp), %rdi
callq 0x5260
leaq 0x360(%rsp), %rdi
callq 0x5260
leaq 0x388(%rsp), %rdi
callq 0x5260
leaq 0x3b0(%rsp), %rdi
callq 0x5260
leaq 0x3e8(%rsp), %rdi
callq 0x5260
movq 0x3d8(%rsp), %rdi
callq 0x5770
nopw %cs:(%rax,%rax)