// File: /workspace/github_cpp_makefile_star2_O3/jliesch[P]ofxget/pugixml/pugixml.cpp
// Function: pugi::impl::(anonymous namespace)::xpath_parser::parse_path_or_unary_expression()
xpath_ast_node* parse_path_or_unary_expression()
		{
			// Clarification.
			// PathExpr begins with either LocationPath or FilterExpr.
			// FilterExpr begins with PrimaryExpr
			// PrimaryExpr begins with '$' in case of it being a variable reference,
			// '(' in case of it being an expression, string literal, number constant or
			// function call.
			if (_lexer.current() == lex_var_ref || _lexer.current() == lex_open_brace ||
				_lexer.current() == lex_quoted_string || _lexer.current() == lex_number ||
				_lexer.current() == lex_string)
			{
				if (_lexer.current() == lex_string)
				{
					// This is either a function call, or not - if not, we shall proceed with location path
					const char_t* state = _lexer.state();

					while (PUGI__IS_CHARTYPE(*state, ct_space)) ++state;

					if (*state != '(')
						return parse_location_path();

					// This looks like a function call; however this still can be a node-test. Check it.
					if (parse_node_test_type(_lexer.contents()) != nodetest_none)
						return parse_location_path();
				}

				xpath_ast_node* n = parse_filter_expression();
				if (!n) return 0;

				if (_lexer.current() == lex_slash || _lexer.current() == lex_double_slash)
				{
					lexeme_t l = _lexer.current();
					_lexer.next();

					if (l == lex_double_slash)
					{
						if (n->rettype() != xpath_type_node_set)
							return error("Step has to be applied to node set");

						n = alloc_node(ast_step, n, axis_descendant_or_self, nodetest_type_node, 0);
						if (!n) return 0;
					}

					// select from location path
					return parse_relative_location_path(n);
				}

				return n;
			}
			else if (_lexer.current() == lex_minus)
			{
				_lexer.next();

				// precedence 7+ - only parses union expressions
				xpath_ast_node* n = parse_expression(7);
				if (!n) return 0;

				return alloc_node(ast_op_negate, xpath_type_number, n);
			}
			else
			{
				return parse_location_path();
			}
		}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
