// File: /workspace/github_cpp_makefile_star2_O3/reedoolang[P]reedoo/eval.cc
// Function: rdo_eval(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
string rdo_eval(string expr) {

	string result;
	string num_holder = "";
	string temp_result = "";
	string num1 = "";
	string num2 = "";
	int n2 = 0;
	int i;
	int iter;
	int bcount = 0;
	int depth = 0;
	int current_depth = 0;
	int diff = 0;
	int diff2 = 0;
	int current_b = 0;
	int minus_count = 0;
	int minus_start = 0;
	int plus_count = 0;
	int plus_start = 0;
	bool found_end = 0;
	bool got_diff = 0;
	bool to_inverse = 0;
	bool do_calc = 0;

	for (i = 0; i < expr.length();i++) {

		if (!rdo_ws(expr[i])) {
			if (rdo_expr_item_type(expr[i]) == 'n' or rdo_expr_item_type(expr[i]) == 'o' or rdo_expr_item_type(expr[i]) == 'b') {

				if (rdo_expr_item_type(expr[i]) == 'n') {

					num_holder += expr[i];

				} else if (rdo_expr_item_type(expr[i]) == 'o') {

					if (num_holder != "") {

						rdo_num_stack.push_back(num_holder);
						num_holder = "";

					}

					rdo_num_stack.push_back(rdo_opp_to_string(expr[i]));

				} else {

					if (num_holder != "") {

						rdo_num_stack.push_back(num_holder);
						num_holder = "";

					}

					rdo_num_stack.push_back(rdo_opp_to_string(expr[i]));
					bcount++;

				}
			
			} else {
				//cout << expr[i] << endl;
				cout << "Invalid character in expression" << endl;
				exit(0);
			}

			if (i == expr.length()-1 and num_holder != "") {

				rdo_num_stack.push_back(num_holder);
				num_holder = "";

			}

		}

	}

	if (bcount % 2 != 0) {
		cout << "Extra / Missing parens." << endl;
		exit(0);
	} else {
		bcount /= 2;
	}

	for (i = 0; i < rdo_num_stack.size();i++) {
		if (rdo_num_stack[i] == "(") {
			current_b++;
			
		}
		if (current_b == bcount and !found_end) {
			if (i == 1)
				depth = 0;
			else
				depth = i;
			found_end = 1;
		}
		if (rdo_num_stack[i] == ")" and found_end and !got_diff) {
			diff = i - depth;
			got_diff = 1;
		}
	}


	for (i = depth; i < depth+diff; i++) {

		if (rdo_num_stack[i] == "+" or rdo_num_stack[i] == "-" or rdo_num_stack[i] == "*" or rdo_num_stack[i] == "/") {
			if (rdo_num_stack[i-1] == "(" and rdo_num_stack[i] == "-") {
				rdo_count_opp(0);
			} else if (rdo_num_stack[i-1] == "(" and rdo_num_stack[i] == "+") {
				rdo_count_opp(0);
			} else {
				rdo_count_opp(1);
			}
		}
	
	}


	for (i = depth; i <= depth+diff;i++) {

		if (rdo_num_stack[i] == "+" and rdo_num_stack[i+1] == "-") {

			rdo_num_stack.erase(rdo_num_stack.begin()+i);
			diff -= 1;
		}
		if (rdo_num_stack[i] == "-" and rdo_num_stack[i+1] == "+") {

			rdo_num_stack.erase(rdo_num_stack.begin()+i+1);
			diff -= 1;
		}
	}
		
	for (i = depth; i <= depth+diff;i++) {
		if (rdo_num_stack[i] == "-") {

			minus_count++;

			if (minus_start == 0) {
				minus_start = i;
			}
			
		}
		if (rdo_num_stack[i] != "-") {

			if (minus_count != 0 and minus_count % 2 == 0) {
				
				for (iter = minus_start;iter < minus_start+minus_count;iter++) {
					rdo_num_stack[iter] = "";
				}
				if (rdo_num_stack[minus_start+minus_count] != "" and rdo_num_stack[minus_start+minus_count][0] != '+') {
				rdo_num_stack[minus_start+minus_count] = "+" + rdo_num_stack[minus_start+minus_count];
				}
				minus_start = 0;
				minus_count = 0;

			} else if (minus_count != 0 and minus_count % 2 != 0) {
				
				for (iter = minus_start;iter < minus_start+minus_count;iter++) {
					rdo_num_stack[iter] = "";
				}
				rdo_num_stack[minus_start+minus_count] = "-" + rdo_num_stack[minus_start+minus_count];
				minus_start = 0;
				minus_count = 0;

			}
		}
	}

	for (i = depth; i <= depth+diff;i++) {
		if (rdo_num_stack[i] == "+") {

			plus_count++;

			if (plus_start == 0) {
				plus_start = i;
			}
			
		}
		if (rdo_num_stack[i] != "+") {
			for (iter = plus_start;iter < plus_start+plus_count;iter++) {
					rdo_num_stack[iter] = "";
				}
				if (rdo_num_stack[plus_start+plus_count] != "" and rdo_num_stack[plus_start+plus_count][0] != '(') {
				rdo_num_stack[plus_start+plus_count] = "+" + rdo_num_stack[plus_start+plus_count];
				}

				plus_start = 0;
				plus_count = 0;
		}
	}

	for (i = depth+diff;i >= depth;i--) {
		if (i - 1 >= depth) {
			if (rdo_num_stack[i-1] == "(" and rdo_num_stack[i] != "(" and rdo_num_stack[i][0] != '+' and rdo_num_stack[i][0] != '-'  and rdo_num_stack[i] != "") {
				rdo_num_stack[i] = "+" + rdo_num_stack[i];
			}
			if (rdo_num_stack[i] == "/" and rdo_num_stack[i-1][0] != '+' and rdo_num_stack[i-1][0] != '-') {
				rdo_num_stack[i-1] = "+" + rdo_num_stack[i-1];
			}
			if (rdo_num_stack[i] == "/" and rdo_num_stack[i+1][0] != '+' and rdo_num_stack[i+1][0] != '-') {
				rdo_num_stack[i+1] = "+" + rdo_num_stack[i+1];
			}
			if (rdo_num_stack[i] == "*" and rdo_num_stack[i-1][0] != '+' and rdo_num_stack[i-1][0] != '-') {
				rdo_num_stack[i-1] = "+" + rdo_num_stack[i-1];
			}
			if (rdo_num_stack[i] == "*" and rdo_num_stack[i+1][0] != '+' and rdo_num_stack[i+1][0] != '-') {
				rdo_num_stack[i+1] = "+" + rdo_num_stack[i+1];
			}
		}
		if (rdo_num_stack[i] == "") {
			rdo_num_stack.erase(rdo_num_stack.begin()+i);
			diff-=1;
		}
	}

	for (i = 0; i < rdo_num_stack.size();i++) {
		//cout << rdo_num_stack[i] << endl;
	}

	div_loop:for (i = depth+diff;i >= depth;i--) {
    		
    		if (rdo_num_stack[i] == "/") {
    			result = to_string(stof(rdo_num_stack[i-1]) / stof(rdo_num_stack[i+1]));
    			if (result[0] != '+' and result[0] != '-') {
					result = "+" + result;
				}
    			rdo_num_stack[i-1] = result;
    			rdo_num_stack.erase(rdo_num_stack.begin()+i);
    			rdo_num_stack.erase(rdo_num_stack.begin()+i);
    			//cout << result << endl;
    			diff -= 2;

    			goto div_loop;
    		}
    }

	mul_loop:for (i = depth+diff;i >= depth;i--) {
    		
    		if (rdo_num_stack[i] == "*") {
    			result = to_string(stof(rdo_num_stack[i-1]) * stof(rdo_num_stack[i+1]));
    			if (result[0] != '+' and result[0] != '-') {
					result = "+" + result;
				}
    			rdo_num_stack[i-1] = result;
    			rdo_num_stack.erase(rdo_num_stack.begin()+i);
    			rdo_num_stack.erase(rdo_num_stack.begin()+i);
    			//cout << result << endl;
    			diff -= 2;

    			goto mul_loop;
    		}

    		
    }
  

	minus_loop:for (i = depth; i <= depth+diff;i++) {
		
		if (rdo_num_stack[i][0] == '-' and rdo_num_stack[i-1] != "(") {
			
			result = to_string(stof(rdo_num_stack[i]) + stof(rdo_num_stack[i-1]));
			if (result[0] != '+' and result[0] != '-') {
				result = "+" + result;
			}
			rdo_num_stack[i-1] = result;
			rdo_num_stack.erase(rdo_num_stack.begin()+i);
			diff-=1;
			
			goto minus_loop;

		}

	} 

	plus_loop:for (i = depth; i <= depth+diff;i++) {
		
		if (rdo_num_stack[i][0] == '+' and rdo_num_stack[i-1] != "(") {
			
			result = to_string(stof(rdo_num_stack[i]) + stof(rdo_num_stack[i-1]));
			if (result[0] != '+' and result[0] != '-') {
				result = "+" + result;
			}
			rdo_num_stack[i-1] = result;

			rdo_num_stack.erase(rdo_num_stack.begin()+i);
			diff-=2;
			goto plus_loop;

		}

	}
 
	opp_count = 0;

	for (i = 0; i < rdo_num_stack.size();i++) {
		
		if (rdo_num_stack[i] == "+" or rdo_num_stack[i] == "-" or rdo_num_stack[i] == "*" or rdo_num_stack[i] == "/") {

			opp_count++;

		}

	}

	if (opp_count > 0) {

		for (i = depth; i < depth+diff;i++) {
			if (rdo_num_stack[i] == "(" and rdo_num_stack[i+2] == ")") {
				rdo_num_stack.erase(rdo_num_stack.begin()+i);
				rdo_num_stack.erase(rdo_num_stack.begin()+i+1);

			}
		}

	}

	expr = "";

	for (i = 0; i < rdo_num_stack.size();i++) {
		expr += rdo_num_stack[i];
		//cout << rdo_num_stack[i];
	}

	expr = "";
	bcount = 0;
	depth = 0;
	for (i = 0; i < rdo_num_stack.size();i++) {
		expr += rdo_num_stack[i];
		if (rdo_num_stack[i] == "(") {
			bcount++;
			depth = i;
		}
	}
    
    result = rdo_num_stack[depth+1];
	//cout << result << endl;

	rdo_num_stack.clear();
	//cout << opp_count << endl;
	if (opp_count > 0)
		//return "";
		//return expr;
		return rdo_eval(expr);
	else
		expr = to_string(stoi(result));
		//return "";
		return expr;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x138, %rsp            # imm = 0x138
movq %rsi, 0x50(%rsp)
movq %rdi, %rbx
leaq 0x80(%rsp), %rax
movq %rax, -0x10(%rax)
movq $0x0, -0x8(%rax)
movb $0x0, (%rax)
leaq 0xa8(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x33cf(%rip), %rdx      # 0xe179
leaq 0x98(%rsp), %rdi
movq %rdx, %rsi
callq 0x326a
leaq 0x108(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x33ac(%rip), %rdx      # 0xe179
leaq 0xf8(%rsp), %rdi
movq %rdx, %rsi
callq 0x326a
leaq 0xe8(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x3389(%rip), %rdx      # 0xe179
leaq 0xd8(%rsp), %rdi
movq %rdx, %rsi
callq 0x326a
leaq 0xc8(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x3366(%rip), %rdx      # 0xe179
leaq 0xb8(%rsp), %rdi
movq %rdx, %rsi
callq 0x326a
movq $0x0, (%rsp)
movq 0x50(%rsp), %rax
cmpq $0x0, 0x8(%rax)
movl $0x0, 0x8(%rsp)
movq %rbx, 0x90(%rsp)
je 0xb0b8
xorl %r14d, %r14d
leaq 0x3324(%rip), %rbx      # 0xe179
leaq 0x98(%rsp), %r15
leaq 0x671c(%rip), %r13      # 0x11580
movabsq $0x3ff400000000000, %r12 # imm = 0x3FF400000000000
movl $0x0, 0x8(%rsp)
movq 0x50(%rsp), %rax
movq (%rax), %rax
movzbl (%rax,%r14), %eax
cmpq $0x39, %rax
ja 0xb06e
movabsq $0x3ffef0000000000, %rcx # imm = 0x3FFEF0000000000
btq %rax, %rcx
jae 0xb068
movl %eax, %ecx
cmpl $0x39, %eax
ja 0xaf6f
btq %rcx, %r12
jae 0xaec2
movsbl %al, %esi
movq %r15, %rdi
callq 0x2190
jmp 0xb011
movabsq $0xaf0000000000, %rdx   # imm = 0xAF0000000000
btq %rcx, %rdx
jae 0xaf6f
cmpl $0x2f, %eax
ja 0xaf9a
movabsq $0xac0000000000, %rax   # imm = 0xAC0000000000
btq %rcx, %rax
jae 0xaf9a
movq %r15, %rdi
movq %rbx, %rsi
callq 0x20b0
testl %eax, %eax
je 0xaf25
movq %r13, %rdi
movq %r15, %rsi
callq 0x68a8
movq 0xa0(%rsp), %rdx
movq %r15, %rdi
xorl %esi, %esi
movq %rbx, %rcx
xorl %r8d, %r8d
callq 0x22d0
movq 0x50(%rsp), %rax
movq (%rax), %rax
movsbl (%rax,%r14), %esi
leaq 0x18(%rsp), %rbp
movq %rbp, %rdi
callq 0xac5a
movq %r13, %rdi
movq %rbp, %rsi
callq 0x6b24
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xb011
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
jmp 0xb011
cmpl $0x2f, %eax
ja 0xaf88
movabsq $0xac0000000000, %rdx   # imm = 0xAC0000000000
btq %rcx, %rdx
jb 0xaef3
cmpl $0x6f, %eax
je 0xaef3
cmpl $0x6e, %eax
je 0xaeb2
movq %r15, %rdi
movq %rbx, %rsi
callq 0x20b0
testl %eax, %eax
je 0xafcc
movq %r13, %rdi
movq %r15, %rsi
callq 0x68a8
movq 0xa0(%rsp), %rdx
movq %r15, %rdi
xorl %esi, %esi
movq %rbx, %rcx
xorl %r8d, %r8d
callq 0x22d0
movq 0x50(%rsp), %rax
movq (%rax), %rax
movsbl (%rax,%r14), %esi
leaq 0x18(%rsp), %rbp
movq %rbp, %rdi
callq 0xac5a
movq %r13, %rdi
movq %rbp, %rsi
callq 0x6b24
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xb00d
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
incl 0x8(%rsp)
movq 0x50(%rsp), %rax
movq 0x8(%rax), %rax
decq %rax
cmpq %rax, %r14
jne 0xb054
movq %r15, %rdi
movq %rbx, %rsi
callq 0x20b0
testl %eax, %eax
je 0xb054
movq %r13, %rdi
movq %r15, %rsi
callq 0x68a8
movq 0xa0(%rsp), %rdx
movq %r15, %rdi
xorl %esi, %esi
movq %rbx, %rcx
xorl %r8d, %r8d
callq 0x22d0
incq %r14
movq 0x50(%rsp), %rax
cmpq %r14, 0x8(%rax)
ja 0xae7b
jmp 0xb0ad
cmpq $0x20, %rax
je 0xb054
leal -0x62(%rax), %ecx
cmpl $0xd, %ecx
ja 0xb084
movl $0x3001, %edx           # imm = 0x3001
btl %ecx, %edx
jb 0xaea1
movq 0x5f4d(%rip), %rdi      # 0x10fd8
leaq 0x3357(%rip), %rsi      # 0xe3e9
movl $0x1f, %edx
callq 0x2230
movq 0x5f35(%rip), %rdi      # 0x10fd8
callq 0x2100
jmp 0xc816
testb $0x1, 0x8(%rsp)
jne 0xc7f2
movq 0x64c1(%rip), %rdi      # 0x11580
movl $0x0, %r14d
cmpq %rdi, 0x64bc(%rip)      # 0x11588
je 0xb2ab
sarl 0x8(%rsp)
leaq 0x2fab(%rip), %r15      # 0xe088
xorl %r12d, %r12d
xorl %r13d, %r13d
xorl %ebx, %ebx
movq $0x0, (%rsp)
xorl %r14d, %r14d
xorl %ebp, %ebp
movq $0x0, 0x48(%rsp)
addq %r12, %rdi
leaq 0x306d(%rip), %rsi      # 0xe172
callq 0x20b0
cmpl $0x1, %eax
adcl $0x0, %r14d
cmpl 0x8(%rsp), %r14d
jne 0xb130
testb $0x1, %bpl
jne 0xb130
cmpq $0x1, %r13
movl %r13d, %ebx
movl $0x0, %ecx
cmovel %ecx, %ebx
movb $0x1, %bpl
movq 0x6449(%rip), %rdi      # 0x11580
addq %r12, %rdi
movq %r15, %rsi
callq 0x20b0
testl %eax, %eax
jne 0xb168
testb $0x1, %bpl
je 0xb168
movl %r13d, %eax
subl %ebx, %eax
testb $0x1, 0x48(%rsp)
movq (%rsp), %rcx
cmovel %eax, %ecx
movq %rcx, (%rsp)
movb $0x1, %al
movq %rax, 0x48(%rsp)
incq %r13
movq 0x6416(%rip), %rax      # 0x11588
movq 0x6407(%rip), %rdi      # 0x11580
subq %rdi, %rax
sarq $0x5, %rax
addq $0x20, %r12
cmpq %r13, %rax
ja 0xb0fb
movq %rbx, %r14
movq (%rsp), %rax
leal (%rbx,%rax), %ecx
movq %rcx, 0x40(%rsp)
testl %eax, %eax
jle 0xb2a1
movslq %r14d, %r12
movslq 0x40(%rsp), %r13
movq %r12, %rbp
shlq $0x5, %rbp
leaq 0x2f61(%rip), %rbx      # 0xe11b
leaq 0x2fb1(%rip), %r15      # 0xe172
movq 0x63b8(%rip), %rdi      # 0x11580
addq %rbp, %rdi
movq %rbx, %rsi
callq 0x20b0
testl %eax, %eax
je 0xb225
movq 0x63a2(%rip), %rdi      # 0x11580
addq %rbp, %rdi
leaq 0x2f35(%rip), %rsi      # 0xe11d
callq 0x20b0
testl %eax, %eax
je 0xb225
movq 0x6388(%rip), %rdi      # 0x11580
addq %rbp, %rdi
leaq 0x2f1f(%rip), %rsi      # 0xe121
callq 0x20b0
testl %eax, %eax
je 0xb225
movq 0x636e(%rip), %rdi      # 0x11580
addq %rbp, %rdi
leaq 0x2f03(%rip), %rsi      # 0xe11f
callq 0x20b0
testl %eax, %eax
jne 0xb291
movq 0x6354(%rip), %rax      # 0x11580
leaq (%rax,%rbp), %rdi
addq $-0x20, %rdi
movq %r15, %rsi
callq 0x20b0
testl %eax, %eax
jne 0xb25a
movq 0x6339(%rip), %rdi      # 0x11580
addq %rbp, %rdi
leaq 0x2ecc(%rip), %rsi      # 0xe11d
callq 0x20b0
testl %eax, %eax
je 0xb291
movq 0x631f(%rip), %rax      # 0x11580
leaq (%rax,%rbp), %rdi
addq $-0x20, %rdi
movq %r15, %rsi
callq 0x20b0
testl %eax, %eax
jne 0xb28b
movq 0x6304(%rip), %rdi      # 0x11580
addq %rbp, %rdi
movq %rbx, %rsi
callq 0x20b0
testl %eax, %eax
je 0xb291
incl 0x6307(%rip)            # 0x11598
incq %r12
addq $0x20, %rbp
cmpq %r13, %r12
jl 0xb1c1
cmpl $0x0, (%rsp)
js 0xb38a
movslq %r14d, %r13
leaq -0x1(%r13), %rbp
shlq $0x5, %r13
leaq 0x2e5e(%rip), %rbx      # 0xe11b
leaq 0x2e59(%rip), %r15      # 0xe11d
leaq 0x62b5(%rip), %r12      # 0x11580
movq 0x62ae(%rip), %rdi      # 0x11580
addq %r13, %rdi
movq %rbx, %rsi
callq 0x20b0
testl %eax, %eax
jne 0xb318
movq 0x6298(%rip), %rax      # 0x11580
leaq (%rax,%r13), %rdi
addq $0x20, %rdi
movq %r15, %rsi
callq 0x20b0
testl %eax, %eax
jne 0xb318
movq 0x627d(%rip), %rsi      # 0x11580
addq %r13, %rsi
movq %r12, %rdi
callq 0xcbfe
movq (%rsp), %rax
decl %eax
movq %rax, (%rsp)
movq 0x6261(%rip), %rdi      # 0x11580
addq %r13, %rdi
movq %r15, %rsi
callq 0x20b0
testl %eax, %eax
jne 0xb36a
movq 0x624b(%rip), %rax      # 0x11580
leaq (%rax,%r13), %rdi
addq $0x20, %rdi
movq %rbx, %rsi
callq 0x20b0
testl %eax, %eax
jne 0xb36a
movq 0x6230(%rip), %rax      # 0x11580
leaq (%rax,%r13), %rsi
addq $0x20, %rsi
movq %r12, %rdi
callq 0xcbfe
movq (%rsp), %rax
decl %eax
movq %rax, (%rsp)
movq (%rsp), %rax
leal (%rax,%r14), %ecx
movslq %ecx, %rax
incq %rbp
addq $0x20, %r13
cmpq %rax, %rbp
jl 0xb2cb
movq %rcx, 0x40(%rsp)
movq 0x40(%rsp), %rax
cmpl %eax, %r14d
movq %r14, 0x8(%rsp)
jg 0xb6e6
movslq %r14d, %r12
incl %eax
movl %eax, 0x48(%rsp)
xorl %ebx, %ebx
xorl %r13d, %r13d
movl %r13d, %r14d
movq %r12, %rbp
shlq $0x5, %rbp
movq 0x61c4(%rip), %rdi      # 0x11580
addq %rbp, %rdi
leaq 0x2d57(%rip), %r15      # 0xe11d
movq %r15, %rsi
callq 0x20b0
movl %eax, %ecx
orl %r13d, %ecx
movl %r12d, %r13d
cmovnel %r14d, %r13d
cmpl $0x1, %eax
adcl $0x0, %ebx
addq 0x6199(%rip), %rbp      # 0x11580
movq %rbp, %rdi
movq %r15, %rsi
callq 0x20b0
testl %eax, %eax
je 0xb453
testl %ebx, %ebx
sete %al
movl %ebx, %ecx
orb %al, %cl
testb $0x1, %cl
jne 0xb45d
leal (%rbx,%r13), %eax
testl %ebx, %ebx
movq 0x8(%rsp), %r14
leaq 0x2d63(%rip), %r15      # 0xe179
jle 0xb4b8
movslq %r13d, %rbx
movslq %eax, %rbp
movq %rbx, %r13
shlq $0x5, %r13
movq 0x6150(%rip), %rdi      # 0x11580
movq 0x8(%rdi,%r13), %rdx
addq %r13, %rdi
xorl %esi, %esi
movq %r15, %rcx
xorl %r8d, %r8d
callq 0x22d0
incq %rbx
addq $0x20, %r13
cmpq %rbp, %rbx
jl 0xb429
jmp 0xb4bb
movq 0x8(%rsp), %r14
jmp 0xb58f
testb $0x1, %bl
movq 0x8(%rsp), %r14
leaq 0x2d0d(%rip), %r15      # 0xe179
je 0xb58f
leal (%rbx,%r13), %eax
testl %ebx, %ebx
jle 0xb537
movslq %r13d, %rbx
movslq %eax, %rbp
movq %rbx, %r13
shlq $0x5, %r13
movq 0x60ee(%rip), %rdi      # 0x11580
movq 0x8(%rdi,%r13), %rdx
addq %r13, %rdi
xorl %esi, %esi
movq %r15, %rcx
xorl %r8d, %r8d
callq 0x22d0
incq %rbx
addq $0x20, %r13
cmpq %rbp, %rbx
jl 0xb48b
jmp 0xb53a
movslq %eax, %rbp
shlq $0x5, %rbp
movq 0x60ba(%rip), %rdi      # 0x11580
addq %rbp, %rdi
movq %r15, %rsi
callq 0x20b0
xorl %r13d, %r13d
testl %eax, %eax
je 0xb58d
movq 0x609d(%rip), %rdx      # 0x11580
movq (%rdx,%rbp), %rax
cmpb $0x2b, (%rax)
je 0xb58d
addq %rbp, %rdx
leaq 0x18(%rsp), %rbx
movq %rbx, %rdi
leaq 0x2c19(%rip), %rsi      # 0xe11b
callq 0x68e5
addq 0x6072(%rip), %rbp      # 0x11580
movq %rbp, %rdi
movq %rbx, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xb58d
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
jmp 0xb58d
movslq %eax, %rbp
shlq $0x5, %rbp
movq 0x603b(%rip), %rdx      # 0x11580
addq %rbp, %rdx
leaq 0x18(%rsp), %rbx
movq %rbx, %rdi
leaq 0x2bc6(%rip), %rsi      # 0xe11d
callq 0x68e5
addq 0x601d(%rip), %rbp      # 0x11580
movq %rbp, %rdi
movq %rbx, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xb58a
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
xorl %r13d, %r13d
xorl %ebx, %ebx
incq %r12
cmpl %r12d, 0x48(%rsp)
jne 0xb3ab
cmpl 0x40(%rsp), %r14d
jg 0xb6e6
movslq %r14d, %rbp
xorl %ebx, %ebx
xorl %r12d, %r12d
movl %r12d, %r14d
movq %rbp, %r13
shlq $0x5, %r13
movq 0x5fbf(%rip), %rdi      # 0x11580
addq %r13, %rdi
leaq 0x2b50(%rip), %r15      # 0xe11b
movq %r15, %rsi
callq 0x20b0
movl %eax, %ecx
orl %r12d, %ecx
movl %ebp, %r12d
cmovnel %r14d, %r12d
cmpl $0x1, %eax
adcl $0x0, %ebx
addq 0x5f94(%rip), %r13      # 0x11580
movq %r13, %rdi
movq %r15, %rsi
callq 0x20b0
testl %eax, %eax
je 0xb646
leal (%r12,%rbx), %eax
testl %ebx, %ebx
movq 0x8(%rsp), %r14
jle 0xb64d
movslq %r12d, %rbx
movslq %eax, %r13
movq %rbx, %r12
shlq $0x5, %r12
leaq 0x2b5d(%rip), %r15      # 0xe179
movq 0x5f5d(%rip), %rdi      # 0x11580
movq 0x8(%rdi,%r12), %rdx
addq %r12, %rdi
xorl %esi, %esi
movq %r15, %rcx
xorl %r8d, %r8d
callq 0x22d0
incq %rbx
addq $0x20, %r12
cmpq %r13, %rbx
jl 0xb61c
jmp 0xb657
movq 0x8(%rsp), %r14
jmp 0xb6cb
movslq %eax, %r13
leaq 0x2b22(%rip), %r15      # 0xe179
shlq $0x5, %r13
movq 0x5f1e(%rip), %rdi      # 0x11580
addq %r13, %rdi
movq %r15, %rsi
callq 0x20b0
xorl %r12d, %r12d
testl %eax, %eax
leaq 0x18(%rsp), %rbx
je 0xb6c9
movq 0x5f00(%rip), %rdx      # 0x11580
movq (%rdx,%r13), %rax
cmpb $0x28, (%rax)
je 0xb6c9
addq %r13, %rdx
movq %rbx, %rdi
leaq 0x2a85(%rip), %rsi      # 0xe11b
callq 0x68e5
addq 0x5ede(%rip), %r13      # 0x11580
movq %r13, %rdi
movq %rbx, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xb6c9
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
xorl %ebx, %ebx
incq %rbp
cmpl %ebp, 0x48(%rsp)
jne 0xb5b0
movq 0x40(%rsp), %rax
cmpl %eax, %r14d
jle 0xc304
movq (%rsp), %rcx
testl %ecx, %ecx
js 0xbb4d
movq 0x8(%rsp), %rax
addl %eax, %ecx
movslq %eax, %r13
leaq 0x2a1c(%rip), %rbx      # 0xe11f
movq %r13, 0x48(%rsp)
movl %ecx, 0x40(%rsp)
movslq %ecx, %r12
movq %r12, %r14
shlq $0x20, %r14
movq %r12, %r15
shlq $0x5, %r15
incq %r12
movabsq $-0x100000000, %rbp     # imm = 0xFFFFFFFF00000000
movq 0x5e4f(%rip), %rdi      # 0x11580
addq %r15, %rdi
movq %rbx, %rsi
callq 0x20b0
testl %eax, %eax
je 0xb754
addq %rbp, %r14
addq $-0x20, %r15
decq %r12
cmpq %r13, %r12
jg 0xb72a
jmp 0xb91f
leaq (%r14,%rbp), %r13
movq 0x5e21(%rip), %rax      # 0x11580
movq %r13, %rcx
sarq $0x1b, %rcx
movq (%rax,%rcx), %r12
callq 0x2050
movq %rax, %rbp
movl (%rax), %eax
movl %eax, 0x58(%rsp)
movl $0x0, (%rbp)
movq %r12, %rdi
leaq 0x38(%rsp), %rsi
callq 0x2270
cmpq %r12, 0x38(%rsp)
je 0xc81d
movl (%rbp), %eax
testl %eax, %eax
movss %xmm0, 0x60(%rsp)
je 0xb7b2
movl %eax, 0x14(%rsp)
cmpl $0x22, %eax
jne 0xb7bd
jmp 0xc865
movl 0x58(%rsp), %eax
movl %eax, (%rbp)
movl %eax, 0x14(%rsp)
movq 0x5dbc(%rip), %rax      # 0x11580
sarq $0x1b, %r14
movq 0x20(%rax,%r14), %r12
movl $0x0, (%rbp)
movq %r12, %rdi
leaq 0x38(%rsp), %rsi
callq 0x2270
cmpq %r12, 0x38(%rsp)
je 0xc829
movl (%rbp), %eax
testl %eax, %eax
movq 0x8(%rsp), %r14
leaq 0x18(%rsp), %r12
je 0xb807
cmpl $0x22, %eax
jne 0xb80e
jmp 0xc871
movl 0x14(%rsp), %eax
movl %eax, (%rbp)
movss 0x60(%rsp), %xmm1
divss %xmm0, %xmm1
xorps %xmm0, %xmm0
cvtss2sd %xmm1, %xmm0
movl $0x3a, %edx
movq %r12, %rdi
movq 0x579a(%rip), %rsi      # 0x10fc8
leaq 0x2bec(%rip), %rcx      # 0xe421
movb $0x1, %al
callq 0xcb4c
leaq 0x70(%rsp), %rbp
movq %rbp, %rdi
movq %r12, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xb868
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x70(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x2b, %eax
je 0xb8b3
cmpl $0x2d, %eax
je 0xb8b3
movq %r12, %rdi
leaq 0x2897(%rip), %rsi      # 0xe11b
movq %rbp, %rdx
callq 0x68e5
movq %rbp, %rdi
movq %r12, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xb8b3
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
sarq $0x20, %r13
shlq $0x5, %r13
addq 0x5cbe(%rip), %r13      # 0x11580
movq %r13, %rdi
movq %rbp, %rsi
callq 0x2120
movq 0x5cac(%rip), %rsi      # 0x11580
addq %r15, %rsi
leaq 0x5ca2(%rip), %r12      # 0x11580
movq %r12, %rdi
callq 0xcbfe
movq 0x48(%rsp), %r13
addq 0x5c8e(%rip), %r15      # 0x11580
movq %r12, %rdi
movq %r15, %rsi
callq 0xcbfe
movq (%rsp), %rax
leal -0x2(%rax), %ebp
movl 0x40(%rsp), %ecx
addl $-0x2, %ecx
cmpl $0x2, %eax
movl %ebp, %eax
movq %rax, (%rsp)
jge 0xb708
jmp 0xbb54
movq (%rsp), %rcx
testl %ecx, %ecx
js 0xbb4d
movq 0x8(%rsp), %rax
addl %eax, %ecx
leaq 0x27e8(%rip), %rbx      # 0xe121
movl %ecx, 0x40(%rsp)
movslq %ecx, %r12
movq %r12, %r14
shlq $0x20, %r14
movq %r12, %r15
shlq $0x5, %r15
incq %r12
movabsq $-0x100000000, %rbp     # imm = 0xFFFFFFFF00000000
movq 0x5c1e(%rip), %rdi      # 0x11580
addq %r15, %rdi
movq %rbx, %rsi
callq 0x20b0
testl %eax, %eax
je 0xb985
addq %rbp, %r14
addq $-0x20, %r15
decq %r12
cmpq %r13, %r12
jg 0xb95b
jmp 0xbedb
leaq (%r14,%rbp), %r13
movq 0x5bf0(%rip), %rax      # 0x11580
movq %r13, %rcx
sarq $0x1b, %rcx
movq (%rax,%rcx), %r12
callq 0x2050
movq %rax, %rbp
movl (%rax), %eax
movl %eax, 0x58(%rsp)
movl $0x0, (%rbp)
movq %r12, %rdi
leaq 0x38(%rsp), %rsi
callq 0x2270
cmpq %r12, 0x38(%rsp)
je 0xc835
movl (%rbp), %eax
testl %eax, %eax
movss %xmm0, 0x60(%rsp)
je 0xb9e3
movl %eax, 0x14(%rsp)
cmpl $0x22, %eax
jne 0xb9ee
jmp 0xc87d
movl 0x58(%rsp), %eax
movl %eax, (%rbp)
movl %eax, 0x14(%rsp)
movq 0x5b8b(%rip), %rax      # 0x11580
sarq $0x1b, %r14
movq 0x20(%rax,%r14), %r12
movl $0x0, (%rbp)
movq %r12, %rdi
leaq 0x38(%rsp), %rsi
callq 0x2270
cmpq %r12, 0x38(%rsp)
je 0xc841
movl (%rbp), %eax
testl %eax, %eax
movq 0x8(%rsp), %r14
leaq 0x18(%rsp), %r12
je 0xba38
cmpl $0x22, %eax
jne 0xba3f
jmp 0xc889
movl 0x14(%rsp), %eax
movl %eax, (%rbp)
movss 0x60(%rsp), %xmm1
mulss %xmm0, %xmm1
xorps %xmm0, %xmm0
cvtss2sd %xmm1, %xmm0
movl $0x3a, %edx
movq %r12, %rdi
movq 0x5569(%rip), %rsi      # 0x10fc8
leaq 0x29bb(%rip), %rcx      # 0xe421
movb $0x1, %al
callq 0xcb4c
leaq 0x70(%rsp), %rbp
movq %rbp, %rdi
movq %r12, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xba99
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x70(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x2b, %eax
je 0xbae4
cmpl $0x2d, %eax
je 0xbae4
movq %r12, %rdi
leaq 0x2666(%rip), %rsi      # 0xe11b
movq %rbp, %rdx
callq 0x68e5
movq %rbp, %rdi
movq %r12, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xbae4
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
sarq $0x20, %r13
shlq $0x5, %r13
addq 0x5a8d(%rip), %r13      # 0x11580
movq %r13, %rdi
movq %rbp, %rsi
callq 0x2120
movq 0x5a7b(%rip), %rsi      # 0x11580
addq %r15, %rsi
leaq 0x5a71(%rip), %r12      # 0x11580
movq %r12, %rdi
callq 0xcbfe
movq 0x48(%rsp), %r13
addq 0x5a5d(%rip), %r15      # 0x11580
movq %r12, %rdi
movq %r15, %rsi
callq 0xcbfe
movq (%rsp), %rax
leal -0x2(%rax), %ebp
movl 0x40(%rsp), %ecx
addl $-0x2, %ecx
cmpl $0x2, %eax
movl %ebp, %eax
movq %rax, (%rsp)
jge 0xb939
jmp 0xbb54
movl %ecx, %ebp
movq 0x8(%rsp), %r14
addl %r14d, %ebp
movl $0x0, 0x5a37(%rip)      # 0x11598
movq 0x5a18(%rip), %rdi      # 0x11580
cmpq %rdi, 0x5a19(%rip)      # 0x11588
je 0xbca0
xorl %r14d, %r14d
leaq 0x259c(%rip), %rbx      # 0xe11b
leaq 0x2597(%rip), %r15      # 0xe11d
leaq 0x2594(%rip), %r12      # 0xe121
xorl %r13d, %r13d
addq %r14, %rdi
movq %rbx, %rsi
callq 0x20b0
testl %eax, %eax
je 0xbbe5
movq 0x59da(%rip), %rdi      # 0x11580
addq %r14, %rdi
movq %r15, %rsi
callq 0x20b0
testl %eax, %eax
je 0xbbe5
movq 0x59c4(%rip), %rdi      # 0x11580
addq %r14, %rdi
movq %r12, %rsi
callq 0x20b0
testl %eax, %eax
je 0xbbe5
movq 0x59ae(%rip), %rdi      # 0x11580
addq %r14, %rdi
leaq 0x2543(%rip), %rsi      # 0xe11f
callq 0x20b0
testl %eax, %eax
jne 0xbbeb
incl 0x59ad(%rip)            # 0x11598
incq %r13
movq 0x5993(%rip), %rax      # 0x11588
movq 0x5984(%rip), %rdi      # 0x11580
subq %rdi, %rax
sarq $0x5, %rax
addq $0x20, %r14
cmpq %r13, %rax
ja 0xbb90
cmpl $0x0, 0x5985(%rip)      # 0x11598
movq 0x8(%rsp), %rax
jle 0xbca0
subl %eax, %ebp
jle 0xbca0
movslq %eax, %r14
shlq $0x5, %r14
leaq 0x2542(%rip), %rbx      # 0xe172
leaq 0x2451(%rip), %r15      # 0xe088
leaq 0x5942(%rip), %r12      # 0x11580
movq 0x593b(%rip), %rdi      # 0x11580
addq %r14, %rdi
movq %rbx, %rsi
callq 0x20b0
testl %eax, %eax
jne 0xbc98
movq 0x5925(%rip), %rax      # 0x11580
leaq (%rax,%r14), %rdi
addq $0x40, %rdi
movq %r15, %rsi
callq 0x20b0
testl %eax, %eax
jne 0xbc98
movq 0x590a(%rip), %rsi      # 0x11580
addq %r14, %rsi
movq %r12, %rdi
callq 0xcbfe
movq 0x58f8(%rip), %rax      # 0x11580
leaq (%rax,%r14), %rsi
addq $0x20, %rsi
movq %r12, %rdi
callq 0xcbfe
addq $0x20, %r14
decl %ebp
jne 0xbc3e
movq 0x50(%rsp), %rbp
movq 0x8(%rbp), %rdx
leaq 0x24c9(%rip), %rcx      # 0xe179
movq %rbp, %rdi
xorl %esi, %esi
xorl %r8d, %r8d
callq 0x22d0
movq 0x90(%rsp), %r13
movq 0x58b4(%rip), %rax      # 0x11580
cmpq %rax, 0x58b5(%rip)      # 0x11588
je 0xbd0f
movl $0x8, %ebx
xorl %r14d, %r14d
movq -0x8(%rax,%rbx), %rsi
movq (%rax,%rbx), %rdx
movq %rbp, %rdi
callq 0x20c0
incq %r14
movq 0x5890(%rip), %rcx      # 0x11588
movq 0x5881(%rip), %rax      # 0x11580
subq %rax, %rcx
sarq $0x5, %rcx
addq $0x20, %rbx
cmpq %r14, %rcx
ja 0xbcdd
movq 0x8(%rbp), %rdx
leaq 0x245f(%rip), %rcx      # 0xe179
movq %rbp, %rdi
xorl %esi, %esi
xorl %r8d, %r8d
callq 0x22d0
movq 0x5852(%rip), %rax      # 0x11580
xorl %r14d, %r14d
cmpq %rax, 0x5850(%rip)      # 0x11588
je 0xbd94
leaq 0x2431(%rip), %rbx      # 0xe172
xorl %r15d, %r15d
xorl %r12d, %r12d
movq (%rax,%r15), %rsi
movq 0x8(%rax,%r15), %rdx
movq %rbp, %rdi
callq 0x20c0
movq 0x5821(%rip), %rdi      # 0x11580
addq %r15, %rdi
movq %rbx, %rsi
callq 0x20b0
testl %eax, %eax
cmovel %r12d, %r14d
incq %r12
movq 0x580e(%rip), %rcx      # 0x11588
movq 0x57ff(%rip), %rax      # 0x11580
subq %rax, %rcx
sarq $0x5, %rcx
addq $0x20, %r15
cmpq %r12, %rcx
ja 0xbd47
movslq %r14d, %r14
shlq $0x5, %r14
leaq (%rax,%r14), %rsi
addq $0x20, %rsi
leaq 0x70(%rsp), %rdi
callq 0x2120
movq 0x57cf(%rip), %rsi      # 0x11580
leaq 0x57c8(%rip), %rdi      # 0x11580
callq 0xcc7a
cmpl $0x0, 0x57d4(%rip)      # 0x11598
jle 0xbe20
leaq 0x128(%rsp), %r14
movq %r14, -0x10(%r14)
movq (%rbp), %rsi
movq 0x8(%rbp), %rdx
addq %rsi, %rdx
leaq 0x118(%rsp), %rdi
callq 0x31d4
leaq 0x118(%rsp), %rsi
movq %r13, %rdi
callq 0xad67
movq 0x118(%rsp), %rdi
cmpq %r14, %rdi
je 0xc727
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x21e0
jmp 0xc727
movq 0x70(%rsp), %r12
callq 0x2050
movq %rax, %r15
movl (%rax), %ebp
movl $0x0, (%rax)
leaq 0x38(%rsp), %r13
movq %r12, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x2290
cmpq %r12, (%r13)
je 0xc84d
movq %rax, %rbx
movslq %ebx, %rax
cmpq %rbx, %rax
jne 0xc859
movl (%r15), %eax
cmpl $0x22, %eax
je 0xc859
testl %eax, %eax
jne 0xbe76
movl %ebp, (%r15)
movl %ebx, %ebp
negl %ebp
cmovsl %ebx, %ebp
movl $0x1, %r15d
cmpl $0xa, %ebp
jb 0xc688
movl $0x4, %r15d
movl $0xd1b71759, %eax       # imm = 0xD1B71759
movl %ebp, %ecx
cmpl $0x63, %ecx
jbe 0xc67f
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0xc685
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0xc688
movl %ecx, %edx
imulq %rax, %rdx
shrq $0x2d, %rdx
addl $0x4, %r15d
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0xbe99
addl $-0x3, %r15d
jmp 0xc688
movq (%rsp), %rax
testl %eax, %eax
js 0xc2fd
movl %eax, %ecx
movq %r13, %rax
shlq $0x5, %rax
movq %rax, 0x40(%rsp)
addq $-0x20, %rax
leaq -0x1(%r13), %r15
leaq 0x226e(%rip), %rbx      # 0xe172
leaq 0x70(%rsp), %r12
movq %rax, 0x58(%rsp)
movq %r15, 0x60(%rsp)
movq %rcx, (%rsp)
leaq (%rcx,%r13), %r14
movq 0x565e(%rip), %rdi      # 0x11580
movq %rax, %rbp
movq 0x20(%rdi,%rbp), %rax
cmpb $0x2d, (%rax)
jne 0xbf45
addq %rbp, %rdi
movq %rbx, %rsi
callq 0x20b0
movq 0x563f(%rip), %rdi      # 0x11580
testl %eax, %eax
jne 0xbf56
addq $0x20, %rbp
incq %r15
cmpq %r14, %r15
jl 0xbf25
jmp 0xc0f8
movq 0x20(%rdi,%rbp), %r15
callq 0x2050
movq %rax, %r13
movl (%rax), %r14d
movl $0x0, (%rax)
movq %r15, %rdi
leaq 0x38(%rsp), %rsi
callq 0x2270
cmpq %r15, 0x38(%rsp)
je 0xc8a1
movl (%r13), %eax
testl %eax, %eax
movss %xmm0, 0x14(%rsp)
je 0xbfa0
movl %eax, 0x6c(%rsp)
cmpl $0x22, %eax
jne 0xbfa9
jmp 0xc8c5
movl %r14d, (%r13)
movl %r14d, 0x6c(%rsp)
movq 0x55d0(%rip), %rax      # 0x11580
movq (%rax,%rbp), %r15
movl $0x0, (%r13)
movq %r15, %rdi
leaq 0x38(%rsp), %rsi
callq 0x2270
cmpq %r15, 0x38(%rsp)
je 0xc895
movl (%r13), %eax
testl %eax, %eax
movq 0x8(%rsp), %r14
movq 0x60(%rsp), %r15
je 0xbff0
cmpl $0x22, %eax
jne 0xbff8
jmp 0xc8d1
movl 0x6c(%rsp), %eax
movl %eax, (%r13)
movss 0x14(%rsp), %xmm1
addss %xmm0, %xmm1
xorps %xmm0, %xmm0
cvtss2sd %xmm1, %xmm0
movl $0x3a, %edx
leaq 0x18(%rsp), %r13
movq %r13, %rdi
movq 0x4fab(%rip), %rsi      # 0x10fc8
leaq 0x23fd(%rip), %rcx      # 0xe421
movb $0x1, %al
callq 0xcb4c
movq %r12, %rdi
movq %r13, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
movq 0x48(%rsp), %r13
je 0xc057
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x70(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x2b, %eax
je 0xc0a8
cmpl $0x2d, %eax
je 0xc0a8
leaq 0x18(%rsp), %rdi
leaq 0x20a6(%rip), %rsi      # 0xe11b
movq %r12, %rdx
callq 0x68e5
leaq 0x70(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xc0a8
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x54d1(%rip), %rdi      # 0x11580
addq %rbp, %rdi
movq %r12, %rsi
callq 0x2120
movq 0x54bf(%rip), %rax      # 0x11580
leaq (%rax,%rbp), %rsi
addq $0x20, %rsi
leaq 0x54b0(%rip), %rdi      # 0x11580
callq 0xcbfe
movq (%rsp), %rcx
leaq -0x1(%rcx), %rax
movl $0xffffffff, %ebp       # imm = 0xFFFFFFFF
testq %rcx, %rcx
movq %rax, %rcx
movq 0x58(%rsp), %rax
jg 0xbf13
jmp 0xbb54
movq 0x8(%rsp), %rax
movq (%rsp), %rcx
leal (%rax,%rcx), %ebp
testq %rcx, %rcx
js 0xbb57
movl %ecx, %eax
movq 0x40(%rsp), %r14
addq $-0x20, %r14
decq %r13
leaq 0x2050(%rip), %rbx      # 0xe172
movq %r14, 0x40(%rsp)
movq %rax, (%rsp)
movslq %ebp, %r15
movq 0x544b(%rip), %rdi      # 0x11580
movq %r13, %r12
movq 0x20(%rdi,%r14), %rax
cmpb $0x2b, (%rax)
jne 0xc158
addq %r14, %rdi
movq %rbx, %rsi
callq 0x20b0
movq 0x542c(%rip), %rdi      # 0x11580
testl %eax, %eax
jne 0xc169
addq $0x20, %r14
incq %r12
cmpq %r15, %r12
jl 0xc138
jmp 0xbb57
movq %r13, 0x48(%rsp)
movq 0x20(%rdi,%r14), %r15
callq 0x2050
movq %rax, %r13
movl (%rax), %ebp
movl $0x0, (%rax)
movq %r15, %rdi
leaq 0x38(%rsp), %rsi
callq 0x2270
cmpq %r15, 0x38(%rsp)
je 0xc8b9
movl (%r13), %r12d
testl %r12d, %r12d
movss %xmm0, 0x60(%rsp)
je 0xc1b5
cmpl $0x22, %r12d
jne 0xc1bc
jmp 0xc8dd
movl %ebp, (%r13)
movl %ebp, %r12d
movq 0x53bd(%rip), %rax      # 0x11580
movq (%rax,%r14), %r15
movl $0x0, (%r13)
movq %r15, %rdi
leaq 0x38(%rsp), %rsi
callq 0x2270
cmpq %r15, 0x38(%rsp)
je 0xc8ad
movl (%r13), %eax
testl %eax, %eax
je 0xc1f9
cmpl $0x22, %eax
jne 0xc1fd
jmp 0xc8e9
movl %r12d, (%r13)
movss 0x60(%rsp), %xmm1
addss %xmm0, %xmm1
xorps %xmm0, %xmm0
cvtss2sd %xmm1, %xmm0
movl $0x3a, %edx
leaq 0x18(%rsp), %r15
movq %r15, %rdi
movq 0x4da6(%rip), %rsi      # 0x10fc8
leaq 0x21f8(%rip), %rcx      # 0xe421
movb $0x1, %al
callq 0xcb4c
leaq 0x70(%rsp), %r12
movq %r12, %rdi
movq %r15, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
movq 0x48(%rsp), %r13
je 0xc261
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x70(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x2b, %eax
je 0xc2ac
cmpl $0x2d, %eax
je 0xc2ac
movq %r15, %rdi
leaq 0x1e9e(%rip), %rsi      # 0xe11b
movq %r12, %rdx
callq 0x68e5
movq %r12, %rdi
movq %r15, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xc2ac
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x52cd(%rip), %rdi      # 0x11580
addq %r14, %rdi
movq %r12, %rsi
callq 0x2120
movq 0x52bb(%rip), %rax      # 0x11580
leaq (%rax,%r14), %rsi
addq $0x20, %rsi
leaq 0x52ac(%rip), %rdi      # 0x11580
callq 0xcbfe
movq (%rsp), %rdx
leaq -0x2(%rdx), %rax
movq 0x8(%rsp), %rcx
leal (%rcx,%rax), %ebp
cmpq $0x2, %rdx
movq 0x40(%rsp), %r14
jge 0xc127
jmp 0xbb57
movl %eax, %ebp
jmp 0xbb4f
movslq %eax, %r15
movslq %r14d, %r14
movq %r15, %rbp
shlq $0x5, %rbp
leaq 0x1e5a(%rip), %rbx      # 0xe172
leaq 0x1e5a(%rip), %r12      # 0xe179
movq %rbx, %r13
movq 0x5257(%rip), %rdi      # 0x11580
cmpq %r14, %r15
jle 0xc3d0
addq %rbp, %rdi
addq $-0x20, %rdi
movq %rbx, %rsi
callq 0x20b0
movq 0x5238(%rip), %rdx      # 0x11580
testl %eax, %eax
je 0xc41b
leaq 0x18(%rsp), %rbx
addq %rbp, %rdx
movq %rdx, %rdi
leaq 0x1dbd(%rip), %rsi      # 0xe11f
callq 0x20b0
movq 0x5212(%rip), %rdi      # 0x11580
testl %eax, %eax
je 0xc4bf
addq %rbp, %rdi
leaq 0x1d9f(%rip), %rsi      # 0xe11f
callq 0x20b0
movq 0x51f4(%rip), %rdi      # 0x11580
testl %eax, %eax
je 0xc52f
addq %rbp, %rdi
leaq 0x1d83(%rip), %rsi      # 0xe121
callq 0x20b0
movq 0x51d6(%rip), %rdi      # 0x11580
testl %eax, %eax
je 0xc59f
addq %rbp, %rdi
leaq 0x1d65(%rip), %rsi      # 0xe121
callq 0x20b0
movq 0x51b8(%rip), %rdi      # 0x11580
testl %eax, %eax
je 0xc60f
addq %rbp, %rdi
movq %r12, %rsi
callq 0x20b0
testl %eax, %eax
jne 0xc3ff
movq 0x519a(%rip), %rsi      # 0x11580
addq %rbp, %rsi
leaq 0x5190(%rip), %rdi      # 0x11580
callq 0xcbfe
movq (%rsp), %rax
decl %eax
movq %rax, (%rsp)
movq %r13, %rbx
leaq -0x1(%r15), %rax
addq $-0x20, %rbp
cmpq %r14, %r15
movq %rax, %r15
jg 0xc322
jmp 0xb6e6
addq %rbp, %rdx
movq %rdx, %rdi
movq %rbx, %rsi
callq 0x20b0
movq 0x5150(%rip), %rdx      # 0x11580
testl %eax, %eax
je 0xc350
movq (%rdx,%rbp), %rax
movzbl (%rax), %eax
cmpl $0x2b, %eax
leaq 0x18(%rsp), %rbx
je 0xc355
cmpl $0x2d, %eax
je 0xc355
addq %rbp, %rdx
movq %rdx, %rdi
movq %r12, %rsi
callq 0x20b0
movq 0x5115(%rip), %rdx      # 0x11580
testl %eax, %eax
je 0xc355
addq %rbp, %rdx
movq %rbx, %rdi
leaq 0x1c9b(%rip), %rsi      # 0xe11b
callq 0x68e5
movq 0x50f4(%rip), %rdi      # 0x11580
addq %rbp, %rdi
movq %rbx, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xc4b3
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x50c6(%rip), %rdx      # 0x11580
jmp 0xc355
movq -0x20(%rdi,%rbp), %rax
movzbl (%rax), %eax
cmpl $0x2b, %eax
je 0xc376
cmpl $0x2d, %eax
je 0xc376
leaq (%rdi,%rbp), %rdx
addq $-0x20, %rdx
movq %rbx, %rdi
leaq 0x1c30(%rip), %rsi      # 0xe11b
callq 0x68e5
movq 0x5089(%rip), %rax      # 0x11580
leaq (%rax,%rbp), %rdi
addq $-0x20, %rdi
movq %rbx, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xc523
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x5056(%rip), %rdi      # 0x11580
jmp 0xc376
movq 0x20(%rdi,%rbp), %rax
movzbl (%rax), %eax
cmpl $0x2b, %eax
je 0xc394
cmpl $0x2d, %eax
je 0xc394
leaq (%rdi,%rbp), %rdx
addq $0x20, %rdx
movq %rbx, %rdi
leaq 0x1bc0(%rip), %rsi      # 0xe11b
callq 0x68e5
movq 0x5019(%rip), %rax      # 0x11580
leaq (%rax,%rbp), %rdi
addq $0x20, %rdi
movq %rbx, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xc593
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x4fe6(%rip), %rdi      # 0x11580
jmp 0xc394
movq -0x20(%rdi,%rbp), %rax
movzbl (%rax), %eax
cmpl $0x2b, %eax
je 0xc3b2
cmpl $0x2d, %eax
je 0xc3b2
leaq (%rdi,%rbp), %rdx
addq $-0x20, %rdx
movq %rbx, %rdi
leaq 0x1b50(%rip), %rsi      # 0xe11b
callq 0x68e5
movq 0x4fa9(%rip), %rax      # 0x11580
leaq (%rax,%rbp), %rdi
addq $-0x20, %rdi
movq %rbx, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xc603
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x4f76(%rip), %rdi      # 0x11580
jmp 0xc3b2
movq 0x20(%rdi,%rbp), %rax
movzbl (%rax), %eax
cmpl $0x2b, %eax
je 0xc3d0
cmpl $0x2d, %eax
je 0xc3d0
leaq (%rdi,%rbp), %rdx
addq $0x20, %rdx
movq %rbx, %rdi
leaq 0x1ae0(%rip), %rsi      # 0xe11b
callq 0x68e5
movq 0x4f39(%rip), %rax      # 0x11580
leaq (%rax,%rbp), %rdi
addq $0x20, %rdi
movq %rbx, %rsi
callq 0x2260
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xc673
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x4f06(%rip), %rdi      # 0x11580
jmp 0xc3d0
addl $-0x2, %r15d
jmp 0xc688
decl %r15d
shrl $0x1f, %ebx
leal (%r15,%rbx), %esi
leaq 0x28(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x18(%rsp), %rdi
movl $0x2d, %edx
callq 0x2240
movl %ebx, %edi
leaq 0x18(%rsp), %rbx
addq (%rbx), %rdi
movl %r15d, %esi
movl %ebp, %edx
callq 0x6ab7
movq 0x50(%rsp), %r15
movq %r15, %rdi
movq %rbx, %rsi
callq 0x2260
movq (%rbx), %rdi
cmpq %r14, %rdi
je 0xc6e0
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x90(%rsp), %r13
leaq 0x10(%r13), %rcx
movq %rcx, (%r13)
movq (%r15), %rdx
leaq 0x10(%r15), %rax
cmpq %rax, %rdx
je 0xc709
movq %rdx, (%r13)
movq (%rax), %rcx
movq %rcx, 0x10(%r13)
jmp 0xc70f
movups (%rax), %xmm0
movups %xmm0, (%rcx)
movq 0x8(%r15), %rcx
movq %rcx, 0x8(%r13)
movq %rax, (%r15)
movq $0x0, 0x8(%r15)
movb $0x0, 0x10(%r15)
movq 0xb8(%rsp), %rdi
leaq 0xc8(%rsp), %rax
cmpq %rax, %rdi
je 0xc74c
movq 0xc8(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0xd8(%rsp), %rdi
leaq 0xe8(%rsp), %rax
cmpq %rax, %rdi
je 0xc771
movq 0xe8(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0xf8(%rsp), %rdi
leaq 0x108(%rsp), %rax
cmpq %rax, %rdi
je 0xc796
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x98(%rsp), %rdi
leaq 0xa8(%rsp), %rax
cmpq %rax, %rdi
je 0xc7bb
movq 0xa8(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0xc7dd
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x21e0
movq %r13, %rax
addq $0x138, %rsp            # imm = 0x138
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x47df(%rip), %rdi      # 0x10fd8
leaq 0x1c09(%rip), %rsi      # 0xe409
movl $0x17, %edx
callq 0x2230
movq 0x47c7(%rip), %rdi      # 0x10fd8
callq 0x2100
xorl %edi, %edi
callq 0x2250
leaq 0x1c00(%rip), %rdi      # 0xe424
callq 0x2130
leaq 0x1bf4(%rip), %rdi      # 0xe424
callq 0x2130
leaq 0x1be8(%rip), %rdi      # 0xe424
callq 0x2130
leaq 0x1bdc(%rip), %rdi      # 0xe424
callq 0x2130
leaq 0x1bd5(%rip), %rdi      # 0xe429
callq 0x2130
leaq 0x1bc9(%rip), %rdi      # 0xe429
callq 0x22a0
leaq 0x1bb8(%rip), %rdi      # 0xe424
callq 0x22a0
leaq 0x1bac(%rip), %rdi      # 0xe424
callq 0x22a0
leaq 0x1ba0(%rip), %rdi      # 0xe424
callq 0x22a0
leaq 0x1b94(%rip), %rdi      # 0xe424
callq 0x22a0
leaq 0x1b88(%rip), %rdi      # 0xe424
callq 0x2130
leaq 0x1b7c(%rip), %rdi      # 0xe424
callq 0x2130
leaq 0x1b70(%rip), %rdi      # 0xe424
callq 0x2130
leaq 0x1b64(%rip), %rdi      # 0xe424
callq 0x2130
leaq 0x1b58(%rip), %rdi      # 0xe424
callq 0x22a0
leaq 0x1b4c(%rip), %rdi      # 0xe424
callq 0x22a0
leaq 0x1b40(%rip), %rdi      # 0xe424
callq 0x22a0
leaq 0x1b34(%rip), %rdi      # 0xe424
callq 0x22a0
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
movq %rax, %rbx
cmpl $0x0, (%r13)
jne 0xca8e
movl %ebp, (%r13)
jmp 0xca8e
movq %rax, %rbx
cmpl $0x0, (%r13)
jne 0xca8e
movl %r12d, (%r13)
jmp 0xca8e
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
movq %rax, %rbx
cmpl $0x0, (%r13)
jne 0xca8e
movl %r14d, (%r13)
jmp 0xca8e
movq %rax, %rbx
cmpl $0x0, (%r13)
jne 0xca8e
movl 0x6c(%rsp), %eax
movl %eax, (%r13)
jmp 0xca8e
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca07
jmp 0xca16
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
movq %rax, %rbx
movq 0x118(%rsp), %rdi
cmpq %r14, %rdi
je 0xca8e
movq 0x128(%rsp), %rsi
jmp 0xca75
movq %rax, %rbx
cmpl $0x0, (%r15)
jne 0xca8e
movl %ebp, (%r15)
jmp 0xca8e
movq %rax, %rbx
cmpl $0x0, (%rbp)
jne 0xca8e
movl 0x14(%rsp), %eax
jmp 0xca23
movq %rax, %rbx
cmpl $0x0, (%rbp)
jne 0xca8e
movl 0x58(%rsp), %eax
movl %eax, (%rbp)
jmp 0xca8e
movq %rax, %rbx
jmp 0xcab3
movq %rax, %rbx
jmp 0xcad8
movq %rax, %rbx
jmp 0xcafd
movq %rax, %rbx
jmp 0xcb22
jmp 0xca8b
jmp 0xca8b
jmp 0xca5e
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
movq %rax, %rbx
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0xca8e
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x21e0
jmp 0xca8e
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
jmp 0xca8b
movq %rax, %rbx
movq 0xb8(%rsp), %rdi
leaq 0xc8(%rsp), %rax
cmpq %rax, %rdi
je 0xcab3
movq 0xc8(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0xd8(%rsp), %rdi
leaq 0xe8(%rsp), %rax
cmpq %rax, %rdi
je 0xcad8
movq 0xe8(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0xf8(%rsp), %rdi
leaq 0x108(%rsp), %rax
cmpq %rax, %rdi
je 0xcafd
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x98(%rsp), %rdi
leaq 0xa8(%rsp), %rax
cmpq %rax, %rdi
je 0xcb22
movq 0xa8(%rsp), %rsi
incq %rsi
callq 0x21e0
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0xcb44
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x2320