// File: ClauParser[P]ClauParser/./include/clau_parser.h
// Function: clau_parser::LoadData::__LoadData(char const*, long const*, long, clau_parser::UserType*, int, int, clau_parser::UserType**, int*)
static bool __LoadData(const char* buffer, const int64_t* token_arr, int64_t token_arr_len, UserType* _global,
			int start_state, int last_state, UserType** next, int* err)
		{

			std::vector<int64_t> varVec;
			std::vector<int64_t> valVec;


			if (token_arr_len <= 0) {
				return false;
			}

			UserType& global = *_global;

			int state = start_state;
			size_t braceNum = 0;
			std::vector< UserType* > nestedUT(1);
			int64_t var = 0, val = 0;

			nestedUT.reserve(10);
			nestedUT[0] = &global;


			int64_t count = 0;
			const int64_t* x = token_arr;
			const int64_t* x_next = x;

			for (int64_t i = 0; i < token_arr_len; ++i) {
				x = x_next;
				{
					x_next = x + 1;
				}
				if (count > 0) {
					count--;
					continue;
				}
				int64_t len = Utility::GetLength(token_arr[i]);

				switch (state)
				{
				case 0:
				{
					// Left 1
					if (len == 1 && (-1 != Utility::Equal(TYPE_LEFT, Utility::GetType(token_arr[i])))) {
						if (!varVec.empty()) {
							nestedUT[braceNum]->ReserveIList(nestedUT[braceNum]->GetIListSize() + varVec.size());
							nestedUT[braceNum]->ReserveItemList(nestedUT[braceNum]->GetItemListSize() + varVec.size());

							for (size_t x = 0; x < varVec.size(); ++x) {
								nestedUT[braceNum]->AddItem(buffer + Utility::GetIdx(varVec[x]), Utility::GetLength(varVec[x]),
									buffer + Utility::GetIdx(valVec[x]), Utility::GetLength(valVec[x]));
							}

							varVec.clear();
							valVec.clear();
						}

						UserType temp("");

						nestedUT[braceNum]->AddUserTypeItem(temp);
						UserType* pTemp = nullptr;
						nestedUT[braceNum]->GetLastUserTypeItemRef(pTemp);

						braceNum++;

						/// new nestedUT
						if (nestedUT.size() == braceNum) {
							nestedUT.push_back(nullptr);
						}

						/// initial new nestedUT.
						nestedUT[braceNum] = pTemp;
						///

						state = 0;
					}
					// Right 2
					else if (len == 1 && (-1 != Utility::Equal(TYPE_RIGHT, Utility::GetType(token_arr[i])))) {
						state = 0;

						if (!varVec.empty()) {

							{
								nestedUT[braceNum]->ReserveIList(nestedUT[braceNum]->GetIListSize() + varVec.size());
								nestedUT[braceNum]->ReserveItemList(nestedUT[braceNum]->GetItemListSize() + varVec.size());

								for (size_t x = 0; x < varVec.size(); ++x) {
									nestedUT[braceNum]->AddItem(buffer + Utility::GetIdx(varVec[x]), Utility::GetLength(varVec[x]),
										buffer + Utility::GetIdx(valVec[x]), Utility::GetLength(valVec[x]));
								}
							}

							varVec.clear();
							valVec.clear();
						}

						if (braceNum == 0) {
							UserType ut;
							ut.AddUserTypeItem(UserType("#", 1)); // json -> "var_name" = val  // clautext, # is line comment delimiter.
							UserType* pTemp = nullptr;
							ut.GetLastUserTypeItemRef(pTemp);
							int utCount = 0;
							int itCount = 0;
							auto max = nestedUT[braceNum]->GetIListSize();
							for (size_t i = 0; i < max; ++i) {
								if (nestedUT[braceNum]->IsUserTypeList(i)) {
									ut.GetUserTypeList(0)->AddUserTypeItem(std::move(*(nestedUT[braceNum]->GetUserTypeList(utCount))));
									utCount++;
								}
								else {
									ut.GetUserTypeList(0)->AddItemType(std::move(nestedUT[braceNum]->GetItemList(itCount)));
									itCount++;
								}
							}

							nestedUT[braceNum]->Remove();
							nestedUT[braceNum]->AddUserTypeItem(std::move(*(ut.GetUserTypeList(0))));

							braceNum++;
						}

						{
							if (braceNum < nestedUT.size()) {
								nestedUT[braceNum] = nullptr;
							}
							braceNum--;
						}
					}
					else {
						if (x < token_arr + token_arr_len - 1) {
							int64_t _len = Utility::GetLength(token_arr[i + 1]);
							// EQ 3
							if (_len == 1 && -1 != Utility::Equal(TYPE_ASSIGN, Utility::GetType(token_arr[i + 1]))) {
								var = token_arr[i];

								state = 1;

								{
									count = 1;
								}
							}
							else {
								// var1
								if (x <= token_arr + token_arr_len - 1) {

									val = token_arr[i];

									varVec.push_back(check_syntax_error1(var, err));
									valVec.push_back(check_syntax_error1(val, err));

									val = 0;

									state = 0;

								}
							}
						}
						else
						{
							// var1
							if (x <= token_arr + token_arr_len - 1)
							{
								val = token_arr[i];
								varVec.push_back(check_syntax_error1(var, err));
								valVec.push_back(check_syntax_error1(val, err));
								val = 0;

								state = 0;
							}
						}
					}
				}
				break;
				case 1:
				{
					// LEFT 1
					if (len == 1 && (-1 != Utility::Equal(TYPE_LEFT, Utility::GetType(token_arr[i])))) {
						nestedUT[braceNum]->ReserveIList(nestedUT[braceNum]->GetIListSize() + varVec.size());
						nestedUT[braceNum]->ReserveItemList(nestedUT[braceNum]->GetItemListSize() + varVec.size());

						for (size_t x = 0; x < varVec.size(); ++x) {
							nestedUT[braceNum]->AddItem(buffer + Utility::GetIdx(varVec[x]), Utility::GetLength(varVec[x]),
								buffer + Utility::GetIdx(valVec[x]), Utility::GetLength(valVec[x]));
						}


						varVec.clear();
						valVec.clear();

						///
						{
							nestedUT[braceNum]->AddUserTypeItem(UserType(buffer + Utility::GetIdx(var), Utility::GetLength(var)));
							UserType* pTemp = nullptr;
							nestedUT[braceNum]->GetLastUserTypeItemRef(pTemp);
							var = 0;
							braceNum++;

							/// new nestedUT
							if (nestedUT.size() == braceNum) {
								nestedUT.push_back(nullptr);
							}

							/// initial new nestedUT.
							nestedUT[braceNum] = pTemp;
						}
						///
						state = 0;
					}
					else {
						if (x <= token_arr + token_arr_len - 1) {
							val = token_arr[i];

							varVec.push_back(check_syntax_error1(var, err));
							valVec.push_back(check_syntax_error1(val, err));
							var = 0; val = 0;

							state = 0;
						}
					}
				}
				break;
				default:
					// syntax err!!
					*err = -1;
					return false; // throw "syntax error ";
					break;
				}
			}

			if (next) {
				*next = nestedUT[braceNum];
			}

			if (varVec.empty() == false) {
				nestedUT[braceNum]->ReserveIList(nestedUT[braceNum]->GetIListSize() + varVec.size());
				nestedUT[braceNum]->ReserveItemList(nestedUT[braceNum]->GetItemListSize() + varVec.size());

				for (size_t x = 0; x < varVec.size(); ++x) {
					nestedUT[braceNum]->AddItem(buffer + Utility::GetIdx(varVec[x]), Utility::GetLength(varVec[x]),
						buffer + Utility::GetIdx(valVec[x]), Utility::GetLength(valVec[x]));
				}


				varVec.clear();
				valVec.clear();
			}

			if (state != last_state) {
				*err = -2;
				return false;
				// throw std::string("error final state is not last_state!  : ") + toStr(state);
			}
			if (x > token_arr + token_arr_len) {
				*err = -3;
				return false;
				//throw std::string("error x > buffer + buffer_len: ");
			}

			return true;
		}