movq %rdi, %rbx
movl 0x28(%rdi), %r15d
leal -0x8(%r15), %eax
cmpl $0xc, %eax
ja 0x2ab6e
leaq 0x8(%rbx), %r14
leaq 0x700f(%rip), %rcx      # 0x31af8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq %r14, %rdi
callq 0x2a77e
movq %rbx, %rdi
movl $0x7, %esi
callq 0x2aa8a
testq %rax, %rax
je 0x2af22
movq %rax, %r14
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r12
movl $0x20e, (%rax)          # imm = 0x20E
movq %r14, 0x8(%rax)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%rax)
jmp 0x2af25
movq (%r14), %rax
leaq 0x7164(%rip), %rcx      # 0x31cb0
movzbl (%rax), %edx
incq %rax
testb $0x8, (%rdx,%rcx)
jne 0x2ab4c
cmpb $0x28, %dl
jne 0x2ab6e
movq 0x18(%rbx), %rdi
movq 0x20(%rbx), %rsi
callq 0x2be42
testl %eax, %eax
je 0x2ab84
movq %rbx, %rdi
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2bd60
addl $-0xb, %r15d
cmpl $0x9, %r15d
ja 0x2af37
leaq 0x6f93(%rip), %rax      # 0x31b2c
movslq (%rax,%r15,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movq 0x38(%rbx), %r15
testq %r15, %r15
je 0x2ad76
movq %r14, 0x18(%rsp)
movq 0x18(%rbx), %rbp
movq 0x20(%rbx), %r12
leaq 0x48(%rbx), %r14
subq %rbp, %r12
movq %r14, %r13
cmpq $0x20, %r12
jb 0x2abe3
leaq 0x1(%r12), %rdi
callq *0x1bc81(%rip)          # 0x46858
movq %rax, %r13
testq %rax, %rax
je 0x2ae72
movq %r13, %rdi
movq %rbp, %rsi
movq %r12, %rdx
callq 0x6090
movb $0x0, (%r13,%r12)
movq %r15, %rdi
movq %r13, %rsi
callq 0x24672
movq %rax, %r12
cmpq %r14, %r13
je 0x2ac13
movq %r13, %rdi
callq *0x1bc3d(%rip)          # 0x46850
testq %r12, %r12
movq 0x18(%rsp), %r14
je 0x2aee1
movq %r14, %rdi
callq 0x2a77e
movl (%r12), %ebp
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movb $0x14, (%rax)
movb %bpl, 0x1(%rax)
movw $0x0, 0x2(%rax)
jmp 0x2adb4
movq %r14, %rdi
callq 0x2a77e
xorl %r12d, %r12d
movq %rbx, %rdi
xorl %esi, %esi
callq 0x2aa8a
testq %rax, %rax
je 0x2af25
cmpl $0xd, 0x28(%rbx)
jne 0x2ae62
movq %rax, %r15
movq %r14, %rdi
callq 0x2a77e
jmp 0x2adc8
movq 0x18(%rbx), %rax
testq %rax, %rax
je 0x2ad86
movq (%rbx), %rdi
movq 0x20(%rbx), %r15
subq %rax, %r15
leaq 0x1(%r15), %rsi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r12
movq 0x18(%rbx), %rsi
movq %rax, %rdi
movq %r15, %rdx
callq 0x6090
movb $0x0, (%r12,%r15)
jmp 0x2ad8d
leaq 0x48(%rbx), %rbp
movq 0x18(%rbx), %r13
movq 0x20(%rbx), %r12
subq %r13, %r12
movq %rbp, %r15
cmpq $0x20, %r12
jb 0x2ad04
leaq 0x1(%r12), %rdi
callq *0x1bb60(%rip)          # 0x46858
movq %rax, %r15
testq %rax, %rax
je 0x2ae72
movq %r15, %rdi
movq %r13, %rsi
movq %r12, %rdx
callq 0x6090
movb $0x0, (%r15,%r12)
movq %r15, %rdi
callq 0x2c042
movsd %xmm0, 0x18(%rsp)
cmpq %rbp, %r15
je 0x2ad33
movq %r15, %rdi
callq *0x1bb1d(%rip)          # 0x46850
movq %r14, %rdi
callq 0x2a77e
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x213, (%rax)          # imm = 0x213
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rax)
movq $0x0, 0x18(%rax)
movsd 0x18(%rsp), %xmm0
movsd %xmm0, 0x20(%rax)
jmp 0x2adc8
movq 0x40(%rbx), %rax
leaq 0x8eed(%rip), %rcx      # 0x33c6e
jmp 0x2af13
leaq 0x537c(%rip), %r12      # 0x30109
movq %r14, %rdi
callq 0x2a77e
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x312, (%rax)          # imm = 0x312
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%r15)
movq $0x0, 0x18(%r15)
movq %r12, 0x20(%r15)
movl 0x28(%rbx), %eax
cmpl $0x12, %eax
jne 0x2ae47
movq %r14, %rdi
callq 0x2a77e
cmpb $0x1, 0x1(%r15)
jne 0x2aeee
movq %rbx, %rdi
xorl %esi, %esi
callq 0x2aa8a
testq %rax, %rax
je 0x2af22
movq %rax, %r13
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r12
movl $0x111, (%rax)          # imm = 0x111
movq %r15, 0x8(%rax)
movq %r13, 0x10(%rax)
movq $0x0, 0x18(%rax)
cmpl $0x13, 0x28(%rbx)
jne 0x2af08
movq %r14, %rdi
callq 0x2a77e
movl 0x28(%rbx), %eax
movq %r12, %r15
cmpl $0x12, %eax
je 0x2add0
jmp 0x2ae4a
movq %r15, %r12
cmpl $0x11, %eax
je 0x2ae8a
cmpl $0x10, %eax
jne 0x2af25
movq %r14, %rdi
callq 0x2a77e
jmp 0x2aec8
movq 0x40(%rbx), %rax
leaq 0x8e6f(%rip), %rcx      # 0x33cdc
jmp 0x2af13
movq (%rbx), %rax
movq 0x10(%rax), %rax
testq %rax, %rax
je 0x2bbc6
movb $0x1, (%rax)
jmp 0x2af22
movq %r14, %rdi
callq 0x2a77e
cmpb $0x1, 0x1(%r12)
jne 0x2aefb
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movl $0x2050138, (%rax)      # imm = 0x2050138
movq %r12, 0x8(%rax)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%rax)
movq $0x0, 0x20(%rax)
movq %rax, %r12
movq %rbx, %rdi
movq %r12, %rsi
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2bf3a
movq 0x40(%rbx), %rax
leaq 0x8db1(%rip), %rcx      # 0x33c9d
jmp 0x2af13
movq 0x40(%rbx), %rax
leaq 0x8d28(%rip), %rcx      # 0x33c21
jmp 0x2af13
movq 0x40(%rbx), %rax
leaq 0x8cdc(%rip), %rcx      # 0x33be2
jmp 0x2af13
movq 0x40(%rbx), %rax
leaq 0x8d36(%rip), %rcx      # 0x33c49
movq %rcx, (%rax)
movq 0x10(%rbx), %rcx
subq 0x30(%rbx), %rcx
movq %rcx, 0x8(%rax)
xorl %r12d, %r12d
movq %r12, %rax
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x40(%rbx), %rax
leaq 0x8dfe(%rip), %rcx      # 0x33d40
jmp 0x2af13
xorps %xmm0, %xmm0
movaps %xmm0, 0x20(%rsp)
movq 0x18(%rbx), %rbp
movq 0x20(%rbx), %r12
movq %r14, %rdi
callq 0x2a77e
cmpl $0xc, 0x28(%rbx)
jne 0x2b079
movq %r14, %rdi
callq 0x2a77e
movl 0x28(%rbx), %ecx
xorl %eax, %eax
movl $0x0, %r15d
movl $0x0, %r13d
cmpl $0xd, %ecx
je 0x2afef
xorl %r15d, %r15d
xorl %r13d, %r13d
testq %r13, %r13
je 0x2afbf
cmpl $0x15, %ecx
jne 0x2b08c
movq %r14, %rdi
callq 0x2a77e
movq %rbx, %rdi
xorl %esi, %esi
callq 0x2aa8a
testq %rax, %rax
je 0x2af22
cmpq $0x1, %r13
je 0x2afd2
movq %rax, 0x18(%r15)
jmp 0x2afd7
movq %rbx, %rdi
xorl %esi, %esi
callq 0x2aa8a
testq %rax, %rax
je 0x2af22
movq %rax, 0x20(%rsp,%r13,8)
incq %r13
movl 0x28(%rbx), %ecx
movq %rax, %r15
cmpl $0xd, %ecx
jne 0x2af8a
movq 0x20(%rsp), %r15
movq 0x28(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %r14, %rdi
callq 0x2a77e
movzbl (%rbp), %eax
leaq 0x8e9d(%rip), %r8       # 0x33ea4
addl $-0x62, %eax
cmpl $0x12, %eax
ja 0x2b080
leaq 0x6b3e(%rip), %rcx      # 0x31b54
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
subq %rbp, %r12
je 0x2b03e
xorl %eax, %eax
leaq 0x8d91(%rip), %rcx      # 0x33dbe
movb (%rax,%rcx), %dl
cmpb (%rbp,%rax), %dl
jne 0x2b080
incq %rax
cmpq %rax, %r12
jne 0x2b02d
cmpq $0x1, %r13
jne 0x2b080
leaq 0x8d73(%rip), %rax      # 0x33dbe
cmpb $0x0, (%r12,%rax)
jne 0x2b080
movq %r15, %rbp
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x42d, (%rax)          # imm = 0x42D
jmp 0x2b323
leaq 0x8c81(%rip), %r8       # 0x33d01
movq 0x40(%rbx), %rax
movq %r8, (%rax)
jmp 0x2af16
leaq 0x8c89(%rip), %r8       # 0x33d1c
jmp 0x2b080
movq %r12, %rax
subq %rbp, %rax
je 0x2b0bd
xorl %ecx, %ecx
leaq 0x82cf(%rip), %rdx      # 0x33375
movb (%rcx,%rdx), %sil
cmpb (%rbp,%rcx), %sil
jne 0x2b479
incq %rcx
cmpq %rcx, %rax
jne 0x2b0a6
testq %r13, %r13
jne 0x2b479
leaq 0x82a8(%rip), %rcx      # 0x33375
cmpb $0x0, (%rax,%rcx)
jne 0x2b479
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x430, (%rax)          # imm = 0x430
jmp 0x2b540
movq %r12, %rax
subq %rbp, %rax
movq %r15, 0x10(%rsp)
je 0x2b128
xorl %ecx, %ecx
leaq 0x8bc6(%rip), %rdx      # 0x33cd7
movb (%rcx,%rdx), %sil
cmpb (%rbp,%rcx), %sil
jne 0x2b54d
incq %rcx
cmpq %rcx, %rax
jne 0x2b111
cmpq $0x2, %r13
setb %cl
jae 0x2b554
leaq 0x8b9b(%rip), %rdx      # 0x33cd7
cmpb $0x0, (%rax,%rdx)
jne 0x2b554
cmpq $0x1, %r13
jne 0x2b15b
movq 0x10(%rsp), %rax
cmpb $0x1, 0x1(%rax)
jne 0x2bbba
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
cmpq $0x1, %r13
movb $0x1e, %al
jmp 0x2b5c2
movq %r12, %rax
subq %rbp, %rax
movq %r15, 0x10(%rsp)
je 0x2b1ac
xorl %ecx, %ecx
leaq 0x976f(%rip), %rdx      # 0x34904
movb (%rcx,%rdx), %sil
cmpb (%rbp,%rcx), %sil
jne 0x2b63b
incq %rcx
cmpq %rcx, %rax
jne 0x2b195
cmpq $0x1, %r13
sete %cl
jne 0x2b642
leaq 0x9744(%rip), %rdx      # 0x34904
cmpb $0x0, (%rax,%rdx)
jne 0x2b642
movq 0x10(%rsp), %rax
cmpb $0x1, 0x1(%rax)
jne 0x2bbba
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x217, (%rax)          # imm = 0x217
jmp 0x2b9eb
subq %rbp, %r12
je 0x2b220
xorl %eax, %eax
leaq 0x8c32(%rip), %rcx      # 0x33e3d
movb (%rax,%rcx), %dl
cmpb (%rbp,%rax), %dl
jne 0x2b080
incq %rax
cmpq %rax, %r12
jne 0x2b20b
testq %r13, %r13
jne 0x2b080
leaq 0x8c0d(%rip), %rax      # 0x33e3d
cmpb $0x0, (%r12,%rax)
jne 0x2b080
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x216, (%rax)          # imm = 0x216
jmp 0x2b540
subq %rbp, %r12
je 0x2b282
xorl %eax, %eax
leaq 0x8bd9(%rip), %rcx      # 0x33e46
movb (%rax,%rcx), %dl
cmpb (%rbp,%rax), %dl
jne 0x2b080
incq %rax
cmpq %rax, %r12
jne 0x2b26d
cmpq $0x1, %r13
jne 0x2b080
leaq 0x8bb3(%rip), %rax      # 0x33e46
cmpb $0x0, (%r12,%rax)
jne 0x2b080
movq %r15, %rbp
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x237, (%rax)          # imm = 0x237
jmp 0x2b323
subq %rbp, %r12
je 0x2b2e5
xorl %eax, %eax
leaq 0x4e14(%rip), %rcx      # 0x300e4
movb (%rax,%rcx), %dl
cmpb (%rbp,%rax), %dl
jne 0x2b080
incq %rax
cmpq %rax, %r12
jne 0x2b2d0
cmpq $0x1, %r13
jne 0x2b080
leaq 0x4dee(%rip), %rax      # 0x300e4
cmpb $0x0, (%r12,%rax)
jne 0x2b080
movq %r15, %rbp
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x118, (%rax)          # imm = 0x118
movq %rbp, 0x8(%r15)
jmp 0x2b9f4
movq %r12, %rax
subq %rbp, %rax
movq %r15, 0x10(%rsp)
je 0x2b359
xorl %ecx, %ecx
leaq 0x8ac9(%rip), %rdx      # 0x33e0b
movb (%rcx,%rdx), %sil
cmpb (%rbp,%rcx), %sil
jne 0x2b6fe
incq %rcx
cmpq %rcx, %rax
jne 0x2b342
testq %r13, %r13
sete 0x18(%rsp)
jne 0x2b706
leaq 0x8a9d(%rip), %rcx      # 0x33e0b
cmpb $0x0, (%rax,%rcx)
jne 0x2b706
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x215, (%rax)          # imm = 0x215
jmp 0x2b540
movq %r12, %rax
subq %rbp, %rax
je 0x2b3c4
xorl %ecx, %ecx
leaq 0x8ae8(%rip), %rdx      # 0x33e95
movb (%rcx,%rdx), %sil
cmpb (%rbp,%rcx), %sil
jne 0x2b4e2
incq %rcx
cmpq %rcx, %rax
jne 0x2b3ad
cmpq $0x3, %r13
jne 0x2b4e2
leaq 0x8ac0(%rip), %rcx      # 0x33e95
cmpb $0x0, (%rax,%rcx)
jne 0x2b4e2
movq %r15, %r12
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x32c, (%rax)          # imm = 0x32C
movq %r12, 0x8(%rax)
jmp 0x2bb35
movq %r12, %rax
subq %rbp, %rax
movq %r15, 0x10(%rsp)
je 0x2b437
xorl %ecx, %ecx
leaq 0x96ea(%rip), %rdx      # 0x34b0a
movb (%rcx,%rdx), %sil
cmpb (%rbp,%rcx), %sil
jne 0x2b76d
incq %rcx
cmpq %rcx, %rax
jne 0x2b420
cmpq $0x2, %r13
setb %cl
jae 0x2b774
leaq 0x96bf(%rip), %rdx      # 0x34b0a
cmpb $0x0, (%rax,%rdx)
jne 0x2b774
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
cmpq $0x1, %r13
movb $0x20, %al
jmp 0x2b5c2
movq %r15, 0x10(%rsp)
cmpq %rbp, %r12
je 0x2b4a3
xorl %ecx, %ecx
leaq 0x8979(%rip), %rdx      # 0x33e05
movb (%rcx,%rdx), %sil
cmpb (%rbp,%rcx), %sil
jne 0x2b080
incq %rcx
cmpq %rcx, %rax
jne 0x2b48c
cmpq $0x1, %r13
jne 0x2b080
leaq 0x8951(%rip), %rcx      # 0x33e05
cmpb $0x0, (%rax,%rcx)
jne 0x2b080
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x235, (%rax)          # imm = 0x235
jmp 0x2b9eb
cmpq %rbp, %r12
je 0x2b507
xorl %ecx, %ecx
leaq 0x89af(%rip), %rdx      # 0x33e9f
movb (%rcx,%rdx), %sil
cmpb (%rbp,%rcx), %sil
jne 0x2b080
incq %rcx
cmpq %rcx, %rax
jne 0x2b4f0
testq %r13, %r13
jne 0x2b080
leaq 0x8988(%rip), %rcx      # 0x33e9f
cmpb $0x0, (%rax,%rcx)
jne 0x2b080
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x42f, (%rax)          # imm = 0x42F
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%r15)
jmp 0x2bb3e
cmpq $0x2, %r13
setb %cl
cmpq %rbp, %r12
je 0x2b575
xorl %edx, %edx
leaq 0x88b9(%rip), %rsi      # 0x33e1b
movb (%rdx,%rsi), %dil
cmpb (%rbp,%rdx), %dil
jne 0x2b5d3
incq %rdx
cmpq %rdx, %rax
jne 0x2b562
leaq 0x889f(%rip), %rdx      # 0x33e1b
cmpb $0x0, (%rax,%rdx)
setne %dl
movl %ecx, %esi
xorb $0x1, %sil
orb %dl, %sil
jne 0x2b5d3
cmpq $0x1, %r13
jne 0x2b5a3
movq 0x10(%rsp), %rax
cmpb $0x1, 0x1(%rax)
jne 0x2bbba
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
cmpq $0x1, %r13
movb $0x1c, %al
sbbb $0x0, %al
movb %al, (%r15)
movw $0x3, 0x1(%r15)
jmp 0x2b9e6
cmpq %rbp, %r12
je 0x2b5f8
xorl %edx, %edx
leaq 0x8848(%rip), %rsi      # 0x33e29
movb (%rdx,%rsi), %dil
cmpb (%rbp,%rdx), %dil
jne 0x2b839
incq %rdx
cmpq %rdx, %rax
jne 0x2b5e1
leaq 0x882a(%rip), %rdx      # 0x33e29
cmpb $0x0, (%rax,%rdx)
setne %dl
movl %ecx, %esi
xorb $0x1, %sil
orb %dl, %sil
jne 0x2b839
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
testq %r13, %r13
sete %al
xorb $0x2b, %al
jmp 0x2bb1d
cmpq $0x1, %r13
sete %cl
cmpq %rbp, %r12
je 0x2b663
xorl %edx, %edx
leaq 0x879d(%rip), %rsi      # 0x33ded
movb (%rdx,%rsi), %dil
cmpb (%rbp,%rdx), %dil
jne 0x2b69a
incq %rdx
cmpq %rdx, %rax
jne 0x2b650
cmpq $0x2, %r13
jne 0x2b69a
leaq 0x877d(%rip), %rdx      # 0x33ded
cmpb $0x0, (%rax,%rdx)
jne 0x2b69a
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x423, (%rax)          # imm = 0x423
jmp 0x2bb2c
cmpq %rbp, %r12
je 0x2b6bf
xorl %edx, %edx
leaq 0x874e(%rip), %rsi      # 0x33df6
movb (%rdx,%rsi), %dil
cmpb (%rbp,%rdx), %dil
jne 0x2b89d
incq %rdx
cmpq %rdx, %rax
jne 0x2b6a8
cmpq $0x2, %r13
jb 0x2b89d
leaq 0x8726(%rip), %rdx      # 0x33df6
cmpb $0x0, (%rax,%rdx)
jne 0x2b89d
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x321, (%rax)          # imm = 0x321
jmp 0x2bb2c
testq %r13, %r13
sete 0x18(%rsp)
cmpq %rbp, %r12
je 0x2b72b
xorl %ecx, %ecx
leaq 0x8a87(%rip), %rdx      # 0x3419b
movb (%rcx,%rdx), %sil
cmpb (%rbp,%rcx), %sil
jne 0x2b8ff
incq %rcx
cmpq %rcx, %rax
jne 0x2b714
cmpq $0x1, %r13
sete %cl
jne 0x2b906
leaq 0x8a5c(%rip), %rdx      # 0x3419b
cmpb $0x0, (%rax,%rdx)
jne 0x2b906
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x431, (%rax)          # imm = 0x431
jmp 0x2b9eb
cmpq $0x2, %r13
setb %cl
cmpq %rbp, %r12
je 0x2b795
xorl %edx, %edx
leaq 0x86ca(%rip), %rsi      # 0x33e4c
movb (%rdx,%rsi), %dil
cmpb (%rbp,%rdx), %dil
jne 0x2b7d0
incq %rdx
cmpq %rdx, %rax
jne 0x2b782
leaq 0x86b0(%rip), %rdx      # 0x33e4c
cmpb $0x0, (%rax,%rdx)
setne %dl
xorb $0x1, %cl
orb %dl, %cl
jne 0x2b7d0
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
testq %r13, %r13
sete %al
xorb $0x29, %al
jmp 0x2b9dc
cmpq %rbp, %r12
je 0x2b7f5
xorl %ecx, %ecx
leaq 0x867c(%rip), %rdx      # 0x33e5a
movb (%rcx,%rdx), %sil
cmpb (%rbp,%rcx), %sil
jne 0x2ba01
incq %rcx
cmpq %rcx, %rax
jne 0x2b7de
cmpq $0x2, %r13
sete 0xf(%rsp)
jne 0x2ba0a
leaq 0x864f(%rip), %rcx      # 0x33e5a
cmpb $0x0, (%rax,%rcx)
jne 0x2ba0a
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x422, (%rax)          # imm = 0x422
jmp 0x2bb2c
cmpq %rbp, %r12
je 0x2b85e
xorl %edx, %edx
leaq 0x85f2(%rip), %rsi      # 0x33e39
movb (%rdx,%rsi), %dil
cmpb (%rbp,%rdx), %dil
jne 0x2b97d
incq %rdx
cmpq %rdx, %rax
jne 0x2b847
cmpq $0x1, %r13
jne 0x2b97d
leaq 0x85ca(%rip), %rdx      # 0x33e39
cmpb $0x0, (%rax,%rdx)
jne 0x2b97d
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x42e, (%rax)          # imm = 0x42E
jmp 0x2b9eb
cmpq %rbp, %r12
je 0x2b8c2
xorl %edx, %edx
leaq 0x8552(%rip), %rsi      # 0x33dfd
movb (%rdx,%rsi), %dil
cmpb (%rbp,%rdx), %dil
jne 0x2b080
incq %rdx
cmpq %rdx, %rax
jne 0x2b8ab
leaq 0x8534(%rip), %rdx      # 0x33dfd
cmpb $0x0, (%rax,%rdx)
setne %al
xorb $0x1, %cl
orb %al, %cl
jne 0x2b080
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x236, (%rax)          # imm = 0x236
jmp 0x2b9eb
cmpq $0x1, %r13
sete %cl
cmpq %rbp, %r12
je 0x2b92b
xorl %edx, %edx
leaq 0x84fc(%rip), %rsi      # 0x33e10
movb (%rdx,%rsi), %dil
cmpb (%rbp,%rdx), %dil
jne 0x2b080
incq %rdx
cmpq %rdx, %rax
jne 0x2b914
cmpq $0x1, %r13
ja 0x2b080
leaq 0x84d4(%rip), %rdx      # 0x33e10
cmpb $0x0, (%rax,%rdx)
jne 0x2b080
testb %cl, %cl
je 0x2b959
movq 0x10(%rsp), %rax
cmpb $0x1, 0x1(%rax)
jne 0x2bbba
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movb $0x1a, %al
subb 0x18(%rsp), %al
jmp 0x2b5c4
cmpq %rbp, %r12
je 0x2b9a2
xorl %edx, %edx
leaq 0x94b0(%rip), %rsi      # 0x34e3b
movb (%rdx,%rsi), %dil
cmpb (%rbp,%rdx), %dil
jne 0x2b080
incq %rdx
cmpq %rdx, %rax
jne 0x2b98b
leaq 0x9492(%rip), %rdx      # 0x34e3b
cmpb $0x0, (%rax,%rdx)
setne %al
xorb $0x1, %cl
orb %al, %cl
jne 0x2b080
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
testq %r13, %r13
sete %al
xorb $0x33, %al
movb %al, (%r15)
movw $0x2, 0x1(%r15)
movb $0x0, 0x3(%r15)
movq 0x10(%rsp), %rax
movq %rax, 0x8(%r15)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%r15)
jmp 0x2adc8
cmpq $0x2, %r13
sete 0xf(%rsp)
cmpq %rbp, %r12
je 0x2ba2b
xorl %ecx, %ecx
leaq 0x844e(%rip), %rdx      # 0x33e66
movb (%rcx,%rdx), %sil
cmpb (%rbp,%rcx), %sil
jne 0x2ba68
incq %rcx
cmpq %rcx, %rax
jne 0x2ba18
leaq 0x8434(%rip), %rcx      # 0x33e66
cmpb $0x0, (%rax,%rcx)
setne %cl
movb 0xf(%rsp), %dl
xorb $0x1, %dl
orb %cl, %dl
jne 0x2ba68
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x324, (%rax)          # imm = 0x324
jmp 0x2bb2c
cmpq %rbp, %r12
je 0x2ba89
xorl %ecx, %ecx
leaq 0x8401(%rip), %rdx      # 0x33e77
movb (%rcx,%rdx), %sil
cmpb (%rbp,%rcx), %sil
jne 0x2bac3
incq %rcx
cmpq %rcx, %rax
jne 0x2ba76
leaq 0x83e7(%rip), %rcx      # 0x33e77
cmpb $0x0, (%rax,%rcx)
setne %cl
movb 0xf(%rsp), %dl
xorb $0x1, %dl
orb %cl, %dl
jne 0x2bac3
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x325, (%rax)          # imm = 0x325
jmp 0x2bb2c
cmpq %rbp, %r12
je 0x2bae4
xorl %ecx, %ecx
leaq 0x83b6(%rip), %rdx      # 0x33e87
movb (%rcx,%rdx), %sil
cmpb (%rbp,%rcx), %sil
jne 0x2bb4b
incq %rcx
cmpq %rcx, %rax
jne 0x2bad1
movq %r13, %rcx
andq $-0x2, %rcx
cmpq $0x2, %rcx
jne 0x2bb4b
leaq 0x838f(%rip), %rcx      # 0x33e87
cmpb $0x0, (%rax,%rcx)
jne 0x2bb4b
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movb 0xf(%rsp), %al
xorb $0x27, %al
movb %al, (%r15)
movw $0x3, 0x1(%r15)
movb $0x0, 0x3(%r15)
movq 0x10(%rsp), %rax
movq %rax, 0x8(%r15)
movq 0x18(%rsp), %rax
movq %rax, 0x10(%r15)
movq $0x0, 0x18(%r15)
jmp 0x2adc8
cmpq %rbp, %r12
je 0x2bb70
xorl %ecx, %ecx
leaq 0x8338(%rip), %rdx      # 0x33e91
movb (%rcx,%rdx), %sil
cmpb (%rbp,%rcx), %sil
jne 0x2b080
incq %rcx
cmpq %rcx, %rax
jne 0x2bb59
cmpq $0x1, %r13
jne 0x2b080
leaq 0x8310(%rip), %rcx      # 0x33e91
cmpb $0x0, (%rax,%rcx)
jne 0x2b080
movq 0x10(%rsp), %rax
cmpb $0x1, 0x1(%rax)
jne 0x2bbba
movq (%rbx), %rdi
movl $0x28, %esi
callq 0x2bfc0
testq %rax, %rax
je 0x2af22
movq %rax, %r15
movl $0x234, (%rax)          # imm = 0x234
jmp 0x2b9eb
leaq 0x8205(%rip), %r8       # 0x33dc6
jmp 0x2b080
leaq 0x8195(%rip), %rdi      # 0x33d62
leaq 0x6351(%rip), %rsi      # 0x31f25
leaq 0x8196(%rip), %rcx      # 0x33d71
movl $0x2afa, %edx           # imm = 0x2AFA
callq 0x6120
nop