// File: monikakushwaha28[P]Fiduccia_Matthesys-using-c-/Fiduccia_Mattheyses_v1.0.cpp
// Function: update_gain()
void update_gain()
{
	//updating of gain of neighbours
	if (found_baseC1)
	{
		if (!gain_bucket.empty())
		{
			for (p = 0; p < node_net_map[base_cell].size(); p++)
			{
				curr_net = node_net_map[base_cell][p];
				if (net_card[curr_net][1] == 0)
				{
					for (q = 0; q < net_node_map[curr_net].size(); q++)
					{
						nb_node = net_node_map[curr_net][q];
						if (node_map[nb_node][2] == 0)
						{
							gain_old = node_map[nb_node][3];
							gain_new = gain_old + 1;
							node_map[nb_node][3] = node_map[nb_node][3] + 1;

							gain_bucket[gain_old].erase(remove(gain_bucket[gain_old].begin(), gain_bucket[gain_old].end(), nb_node), gain_bucket[gain_old].end());
							gain_bucket[gain_new].push_back(nb_node);

						}
					}
				}
				else if (net_card[curr_net][1] == 1)
				{
					for (q = 0; q < net_node_map[curr_net].size(); q++)
					{
						if (node_map[net_node_map[curr_net][q]][1] == -1)
						{
							nb_node = net_node_map[curr_net][q];
							if (node_map[nb_node][2] == 0)
							{
								gain_old = node_map[nb_node][3];
								gain_new = gain_old - 1;
								node_map[nb_node][3] = gain_new;

								gain_bucket[gain_old].erase(remove(gain_bucket[gain_old].begin(), gain_bucket[gain_old].end(), nb_node), gain_bucket[gain_old].end());
								gain_bucket[gain_new].push_back(nb_node);

							}
						}
					}
				}

				//Changing Net Cardinality
				net_card[curr_net][0] = net_card[curr_net][0] - 1;
				net_card[curr_net][1] = net_card[curr_net][1] + 1;

				if (net_card[curr_net][0] == 0)
				{
					for (q = 0; q < net_node_map[curr_net].size(); q++)
					{
						nb_node = net_node_map[curr_net][q];
						if (node_map[nb_node][2] == 0)
						{
							gain_old = node_map[nb_node][3];
							gain_new = gain_old - 1;
							node_map[nb_node][3] = node_map[nb_node][3] - 1;

							gain_bucket[gain_old].erase(remove(gain_bucket[gain_old].begin(), gain_bucket[gain_old].end(), nb_node), gain_bucket[gain_old].end());
							gain_bucket[gain_new].push_back(nb_node);

						}
					}
				}
				else if (net_card[curr_net][0] == 1)
				{
					for (q = 0; q < net_node_map[curr_net].size(); q++)
					{
						if (node_map[net_node_map[curr_net][q]][1] == 1)
						{
							nb_node = net_node_map[curr_net][q];
							if (node_map[nb_node][2] == 0)
							{
								gain_old = node_map[nb_node][3];
								gain_new = gain_old + 1;
								node_map[nb_node][3] = gain_new;

								gain_bucket[gain_old].erase(remove(gain_bucket[gain_old].begin(), gain_bucket[gain_old].end(), nb_node), gain_bucket[gain_old].end());
								gain_bucket[gain_new].push_back(nb_node);

							}
						}
					}
				}
			}
		}
	}

	if (found_baseCn1)
	{
		if (!gain_bucket.empty())
		{
			for (p = 0; p < node_net_map[base_cell].size(); p++)
			{
				curr_net = node_net_map[base_cell][p];
				if (net_card[curr_net][0] == 0)
				{
					for (q = 0; q < net_node_map[curr_net].size(); q++)
					{
						nb_node = net_node_map[curr_net][q];
						if (node_map[nb_node][2] == 0)  //checking if node is fixed
						{
							gain_old = node_map[nb_node][3];
							gain_new = gain_old + 1;
							node_map[nb_node][3] = node_map[nb_node][3] + 1;


							gain_bucket[gain_old].erase(remove(gain_bucket[gain_old].begin(), gain_bucket[gain_old].end(), nb_node), gain_bucket[gain_old].end());
							gain_bucket[gain_new].push_back(nb_node);

						}
					}
				}
				else if (net_card[curr_net][0] == 1)
				{
					for (q = 0; q < net_node_map[curr_net].size(); q++)
					{
						if (node_map[net_node_map[curr_net][q]][1] == 1)
						{
							nb_node = net_node_map[curr_net][q];
							if (node_map[nb_node][2] == 0)
							{
								gain_old = node_map[nb_node][3];
								gain_new = gain_old - 1;
								node_map[nb_node][3] = gain_new;
								gain_bucket[gain_old].erase(remove(gain_bucket[gain_old].begin(), gain_bucket[gain_old].end(), nb_node), gain_bucket[gain_old].end());
								gain_bucket[gain_new].push_back(nb_node);
							}
						}
					}
				}

				//Changing Net Cardinality
				net_card[curr_net][1] = net_card[curr_net][1] - 1;
				net_card[curr_net][0] = net_card[curr_net][0] + 1;

				if (net_card[curr_net][1] == 0)
				{
					for (q = 0; q < net_node_map[curr_net].size(); q++)
					{
						nb_node = net_node_map[curr_net][q];
						if (node_map[nb_node][2] == 0)  //checking if node is fixed
						{
							gain_old = node_map[nb_node][3];
							gain_new = gain_old - 1;
							node_map[nb_node][3] = node_map[nb_node][3] - 1;

							gain_bucket[gain_old].erase(remove(gain_bucket[gain_old].begin(), gain_bucket[gain_old].end(), nb_node), gain_bucket[gain_old].end());
							gain_bucket[gain_new].push_back(nb_node);

						}
					}

				}
				else if (net_card[curr_net][1] == 1)
				{
					for (q = 0; q < net_node_map[curr_net].size(); q++)
					{
						if (node_map[net_node_map[curr_net][q]][1] == -1)
						{
							nb_node = net_node_map[curr_net][q];
							if (node_map[nb_node][2] == 0)
							{
								gain_old = node_map[nb_node][3];
								gain_new = gain_old + 1;
								node_map[nb_node][3] = gain_new;

								gain_bucket[gain_old].erase(remove(gain_bucket[gain_old].begin(), gain_bucket[gain_old].end(), nb_node), gain_bucket[gain_old].end());
								gain_bucket[gain_new].push_back(nb_node);
							}
						}
					}
				}
			}
		}
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x2a0, %rsp            # imm = 0x2A0
testb $0x1, 0x13b32(%rip)     # 0x16ba4
je 0x3b7b
leaq 0x13be9(%rip), %rdi     # 0x16c68
callq 0x7210
testb $0x1, %al
jne 0x3b79
movl $0x0, 0x13ad6(%rip)     # 0x16b6c
movslq 0x13acf(%rip), %rax     # 0x16b6c
movq %rax, -0x1c8(%rbp)
leaq 0x13b5d(%rip), %rdi     # 0x16c08
leaq 0x13aa2(%rip), %rsi     # 0x16b54
callq 0x70b0
movq %rax, %rdi
callq 0x7190
movq %rax, %rcx
movq -0x1c8(%rbp), %rax
cmpq %rcx, %rax
jae 0x3b77
leaq 0x13b2f(%rip), %rdi     # 0x16c08
leaq 0x13a74(%rip), %rsi     # 0x16b54
callq 0x70b0
movq %rax, %rdi
movslq 0x13a7d(%rip), %rsi     # 0x16b6c
callq 0x7230
movq %rax, %rsi
leaq 0x139c2(%rip), %rdi     # 0x16ac0
callq 0x2040
leaq 0x13b8e(%rip), %rdi     # 0x16c98
leaq 0x139af(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movl $0x1, %esi
callq 0x6ca0
cmpl $0x0, (%rax)
jne 0x334d
movl $0x0, 0x13a3a(%rip)     # 0x16b70
movslq 0x13a33(%rip), %rax     # 0x16b70
movq %rax, -0x1d0(%rbp)
leaq 0x13aed(%rip), %rdi     # 0x16c38
leaq 0x1396e(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
callq 0x6c80
movq %rax, %rcx
movq -0x1d0(%rbp), %rax
cmpq %rcx, %rax
jae 0x3348
leaq 0x13abf(%rip), %rdi     # 0x16c38
leaq 0x13940(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movslq 0x139e1(%rip), %rsi     # 0x16b70
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x139f0(%rip)     # 0x16b8c
leaq 0x13a35(%rip), %rdi     # 0x16bd8
leaq 0x139e2(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x2, %esi
callq 0x6ca0
cmpl $0x0, (%rax)
jne 0x3332
leaq 0x13a0c(%rip), %rdi     # 0x16bd8
leaq 0x139b9(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x13973(%rip)     # 0x16b60
movl 0x1396d(%rip), %eax     # 0x16b60
addl $0x1, %eax
movl %eax, 0x13968(%rip)     # 0x16b64
leaq 0x139d5(%rip), %rdi     # 0x16bd8
leaq 0x13982(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl (%rax), %eax
addl $0x1, %eax
movl %eax, -0x1dc(%rbp)
leaq 0x139aa(%rip), %rdi     # 0x16bd8
leaq 0x13957(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl -0x1dc(%rbp), %ecx
movl %ecx, (%rax)
leaq 0x13a12(%rip), %rdi     # 0x16c68
leaq 0x13903(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, -0x1d8(%rbp)
leaq 0x139f8(%rip), %rdi     # 0x16c68
leaq 0x138e9(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7330
movq %rax, -0x18(%rbp)
leaq 0x139d9(%rip), %rdi     # 0x16c68
leaq 0x138ca(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x138d6(%rip), %rdx     # 0x16b8c
callq 0x72e0
movq %rax, -0x10(%rbp)
leaq -0x8(%rbp), %rdi
leaq -0x10(%rbp), %rsi
callq 0x7390
leaq 0x13995(%rip), %rdi     # 0x16c68
leaq 0x13886(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0x30(%rbp)
leaq -0x28(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0x7390
movq -0x1d8(%rbp), %rdi
movq -0x8(%rbp), %rsi
movq -0x28(%rbp), %rdx
callq 0x7250
movq %rax, -0x38(%rbp)
leaq 0x13951(%rip), %rdi     # 0x16c68
leaq 0x13846(%rip), %rsi     # 0x16b64
callq 0x6cc0
movq %rax, %rdi
leaq 0x1385f(%rip), %rsi     # 0x16b8c
callq 0x6fc0
jmp 0x3334
movl 0x13836(%rip), %eax     # 0x16b70
addl $0x1, %eax
movl %eax, 0x1382d(%rip)     # 0x16b70
jmp 0x3136
jmp 0x35c0
leaq 0x13944(%rip), %rdi     # 0x16c98
leaq 0x13765(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movl $0x1, %esi
callq 0x6ca0
cmpl $0x1, (%rax)
jne 0x35be
movl $0x0, 0x137f0(%rip)     # 0x16b70
movslq 0x137e9(%rip), %rax     # 0x16b70
movq %rax, -0x1e8(%rbp)
leaq 0x138a3(%rip), %rdi     # 0x16c38
leaq 0x13724(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
callq 0x6c80
movq %rax, %rcx
movq -0x1e8(%rbp), %rax
cmpq %rcx, %rax
jae 0x35bc
leaq 0x13875(%rip), %rdi     # 0x16c38
leaq 0x136f6(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movslq 0x13797(%rip), %rsi     # 0x16b70
callq 0x6ca0
movq %rax, %rsi
leaq 0x137f0(%rip), %rdi     # 0x16bd8
callq 0x6cc0
movq %rax, %rdi
movl $0x1, %esi
callq 0x6ca0
cmpl $-0x1, (%rax)
jne 0x35a6
leaq 0x1382e(%rip), %rdi     # 0x16c38
leaq 0x136af(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movslq 0x13750(%rip), %rsi     # 0x16b70
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x1375f(%rip)     # 0x16b8c
leaq 0x137a4(%rip), %rdi     # 0x16bd8
leaq 0x13751(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x2, %esi
callq 0x6ca0
cmpl $0x0, (%rax)
jne 0x35a4
leaq 0x1377b(%rip), %rdi     # 0x16bd8
leaq 0x13728(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x136e2(%rip)     # 0x16b60
movl 0x136dc(%rip), %eax     # 0x16b60
subl $0x1, %eax
movl %eax, 0x136d7(%rip)     # 0x16b64
movl 0x136d1(%rip), %eax     # 0x16b64
movl %eax, -0x1f4(%rbp)
leaq 0x13738(%rip), %rdi     # 0x16bd8
leaq 0x136e5(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl -0x1f4(%rbp), %ecx
movl %ecx, (%rax)
leaq 0x137a0(%rip), %rdi     # 0x16c68
leaq 0x13691(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, -0x1f0(%rbp)
leaq 0x13786(%rip), %rdi     # 0x16c68
leaq 0x13677(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7330
movq %rax, -0x50(%rbp)
leaq 0x13767(%rip), %rdi     # 0x16c68
leaq 0x13658(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0x58(%rbp)
movq -0x50(%rbp), %rdi
movq -0x58(%rbp), %rsi
leaq 0x13664(%rip), %rdx     # 0x16b8c
callq 0x72e0
movq %rax, -0x48(%rbp)
leaq -0x40(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x7390
leaq 0x13723(%rip), %rdi     # 0x16c68
leaq 0x13614(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0x68(%rbp)
leaq -0x60(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x7390
movq -0x1f0(%rbp), %rdi
movq -0x40(%rbp), %rsi
movq -0x60(%rbp), %rdx
callq 0x7250
movq %rax, -0x70(%rbp)
leaq 0x136df(%rip), %rdi     # 0x16c68
leaq 0x135d4(%rip), %rsi     # 0x16b64
callq 0x6cc0
movq %rax, %rdi
leaq 0x135ed(%rip), %rsi     # 0x16b8c
callq 0x6fc0
jmp 0x35a6
jmp 0x35a8
movl 0x135c2(%rip), %eax     # 0x16b70
addl $0x1, %eax
movl %eax, 0x135b9(%rip)     # 0x16b70
jmp 0x3380
jmp 0x35be
jmp 0x35c0
leaq 0x136d1(%rip), %rdi     # 0x16c98
leaq 0x134f2(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x6ca0
movl (%rax), %eax
subl $0x1, %eax
movl %eax, -0x1fc(%rbp)
leaq 0x136a7(%rip), %rdi     # 0x16c98
leaq 0x134c8(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x6ca0
movl -0x1fc(%rbp), %ecx
movl %ecx, (%rax)
leaq 0x13680(%rip), %rdi     # 0x16c98
leaq 0x134a1(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movl $0x1, %esi
callq 0x6ca0
movl (%rax), %eax
addl $0x1, %eax
movl %eax, -0x1f8(%rbp)
leaq 0x13655(%rip), %rdi     # 0x16c98
leaq 0x13476(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movl $0x1, %esi
callq 0x6ca0
movl -0x1f8(%rbp), %ecx
movl %ecx, (%rax)
leaq 0x1362d(%rip), %rdi     # 0x16c98
leaq 0x1344e(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x6ca0
cmpl $0x0, (%rax)
jne 0x38c8
movl $0x0, 0x134da(%rip)     # 0x16b70
movslq 0x134d3(%rip), %rax     # 0x16b70
movq %rax, -0x208(%rbp)
leaq 0x1358d(%rip), %rdi     # 0x16c38
leaq 0x1340e(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
callq 0x6c80
movq %rax, %rcx
movq -0x208(%rbp), %rax
cmpq %rcx, %rax
jae 0x38c3
leaq 0x1355f(%rip), %rdi     # 0x16c38
leaq 0x133e0(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movslq 0x13481(%rip), %rsi     # 0x16b70
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x13490(%rip)     # 0x16b8c
leaq 0x134d5(%rip), %rdi     # 0x16bd8
leaq 0x13482(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x2, %esi
callq 0x6ca0
cmpl $0x0, (%rax)
jne 0x38ad
leaq 0x134ac(%rip), %rdi     # 0x16bd8
leaq 0x13459(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x13413(%rip)     # 0x16b60
movl 0x1340d(%rip), %eax     # 0x16b60
subl $0x1, %eax
movl %eax, 0x13408(%rip)     # 0x16b64
leaq 0x13475(%rip), %rdi     # 0x16bd8
leaq 0x13422(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl (%rax), %eax
subl $0x1, %eax
movl %eax, -0x214(%rbp)
leaq 0x1344a(%rip), %rdi     # 0x16bd8
leaq 0x133f7(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl -0x214(%rbp), %ecx
movl %ecx, (%rax)
leaq 0x134b2(%rip), %rdi     # 0x16c68
leaq 0x133a3(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, -0x210(%rbp)
leaq 0x13498(%rip), %rdi     # 0x16c68
leaq 0x13389(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7330
movq %rax, -0x88(%rbp)
leaq 0x13476(%rip), %rdi     # 0x16c68
leaq 0x13367(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0x90(%rbp)
movq -0x88(%rbp), %rdi
movq -0x90(%rbp), %rsi
leaq 0x1336a(%rip), %rdx     # 0x16b8c
callq 0x72e0
movq %rax, -0x80(%rbp)
leaq -0x78(%rbp), %rdi
leaq -0x80(%rbp), %rsi
callq 0x7390
leaq 0x13429(%rip), %rdi     # 0x16c68
leaq 0x1331a(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0xa0(%rbp)
leaq -0x98(%rbp), %rdi
leaq -0xa0(%rbp), %rsi
callq 0x7390
movq -0x210(%rbp), %rdi
movq -0x78(%rbp), %rsi
movq -0x98(%rbp), %rdx
callq 0x7250
movq %rax, -0xa8(%rbp)
leaq 0x133d6(%rip), %rdi     # 0x16c68
leaq 0x132cb(%rip), %rsi     # 0x16b64
callq 0x6cc0
movq %rax, %rdi
leaq 0x132e4(%rip), %rsi     # 0x16b8c
callq 0x6fc0
jmp 0x38af
movl 0x132bb(%rip), %eax     # 0x16b70
addl $0x1, %eax
movl %eax, 0x132b2(%rip)     # 0x16b70
jmp 0x3696
jmp 0x3b61
leaq 0x133c9(%rip), %rdi     # 0x16c98
leaq 0x131ea(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x6ca0
cmpl $0x1, (%rax)
jne 0x3b5f
movl $0x0, 0x13276(%rip)     # 0x16b70
movslq 0x1326f(%rip), %rax     # 0x16b70
movq %rax, -0x220(%rbp)
leaq 0x13329(%rip), %rdi     # 0x16c38
leaq 0x131aa(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
callq 0x6c80
movq %rax, %rcx
movq -0x220(%rbp), %rax
cmpq %rcx, %rax
jae 0x3b5d
leaq 0x132fb(%rip), %rdi     # 0x16c38
leaq 0x1317c(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movslq 0x1321d(%rip), %rsi     # 0x16b70
callq 0x6ca0
movq %rax, %rsi
leaq 0x13276(%rip), %rdi     # 0x16bd8
callq 0x6cc0
movq %rax, %rdi
movl $0x1, %esi
callq 0x6ca0
cmpl $0x1, (%rax)
jne 0x3b47
leaq 0x132b4(%rip), %rdi     # 0x16c38
leaq 0x13135(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movslq 0x131d6(%rip), %rsi     # 0x16b70
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x131e5(%rip)     # 0x16b8c
leaq 0x1322a(%rip), %rdi     # 0x16bd8
leaq 0x131d7(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x2, %esi
callq 0x6ca0
cmpl $0x0, (%rax)
jne 0x3b45
leaq 0x13201(%rip), %rdi     # 0x16bd8
leaq 0x131ae(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x13168(%rip)     # 0x16b60
movl 0x13162(%rip), %eax     # 0x16b60
addl $0x1, %eax
movl %eax, 0x1315d(%rip)     # 0x16b64
movl 0x13157(%rip), %eax     # 0x16b64
movl %eax, -0x22c(%rbp)
leaq 0x131be(%rip), %rdi     # 0x16bd8
leaq 0x1316b(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl -0x22c(%rbp), %ecx
movl %ecx, (%rax)
leaq 0x13226(%rip), %rdi     # 0x16c68
leaq 0x13117(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, -0x228(%rbp)
leaq 0x1320c(%rip), %rdi     # 0x16c68
leaq 0x130fd(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7330
movq %rax, -0xc0(%rbp)
leaq 0x131ea(%rip), %rdi     # 0x16c68
leaq 0x130db(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0xc8(%rbp)
movq -0xc0(%rbp), %rdi
movq -0xc8(%rbp), %rsi
leaq 0x130de(%rip), %rdx     # 0x16b8c
callq 0x72e0
movq %rax, -0xb8(%rbp)
leaq -0xb0(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x7390
leaq 0x13194(%rip), %rdi     # 0x16c68
leaq 0x13085(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0xd8(%rbp)
leaq -0xd0(%rbp), %rdi
leaq -0xd8(%rbp), %rsi
callq 0x7390
movq -0x228(%rbp), %rdi
movq -0xb0(%rbp), %rsi
movq -0xd0(%rbp), %rdx
callq 0x7250
movq %rax, -0xe0(%rbp)
leaq 0x1313e(%rip), %rdi     # 0x16c68
leaq 0x13033(%rip), %rsi     # 0x16b64
callq 0x6cc0
movq %rax, %rdi
leaq 0x1304c(%rip), %rsi     # 0x16b8c
callq 0x6fc0
jmp 0x3b47
jmp 0x3b49
movl 0x13021(%rip), %eax     # 0x16b70
addl $0x1, %eax
movl %eax, 0x13018(%rip)     # 0x16b70
jmp 0x38fa
jmp 0x3b5f
jmp 0x3b61
jmp 0x3b63
movl 0x13003(%rip), %eax     # 0x16b6c
addl $0x1, %eax
movl %eax, 0x12ffa(%rip)     # 0x16b6c
jmp 0x3096
jmp 0x3b79
jmp 0x3b7b
testb $0x1, 0x13023(%rip)     # 0x16ba5
je 0x46e5
leaq 0x130d9(%rip), %rdi     # 0x16c68
callq 0x7210
testb $0x1, %al
jne 0x46e3
movl $0x0, 0x12fc6(%rip)     # 0x16b6c
movslq 0x12fbf(%rip), %rax     # 0x16b6c
movq %rax, -0x238(%rbp)
leaq 0x1304d(%rip), %rdi     # 0x16c08
leaq 0x12f92(%rip), %rsi     # 0x16b54
callq 0x70b0
movq %rax, %rdi
callq 0x7190
movq %rax, %rcx
movq -0x238(%rbp), %rax
cmpq %rcx, %rax
jae 0x46e1
leaq 0x1301f(%rip), %rdi     # 0x16c08
leaq 0x12f64(%rip), %rsi     # 0x16b54
callq 0x70b0
movq %rax, %rdi
movslq 0x12f6d(%rip), %rsi     # 0x16b6c
callq 0x7230
movq %rax, %rsi
leaq 0x12eb2(%rip), %rdi     # 0x16ac0
callq 0x2040
leaq 0x1307e(%rip), %rdi     # 0x16c98
leaq 0x12e9f(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x6ca0
cmpl $0x0, (%rax)
jne 0x3e83
movl $0x0, 0x12f2b(%rip)     # 0x16b70
movslq 0x12f24(%rip), %rax     # 0x16b70
movq %rax, -0x240(%rbp)
leaq 0x12fde(%rip), %rdi     # 0x16c38
leaq 0x12e5f(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
callq 0x6c80
movq %rax, %rcx
movq -0x240(%rbp), %rax
cmpq %rcx, %rax
jae 0x3e7e
leaq 0x12fb0(%rip), %rdi     # 0x16c38
leaq 0x12e31(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movslq 0x12ed2(%rip), %rsi     # 0x16b70
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x12ee1(%rip)     # 0x16b8c
leaq 0x12f26(%rip), %rdi     # 0x16bd8
leaq 0x12ed3(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x2, %esi
callq 0x6ca0
cmpl $0x0, (%rax)
jne 0x3e68
leaq 0x12efd(%rip), %rdi     # 0x16bd8
leaq 0x12eaa(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x12e64(%rip)     # 0x16b60
movl 0x12e5e(%rip), %eax     # 0x16b60
addl $0x1, %eax
movl %eax, 0x12e59(%rip)     # 0x16b64
leaq 0x12ec6(%rip), %rdi     # 0x16bd8
leaq 0x12e73(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl (%rax), %eax
addl $0x1, %eax
movl %eax, -0x24c(%rbp)
leaq 0x12e9b(%rip), %rdi     # 0x16bd8
leaq 0x12e48(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl -0x24c(%rbp), %ecx
movl %ecx, (%rax)
leaq 0x12f03(%rip), %rdi     # 0x16c68
leaq 0x12df4(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, -0x248(%rbp)
leaq 0x12ee9(%rip), %rdi     # 0x16c68
leaq 0x12dda(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7330
movq %rax, -0xf8(%rbp)
leaq 0x12ec7(%rip), %rdi     # 0x16c68
leaq 0x12db8(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0x100(%rbp)
movq -0xf8(%rbp), %rdi
movq -0x100(%rbp), %rsi
leaq 0x12dbb(%rip), %rdx     # 0x16b8c
callq 0x72e0
movq %rax, -0xf0(%rbp)
leaq -0xe8(%rbp), %rdi
leaq -0xf0(%rbp), %rsi
callq 0x7390
leaq 0x12e71(%rip), %rdi     # 0x16c68
leaq 0x12d62(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0x110(%rbp)
leaq -0x108(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x7390
movq -0x248(%rbp), %rdi
movq -0xe8(%rbp), %rsi
movq -0x108(%rbp), %rdx
callq 0x7250
movq %rax, -0x118(%rbp)
leaq 0x12e1b(%rip), %rdi     # 0x16c68
leaq 0x12d10(%rip), %rsi     # 0x16b64
callq 0x6cc0
movq %rax, %rdi
leaq 0x12d29(%rip), %rsi     # 0x16b8c
callq 0x6fc0
jmp 0x3e6a
movl 0x12d00(%rip), %eax     # 0x16b70
addl $0x1, %eax
movl %eax, 0x12cf7(%rip)     # 0x16b70
jmp 0x3c45
jmp 0x411c
leaq 0x12e0e(%rip), %rdi     # 0x16c98
leaq 0x12c2f(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x6ca0
cmpl $0x1, (%rax)
jne 0x411a
movl $0x0, 0x12cbb(%rip)     # 0x16b70
movslq 0x12cb4(%rip), %rax     # 0x16b70
movq %rax, -0x258(%rbp)
leaq 0x12d6e(%rip), %rdi     # 0x16c38
leaq 0x12bef(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
callq 0x6c80
movq %rax, %rcx
movq -0x258(%rbp), %rax
cmpq %rcx, %rax
jae 0x4118
leaq 0x12d40(%rip), %rdi     # 0x16c38
leaq 0x12bc1(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movslq 0x12c62(%rip), %rsi     # 0x16b70
callq 0x6ca0
movq %rax, %rsi
leaq 0x12cbb(%rip), %rdi     # 0x16bd8
callq 0x6cc0
movq %rax, %rdi
movl $0x1, %esi
callq 0x6ca0
cmpl $0x1, (%rax)
jne 0x4102
leaq 0x12cf9(%rip), %rdi     # 0x16c38
leaq 0x12b7a(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movslq 0x12c1b(%rip), %rsi     # 0x16b70
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x12c2a(%rip)     # 0x16b8c
leaq 0x12c6f(%rip), %rdi     # 0x16bd8
leaq 0x12c1c(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x2, %esi
callq 0x6ca0
cmpl $0x0, (%rax)
jne 0x4100
leaq 0x12c46(%rip), %rdi     # 0x16bd8
leaq 0x12bf3(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x12bad(%rip)     # 0x16b60
movl 0x12ba7(%rip), %eax     # 0x16b60
subl $0x1, %eax
movl %eax, 0x12ba2(%rip)     # 0x16b64
movl 0x12b9c(%rip), %eax     # 0x16b64
movl %eax, -0x264(%rbp)
leaq 0x12c03(%rip), %rdi     # 0x16bd8
leaq 0x12bb0(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl -0x264(%rbp), %ecx
movl %ecx, (%rax)
leaq 0x12c6b(%rip), %rdi     # 0x16c68
leaq 0x12b5c(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, -0x260(%rbp)
leaq 0x12c51(%rip), %rdi     # 0x16c68
leaq 0x12b42(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7330
movq %rax, -0x130(%rbp)
leaq 0x12c2f(%rip), %rdi     # 0x16c68
leaq 0x12b20(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0x138(%rbp)
movq -0x130(%rbp), %rdi
movq -0x138(%rbp), %rsi
leaq 0x12b23(%rip), %rdx     # 0x16b8c
callq 0x72e0
movq %rax, -0x128(%rbp)
leaq -0x120(%rbp), %rdi
leaq -0x128(%rbp), %rsi
callq 0x7390
leaq 0x12bd9(%rip), %rdi     # 0x16c68
leaq 0x12aca(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0x148(%rbp)
leaq -0x140(%rbp), %rdi
leaq -0x148(%rbp), %rsi
callq 0x7390
movq -0x260(%rbp), %rdi
movq -0x120(%rbp), %rsi
movq -0x140(%rbp), %rdx
callq 0x7250
movq %rax, -0x150(%rbp)
leaq 0x12b83(%rip), %rdi     # 0x16c68
leaq 0x12a78(%rip), %rsi     # 0x16b64
callq 0x6cc0
movq %rax, %rdi
leaq 0x12a91(%rip), %rsi     # 0x16b8c
callq 0x6fc0
jmp 0x4102
jmp 0x4104
movl 0x12a66(%rip), %eax     # 0x16b70
addl $0x1, %eax
movl %eax, 0x12a5d(%rip)     # 0x16b70
jmp 0x3eb5
jmp 0x411a
jmp 0x411c
leaq 0x12b75(%rip), %rdi     # 0x16c98
leaq 0x12996(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movl $0x1, %esi
callq 0x6ca0
movl (%rax), %eax
subl $0x1, %eax
movl %eax, -0x26c(%rbp)
leaq 0x12b4a(%rip), %rdi     # 0x16c98
leaq 0x1296b(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movl $0x1, %esi
callq 0x6ca0
movl -0x26c(%rbp), %ecx
movl %ecx, (%rax)
leaq 0x12b22(%rip), %rdi     # 0x16c98
leaq 0x12943(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x6ca0
movl (%rax), %eax
addl $0x1, %eax
movl %eax, -0x268(%rbp)
leaq 0x12af8(%rip), %rdi     # 0x16c98
leaq 0x12919(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x6ca0
movl -0x268(%rbp), %ecx
movl %ecx, (%rax)
leaq 0x12ad1(%rip), %rdi     # 0x16c98
leaq 0x128f2(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movl $0x1, %esi
callq 0x6ca0
cmpl $0x0, (%rax)
jne 0x4431
movl $0x0, 0x1297d(%rip)     # 0x16b70
movslq 0x12976(%rip), %rax     # 0x16b70
movq %rax, -0x278(%rbp)
leaq 0x12a30(%rip), %rdi     # 0x16c38
leaq 0x128b1(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
callq 0x6c80
movq %rax, %rcx
movq -0x278(%rbp), %rax
cmpq %rcx, %rax
jae 0x442c
leaq 0x12a02(%rip), %rdi     # 0x16c38
leaq 0x12883(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movslq 0x12924(%rip), %rsi     # 0x16b70
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x12933(%rip)     # 0x16b8c
leaq 0x12978(%rip), %rdi     # 0x16bd8
leaq 0x12925(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x2, %esi
callq 0x6ca0
cmpl $0x0, (%rax)
jne 0x4416
leaq 0x1294f(%rip), %rdi     # 0x16bd8
leaq 0x128fc(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x128b6(%rip)     # 0x16b60
movl 0x128b0(%rip), %eax     # 0x16b60
subl $0x1, %eax
movl %eax, 0x128ab(%rip)     # 0x16b64
leaq 0x12918(%rip), %rdi     # 0x16bd8
leaq 0x128c5(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl (%rax), %eax
subl $0x1, %eax
movl %eax, -0x284(%rbp)
leaq 0x128ed(%rip), %rdi     # 0x16bd8
leaq 0x1289a(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl -0x284(%rbp), %ecx
movl %ecx, (%rax)
leaq 0x12955(%rip), %rdi     # 0x16c68
leaq 0x12846(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, -0x280(%rbp)
leaq 0x1293b(%rip), %rdi     # 0x16c68
leaq 0x1282c(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7330
movq %rax, -0x168(%rbp)
leaq 0x12919(%rip), %rdi     # 0x16c68
leaq 0x1280a(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0x170(%rbp)
movq -0x168(%rbp), %rdi
movq -0x170(%rbp), %rsi
leaq 0x1280d(%rip), %rdx     # 0x16b8c
callq 0x72e0
movq %rax, -0x160(%rbp)
leaq -0x158(%rbp), %rdi
leaq -0x160(%rbp), %rsi
callq 0x7390
leaq 0x128c3(%rip), %rdi     # 0x16c68
leaq 0x127b4(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0x180(%rbp)
leaq -0x178(%rbp), %rdi
leaq -0x180(%rbp), %rsi
callq 0x7390
movq -0x280(%rbp), %rdi
movq -0x158(%rbp), %rsi
movq -0x178(%rbp), %rdx
callq 0x7250
movq %rax, -0x188(%rbp)
leaq 0x1286d(%rip), %rdi     # 0x16c68
leaq 0x12762(%rip), %rsi     # 0x16b64
callq 0x6cc0
movq %rax, %rdi
leaq 0x1277b(%rip), %rsi     # 0x16b8c
callq 0x6fc0
jmp 0x4418
movl 0x12752(%rip), %eax     # 0x16b70
addl $0x1, %eax
movl %eax, 0x12749(%rip)     # 0x16b70
jmp 0x41f3
jmp 0x46cb
leaq 0x12860(%rip), %rdi     # 0x16c98
leaq 0x12681(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movl $0x1, %esi
callq 0x6ca0
cmpl $0x1, (%rax)
jne 0x46c9
movl $0x0, 0x1270c(%rip)     # 0x16b70
movslq 0x12705(%rip), %rax     # 0x16b70
movq %rax, -0x290(%rbp)
leaq 0x127bf(%rip), %rdi     # 0x16c38
leaq 0x12640(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
callq 0x6c80
movq %rax, %rcx
movq -0x290(%rbp), %rax
cmpq %rcx, %rax
jae 0x46c7
leaq 0x12791(%rip), %rdi     # 0x16c38
leaq 0x12612(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movslq 0x126b3(%rip), %rsi     # 0x16b70
callq 0x6ca0
movq %rax, %rsi
leaq 0x1270c(%rip), %rdi     # 0x16bd8
callq 0x6cc0
movq %rax, %rdi
movl $0x1, %esi
callq 0x6ca0
cmpl $-0x1, (%rax)
jne 0x46b1
leaq 0x1274a(%rip), %rdi     # 0x16c38
leaq 0x125cb(%rip), %rsi     # 0x16ac0
callq 0x6ee0
movq %rax, %rdi
movslq 0x1266c(%rip), %rsi     # 0x16b70
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x1267b(%rip)     # 0x16b8c
leaq 0x126c0(%rip), %rdi     # 0x16bd8
leaq 0x1266d(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x2, %esi
callq 0x6ca0
cmpl $0x0, (%rax)
jne 0x46af
leaq 0x12697(%rip), %rdi     # 0x16bd8
leaq 0x12644(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl (%rax), %eax
movl %eax, 0x125fe(%rip)     # 0x16b60
movl 0x125f8(%rip), %eax     # 0x16b60
addl $0x1, %eax
movl %eax, 0x125f3(%rip)     # 0x16b64
movl 0x125ed(%rip), %eax     # 0x16b64
movl %eax, -0x29c(%rbp)
leaq 0x12654(%rip), %rdi     # 0x16bd8
leaq 0x12601(%rip), %rsi     # 0x16b8c
callq 0x6cc0
movq %rax, %rdi
movl $0x3, %esi
callq 0x6ca0
movl -0x29c(%rbp), %ecx
movl %ecx, (%rax)
leaq 0x126bc(%rip), %rdi     # 0x16c68
leaq 0x125ad(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, -0x298(%rbp)
leaq 0x126a2(%rip), %rdi     # 0x16c68
leaq 0x12593(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7330
movq %rax, -0x1a0(%rbp)
leaq 0x12680(%rip), %rdi     # 0x16c68
leaq 0x12571(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0x1a8(%rbp)
movq -0x1a0(%rbp), %rdi
movq -0x1a8(%rbp), %rsi
leaq 0x12574(%rip), %rdx     # 0x16b8c
callq 0x72e0
movq %rax, -0x198(%rbp)
leaq -0x190(%rbp), %rdi
leaq -0x198(%rbp), %rsi
callq 0x7390
leaq 0x1262a(%rip), %rdi     # 0x16c68
leaq 0x1251b(%rip), %rsi     # 0x16b60
callq 0x6cc0
movq %rax, %rdi
callq 0x7360
movq %rax, -0x1b8(%rbp)
leaq -0x1b0(%rbp), %rdi
leaq -0x1b8(%rbp), %rsi
callq 0x7390
movq -0x298(%rbp), %rdi
movq -0x190(%rbp), %rsi
movq -0x1b0(%rbp), %rdx
callq 0x7250
movq %rax, -0x1c0(%rbp)
leaq 0x125d4(%rip), %rdi     # 0x16c68
leaq 0x124c9(%rip), %rsi     # 0x16b64
callq 0x6cc0
movq %rax, %rdi
leaq 0x124e2(%rip), %rsi     # 0x16b8c
callq 0x6fc0
jmp 0x46b1
jmp 0x46b3
movl 0x124b7(%rip), %eax     # 0x16b70
addl $0x1, %eax
movl %eax, 0x124ae(%rip)     # 0x16b70
jmp 0x4464
jmp 0x46c9
jmp 0x46cb
jmp 0x46cd
movl 0x12499(%rip), %eax     # 0x16b6c
addl $0x1, %eax
movl %eax, 0x12490(%rip)     # 0x16b6c
jmp 0x3ba6
jmp 0x46e3
jmp 0x46e5
addq $0x2a0, %rsp            # imm = 0x2A0
popq %rbp
retq
nop