// Assembly:
subq $0x728, %rsp            # imm = 0x728
movq 0x738(%rsp), %rax
movq 0x730(%rsp), %rax
movq %rdi, 0x718(%rsp)
movq %rsi, 0x710(%rsp)
movq %rdx, 0x708(%rsp)
movq %rcx, 0x700(%rsp)
movl %r8d, 0x6fc(%rsp)
movl %r9d, 0x6f8(%rsp)
leaq 0x6e0(%rsp), %rdi
callq 0x9f00
leaq 0x6c8(%rsp), %rdi
callq 0x9f00
cmpq $0x0, 0x708(%rsp)
jg 0xa764
movb $0x0, 0x727(%rsp)
movl $0x1, 0x6c4(%rsp)
jmp 0xc018
movq 0x700(%rsp), %rax
movq %rax, 0x6b8(%rsp)
movl 0x6fc(%rsp), %eax
movl %eax, 0x6b4(%rsp)
movq $0x0, 0x6a8(%rsp)
leaq 0x68f(%rsp), %rdi
movq %rdi, 0x290(%rsp)
callq 0xa430
movq 0x290(%rsp), %rdx
leaq 0x690(%rsp), %rdi
movl $0x1, %esi
callq 0x13ec0
jmp 0xa7bf
leaq 0x68f(%rsp), %rdi
callq 0x85c0
movq $0x0, 0x670(%rsp)
movq $0x0, 0x668(%rsp)
leaq 0x690(%rsp), %rdi
movl $0xa, %esi
callq 0x13f40
jmp 0xa7f8
movq 0x6b8(%rsp), %rax
movq %rax, 0x288(%rsp)
leaq 0x690(%rsp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x7ad0
movq 0x288(%rsp), %rcx
movq %rcx, (%rax)
movq $0x0, 0x660(%rsp)
movq 0x710(%rsp), %rax
movq %rax, 0x658(%rsp)
movq 0x658(%rsp), %rax
movq %rax, 0x650(%rsp)
movq $0x0, 0x648(%rsp)
movq 0x648(%rsp), %rax
cmpq 0x708(%rsp), %rax
jge 0xbd00
movq 0x650(%rsp), %rax
movq %rax, 0x658(%rsp)
movq 0x658(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x650(%rsp)
cmpq $0x0, 0x660(%rsp)
jle 0xa8f9
movq 0x660(%rsp), %rax
addq $-0x1, %rax
movq %rax, 0x660(%rsp)
jmp 0xbce7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x680(%rsp)
movl %eax, 0x67c(%rsp)
leaq 0x68f(%rsp), %rdi
callq 0x85c0
jmp 0xc043
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x680(%rsp)
movl %eax, 0x67c(%rsp)
jmp 0xc009
movq 0x710(%rsp), %rax
movq 0x648(%rsp), %rcx
movq (%rax,%rcx,8), %rdi
callq 0xfe50
movq %rax, 0x640(%rsp)
movl 0x6b4(%rsp), %eax
movl %eax, 0x284(%rsp)
testl %eax, %eax
je 0xa943
jmp 0xa92e
movl 0x284(%rsp), %eax
subl $0x1, %eax
je 0xb773
jmp 0xbcbf
cmpq $0x1, 0x640(%rsp)
jne 0xadea
movq 0x710(%rsp), %rax
movq 0x648(%rsp), %rcx
movq (%rax,%rcx,8), %rdi
callq 0x11c90
movq %rax, %rsi
movl $0x1, %edi
callq 0x11cb0
movl %eax, %ecx
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpl %ecx, %eax
je 0xadea
leaq 0x6e0(%rsp), %rdi
callq 0xa690
testb $0x1, %al
jne 0xac1c
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
movq %rdi, 0x268(%rsp)
callq 0x7ad0
movq 0x268(%rsp), %rdi
movq (%rax), %rax
movq %rax, 0x270(%rsp)
movq 0x6a8(%rsp), %rsi
callq 0x7ad0
movq (%rax), %rdi
callq 0x14090
movq %rax, 0x278(%rsp)
jmp 0xa9eb
leaq 0x6e0(%rsp), %rdi
callq 0xa1f0
movq 0x278(%rsp), %rsi
movq 0x270(%rsp), %rdi
addq %rax, %rsi
callq 0x14050
jmp 0xaa12
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
movq %rdi, 0x250(%rsp)
callq 0x7ad0
movq 0x250(%rsp), %rdi
movq (%rax), %rax
movq %rax, 0x258(%rsp)
movq 0x6a8(%rsp), %rsi
callq 0x7ad0
movq (%rax), %rdi
callq 0x140f0
movq %rax, 0x260(%rsp)
jmp 0xaa61
leaq 0x6e0(%rsp), %rdi
callq 0xa1f0
movq 0x260(%rsp), %rsi
movq 0x258(%rsp), %rdi
addq %rax, %rsi
callq 0x140b0
jmp 0xaa88
movq $0x0, 0x638(%rsp)
movq 0x638(%rsp), %rax
movq %rax, 0x248(%rsp)
leaq 0x6e0(%rsp), %rdi
callq 0xa1f0
movq %rax, %rcx
movq 0x248(%rsp), %rax
cmpq %rcx, %rax
jae 0xac02
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rax
movq %rax, 0x228(%rsp)
movq 0x718(%rsp), %rax
movq %rax, 0x210(%rsp)
movq 0x638(%rsp), %rsi
leaq 0x6e0(%rsp), %rdi
movq %rdi, 0x208(%rsp)
callq 0xa210
movq (%rax), %rdi
callq 0xfe30
movq 0x208(%rsp), %rdi
movq %rax, %rcx
movq 0x210(%rsp), %rax
addq %rcx, %rax
movq %rax, 0x230(%rsp)
movq 0x638(%rsp), %rsi
callq 0xa210
movq (%rax), %rdi
callq 0xfe50
movq %rax, 0x238(%rsp)
movq 0x718(%rsp), %rax
movq %rax, 0x220(%rsp)
movq 0x638(%rsp), %rsi
leaq 0x6c8(%rsp), %rdi
movq %rdi, 0x218(%rsp)
callq 0xa210
movq (%rax), %rdi
callq 0xfe30
movq 0x218(%rsp), %rdi
movq %rax, %rcx
movq 0x220(%rsp), %rax
addq %rcx, %rax
movq %rax, 0x240(%rsp)
movq 0x638(%rsp), %rsi
callq 0xa210
movq (%rax), %rdi
callq 0xfe50
movq 0x228(%rsp), %rdi
movq 0x230(%rsp), %rsi
movq 0x238(%rsp), %rdx
movq 0x240(%rsp), %rcx
movq %rax, %r8
callq 0x14110
jmp 0xabe7
jmp 0xabe9
movq 0x638(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x638(%rsp)
jmp 0xaa94
leaq 0x6e0(%rsp), %rdi
callq 0x14180
leaq 0x6c8(%rsp), %rdi
callq 0x14180
leaq 0x567(%rsp), %rdi
movq %rdi, 0x200(%rsp)
callq 0x33e0
movq 0x200(%rsp), %rdx
leaq 0x117ef(%rip), %rsi     # 0x1c42f
leaq 0x568(%rsp), %rdi
callq 0x44e0
jmp 0xac4f
leaq 0x588(%rsp), %rdi
leaq 0x568(%rsp), %rsi
callq 0x7970
jmp 0xac66
leaq 0x568(%rsp), %rdi
callq 0x3160
leaq 0x567(%rsp), %rdi
callq 0x3270
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rdi
leaq 0x588(%rsp), %rsi
callq 0x141a0
jmp 0xaca7
movq $0x0, 0x558(%rsp)
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rdi
leaq 0x558(%rsp), %rsi
callq 0x14250
jmp 0xacda
movq 0x6a8(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x6a8(%rsp)
leaq 0x690(%rsp), %rdi
callq 0x5b30
cmpq 0x6a8(%rsp), %rax
jne 0xad9d
movq $0x0, 0x550(%rsp)
leaq 0x690(%rsp), %rdi
leaq 0x550(%rsp), %rsi
callq 0x142b0
jmp 0xad2c
jmp 0xad9d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x680(%rsp)
movl %eax, 0x67c(%rsp)
jmp 0xad65
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x680(%rsp)
movl %eax, 0x67c(%rsp)
leaq 0x568(%rsp), %rdi
callq 0x3160
leaq 0x567(%rsp), %rdi
callq 0x3270
jmp 0xc009
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x680(%rsp)
movl %eax, 0x67c(%rsp)
leaq 0x588(%rsp), %rdi
callq 0x5490
jmp 0xc009
movq 0x558(%rsp), %rax
movq %rax, 0x1f8(%rsp)
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq 0x1f8(%rsp), %rcx
movq %rcx, (%rax)
movl $0x0, 0x6b4(%rsp)
leaq 0x588(%rsp), %rdi
callq 0x5490
jmp 0xb76e
cmpq $0x1, 0x640(%rsp)
jne 0xb4c8
movq 0x710(%rsp), %rax
movq 0x648(%rsp), %rcx
movq (%rax,%rcx,8), %rdi
callq 0x11c90
movq %rax, %rsi
movl $0x2, %edi
callq 0x11cb0
movl %eax, %ecx
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpl %ecx, %eax
je 0xb4c8
movl $0x0, 0x6b4(%rsp)
leaq 0x6e0(%rsp), %rdi
callq 0xa690
testb $0x1, %al
jne 0xb0ce
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
movq %rdi, 0x1e0(%rsp)
callq 0x7ad0
movq 0x1e0(%rsp), %rdi
movq (%rax), %rax
movq %rax, 0x1e8(%rsp)
movq 0x6a8(%rsp), %rsi
callq 0x7ad0
movq (%rax), %rdi
callq 0x14090
movq %rax, 0x1f0(%rsp)
jmp 0xae9d
leaq 0x6e0(%rsp), %rdi
callq 0xa1f0
movq 0x1f0(%rsp), %rsi
movq 0x1e8(%rsp), %rdi
addq %rax, %rsi
callq 0x14050
jmp 0xaec4
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
movq %rdi, 0x1c8(%rsp)
callq 0x7ad0
movq 0x1c8(%rsp), %rdi
movq (%rax), %rax
movq %rax, 0x1d0(%rsp)
movq 0x6a8(%rsp), %rsi
callq 0x7ad0
movq (%rax), %rdi
callq 0x140f0
movq %rax, 0x1d8(%rsp)
jmp 0xaf13
leaq 0x6e0(%rsp), %rdi
callq 0xa1f0
movq 0x1d8(%rsp), %rsi
movq 0x1d0(%rsp), %rdi
addq %rax, %rsi
callq 0x140b0
jmp 0xaf3a
movq $0x0, 0x548(%rsp)
movq 0x548(%rsp), %rax
movq %rax, 0x1c0(%rsp)
leaq 0x6e0(%rsp), %rdi
callq 0xa1f0
movq %rax, %rcx
movq 0x1c0(%rsp), %rax
cmpq %rcx, %rax
jae 0xb0b4
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rax
movq %rax, 0x1a0(%rsp)
movq 0x718(%rsp), %rax
movq %rax, 0x188(%rsp)
movq 0x548(%rsp), %rsi
leaq 0x6e0(%rsp), %rdi
movq %rdi, 0x180(%rsp)
callq 0xa210
movq (%rax), %rdi
callq 0xfe30
movq 0x180(%rsp), %rdi
movq %rax, %rcx
movq 0x188(%rsp), %rax
addq %rcx, %rax
movq %rax, 0x1a8(%rsp)
movq 0x548(%rsp), %rsi
callq 0xa210
movq (%rax), %rdi
callq 0xfe50
movq %rax, 0x1b0(%rsp)
movq 0x718(%rsp), %rax
movq %rax, 0x198(%rsp)
movq 0x548(%rsp), %rsi
leaq 0x6c8(%rsp), %rdi
movq %rdi, 0x190(%rsp)
callq 0xa210
movq (%rax), %rdi
callq 0xfe30
movq 0x190(%rsp), %rdi
movq %rax, %rcx
movq 0x198(%rsp), %rax
addq %rcx, %rax
movq %rax, 0x1b8(%rsp)
movq 0x548(%rsp), %rsi
callq 0xa210
movq (%rax), %rdi
callq 0xfe50
movq 0x1a0(%rsp), %rdi
movq 0x1a8(%rsp), %rsi
movq 0x1b0(%rsp), %rdx
movq 0x1b8(%rsp), %rcx
movq %rax, %r8
callq 0x14110
jmp 0xb099
jmp 0xb09b
movq 0x548(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x548(%rsp)
jmp 0xaf46
leaq 0x6e0(%rsp), %rdi
callq 0x14180
leaq 0x6c8(%rsp), %rdi
callq 0x14180
cmpq $0x0, 0x6a8(%rsp)
jne 0xb466
leaq 0x477(%rsp), %rdi
movq %rdi, 0x178(%rsp)
callq 0x33e0
movq 0x178(%rsp), %rdx
leaq 0x1132e(%rip), %rsi     # 0x1c42f
leaq 0x478(%rsp), %rdi
callq 0x44e0
jmp 0xb110
leaq 0x498(%rsp), %rdi
leaq 0x478(%rsp), %rsi
callq 0x4ed0
jmp 0xb127
leaq 0x478(%rsp), %rdi
callq 0x3160
leaq 0x477(%rsp), %rdi
callq 0x3270
leaq 0x1130f(%rip), %rsi     # 0x1c457
leaq 0x3c0(%rsp), %rdi
movl $0x1, %edx
callq 0x142e0
jmp 0xb15c
leaq 0x498(%rsp), %rdi
leaq 0x3c0(%rsp), %rsi
callq 0x7740
jmp 0xb173
leaq 0x3c0(%rsp), %rdi
callq 0x5490
movq $0x0, 0x3b8(%rsp)
leaq 0x498(%rsp), %rdi
leaq 0x3b8(%rsp), %rsi
callq 0x14250
jmp 0xb1a3
movl $0x0, 0x3b4(%rsp)
movl $0x0, 0x3b0(%rsp)
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rdi
callq 0x14090
movq %rax, 0x170(%rsp)
jmp 0xb1e0
movq 0x170(%rsp), %rax
movq %rax, 0x3a8(%rsp)
movq $0x0, 0x3a0(%rsp)
movq 0x3a0(%rsp), %rax
cmpq 0x3a8(%rsp), %rax
jae 0xb3cf
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rdi
movq 0x3a0(%rsp), %rsi
callq 0x14400
movb %al, 0x16f(%rsp)
jmp 0xb240
movb 0x16f(%rsp), %al
testb $0x1, %al
jne 0xb250
jmp 0xb341
xorl %eax, %eax
movl %eax, %esi
leaq 0x498(%rsp), %rdi
callq 0x7910
movq (%rax), %rax
movq %rax, 0x160(%rsp)
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rdi
movslq 0x3b4(%rsp), %rsi
callq 0x7910
movq 0x160(%rsp), %rdi
movq (%rax), %rsi
callq 0x7740
jmp 0xb2a3
movl 0x3b4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3b4(%rsp)
jmp 0xb3b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x680(%rsp)
movl %eax, 0x67c(%rsp)
jmp 0xb2f0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x680(%rsp)
movl %eax, 0x67c(%rsp)
leaq 0x478(%rsp), %rdi
callq 0x3160
leaq 0x477(%rsp), %rdi
callq 0x3270
jmp 0xc009
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x680(%rsp)
movl %eax, 0x67c(%rsp)
jmp 0xb454
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x680(%rsp)
movl %eax, 0x67c(%rsp)
leaq 0x3c0(%rsp), %rdi
callq 0x5490
jmp 0xb454
xorl %eax, %eax
movl %eax, %esi
leaq 0x498(%rsp), %rdi
callq 0x7910
movq (%rax), %rax
movq %rax, 0x150(%rsp)
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rdi
movslq 0x3b0(%rsp), %rsi
callq 0x14490
movq %rax, 0x158(%rsp)
jmp 0xb38c
movq 0x158(%rsp), %rsi
movq 0x150(%rsp), %rdi
callq 0x14430
jmp 0xb3a3
movl 0x3b0(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3b0(%rsp)
jmp 0xb3b6
movq 0x3a0(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x3a0(%rsp)
jmp 0xb1fc
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rdi
callq 0x144c0
jmp 0xb3ee
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rax
movq %rax, 0x148(%rsp)
xorl %eax, %eax
movl %eax, %esi
leaq 0x498(%rsp), %rdi
callq 0x7910
movq 0x148(%rsp), %rdi
movq (%rax), %rsi
callq 0x7740
jmp 0xb431
movq 0x6a8(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x6a8(%rsp)
leaq 0x498(%rsp), %rdi
callq 0x5490
jmp 0xb466
leaq 0x498(%rsp), %rdi
callq 0x5490
jmp 0xc009
movq 0x6a8(%rsp), %rax
movq %rax, 0x140(%rsp)
leaq 0x690(%rsp), %rdi
callq 0x5b30
movq %rax, %rcx
movq 0x140(%rsp), %rax
cmpq %rcx, %rax
jae 0xb4af
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq $0x0, (%rax)
movq 0x6a8(%rsp), %rax
addq $-0x1, %rax
movq %rax, 0x6a8(%rsp)
jmp 0xb76c
movq 0x658(%rsp), %rax
movq 0x710(%rsp), %rcx
movq 0x708(%rsp), %rdx
shlq $0x3, %rdx
addq %rdx, %rcx
addq $-0x8, %rcx
cmpq %rcx, %rax
jae 0xb67d
movq 0x710(%rsp), %rax
movq 0x648(%rsp), %rcx
movq 0x8(%rax,%rcx,8), %rdi
callq 0xfe50
movq %rax, 0x398(%rsp)
cmpq $0x1, 0x398(%rsp)
jne 0xb58b
movq 0x710(%rsp), %rax
movq 0x648(%rsp), %rcx
movq 0x8(%rax,%rcx,8), %rdi
callq 0x11c90
movq %rax, %rsi
movl $0x3, %edi
callq 0x11cb0
movl %eax, %ecx
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpl %ecx, %eax
je 0xb58b
movq 0x710(%rsp), %rax
movq 0x648(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, 0x670(%rsp)
movl $0x1, 0x6b4(%rsp)
movq $0x1, 0x660(%rsp)
jmp 0xb678
movq 0x658(%rsp), %rax
movq 0x710(%rsp), %rcx
movq 0x708(%rsp), %rdx
shlq $0x3, %rdx
addq %rdx, %rcx
addq $-0x8, %rcx
cmpq %rcx, %rax
ja 0xb676
movq 0x710(%rsp), %rax
movq 0x648(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, 0x668(%rsp)
movq 0x670(%rsp), %rdi
movq 0x738(%rsp), %rsi
callq 0x14590
movq %rax, 0x138(%rsp)
jmp 0xb5f2
movq 0x138(%rsp), %rax
movq %rax, 0x390(%rsp)
leaq 0x6e0(%rsp), %rdi
leaq 0x390(%rsp), %rsi
callq 0xa020
jmp 0xb619
movq 0x668(%rsp), %rdi
movq 0x738(%rsp), %rsi
callq 0x14590
movq %rax, 0x130(%rsp)
jmp 0xb638
movq 0x130(%rsp), %rax
movq %rax, 0x388(%rsp)
leaq 0x6c8(%rsp), %rdi
leaq 0x388(%rsp), %rsi
callq 0xa020
jmp 0xb65f
movq $0x0, 0x668(%rsp)
movl $0x0, 0x6b4(%rsp)
jmp 0xb678
jmp 0xb76a
movq 0x658(%rsp), %rax
movq 0x710(%rsp), %rcx
movq 0x708(%rsp), %rdx
shlq $0x3, %rdx
addq %rdx, %rcx
addq $-0x8, %rcx
cmpq %rcx, %rax
ja 0xb768
movq 0x710(%rsp), %rax
movq 0x648(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, 0x668(%rsp)
movq 0x670(%rsp), %rdi
movq 0x738(%rsp), %rsi
callq 0x14590
movq %rax, 0x128(%rsp)
jmp 0xb6e4
movq 0x128(%rsp), %rax
movq %rax, 0x380(%rsp)
leaq 0x6e0(%rsp), %rdi
leaq 0x380(%rsp), %rsi
callq 0xa020
jmp 0xb70b
movq 0x668(%rsp), %rdi
movq 0x738(%rsp), %rsi
callq 0x14590
movq %rax, 0x120(%rsp)
jmp 0xb72a
movq 0x120(%rsp), %rax
movq %rax, 0x378(%rsp)
leaq 0x6c8(%rsp), %rdi
leaq 0x378(%rsp), %rsi
callq 0xa020
jmp 0xb751
movq $0x0, 0x668(%rsp)
movl $0x0, 0x6b4(%rsp)
jmp 0xb76a
jmp 0xb76c
jmp 0xb76e
jmp 0xbce5
cmpq $0x1, 0x640(%rsp)
jne 0xbbca
movq 0x710(%rsp), %rax
movq 0x648(%rsp), %rcx
movq (%rax,%rcx,8), %rdi
callq 0x11c90
movq %rax, %rsi
movl $0x1, %edi
callq 0x11cb0
movl %eax, %ecx
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpl %ecx, %eax
je 0xbbca
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
movq %rdi, 0x108(%rsp)
callq 0x7ad0
movq 0x108(%rsp), %rdi
movq (%rax), %rax
movq %rax, 0x110(%rsp)
movq 0x6a8(%rsp), %rsi
callq 0x7ad0
movq (%rax), %rdi
callq 0x14090
movq %rax, 0x118(%rsp)
jmp 0xb806
leaq 0x6e0(%rsp), %rdi
callq 0xa1f0
movq 0x118(%rsp), %rsi
movq 0x110(%rsp), %rdi
addq %rax, %rsi
callq 0x14050
jmp 0xb82d
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
movq %rdi, 0xf0(%rsp)
callq 0x7ad0
movq 0xf0(%rsp), %rdi
movq (%rax), %rax
movq %rax, 0xf8(%rsp)
movq 0x6a8(%rsp), %rsi
callq 0x7ad0
movq (%rax), %rdi
callq 0x140f0
movq %rax, 0x100(%rsp)
jmp 0xb87c
leaq 0x6e0(%rsp), %rdi
callq 0xa1f0
movq 0x100(%rsp), %rsi
movq 0xf8(%rsp), %rdi
addq %rax, %rsi
callq 0x140b0
jmp 0xb8a3
movq $0x0, 0x370(%rsp)
movq 0x370(%rsp), %rax
movq %rax, 0xe8(%rsp)
leaq 0x6e0(%rsp), %rdi
callq 0xa1f0
movq %rax, %rcx
movq 0xe8(%rsp), %rax
cmpq %rcx, %rax
jae 0xba1d
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rax
movq %rax, 0xc8(%rsp)
movq 0x718(%rsp), %rax
movq %rax, 0xb0(%rsp)
movq 0x370(%rsp), %rsi
leaq 0x6e0(%rsp), %rdi
movq %rdi, 0xa8(%rsp)
callq 0xa210
movq (%rax), %rdi
callq 0xfe30
movq 0xa8(%rsp), %rdi
movq %rax, %rcx
movq 0xb0(%rsp), %rax
addq %rcx, %rax
movq %rax, 0xd0(%rsp)
movq 0x370(%rsp), %rsi
callq 0xa210
movq (%rax), %rdi
callq 0xfe50
movq %rax, 0xd8(%rsp)
movq 0x718(%rsp), %rax
movq %rax, 0xc0(%rsp)
movq 0x370(%rsp), %rsi
leaq 0x6c8(%rsp), %rdi
movq %rdi, 0xb8(%rsp)
callq 0xa210
movq (%rax), %rdi
callq 0xfe30
movq 0xb8(%rsp), %rdi
movq %rax, %rcx
movq 0xc0(%rsp), %rax
addq %rcx, %rax
movq %rax, 0xe0(%rsp)
movq 0x370(%rsp), %rsi
callq 0xa210
movq (%rax), %rdi
callq 0xfe50
movq 0xc8(%rsp), %rdi
movq 0xd0(%rsp), %rsi
movq 0xd8(%rsp), %rdx
movq 0xe0(%rsp), %rcx
movq %rax, %r8
callq 0x14110
jmp 0xba02
jmp 0xba04
movq 0x370(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x370(%rsp)
jmp 0xb8af
leaq 0x6e0(%rsp), %rdi
callq 0x14180
leaq 0x6c8(%rsp), %rdi
callq 0x14180
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rax
movq %rax, 0x90(%rsp)
movq 0x718(%rsp), %rax
movq %rax, 0x98(%rsp)
movq 0x670(%rsp), %rdi
callq 0xfe30
movq %rax, %rcx
movq 0x98(%rsp), %rax
addq %rcx, %rax
movq %rax, 0xa0(%rsp)
movq 0x670(%rsp), %rdi
callq 0xfe50
movq 0xa0(%rsp), %rsi
movq %rax, %rdx
leaq 0x2c0(%rsp), %rdi
callq 0x142e0
jmp 0xbab1
movq 0x90(%rsp), %rdi
leaq 0x2c0(%rsp), %rsi
callq 0x7740
jmp 0xbac8
leaq 0x2c0(%rsp), %rdi
callq 0x5490
movq $0x0, 0x2b8(%rsp)
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rdi
leaq 0x2b8(%rsp), %rsi
callq 0x14250
jmp 0xbb08
movq $0x0, 0x670(%rsp)
movq 0x6a8(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x6a8(%rsp)
leaq 0x690(%rsp), %rdi
callq 0x5b30
cmpq 0x6a8(%rsp), %rax
jne 0xbb8a
movq $0x0, 0x2b0(%rsp)
leaq 0x690(%rsp), %rdi
leaq 0x2b0(%rsp), %rsi
callq 0x142b0
jmp 0xbb62
jmp 0xbb8a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x680(%rsp)
movl %eax, 0x67c(%rsp)
leaq 0x2c0(%rsp), %rdi
callq 0x5490
jmp 0xc009
movq 0x2b8(%rsp), %rax
movq %rax, 0x88(%rsp)
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq 0x88(%rsp), %rcx
movq %rcx, (%rax)
movl $0x0, 0x6b4(%rsp)
jmp 0xbcbd
movq 0x658(%rsp), %rax
movq 0x710(%rsp), %rcx
movq 0x708(%rsp), %rdx
shlq $0x3, %rdx
addq %rdx, %rcx
addq $-0x8, %rcx
cmpq %rcx, %rax
ja 0xbcbb
movq 0x710(%rsp), %rax
movq 0x648(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, 0x668(%rsp)
movq 0x670(%rsp), %rdi
movq 0x738(%rsp), %rsi
callq 0x14590
movq %rax, 0x80(%rsp)
jmp 0xbc31
movq 0x80(%rsp), %rax
movq %rax, 0x2a8(%rsp)
leaq 0x6e0(%rsp), %rdi
leaq 0x2a8(%rsp), %rsi
callq 0xa020
jmp 0xbc58
movq 0x668(%rsp), %rdi
movq 0x738(%rsp), %rsi
callq 0x14590
movq %rax, 0x78(%rsp)
jmp 0xbc74
movq 0x78(%rsp), %rax
movq %rax, 0x2a0(%rsp)
leaq 0x6c8(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0xa020
jmp 0xbc98
movq $0x0, 0x670(%rsp)
movq $0x0, 0x668(%rsp)
movl $0x0, 0x6b4(%rsp)
jmp 0xbcbd
jmp 0xbce5
movq 0x738(%rsp), %rax
movl $0xffffffff, (%rax)     # imm = 0xFFFFFFFF
movb $0x0, 0x727(%rsp)
movl $0x1, 0x6c4(%rsp)
jmp 0xbffa
jmp 0xbce7
movq 0x648(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x648(%rsp)
jmp 0xa85c
cmpq $0x0, 0x730(%rsp)
je 0xbd2e
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rcx
movq 0x730(%rsp), %rax
movq %rcx, (%rax)
leaq 0x6e0(%rsp), %rdi
callq 0xa690
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
jne 0xbf6d
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
movq %rdi, 0x60(%rsp)
callq 0x7ad0
movq 0x60(%rsp), %rdi
movq (%rax), %rax
movq %rax, 0x68(%rsp)
movq 0x6a8(%rsp), %rsi
callq 0x7ad0
movq (%rax), %rdi
callq 0x14090
movq %rax, 0x70(%rsp)
jmp 0xbd8c
leaq 0x6e0(%rsp), %rdi
callq 0xa1f0
movq 0x70(%rsp), %rsi
movq 0x68(%rsp), %rdi
addq %rax, %rsi
callq 0x14050
jmp 0xbdad
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
movq %rdi, 0x48(%rsp)
callq 0x7ad0
movq 0x48(%rsp), %rdi
movq (%rax), %rax
movq %rax, 0x50(%rsp)
movq 0x6a8(%rsp), %rsi
callq 0x7ad0
movq (%rax), %rdi
callq 0x140f0
movq %rax, 0x58(%rsp)
jmp 0xbdf0
leaq 0x6e0(%rsp), %rdi
callq 0xa1f0
movq 0x58(%rsp), %rsi
movq 0x50(%rsp), %rdi
addq %rax, %rsi
callq 0x140b0
jmp 0xbe11
movq $0x0, 0x298(%rsp)
movq 0x298(%rsp), %rax
movq %rax, 0x40(%rsp)
leaq 0x6e0(%rsp), %rdi
callq 0xa1f0
movq %rax, %rcx
movq 0x40(%rsp), %rax
cmpq %rcx, %rax
jae 0xbf53
movq 0x6a8(%rsp), %rsi
leaq 0x690(%rsp), %rdi
callq 0x7ad0
movq (%rax), %rax
movq %rax, 0x20(%rsp)
movq 0x718(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x298(%rsp), %rsi
leaq 0x6e0(%rsp), %rdi
movq %rdi, (%rsp)
callq 0xa210
movq (%rax), %rdi
callq 0xfe30
movq (%rsp), %rdi
movq %rax, %rcx
movq 0x8(%rsp), %rax
addq %rcx, %rax
movq %rax, 0x28(%rsp)
movq 0x298(%rsp), %rsi
callq 0xa210
movq (%rax), %rdi
callq 0xfe50
movq %rax, 0x30(%rsp)
movq 0x718(%rsp), %rax
movq %rax, 0x18(%rsp)
movq 0x298(%rsp), %rsi
leaq 0x6c8(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0xa210
movq (%rax), %rdi
callq 0xfe30
movq 0x10(%rsp), %rdi
movq %rax, %rcx
movq 0x18(%rsp), %rax
addq %rcx, %rax
movq %rax, 0x38(%rsp)
movq 0x298(%rsp), %rsi
callq 0xa210
movq (%rax), %rdi
callq 0xfe50
movq 0x20(%rsp), %rdi
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
movq 0x38(%rsp), %rcx
movq %rax, %r8
callq 0x14110
jmp 0xbf38
jmp 0xbf3a
movq 0x298(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x298(%rsp)
jmp 0xbe1d
leaq 0x6e0(%rsp), %rdi
callq 0x14180
leaq 0x6c8(%rsp), %rdi
callq 0x14180
movl 0x6b4(%rsp), %eax
cmpl 0x6f8(%rsp), %eax
je 0xbfa0
movq 0x738(%rsp), %rax
movl $0xfffffffe, (%rax)     # imm = 0xFFFFFFFE
movb $0x0, 0x727(%rsp)
movl $0x1, 0x6c4(%rsp)
jmp 0xbffa
movq 0x658(%rsp), %rax
movq 0x710(%rsp), %rcx
movq 0x708(%rsp), %rdx
shlq $0x3, %rdx
addq %rdx, %rcx
cmpq %rcx, %rax
jbe 0xbfe7
movq 0x738(%rsp), %rax
movl $0xfffffffd, (%rax)     # imm = 0xFFFFFFFD
movb $0x0, 0x727(%rsp)
movl $0x1, 0x6c4(%rsp)
jmp 0xbffa
movb $0x1, 0x727(%rsp)
movl $0x1, 0x6c4(%rsp)
leaq 0x690(%rsp), %rdi
callq 0x55a0
jmp 0xc018
leaq 0x690(%rsp), %rdi
callq 0x55a0
jmp 0xc043
leaq 0x6c8(%rsp), %rdi
callq 0xa3d0
leaq 0x6e0(%rsp), %rdi
callq 0xa3d0
movb 0x727(%rsp), %al
andb $0x1, %al
addq $0x728, %rsp            # imm = 0x728
retq
leaq 0x6c8(%rsp), %rdi
callq 0xa3d0
leaq 0x6e0(%rsp), %rdi
callq 0xa3d0
movq 0x680(%rsp), %rdi
callq 0x33d0
nopw (%rax,%rax)