// File: /workspace/github_cpp_makefile_star2_O3/Nallantli[P]Rossa/main/rossa/tokenizer/tokenizer.cpp
// Function: getToken(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, unsigned long&, unsigned long&, unsigned long&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&)
const int getToken(
	const std::string &INPUT,
	size_t &INPUT_INDEX,
	size_t &LINE_INDEX,
	size_t &TOKEN_DIST,
	std::string &ID_STRING)
{
	static int last;
	while (isspace(last = nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST)))
		;

	if (isalpha(last) || last == '_')
	{
		ID_STRING = last;
		while (isalnum(peekChar(0, INPUT, INPUT_INDEX)) || peekChar(0, INPUT, INPUT_INDEX) == '_')
		{
			last = nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST);
			ID_STRING += last;
		}

		if (ID_STRING == KEYWORD_THEN)
			return TOK_THEN;
		else if (ID_STRING == KEYWORD_ELSE)
			return TOK_ELSE;
		else if (ID_STRING == KEYWORD_DO)
			return TOK_DO;
		else if (ID_STRING == KEYWORD_IN)
			return TOK_IN;
		else if (ID_STRING == KEYWORD_OF)
			return TOK_OF;
		else if (ID_STRING == KEYWORD_VAR)
			return TOK_VAR;
		else if (ID_STRING == KEYWORD_IF)
			return TOK_IF;
		else if (ID_STRING == KEYWORD_WHILE)
			return TOK_WHILE;
		else if (ID_STRING == KEYWORD_ELIF)
			return TOK_ELSEIF;
		else if (ID_STRING == KEYWORD_FOR)
			return TOK_FOR;
		else if (ID_STRING == KEYWORD_TRUE)
			return TOK_TRUE;
		else if (ID_STRING == KEYWORD_FALSE)
			return TOK_FALSE;
		else if (ID_STRING == KEYWORD_RETURN)
			return TOK_RETURN;
		else if (ID_STRING == KEYWORD_NIL)
			return TOK_NIL;
		else if (ID_STRING == KEYWORD_NUMBER)
			return TOK_NUMBER;
		else if (ID_STRING == KEYWORD_STRING)
			return TOK_STRING;
		else if (ID_STRING == KEYWORD_ARRAY)
			return TOK_ARRAY;
		else if (ID_STRING == KEYWORD_BOOLEAN)
			return TOK_BOOLEAN;
		else if (ID_STRING == KEYWORD_DICTIONARY)
			return TOK_DICTIONARY;
		else if (ID_STRING == KEYWORD_OBJECT)
			return TOK_OBJECT;
		else if (ID_STRING == KEYWORD_FUNCTION)
			return TOK_FUNCTION;
		else if (ID_STRING == KEYWORD_TYPE)
			return TOK_TYPE_NAME;
		else if (ID_STRING == KEYWORD_EXTERN)
			return TOK_EXTERN;
		else if (ID_STRING == KEYWORD_EXTERN_CALL)
			return TOK_EXTERN_CALL;
		else if (ID_STRING == KEYWORD_LENGTH)
			return TOK_LENGTH;
		else if (ID_STRING == KEYWORD_STRUCT)
			return TOK_STRUCT;
		else if (ID_STRING == KEYWORD_STATIC)
			return TOK_STATIC;
		else if (ID_STRING == KEYWORD_ENUM)
			return TOK_ENUM;
		else if (ID_STRING == KEYWORD_NEW)
			return TOK_NEW;
		else if (ID_STRING == KEYWORD_LOAD)
			return TOK_LOAD;
		else if (ID_STRING == KEYWORD_ALLOC)
			return TOK_ALLOC;
		else if (ID_STRING == KEYWORD_REF)
			return TOK_REF;
		else if (ID_STRING == KEYWORD_BREAK)
			return TOK_BREAK;
		else if (ID_STRING == KEYWORD_REFER)
			return TOK_REFER;
		else if (ID_STRING == KEYWORD_NIL_NAME)
			return TOK_NIL_NAME;
		else if (ID_STRING == KEYWORD_POINTER)
			return TOK_POINTER;
		else if (ID_STRING == KEYWORD_VIRTUAL)
			return TOK_VIRTUAL;
		else if (ID_STRING == KEYWORD_SWITCH)
			return TOK_SWITCH;
		else if (ID_STRING == KEYWORD_TRY)
			return TOK_TRY;
		else if (ID_STRING == KEYWORD_CATCH)
			return TOK_CATCH;
		else if (ID_STRING == KEYWORD_THROW)
			return TOK_THROW;
		else if (ID_STRING == KEYWORD_CHAR_N)
			return TOK_CHARN;
		else if (ID_STRING == KEYWORD_CHAR_S)
			return TOK_CHARS;
		else if (ID_STRING == KEYWORD_CASE)
			return TOK_CASE;
		else if (ID_STRING == KEYWORD_PARSE)
			return TOK_PARSE;
		else if (ID_STRING == KEYWORD_CONTINUE)
			return TOK_CONTINUE;
		else if (ID_STRING == KEYWORD_CALL_OP)
			return TOK_CALL_OP;
		else if (ID_STRING == KEYWORD_ANY)
			return TOK_ANY;
		else if (ID_STRING == KEYWORD_CONST)
			return TOK_CONST;
		else if (ID_STRING == KEYWORD_EACH)
			return TOK_EACH;
		else if (ID_STRING == KEYWORD_WHERE)
			return TOK_WHERE;
		else if (ID_STRING == KEYWORD_DEF)
			return TOK_DEF;
		else if (ID_STRING == "inf")
		{
			return TOK_NUM;
		}
		else if (ID_STRING == "nan")
		{
			return TOK_NUM;
		}
		else if (BINARY_OPERATORS.find(ID_STRING) != BINARY_OPERATORS.end() || UNARY_OPERATORS.find(ID_STRING) != UNARY_OPERATORS.end())
			return TOK_OPR;

		return TOK_IDF;
	}
	else if (isdigit(last) || (last == '.' && isdigit(peekChar(0, INPUT, INPUT_INDEX))))
	{
		if (last == '0' && isalpha(peekChar(0, INPUT, INPUT_INDEX)))
		{
			char base = nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST);
			std::string numStr = "";
			while (isalnum(peekChar(0, INPUT, INPUT_INDEX)))
			{
				last = nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST);
				numStr += last;
			}
			ID_STRING = "0" + std::string(1, base) + numStr;
			return TOK_NUM;
		}

		std::string numStr = std::string(1, last);
		bool flag = false;
		while (isdigit(peekChar(0, INPUT, INPUT_INDEX)) || (peekChar(0, INPUT, INPUT_INDEX) == '.' && isdigit(peekChar(1, INPUT, INPUT_INDEX))))
		{
			if (flag && peekChar(0, INPUT, INPUT_INDEX) == '.')
				break;
			if (!flag)
				flag = last == '.';
			last = nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST);
			numStr += last;
		}

		ID_STRING = numStr;
		return TOK_NUM;
	}
	else if (last == '#')
	{
		std::string commentStr = "";
		do
		{
			last = nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST);
			commentStr += last;
		} while (last != EOF && last != '\n' && last != '\r');

		ID_STRING = commentStr;
		return '#';
	}
	else if (last == EOF || last == 0)
		return TOK_EOF;
	else if (BINARY_OPERATORS.find(std::string(1, last)) != BINARY_OPERATORS.end())
	{
		std::string opStr = std::string(1, last);
		while (BINARY_OPERATORS.find(opStr + peekChar(0, INPUT, INPUT_INDEX)) != BINARY_OPERATORS.end())
		{
			last = nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST);
			opStr += last;
		}

		ID_STRING = opStr;
		if (ID_STRING == ".")
			return TOK_INNER;
		if (ID_STRING == "..")
			return TOK_UNTILF;
		if (ID_STRING == "<>")
			return TOK_UNTILT;
		if (ID_STRING == "...")
			return TOK_VAR_ARGS;
		if (ID_STRING == "|>")
			return TOK_NO_PARAM_LAMBDA;
		if (ID_STRING == ":")
			return ':';
		return TOK_OPR;
	}
	else if (UNARY_OPERATORS.find(std::string(1, last)) != UNARY_OPERATORS.end())
	{
		std::string opStr = std::string(1, last);
		while (UNARY_OPERATORS.find(opStr + peekChar(0, INPUT, INPUT_INDEX)) != UNARY_OPERATORS.end())
		{
			last = nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST);
			opStr += last;
		}

		ID_STRING = opStr;
		return TOK_OPR;
	}
	else if (last == '`')
	{
		std::string value = "";
		while (true)
		{
			last = nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST);
			if (last == '`')
			{
				ID_STRING = value;
				return TOK_IDF;
			}
			value += last;
		}
	}
	else if (last == '"')
	{
		std::string value = "";
		while (true)
		{
			last = nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST);
			if (last == '"')
			{
				ID_STRING = value;
				return TOK_STR_LIT;
			}
			else if (last == '\\')
			{
				switch (last = nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST))
				{
				case '"':
					last = '"';
					break;
				case '\'':
					last = '\'';
					break;
				case 'n':
					last = '\n';
					break;
				case '?':
					last = '\?';
					break;
				case 'a':
					last = '\a';
					break;
				case 'b':
					last = '\b';
					break;
				case 'f':
					last = '\f';
					break;
				case 'r':
					last = '\r';
					break;
				case 't':
					last = '\t';
					break;
				case 'v':
					last = '\v';
					break;
				case '0':
					last = '\0';
					break;
				case 'x':
				{
					std::string code = std::string({nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST), nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST)});
					char hex = std::stoul(code, nullptr, 16);
					last = hex;
					break;
				}
				case 'u':
				{
					std::string code = std::string({nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST), nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST), nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST), nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST)});
					char hex = std::stoul(code, nullptr, 16);
					last = hex;
					break;
				}
				}
			}
			value += last;
		}
	}
	else if (last == '\'')
	{
		std::string value = "";
		while (true)
		{
			last = nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST);
			if (last == '\'')
			{
				if (value.size() < 1)
					value = std::string(1, 0);
				ID_STRING = value;
				return TOK_NUM;
			}
			else if (last == '\\')
			{
				switch (last = nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST))
				{
				case '"':
					last = '"';
					break;
				case '\'':
					last = '\'';
					break;
				case 'n':
					last = '\n';
					break;
				case '?':
					last = '\?';
					break;
				case 'a':
					last = '\a';
					break;
				case 'b':
					last = '\b';
					break;
				case 'f':
					last = '\f';
					break;
				case 'r':
					last = '\r';
					break;
				case 't':
					last = '\t';
					break;
				case 'v':
					last = '\v';
					break;
				case '0':
					last = '\0';
					break;
				case 'x':
				{
					std::string code = std::string({nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST), nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST)});
					char hex = std::stoul(code, nullptr, 16);
					last = hex;
					break;
				}
				case 'u':
				{
					std::string code = std::string({nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST), nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST), nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST), nextChar(INPUT, INPUT_INDEX, LINE_INDEX, TOKEN_DIST)});
					char hex = std::stoul(code, nullptr, 16);
					last = hex;
					break;
				}
				}
			}
			value += last;
		}
	}

	int ret = last;
	ID_STRING = last;
	return ret;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x98, %rsp
movq %r8, %r15
movq %rcx, %r14
movq %rdx, 0x8(%rsp)
movq %rsi, %r12
movq %rdi, %r13
movq (%rdi), %rbx
movq (%r12), %rax
leaq 0x1(%rax), %rcx
movq %rcx, (%r12)
movsbl (%rbx,%rax), %ebp
cmpl $0xa, %ebp
jne 0x21efd
movq 0x8(%rsp), %rax
incq (%rax)
xorl %eax, %eax
jmp 0x21f03
movq (%r14), %rax
incq %rax
movq %rax, (%r14)
movl %ebp, 0x93b74(%rip)     # 0xb5a80
movl %ebp, %edi
callq 0x10060
testl %eax, %eax
jne 0x21edc
movl %ebp, %edi
callq 0x10650
cmpb $0x5f, %bpl
movq %r15, (%rsp)
je 0x21f8e
testl %eax, %eax
jne 0x21f8e
leal -0x30(%rbp), %eax
cmpl $0xa, %eax
jae 0x22569
cmpb $0x30, %bpl
jne 0x2259e
movq (%r12), %rax
xorl %edi, %edi
cmpq 0x8(%r13), %rax
jae 0x21f52
movsbl (%rbx,%rax), %edi
movq %rax, 0x50(%rsp)
callq 0x10650
testl %eax, %eax
je 0x2259e
movq 0x50(%rsp), %rcx
leaq 0x1(%rcx), %rax
movq %rax, (%r12)
movb (%rbx,%rcx), %r15b
cmpb $0xa, %r15b
jne 0x22957
movq 0x8(%rsp), %rax
incq (%rax)
xorl %eax, %eax
jmp 0x2295d
movq 0x8(%r15), %rdx
movl $0x1, %ecx
movq %r15, %rdi
xorl %esi, %esi
movl %ebp, %r8d
callq 0x10730
movq (%r12), %rbx
cmpq 0x8(%r13), %rbx
jae 0x21fd3
movq (%r13), %rbp
movsbl (%rbp,%rbx), %edi
cmpl $0x5f, %edi
sete %r15b
callq 0x103f0
testl %eax, %eax
setne %al
orb %r15b, %al
movq (%rsp), %r15
jne 0x21fe2
jmp 0x22019
xorl %edi, %edi
callq 0x103f0
testl %eax, %eax
je 0x22019
movq (%r13), %rbp
leaq 0x1(%rbx), %rax
movq %rax, (%r12)
movsbl (%rbp,%rbx), %esi
cmpl $0xa, %esi
jne 0x22000
movq 0x8(%rsp), %rax
incq (%rax)
xorl %eax, %eax
jmp 0x22006
movq (%r14), %rax
incq %rax
movq %rax, (%r14)
movl %esi, 0x93a71(%rip)     # 0xb5a80
movq %r15, %rdi
callq 0x10340
jmp 0x21fa4
leaq 0x614b0(%rip), %rsi     # 0x834d0
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x2268d
leaq 0x6149e(%rip), %rsi     # 0x834d5
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x22697
leaq 0x6148c(%rip), %rsi     # 0x834da
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x2289b
leaq 0x61478(%rip), %rsi     # 0x834dd
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x2294d
leaq 0x61464(%rip), %rsi     # 0x834e0
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x22c6b
leaq 0x61450(%rip), %rsi     # 0x834e3
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x22cb2
leaq 0x61445(%rip), %rsi     # 0x834ef
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x22d54
leaq 0x61426(%rip), %rsi     # 0x834e7
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x22d62
leaq 0x61415(%rip), %rsi     # 0x834ed
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x22d70
leaq 0x61403(%rip), %rsi     # 0x834f2
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x234fa
leaq 0x60f45(%rip), %rsi     # 0x8304b
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x23504
leaq 0x6107f(%rip), %rsi     # 0x8319c
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x2350e
leaq 0x62eaf(%rip), %rsi     # 0x84fe3
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x23518
leaq 0x62758(%rip), %rsi     # 0x848a3
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x23522
leaq 0x65650(%rip), %rsi     # 0x877b2
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x2352c
leaq 0x6568a(%rip), %rsi     # 0x87803
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x23536
leaq 0x61366(%rip), %rsi     # 0x834f6
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x23540
leaq 0x61355(%rip), %rsi     # 0x834fc
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x2354a
leaq 0x61346(%rip), %rsi     # 0x83504
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x23554
leaq 0x655b2(%rip), %rsi     # 0x87787
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x2355e
leaq 0x61323(%rip), %rsi     # 0x8350f
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x23568
leaq 0x61314(%rip), %rsi     # 0x83518
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x23572
leaq 0x61301(%rip), %rsi     # 0x8351d
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x2357c
leaq 0x612f0(%rip), %rsi     # 0x83524
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x23586
leaq 0x610d6(%rip), %rsi     # 0x83322
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x23590
leaq 0x612cc(%rip), %rsi     # 0x83530
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x2359a
leaq 0x612bb(%rip), %rsi     # 0x83537
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x235a4
leaq 0x612aa(%rip), %rsi     # 0x8353e
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x235ae
leaq 0x61297(%rip), %rsi     # 0x83543
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x235b8
leaq 0x61283(%rip), %rsi     # 0x83547
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x235c2
leaq 0x61270(%rip), %rsi     # 0x8354c
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x235cc
leaq 0x6125e(%rip), %rsi     # 0x83552
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x235d6
leaq 0x6124a(%rip), %rsi     # 0x83556
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x235e0
leaq 0x61238(%rip), %rsi     # 0x8355c
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x235ea
leaq 0x61226(%rip), %rsi     # 0x83562
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x235f4
leaq 0x61212(%rip), %rsi     # 0x83566
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x235fe
leaq 0x61202(%rip), %rsi     # 0x8356e
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x23608
leaq 0x611f2(%rip), %rsi     # 0x83576
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x23612
leaq 0x611e1(%rip), %rsi     # 0x8357d
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x2361c
leaq 0x611cd(%rip), %rsi     # 0x83581
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x23626
leaq 0x611bb(%rip), %rsi     # 0x83587
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x23630
leaq 0x611a9(%rip), %rsi     # 0x8358d
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x2363a
leaq 0x61197(%rip), %rsi     # 0x83593
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x23644
leaq 0x61185(%rip), %rsi     # 0x83599
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x2364e
leaq 0x61172(%rip), %rsi     # 0x8359e
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x23658
leaq 0x61160(%rip), %rsi     # 0x835a4
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x23662
leaq 0x61151(%rip), %rsi     # 0x835ad
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x2366c
leaq 0x61142(%rip), %rsi     # 0x835b6
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x23676
leaq 0x6112e(%rip), %rsi     # 0x835ba
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x23680
leaq 0x6111c(%rip), %rsi     # 0x835c0
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x2368a
leaq 0x61109(%rip), %rsi     # 0x835c5
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x23694
leaq 0x610f7(%rip), %rsi     # 0x835cb
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x2369e
leaq 0x610e2(%rip), %rsi     # 0x835ce
movq (%rsp), %rdi
callq 0x10110
testl %eax, %eax
je 0x22683
leaq 0x610ce(%rip), %rsi     # 0x835d2
movq (%rsp), %rbx
movq %rbx, %rdi
callq 0x10110
testl %eax, %eax
movl $0xfffffffd, %edx       # imm = 0xFFFFFFFD
je 0x22d97
leaq 0x934fc(%rip), %rdi     # 0xb5a20
movq %rbx, %rsi
callq 0x241f8
movl $0xfffffffc, %edx       # imm = 0xFFFFFFFC
leaq 0x934f0(%rip), %rcx     # 0xb5a28
cmpq %rcx, %rax
jne 0x22d97
leaq 0x93508(%rip), %rdi     # 0xb5a50
movq %rbx, %rsi
callq 0x241f8
leaq 0x93501(%rip), %rcx     # 0xb5a58
xorl %edx, %edx
cmpq %rcx, %rax
sete %dl
addl %edx, %edx
orl $-0x4, %edx
jmp 0x22d97
cmpb $0x23, %bpl
je 0x226a1
movzbl %bpl, %eax
cmpl $0x2e, %eax
jne 0x22749
movq (%r12), %rax
cmpq 0x8(%r13), %rax
jae 0x2275a
movsbl (%rbx,%rax), %eax
addl $-0x30, %eax
cmpl $0xa, %eax
jae 0x2275a
leaq 0x20(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl %ebp, %edx
callq 0x104c0
xorl %ebp, %ebp
leaq 0x10(%rsp), %rbx
movq (%r12), %rax
movq 0x8(%r13), %rdx
cmpq %rdx, %rax
jae 0x2265a
movq (%r13), %rcx
movsbl (%rcx,%rax), %esi
movl %esi, %edi
addl $-0x30, %edi
cmpl $0xa, %edi
jae 0x225f0
cmpb $0x2e, %sil
sete %dl
testb %dl, %bpl
je 0x22614
jmp 0x2265a
cmpb $0x2e, %sil
jne 0x2265a
leaq 0x1(%rax), %rsi
cmpq %rdx, %rsi
jae 0x2265a
movsbl (%rcx,%rsi), %edx
addl $-0x3a, %edx
cmpl $-0xa, %edx
setb %dl
orb %bpl, %dl
testb $0x1, %dl
jne 0x2265a
cmpl $0x2e, 0x93465(%rip)    # 0xb5a80
sete %dl
leaq 0x1(%rax), %rsi
movq %rsi, (%r12)
movsbl (%rcx,%rax), %esi
cmpl $0xa, %esi
jne 0x2263b
movq 0x8(%rsp), %rax
incq (%rax)
xorl %eax, %eax
jmp 0x22641
movq (%r14), %rax
incq %rax
orb %dl, %bpl
movq %rax, (%r14)
movl %esi, 0x93433(%rip)     # 0xb5a80
movq %rbx, %rdi
callq 0x10340
jmp 0x225bf
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0x10210
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x22683
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x103d0
movl $0xfffffffd, %edx       # imm = 0xFFFFFFFD
jmp 0x22d97
movl $0xfffffff4, %edx       # imm = 0xFFFFFFF4
jmp 0x22d97
movl $0xfffffffa, %edx       # imm = 0xFFFFFFFA
jmp 0x22d97
leaq 0x20(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x60abd(%rip), %rdx     # 0x8316e
leaq 0x10(%rsp), %rdi
movq %rdx, %rsi
callq 0x1e698
leaq 0x10(%rsp), %rbx
movl $0x4801, %ebp           # imm = 0x4801
movq (%r12), %rax
leaq 0x1(%rax), %rcx
movq %rcx, (%r12)
movq (%r13), %rcx
movsbl (%rcx,%rax), %esi
cmpl $0xa, %esi
jne 0x226ed
movq 0x8(%rsp), %rax
incq (%rax)
xorl %eax, %eax
jmp 0x226f3
movq (%r14), %rax
incq %rax
movq %rax, (%r14)
movl %esi, 0x93384(%rip)     # 0xb5a80
movq %rbx, %rdi
callq 0x10340
movl 0x93376(%rip), %eax     # 0xb5a80
incl %eax
cmpl $0xe, %eax
ja 0x226c8
btl %eax, %ebp
jae 0x226c8
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0x10210
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x2273f
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x103d0
movl $0x23, %edx
jmp 0x22d97
leal 0x1(%rbp), %eax
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
cmpl $0x2, %eax
jb 0x22d97
leaq 0x20(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl %ebp, %edx
callq 0x104c0
leaq 0x932a5(%rip), %rdi     # 0xb5a20
leaq 0x10(%rsp), %rsi
callq 0x241f8
movq %rax, %rbx
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rbp
cmpq %rbp, %rdi
je 0x227a4
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x103d0
leaq 0x9327d(%rip), %rax     # 0xb5a28
cmpq %rax, %rbx
je 0x22a4a
movsbl 0x932c5(%rip), %edx     # 0xb5a80
leaq 0x10(%rsp), %rdi
movq %rbp, (%rdi)
movl $0x1, %esi
callq 0x104c0
leaq 0x30(%rsp), %rbp
movq (%r12), %rax
cmpq 0x8(%r13), %rax
jae 0x227e5
movq (%r13), %rcx
movb (%rcx,%rax), %bl
jmp 0x227e7
xorl %ebx, %ebx
leaq 0x40(%rsp), %rax
movq %rax, 0x30(%rsp)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
addq %rsi, %rdx
movq %rbp, %rdi
callq 0x1ded4
movq 0x38(%rsp), %rsi
movsbl %bl, %r8d
movl $0x1, %ecx
movq %rbp, %rdi
xorl %edx, %edx
callq 0x10730
leaq 0x931fb(%rip), %rdi     # 0xb5a20
movq %rbp, %rsi
callq 0x241f8
movq %rax, %rbx
movq 0x30(%rsp), %rdi
leaq 0x40(%rsp), %rax
cmpq %rax, %rdi
je 0x2284c
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x103d0
leaq 0x931d5(%rip), %rax     # 0xb5a28
cmpq %rax, %rbx
je 0x228a5
movq (%r12), %rax
leaq 0x1(%rax), %rcx
movq %rcx, (%r12)
movq (%r13), %rcx
movsbl (%rcx,%rax), %esi
cmpl $0xa, %esi
jne 0x2287d
movq 0x8(%rsp), %rax
incq (%rax)
xorl %eax, %eax
jmp 0x22883
movq (%r14), %rax
incq %rax
movq %rax, (%r14)
movl %esi, 0x931f4(%rip)     # 0xb5a80
leaq 0x10(%rsp), %rdi
callq 0x10340
jmp 0x227d2
movl $0xfffffff6, %edx       # imm = 0xFFFFFFF6
jmp 0x22d97
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0x10210
leaq 0x60a97(%rip), %rsi     # 0x83350
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
leaq 0x20(%rsp), %rbx
je 0x22c75
leaq 0x60a7a(%rip), %rsi     # 0x8334f
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x22cbc
leaq 0x60bde(%rip), %rsi     # 0x834ca
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x22d5b
leaq 0x60a4b(%rip), %rsi     # 0x8334e
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x22d69
leaq 0x60bb3(%rip), %rsi     # 0x834cd
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
je 0x22d77
leaq 0x64e8d(%rip), %rsi     # 0x877be
movq %r15, %rdi
callq 0x10110
testl %eax, %eax
movl $0x3a, %eax
movl $0xfffffffc, %edx       # imm = 0xFFFFFFFC
cmovel %eax, %edx
jmp 0x22d7c
movl $0xfffffff8, %edx       # imm = 0xFFFFFFF8
jmp 0x22d97
movq (%r14), %rax
incq %rax
movq %rax, (%r14)
leaq 0x20(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x607fe(%rip), %rdx     # 0x8316e
leaq 0x10(%rsp), %rdi
movq %rdx, %rsi
callq 0x1e698
leaq 0x10(%rsp), %rbx
movq (%r12), %rbp
movl $0x0, %edi
cmpq 0x8(%r13), %rbp
jae 0x22999
movq (%r13), %rax
movsbl (%rax,%rbp), %edi
callq 0x103f0
testl %eax, %eax
je 0x229dc
leaq 0x1(%rbp), %rax
movq %rax, (%r12)
movq (%r13), %rax
movsbl (%rax,%rbp), %esi
cmpl $0xa, %esi
jne 0x229c3
movq 0x8(%rsp), %rax
incq (%rax)
xorl %eax, %eax
jmp 0x229c9
movq (%r14), %rax
incq %rax
movq %rax, (%r14)
movl %esi, 0x930ae(%rip)     # 0xb5a80
movq %rbx, %rdi
callq 0x10340
jmp 0x22982
leaq 0x20(%rsp), %r13
leaq 0x88(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movsbl %r15b, %edx
leaq 0x78(%rsp), %rdi
movl $0x1, %esi
callq 0x104c0
leaq 0x64ddf(%rip), %rcx     # 0x877e6
leaq 0x78(%rsp), %rdi
movl $0x1, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x10460
leaq 0x68(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x22b89
movq %rdx, 0x58(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x68(%rsp)
jmp 0x22b91
movsbl 0x9302f(%rip), %edx     # 0xb5a80
leaq 0x10(%rsp), %rdi
movq %rbp, (%rdi)
movl $0x1, %esi
callq 0x104c0
leaq 0x92fe6(%rip), %rdi     # 0xb5a50
leaq 0x10(%rsp), %rsi
callq 0x241f8
movq %rax, %rbx
movq 0x10(%rsp), %rdi
cmpq %rbp, %rdi
je 0x22a8e
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x103d0
leaq 0x92fc3(%rip), %rax     # 0xb5a58
cmpq %rax, %rbx
je 0x22cc6
movsbl 0x92fdb(%rip), %edx     # 0xb5a80
leaq 0x10(%rsp), %rdi
movq %rbp, (%rdi)
movl $0x1, %esi
callq 0x104c0
leaq 0x30(%rsp), %rbp
movq (%r12), %rax
cmpq 0x8(%r13), %rax
jae 0x22acf
movq (%r13), %rcx
movb (%rcx,%rax), %bl
jmp 0x22ad1
xorl %ebx, %ebx
leaq 0x40(%rsp), %rax
movq %rax, 0x30(%rsp)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
addq %rsi, %rdx
movq %rbp, %rdi
callq 0x1ded4
movq 0x38(%rsp), %rsi
movsbl %bl, %r8d
movl $0x1, %ecx
movq %rbp, %rdi
xorl %edx, %edx
callq 0x10730
leaq 0x92f41(%rip), %rdi     # 0xb5a50
movq %rbp, %rsi
callq 0x241f8
movq %rax, %rbx
movq 0x30(%rsp), %rdi
leaq 0x40(%rsp), %rax
cmpq %rax, %rdi
je 0x22b36
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x103d0
leaq 0x92f1b(%rip), %rax     # 0xb5a58
cmpq %rax, %rbx
je 0x22c7f
movq (%r12), %rax
leaq 0x1(%rax), %rcx
movq %rcx, (%r12)
movq (%r13), %rcx
movsbl (%rcx,%rax), %esi
cmpl $0xa, %esi
jne 0x22b6b
movq 0x8(%rsp), %rax
incq (%rax)
xorl %eax, %eax
jmp 0x22b71
movq (%r14), %rax
incq %rax
movq %rax, (%r14)
movl %esi, 0x92f06(%rip)     # 0xb5a80
leaq 0x10(%rsp), %rdi
callq 0x10340
jmp 0x22abc
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
leaq 0x58(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
callq 0x10120
leaq 0x40(%rsp), %r14
movq %r14, -0x10(%r14)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x22be3
movq %rdx, 0x30(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x40(%rsp)
jmp 0x22bea
movups (%rcx), %xmm0
movups %xmm0, (%r14)
movq 0x8(%rax), %rdx
leaq 0x30(%rsp), %rbx
movq %rdx, 0x8(%rbx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq (%rsp), %rdi
movq %rbx, %rsi
callq 0x104f0
movq (%rbx), %rdi
cmpq %r14, %rdi
je 0x22c27
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x103d0
movq 0x58(%rsp), %rdi
cmpq %r12, %rdi
je 0x22c3e
movq 0x68(%rsp), %rsi
incq %rsi
callq 0x103d0
movq 0x78(%rsp), %rdi
cmpq %rbp, %rdi
je 0x22c58
movq 0x88(%rsp), %rsi
incq %rsi
callq 0x103d0
movq 0x10(%rsp), %rdi
cmpq %r13, %rdi
jne 0x22676
jmp 0x22683
movl $0xffffffdc, %edx       # imm = 0xFFFFFFDC
jmp 0x22d97
movl $0xffffffd9, %edx       # imm = 0xFFFFFFD9
jmp 0x22d7c
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0x10210
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x22ca8
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x103d0
movl $0xfffffffc, %edx       # imm = 0xFFFFFFFC
jmp 0x22d97
movl $0xfffffff7, %edx       # imm = 0xFFFFFFF7
jmp 0x22d97
movl $0xffffffc8, %edx       # imm = 0xFFFFFFC8
jmp 0x22d7c
movl 0x92db4(%rip), %eax     # 0xb5a80
cmpl $0x22, %eax
je 0x230db
cmpl $0x27, %eax
je 0x22dab
cmpl $0x60, %eax
jne 0x2340e
leaq 0x10(%rsp), %rdi
movq %rbp, (%rdi)
leaq 0x60478(%rip), %rdx     # 0x8316e
movq %rdx, %rsi
callq 0x1e698
leaq 0x10(%rsp), %rbx
movq (%r12), %rax
leaq 0x1(%rax), %rcx
movq %rcx, (%r12)
movq (%r13), %rcx
movsbl (%rcx,%rax), %esi
cmpl $0xa, %esi
jne 0x22d37
movq 0x8(%rsp), %rax
incq (%rax)
movq $0x0, (%r14)
movl $0xa, 0x92d4b(%rip)     # 0xb5a80
jmp 0x22d4a
incq (%r14)
movl %esi, 0x92d40(%rip)     # 0xb5a80
cmpb $0x60, %sil
je 0x2342c
movq %rbx, %rdi
callq 0x10340
jmp 0x22d03
movl $0xfffffffb, %edx       # imm = 0xFFFFFFFB
jmp 0x22d97
movl $0xffffffc9, %edx       # imm = 0xFFFFFFC9
jmp 0x22d7c
movl $0xfffffff5, %edx       # imm = 0xFFFFFFF5
jmp 0x22d97
movl $0xffffffc3, %edx       # imm = 0xFFFFFFC3
jmp 0x22d7c
movl $0xfffffff9, %edx       # imm = 0xFFFFFFF9
jmp 0x22d97
movl $0xffffffc4, %edx       # imm = 0xFFFFFFC4
movq 0x10(%rsp), %rdi
cmpq %rbx, %rdi
je 0x22d97
movl %edx, %ebx
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x103d0
movl %ebx, %edx
movl %edx, %eax
addq $0x98, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x10(%rsp), %rdi
movq %rbp, (%rdi)
leaq 0x603b4(%rip), %rdx     # 0x8316e
movq %rdx, %rsi
callq 0x1e698
leaq 0x10(%rsp), %rbp
leaq 0x6069e(%rip), %rbx     # 0x8346c
movq (%r12), %rcx
leaq 0x1(%rcx), %rax
movq %rax, (%r12)
movq (%r13), %rax
movsbl (%rax,%rcx), %ecx
cmpl $0xa, %ecx
jne 0x22e02
movq 0x8(%rsp), %rax
incq (%rax)
movq $0x0, (%r14)
movl $0xa, 0x92c80(%rip)     # 0xb5a80
jmp 0x22e1c
incq (%r14)
movl %ecx, 0x92c75(%rip)     # 0xb5a80
cmpb $0x5c, %cl
je 0x22e2d
movzbl %cl, %eax
cmpl $0x27, %eax
je 0x2345a
movsbl 0x92c5d(%rip), %esi     # 0xb5a80
movq %rbp, %rdi
callq 0x10340
jmp 0x22dce
movq (%r12), %rcx
leaq 0x1(%rcx), %rdx
movq %rdx, (%r12)
movsbl (%rax,%rcx), %ecx
cmpl $0xa, %ecx
je 0x22de7
incq (%r14)
movl %ecx, 0x92c35(%rip)     # 0xb5a80
movzbl %cl, %ecx
cmpl $0x61, %ecx
jg 0x22e7b
cmpl $0x2f, %ecx
jle 0x22e98
cmpl $0x30, %ecx
je 0x22ee5
cmpl $0x3f, %ecx
je 0x22ef4
cmpl $0x61, %ecx
jne 0x22e1c
movl $0x7, 0x92c07(%rip)     # 0xb5a80
jmp 0x22e1c
leal -0x6e(%rcx), %edx
cmpl $0xa, %edx
ja 0x22eb5
movslq (%rbx,%rdx,4), %rcx
addq %rbx, %rcx
jmpq *%rcx
movl $0xd, 0x92bea(%rip)     # 0xb5a80
jmp 0x22e1c
cmpl $0x22, %ecx
je 0x22ed6
cmpl $0x27, %ecx
jne 0x22e1c
movl $0x27, 0x92bd0(%rip)    # 0xb5a80
jmp 0x22e1c
cmpl $0x62, %ecx
je 0x22f6b
cmpl $0x66, %ecx
jne 0x22e1c
movl $0xc, 0x92baf(%rip)     # 0xb5a80
jmp 0x22e1c
movl $0x22, 0x92ba0(%rip)    # 0xb5a80
jmp 0x22e1c
movl $0x0, 0x92b91(%rip)     # 0xb5a80
jmp 0x22e1c
movl $0x3f, 0x92b82(%rip)    # 0xb5a80
jmp 0x22e1c
movl $0xb, 0x92b73(%rip)     # 0xb5a80
jmp 0x22e1c
movl $0x9, 0x92b64(%rip)     # 0xb5a80
jmp 0x22e1c
movq (%r12), %rcx
leaq 0x1(%rcx), %rdx
movq %rdx, (%r12)
movzbl (%rax,%rcx), %ecx
cmpw $0xa, %cx
jne 0x22f7a
movq 0x8(%rsp), %rdx
incq (%rdx)
xorl %edx, %edx
jmp 0x22f80
movq (%r12), %rcx
leaq 0x1(%rcx), %rdx
movq %rdx, (%r12)
movzbl (%rax,%rcx), %ecx
cmpl $0xa, %ecx
jne 0x22fec
movq 0x8(%rsp), %rdx
incq (%rdx)
xorl %edx, %edx
jmp 0x22ff2
movl $0x8, 0x92b0b(%rip)     # 0xb5a80
jmp 0x22e1c
movq (%r14), %rdx
incq %rdx
movq %rdx, (%r14)
movq (%r12), %rdx
leaq 0x1(%rdx), %rsi
movq %rsi, (%r12)
movzbl (%rax,%rdx), %eax
cmpw $0xa, %ax
jne 0x22fa5
movq 0x8(%rsp), %rdx
incq (%rdx)
xorl %edx, %edx
jmp 0x22fab
movq (%r14), %rdx
incq %rdx
movq %rdx, (%r14)
leaq 0x40(%rsp), %rbx
movq %rbx, 0x30(%rsp)
movzwl %ax, %eax
shll $0x8, %eax
movzwl %cx, %ecx
orl %eax, %ecx
movw %cx, 0x40(%rsp)
movq $0x2, 0x38(%rsp)
movb $0x0, 0x42(%rsp)
leaq 0x30(%rsp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x24143
jmp 0x230af
movq (%r14), %rdx
incq %rdx
movq %rdx, (%r14)
movq (%r12), %rdx
leaq 0x1(%rdx), %rsi
movq %rsi, (%r12)
movzbl (%rax,%rdx), %edx
cmpl $0xa, %edx
jne 0x23016
movq 0x8(%rsp), %rsi
incq (%rsi)
xorl %esi, %esi
jmp 0x2301c
movq (%r14), %rsi
incq %rsi
movq %rsi, (%r14)
movq (%r12), %rsi
leaq 0x1(%rsi), %rdi
movq %rdi, (%r12)
movzbl (%rax,%rsi), %esi
cmpl $0xa, %esi
jne 0x23040
movq 0x8(%rsp), %rdi
incq (%rdi)
xorl %edi, %edi
jmp 0x23046
movq (%r14), %rdi
incq %rdi
movq %rdi, (%r14)
movq (%r12), %rdi
leaq 0x1(%rdi), %r8
movq %r8, (%r12)
movzbl (%rax,%rdi), %eax
cmpl $0xa, %eax
jne 0x2306a
movq 0x8(%rsp), %rdi
incq (%rdi)
xorl %edi, %edi
jmp 0x23070
movq (%r14), %rdi
incq %rdi
movq %rdi, (%r14)
leaq 0x40(%rsp), %rbx
movq %rbx, 0x30(%rsp)
shll $0x18, %eax
shll $0x10, %esi
orl %eax, %esi
shll $0x8, %edx
orl %esi, %edx
orl %ecx, %edx
movl %edx, 0x40(%rsp)
movq $0x4, 0x38(%rsp)
movb $0x0, 0x44(%rsp)
leaq 0x30(%rsp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x24143
movsbl %al, %eax
movl %eax, 0x929c8(%rip)     # 0xb5a80
movq 0x30(%rsp), %rdi
cmpq %rbx, %rdi
je 0x230cf
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x103d0
leaq 0x60396(%rip), %rbx     # 0x8346c
jmp 0x22e1c
leaq 0x10(%rsp), %rdi
movq %rbp, (%rdi)
leaq 0x60084(%rip), %rdx     # 0x8316e
movq %rdx, %rsi
callq 0x1e698
leaq 0x10(%rsp), %rbp
leaq 0x6039a(%rip), %rbx     # 0x83498
movq (%r12), %rcx
leaq 0x1(%rcx), %rax
movq %rax, (%r12)
movq (%r13), %rax
movsbl (%rax,%rcx), %ecx
cmpl $0xa, %ecx
jne 0x23132
movq 0x8(%rsp), %rax
incq (%rax)
movq $0x0, (%r14)
movl $0xa, 0x92950(%rip)     # 0xb5a80
jmp 0x2314c
incq (%r14)
movl %ecx, 0x92945(%rip)     # 0xb5a80
cmpb $0x5c, %cl
je 0x2315d
movzbl %cl, %eax
cmpl $0x22, %eax
je 0x234c7
movsbl 0x9292d(%rip), %esi     # 0xb5a80
movq %rbp, %rdi
callq 0x10340
jmp 0x230fe
movq (%r12), %rcx
leaq 0x1(%rcx), %rdx
movq %rdx, (%r12)
movsbl (%rax,%rcx), %ecx
cmpl $0xa, %ecx
je 0x23117
incq (%r14)
movl %ecx, 0x92905(%rip)     # 0xb5a80
movzbl %cl, %ecx
cmpl $0x61, %ecx
jg 0x231ab
cmpl $0x2f, %ecx
jle 0x231c8
cmpl $0x30, %ecx
je 0x23215
cmpl $0x3f, %ecx
je 0x23224
cmpl $0x61, %ecx
jne 0x2314c
movl $0x7, 0x928d7(%rip)     # 0xb5a80
jmp 0x2314c
leal -0x6e(%rcx), %edx
cmpl $0xa, %edx
ja 0x231e5
movslq (%rbx,%rdx,4), %rcx
addq %rbx, %rcx
jmpq *%rcx
movl $0xd, 0x928ba(%rip)     # 0xb5a80
jmp 0x2314c
cmpl $0x22, %ecx
je 0x23206
cmpl $0x27, %ecx
jne 0x2314c
movl $0x27, 0x928a0(%rip)    # 0xb5a80
jmp 0x2314c
cmpl $0x62, %ecx
je 0x2329b
cmpl $0x66, %ecx
jne 0x2314c
movl $0xc, 0x9287f(%rip)     # 0xb5a80
jmp 0x2314c
movl $0x22, 0x92870(%rip)    # 0xb5a80
jmp 0x2314c
movl $0x0, 0x92861(%rip)     # 0xb5a80
jmp 0x2314c
movl $0x3f, 0x92852(%rip)    # 0xb5a80
jmp 0x2314c
movl $0xb, 0x92843(%rip)     # 0xb5a80
jmp 0x2314c
movl $0x9, 0x92834(%rip)     # 0xb5a80
jmp 0x2314c
movq (%r12), %rcx
leaq 0x1(%rcx), %rdx
movq %rdx, (%r12)
movzbl (%rax,%rcx), %ecx
cmpw $0xa, %cx
jne 0x232aa
movq 0x8(%rsp), %rdx
incq (%rdx)
xorl %edx, %edx
jmp 0x232b0
movq (%r12), %rcx
leaq 0x1(%rcx), %rdx
movq %rdx, (%r12)
movzbl (%rax,%rcx), %ecx
cmpl $0xa, %ecx
jne 0x2331c
movq 0x8(%rsp), %rdx
incq (%rdx)
xorl %edx, %edx
jmp 0x23322
movl $0x8, 0x927db(%rip)     # 0xb5a80
jmp 0x2314c
movq (%r14), %rdx
incq %rdx
leaq 0x40(%rsp), %rbx
movq %rdx, (%r14)
movq (%r12), %rdx
leaq 0x1(%rdx), %rsi
movq %rsi, (%r12)
movzbl (%rax,%rdx), %eax
cmpw $0xa, %ax
jne 0x232da
movq 0x8(%rsp), %rdx
incq (%rdx)
xorl %edx, %edx
jmp 0x232e0
movq (%r14), %rdx
incq %rdx
movq %rdx, (%r14)
movq %rbx, 0x30(%rsp)
movzwl %ax, %eax
shll $0x8, %eax
movzwl %cx, %ecx
orl %eax, %ecx
movw %cx, 0x40(%rsp)
movq $0x2, 0x38(%rsp)
movb $0x0, 0x42(%rsp)
leaq 0x30(%rsp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x24143
jmp 0x233e2
movq (%r14), %rdx
incq %rdx
movq %rdx, (%r14)
movq (%r12), %rdx
leaq 0x1(%rdx), %rsi
movq %rsi, (%r12)
movzbl (%rax,%rdx), %edx
cmpl $0xa, %edx
jne 0x23346
movq 0x8(%rsp), %rsi
incq (%rsi)
xorl %esi, %esi
jmp 0x2334c
movq (%r14), %rsi
incq %rsi
movq %rsi, (%r14)
movq (%r12), %rsi
leaq 0x1(%rsi), %rdi
movq %rdi, (%r12)
movzbl (%rax,%rsi), %esi
cmpl $0xa, %esi
jne 0x23370
movq 0x8(%rsp), %rdi
incq (%rdi)
xorl %edi, %edi
jmp 0x23376
movq (%r14), %rdi
incq %rdi
movq %rdi, (%r14)
movq (%r12), %rdi
leaq 0x1(%rdi), %r8
movq %r8, (%r12)
movzbl (%rax,%rdi), %eax
cmpl $0xa, %eax
jne 0x2339a
movq 0x8(%rsp), %rdi
incq (%rdi)
xorl %edi, %edi
jmp 0x233a0
movq (%r14), %rdi
incq %rdi
leaq 0x40(%rsp), %r8
movq %rdi, (%r14)
movq %r8, 0x30(%rsp)
shll $0x18, %eax
shll $0x10, %esi
orl %eax, %esi
shll $0x8, %edx
orl %esi, %edx
orl %ecx, %edx
movl %edx, 0x40(%rsp)
movq $0x4, 0x38(%rsp)
movb $0x0, 0x44(%rsp)
leaq 0x30(%rsp), %rdi
xorl %esi, %esi
movl $0x10, %edx
movq %r8, %rbx
callq 0x24143
movsbl %al, %eax
movl %eax, 0x92695(%rip)     # 0xb5a80
movq 0x30(%rsp), %rdi
cmpq %rbx, %rdi
je 0x23402
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x103d0
leaq 0x6008f(%rip), %rbx     # 0x83498
jmp 0x2314c
movq 0x8(%r15), %rdx
movsbl %al, %r8d
movl $0x1, %ecx
movq %r15, %rdi
movl %eax, %ebx
xorl %esi, %esi
callq 0x10730
jmp 0x22d95
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0x10210
movq 0x10(%rsp), %rdi
cmpq %rbp, %rdi
je 0x23450
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x103d0
movl $0xfffffffe, %edx       # imm = 0xFFFFFFFE
jmp 0x22d97
cmpq $0x0, 0x18(%rsp)
leaq 0x20(%rsp), %r14
jne 0x234a7
leaq 0x30(%rsp), %rdi
leaq 0x40(%rsp), %r12
movq %r12, (%rdi)
movl $0x1, %esi
xorl %edx, %edx
callq 0x104c0
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rbx
movq %rbx, %rsi
callq 0x104f0
movq (%rbx), %rdi
cmpq %r12, %rdi
je 0x234a7
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x103d0
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0x10210
movq 0x10(%rsp), %rdi
cmpq %r14, %rdi
jne 0x22676
jmp 0x22683
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0x10210
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x234f0
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x103d0
movl $0xffffffee, %edx       # imm = 0xFFFFFFEE
jmp 0x22d97
movl $0xfffffff3, %edx       # imm = 0xFFFFFFF3
jmp 0x22d97
movl $0xfffffff0, %edx       # imm = 0xFFFFFFF0
jmp 0x22d97
movl $0xfffffff1, %edx       # imm = 0xFFFFFFF1
jmp 0x22d97
movl $0xffffffef, %edx       # imm = 0xFFFFFFEF
jmp 0x22d97
movl $0xffffffed, %edx       # imm = 0xFFFFFFED
jmp 0x22d97
movl $0xffffffeb, %edx       # imm = 0xFFFFFFEB
jmp 0x22d97
movl $0xffffffea, %edx       # imm = 0xFFFFFFEA
jmp 0x22d97
movl $0xffffffe9, %edx       # imm = 0xFFFFFFE9
jmp 0x22d97
movl $0xffffffe8, %edx       # imm = 0xFFFFFFE8
jmp 0x22d97
movl $0xffffffdf, %edx       # imm = 0xFFFFFFDF
jmp 0x22d97
movl $0xffffffde, %edx       # imm = 0xFFFFFFDE
jmp 0x22d97
movl $0xffffffdd, %edx       # imm = 0xFFFFFFDD
jmp 0x22d97
movl $0xffffffe0, %edx       # imm = 0xFFFFFFE0
jmp 0x22d97
movl $0xffffffec, %edx       # imm = 0xFFFFFFEC
jmp 0x22d97
movl $0xffffffe7, %edx       # imm = 0xFFFFFFE7
jmp 0x22d97
movl $0xffffffe6, %edx       # imm = 0xFFFFFFE6
jmp 0x22d97
movl $0xffffffe3, %edx       # imm = 0xFFFFFFE3
jmp 0x22d97
movl $0xffffffe2, %edx       # imm = 0xFFFFFFE2
jmp 0x22d97
movl $0xffffffe4, %edx       # imm = 0xFFFFFFE4
jmp 0x22d97
movl $0xffffffe1, %edx       # imm = 0xFFFFFFE1
jmp 0x22d97
movl $0xffffffdb, %edx       # imm = 0xFFFFFFDB
jmp 0x22d97
movl $0xffffffda, %edx       # imm = 0xFFFFFFDA
jmp 0x22d97
movl $0xffffffd8, %edx       # imm = 0xFFFFFFD8
jmp 0x22d97
movl $0xffffffd5, %edx       # imm = 0xFFFFFFD5
jmp 0x22d97
movl $0xffffffd4, %edx       # imm = 0xFFFFFFD4
jmp 0x22d97
movl $0xffffffd3, %edx       # imm = 0xFFFFFFD3
jmp 0x22d97
movl $0xffffffd2, %edx       # imm = 0xFFFFFFD2
jmp 0x22d97
movl $0xffffffd1, %edx       # imm = 0xFFFFFFD1
jmp 0x22d97
movl $0xffffffd0, %edx       # imm = 0xFFFFFFD0
jmp 0x22d97
movl $0xffffffcf, %edx       # imm = 0xFFFFFFCF
jmp 0x22d97
movl $0xffffffce, %edx       # imm = 0xFFFFFFCE
jmp 0x22d97
movl $0xffffffcd, %edx       # imm = 0xFFFFFFCD
jmp 0x22d97
movl $0xffffffcc, %edx       # imm = 0xFFFFFFCC
jmp 0x22d97
movl $0xffffffcb, %edx       # imm = 0xFFFFFFCB
jmp 0x22d97
movl $0xffffffd7, %edx       # imm = 0xFFFFFFD7
jmp 0x22d97
movl $0xffffffc7, %edx       # imm = 0xFFFFFFC7
jmp 0x22d97
movl $0xffffffc6, %edx       # imm = 0xFFFFFFC6
jmp 0x22d97
movl $0xffffffc5, %edx       # imm = 0xFFFFFFC5
jmp 0x22d97
movl $0xffffffe5, %edx       # imm = 0xFFFFFFE5
jmp 0x22d97
movl $0xffffffc2, %edx       # imm = 0xFFFFFFC2
jmp 0x22d97
movl $0xffffffd6, %edx       # imm = 0xFFFFFFD6
jmp 0x22d97
movl $0xffffffc1, %edx       # imm = 0xFFFFFFC1
jmp 0x22d97
movl $0xfffffff2, %edx       # imm = 0xFFFFFFF2
jmp 0x22d97
jmp 0x23767
jmp 0x236b3
jmp 0x236b3
jmp 0x236b3
movq %rax, %r14
movq 0x30(%rsp), %rdi
cmpq %rbx, %rdi
jne 0x23780
jmp 0x2378d
jmp 0x23767
jmp 0x23767
jmp 0x23767
jmp 0x2374e
jmp 0x2374e
jmp 0x2374e
jmp 0x23767
jmp 0x2374e
movq %rax, %r14
movq 0x10(%rsp), %rdi
cmpq %rbp, %rdi
jne 0x2379c
jmp 0x237a9
jmp 0x2374e
jmp 0x23767
jmp 0x2374e
movq %rax, %r14
movq 0x58(%rsp), %rdi
cmpq %r12, %rdi
je 0x23720
movq 0x68(%rsp), %rsi
incq %rsi
callq 0x103d0
jmp 0x23720
movq %rax, %r14
movq 0x78(%rsp), %rdi
cmpq %rbp, %rdi
je 0x237b9
movq 0x88(%rsp), %rsi
incq %rsi
callq 0x103d0
jmp 0x237b9
jmp 0x237b6
jmp 0x2374e
jmp 0x23767
jmp 0x2374e
jmp 0x23767
jmp 0x2374e
jmp 0x23767
movq %rax, %r14
jmp 0x237a9
jmp 0x23767
jmp 0x23767
jmp 0x23767
jmp 0x23767
jmp 0x23767
jmp 0x2376e
jmp 0x2376e
jmp 0x23767
jmp 0x23767
jmp 0x23767
movq %rax, %r14
jmp 0x2378d
jmp 0x2376e
movq %rax, %r14
movq 0x30(%rsp), %rdi
leaq 0x40(%rsp), %rax
cmpq %rax, %rdi
je 0x2378d
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x103d0
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x237a9
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x103d0
movq %r14, %rdi
callq 0x106f0
leaq 0x20(%rsp), %r13
movq %rax, %r14
movq 0x10(%rsp), %rdi
cmpq %r13, %rdi
jne 0x2379c
jmp 0x237a9