// File: /workspace/github_c_makefile_star2_O1/mist64[P]cbm6502asm/src/opcode.c
// Function: parseopr
char parseopr() {
	char tmp[LINELENG];
	long l;
	long s;
	int i, j, k, s3l;
	/*
	        check for implied address mode first to avoid wasting time
	        trying to parse a comment
	*/
	if ((j = searchstr(nm0, s2, 3)) >= 0) return (op0[j]);
	/*
	        test for valid opcode
	*/
	k = TRUE;
	if (strlen(s2) == 3) { /* three char opcode name */
		if (searchstr(nm1, s2, 3) >= 0) k = FALSE;
		if (searchstr(nm5, s2, 3) >= 0) k = FALSE;
		if (searchstr(nm7, s2, 3) >= 0) k = FALSE;
		if (searchstr(nmd, s2, 3) >= 0) k = FALSE;
		if (searchstr(nmh, s2, 3) >= 0) k = FALSE;
	}
	if (strlen(s2) == 4) { /* four char opcode name */
		if (searchstr(nm2, s2, 4) >= 0) k = FALSE;
		if (searchstr(nm3, s2, 4) >= 0) k = FALSE;
	}
	if (k) { /* unknown opcode */
		display_error(error = 'N');
		return (data = 0);
	}
	squote = dquote = i = 0;
	while (i < LINELENG && p3[i]) { /* change first space to null */
		if (p3[i] == '~') {
			i++;
			if (!p3[i]) {
				p3[i++] = ' ';
				p3[i] = 0;
			}
			continue;
		}
		if (p3[i] == '\'') squote = !squote;
		if (p3[i] == '\"') dquote = !dquote;
		if (isspace(p3[i]) && !dquote && !squote)
			p3[i] = 0;
		else
			i++;
	}
	/*
	        try some of these easiest to check addressing modes next
	*/
	if (toupper(*s3) == 'A' && !s3[1]) { /* accumulator addressing mode */
		if ((j = searchstr(nm1, s2, 3)) >= 0) return (op1[j]);
		display_error(error = 'O');
		return (data = 0);
	}
	if (*s3 == '#') { /* immediate addressing mode */
		s3++;
		if ((*s3 == '\'' || *s3 == '\"') && isspace(s3[2])) s3[2] = *s3;
		known = evaluate(s3, &l);
		j = searchstr(nm7, s2, 3);
		if (j >= 0) {
			d[data++] = l & 255;
			if ((op7[j] & 0x00ff) == 0x00f4) d[data++] = l >> 8;
			if (!known || l < 256 || (op7[j] & 0x00ff) == 0x00f4)
				return (op7[j]);
		}
		display_error(error = 'O');
		return (data = 0);
	}
	s3l = strlen(s3);

	if (toupper(s3[s3l - 5]) == 'S' &&
	    s3[s3l - 6] == ',' && /* SP indirect,Y */
	    toupper(s3[s3l - 4]) == 'P' && s3[s3l - 3] == ')' &&
	    toupper(s3[s3l - 1]) == 'Y' && s3[s3l - 2] == ',') {
		strcpy(tmp, &s3[1]);
		tmp[s3l - 7] = 0;
		known = evaluate(tmp, &l);
		d[data++] = l & 255;
		if (!known || l < 256)
			if ((j = searchstr(nmg, s2, 3)) >= 0) return (opg[j]);
		display_error(error = 'O');
		return (data = 0);
	}
	/*
	        calls and jmps
	*/
	if (!strcmp(s2, "BSR")) { /* relative call */
		known = evaluate(s3, &s);
		s -= loc_cntr + 2;
		d[data++] = s & 255;
		d[data++] = s >> 8;
		return (oph[0]);
	}
	if (!strcmp(s2, "JMP")) { /* jmp - 3 flavors */
		strcpy(tmp, s3);
		i = 1;
		if (s3[0] == '(' && s3[s3l - 1] == ')') {
			strcpy(tmp, &s3[1]);
			if ((i = (s3[s3l - 3] == ',' &&
			         toupper(s3[s3l - 2]) == 'X')))
				tmp[s3l - 4] = 0;
			else
				tmp[s3l - 2] = 0;
			i += 2;
		}
		known = evaluate(tmp, &l);
		d[data++] = l & 255;
		d[data++] = l >> 8;
		return (oph[i]);
	}
	if (!strcmp(s2, "JSR")) { /* call - 3 flavors */
		strcpy(tmp, s3);
		i = 4;
		if (s3[0] == '(' && s3[s3l - 1] == ')') {
			strcpy(tmp, &s3[1]);
			if ((i = (s3[s3l - 3] == ',' &&
			         toupper(s3[s3l - 2]) == 'X')))
				tmp[s3l - 4] = 0;
			else
				tmp[s3l - 2] = 0;
			i += 5;
		}
		known = evaluate(tmp, &l);
		d[data++] = l & 255;
		d[data++] = l >> 8;
		return (oph[i]);
	}
	/*      indirect X */
	if (s3[s3l - 3] == ',' && toupper(s3[s3l - 2]) == 'X' &&
	    s3[s3l - 1] == ')' && s3[0] == '(') {
		strcpy(tmp, &s3[1]);
		tmp[s3l - 4] = 0;
		known = evaluate(tmp, &l);
		d[data++] = l & 255;
		if (!known || l < 256)
			if ((j = searchstr(nm4, s2, 3)) >= 0) return (op4[j]);
		display_error(error = 'O');
		return (data = 0);
	}
	/*      indirect Y */
	if (s3[s3l - 3] == ')' && toupper(s3[s3l - 1]) == 'Y' &&
	    s3[s3l - 2] == ',' && s3[0] == '(') {
		strcpy(tmp, &s3[1]);
		tmp[s3l - 4] = 0;
		known = evaluate(tmp, &l);
		d[data++] = l;
		if (!known || l < 256)
			if ((j = searchstr(nma, s2, 3)) >= 0) return (opa[j]);
		display_error(error = 'O');
		return (data = 0);
	}
	/*
	        (bp),Z      indirect Z  if cputype = 3
	        (bp)        indirect    if cputype = 1 or 2
	                    error       if cputype = 0
	*/
	if (s3[0] == '(' && toupper(s3[s3l - 1]) == 'Z' && s3[s3l - 2] == ',' &&
	            s3[s3l - 3] == ')' && cputype == 3 ||
	    cputype && cputype < 3 && s3[0] == '(' && s3[s3l - 1] == ')') {
		strcpy(tmp, &s3[1]);
		tmp[s3l - 4] = 0;
		known = evaluate(tmp, &l);
		d[data++] = l & 255;
		if (!known || l < 256)
			if ((j = searchstr(nmf, s2, 3)) >= 0) return (opf[j]);
		display_error(error = 'O');
		return (data = 0);
	}

	if (s3[s3l - 2] == ',' &&
	    toupper(s3[s3l - 1]) == 'Y') { /* abs,Y or bp,Y */
		strcpy(tmp, s3);
		tmp[s3l - 2] = 0;
		known = evaluate(tmp, &l);
		d[data++] = l & 255;
		if (known && l > -129 && l < 256 && !forcelong)
			if ((j = searchstr(nmc, s2, 3)) >= 0) return (opc[j]);
		d[data++] = l >> 8;
		if ((j = searchstr(nmb, s2, 3)) >= 0) return (opb[j]);
		display_error(error = 'O');
		return (data = 0);
	}

	if (s3[s3l - 2] == ',' &&
	    toupper(s3[s3l - 1]) == 'X') { /* abs,X or bp,X */
		strcpy(tmp, s3);
		tmp[s3l - 2] = 0;
		known = evaluate(tmp, &l);
		d[data++] = l & 255;
		if (!known || l > 255 || forcelong) {
			d[data++] = l >> 8;
			if ((j = searchstr(nm8, s2, 3)) >= 0)
				if (op9[j]) return (op9[j]); /* abs,x */
		}
		if (known && l < 256)
			if ((j = searchstr(nm8, s2, 3)) >= 0)
				if (op8[j]) return (op8[j]); /* bp,x */
		display_error(error = 'O');
		return (data = 0);
	}
	/*
	        now test the easiest instructions to identify
	*/
	if (isdigit(s2[3]) &&
	    s2[4] == 0) { /* must be a rockwell bit instruction */
		if ((j = searchstr(nm2, s2, 4)) >= 0) {
			known = evaluate(s3, &l);
			d[data++] = l & 255;
			return (op2[j]); /* set or reset */
		}
		if ((j = searchstr(nm3, s2, 4)) >= 0) {
			char *p;
			strcpy(tmp, s3);
			if ((p = strchr(tmp, ','))) { /* find the , */
				*p = 0;
				known = evaluate(tmp, &l);
				d[data++] = l & 255;
				if (known && l > 255) {
					display_error(error = 'O');
					return (data = 0);
				}
				l = known;
				known = evaluate(++p, &s);
				s -= 3 + loc_cntr;
				d[data++] = s & 255;
				if (known && (s > 127 || s < -128)) {
					display_error(error = 'O');
					return (data = 0);
				}
				known &= l;
				return (op3[j]); /* br set or br reset */
			}
		}
		display_error(error = 'O');
		return (data = 0);
	}
	/*
	        test for branches
	*/
	if ((j = searchstr(nmd, s2, 3)) >= 0) {
		int petite;
		known = evaluate(s3, &s);
		s -= 2 + loc_cntr;
		petite = s < 128 && s > -129;
		d[data++] = s & 255;     /* low byte whether long or short */
		if (curpass < maxpass) { /* okay to change operand size */
			if (known && petite) return (opd[j]); /* short branch */
			if (cputype < 3) {
				if (known) display_error(error = 'A');
				return (opd[j]);
			}
			if ((assumeL && !known) ||
			    (known && !petite)) { /* long */
				d[data++] = s >> 8;
				return (ope[j]); /* long */
			}
			return opd[j]; /* else short */
		} else /* last pass, can't change operand size */
		        if (forcelong) { /* long branch */
			d[data++] = s >> 8;
			return (ope[j]);
		} else { /* short branch */
			if (!petite) display_error(error = 'A');
			return (opd[j]);
		}
	}
	/*
	        must be absolute or bp
	*/
	known = evaluate(s3, &l);
	d[data++] = l & 255;
	j = searchstr(nm5, s2, 3);
	i = !known || l < -128 || l > 255 || forcelong || !op5[j];
	if ((k = (i && op6[j]))) d[data++] = l >> 8 & 255;
	if (k ? op6[j] : op5[j]) return (k ? op6[j] : op5[j]); /* ?abs:bp */
	display_error(error = 'O');
	return (data = 0);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xa8, %rsp
leaq 0x82dd(%rip), %rax      # 0xe098
movq (%rax), %rbx
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpb $0x0, 0x7476(%rip)      # 0xd240
je 0x5e09
xorl %ecx, %ecx
leaq 0x746b(%rip), %rsi      # 0xd240
xorl %edx, %edx
xorl %edi, %edi
leaq (%rcx,%rdi), %r8
movb (%rsi,%r8), %r8b
cmpb (%rbx,%rdi), %r8b
jne 0x5df2
incq %rdi
cmpq $0x3, %rdi
jne 0x5dd9
jmp 0x5e07
cmpq $0x3, %rdi
je 0x5e07
incl %edx
cmpb $0x0, 0x3(%rcx,%rsi)
leaq 0x3(%rcx), %rcx
jne 0x5dd7
jmp 0x5e09
movl %edx, %eax
testl %eax, %eax
js 0x5e1e
movl %eax, %eax
leaq 0x74aa(%rip), %rcx      # 0xd2c0
movb (%rax,%rcx), %al
jmp 0x6031
movq %rbx, %rdi
callq 0x10b0
movl $0x1, %ecx
cmpq $0x3, %rax
jne 0x5f7f
cmpb $0x0, 0x74b4(%rip)      # 0xd2f0
je 0x5e77
xorl %edx, %edx
leaq 0x74a9(%rip), %rsi      # 0xd2f0
xorl %edi, %edi
leaq (%rdx,%rdi), %r8
movb (%rsi,%r8), %r8b
cmpb (%rbx,%rdi), %r8b
jne 0x5e62
incq %rdi
cmpq $0x3, %rdi
jne 0x5e49
jmp 0x5e75
cmpq $0x3, %rdi
je 0x5e75
cmpb $0x0, 0x3(%rdx,%rsi)
leaq 0x3(%rdx), %rdx
jne 0x5e47
jmp 0x5e77
xorl %ecx, %ecx
cmpb $0x0, 0x7592(%rip)      # 0xd410
je 0x5eb9
xorl %edx, %edx
leaq 0x7587(%rip), %rsi      # 0xd410
xorl %edi, %edi
leaq (%rdx,%rdi), %r8
movb (%rsi,%r8), %r8b
cmpb (%rbx,%rdi), %r8b
jne 0x5ea4
incq %rdi
cmpq $0x3, %rdi
jne 0x5e8b
jmp 0x5eb7
cmpq $0x3, %rdi
je 0x5eb7
cmpb $0x0, 0x3(%rdx,%rsi)
leaq 0x3(%rdx), %rdx
jne 0x5e89
jmp 0x5eb9
xorl %ecx, %ecx
cmpb $0x0, 0x7600(%rip)      # 0xd4c0
je 0x5efb
xorl %edx, %edx
leaq 0x75f5(%rip), %rsi      # 0xd4c0
xorl %edi, %edi
leaq (%rdx,%rdi), %r8
movb (%rsi,%r8), %r8b
cmpb (%rbx,%rdi), %r8b
jne 0x5ee6
incq %rdi
cmpq $0x3, %rdi
jne 0x5ecd
jmp 0x5ef9
cmpq $0x3, %rdi
je 0x5ef9
cmpb $0x0, 0x3(%rdx,%rsi)
leaq 0x3(%rdx), %rdx
jne 0x5ecb
jmp 0x5efb
xorl %ecx, %ecx
cmpb $0x0, 0x76fe(%rip)      # 0xd600
je 0x5f3d
xorl %edx, %edx
leaq 0x76f3(%rip), %rsi      # 0xd600
xorl %edi, %edi
leaq (%rdx,%rdi), %r8
movb (%rsi,%r8), %r8b
cmpb (%rbx,%rdi), %r8b
jne 0x5f28
incq %rdi
cmpq $0x3, %rdi
jne 0x5f0f
jmp 0x5f3b
cmpq $0x3, %rdi
je 0x5f3b
cmpb $0x0, 0x3(%rdx,%rsi)
leaq 0x3(%rdx), %rdx
jne 0x5f0d
jmp 0x5f3d
xorl %ecx, %ecx
cmpb $0x0, 0x7726(%rip)      # 0xd66a
je 0x5f7f
xorl %edx, %edx
leaq 0x771b(%rip), %rsi      # 0xd66a
xorl %edi, %edi
leaq (%rdx,%rdi), %r8
movb (%rsi,%r8), %r8b
cmpb (%rbx,%rdi), %r8b
jne 0x5f6a
incq %rdi
cmpq $0x3, %rdi
jne 0x5f51
jmp 0x5f7d
cmpq $0x3, %rdi
je 0x5f7d
cmpb $0x0, 0x3(%rdx,%rsi)
leaq 0x3(%rdx), %rdx
jne 0x5f4f
jmp 0x5f7f
xorl %ecx, %ecx
cmpq $0x4, %rax
jne 0x600d
cmpb $0x0, 0x7390(%rip)      # 0xd320
je 0x5fcb
xorl %eax, %eax
leaq 0x7385(%rip), %rdx      # 0xd320
xorl %esi, %esi
leaq (%rax,%rsi), %rdi
movb (%rdx,%rdi), %dil
cmpb (%rbx,%rsi), %dil
jne 0x5fb6
incq %rsi
cmpq $0x4, %rsi
jne 0x5f9d
jmp 0x5fc9
cmpq $0x4, %rsi
je 0x5fc9
cmpb $0x0, 0x4(%rax,%rdx)
leaq 0x4(%rax), %rax
jne 0x5f9b
jmp 0x5fcb
xorl %ecx, %ecx
cmpb $0x0, 0x73ae(%rip)      # 0xd380
je 0x600d
xorl %eax, %eax
leaq 0x73a3(%rip), %rdx      # 0xd380
xorl %esi, %esi
leaq (%rax,%rsi), %rdi
movb (%rdx,%rdi), %dil
cmpb (%rbx,%rsi), %dil
jne 0x5ff8
incq %rsi
cmpq $0x4, %rsi
jne 0x5fdf
jmp 0x600b
cmpq $0x4, %rsi
je 0x600b
cmpb $0x0, 0x4(%rax,%rdx)
leaq 0x4(%rax), %rax
jne 0x5fdd
jmp 0x600d
xorl %ecx, %ecx
testl %ecx, %ecx
je 0x6043
leaq 0x7dd8(%rip), %rax      # 0xddf0
movb $0x4e, (%rax)
movl $0x4e, %edi
callq 0x1ed1
leaq 0x8295(%rip), %rax      # 0xe2c1
movb $0x0, (%rax)
xorl %eax, %eax
addq $0xa8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x7d9a(%rip), %rax      # 0xdde4
xorl %r15d, %r15d
movl %r15d, (%rax)
leaq 0x7d91(%rip), %rax      # 0xdde8
movl %r15d, (%rax)
leaq 0x7faf(%rip), %rbp      # 0xe010
xorl %r14d, %r14d
movl $0x0, 0x14(%rsp)
movslq %r15d, %r13
movzbl (%rbp,%r13), %eax
cmpl $0x26, %eax
jle 0x60a5
cmpl $0x27, %eax
je 0x60c0
cmpl $0x7e, %eax
jne 0x60dd
leaq 0x1(%r13), %r15
cmpb $0x0, 0x1(%rbp,%r13)
jne 0x6108
movb $0x20, (%rbp,%r15)
movb $0x0, 0x2(%rbp,%r13)
addq $0x2, %r13
movl %r13d, %r15d
jmp 0x6108
cmpl $0x22, %eax
jne 0x60d9
xorl %ecx, %ecx
testl %r14d, %r14d
sete %cl
leaq 0x7d2b(%rip), %rdx      # 0xdde4
movl %ecx, (%rdx)
movl %ecx, %r14d
jmp 0x60dd
xorl %ecx, %ecx
cmpl $0x0, 0x14(%rsp)
sete %cl
leaq 0x7d17(%rip), %rdx      # 0xdde8
movl %ecx, (%rdx)
movl %ecx, 0x14(%rsp)
jmp 0x60dd
testl %eax, %eax
je 0x6115
movsbq %al, %r12
callq 0x1230
movq (%rax), %rax
testb $0x20, 0x1(%rax,%r12,2)
je 0x6105
testl %r14d, %r14d
jne 0x6105
cmpl $0x0, 0x14(%rsp)
jne 0x6105
movb $0x0, (%rbp,%r13)
jmp 0x6108
incl %r15d
cmpl $0x86, %r15d
jl 0x606c
callq 0x1030
movq %rax, %r12
movq (%rax), %rbp
leaq 0x7f79(%rip), %r15      # 0xe0a0
movq (%r15), %r14
movsbq (%r14), %r13
cmpl $0x41, (%rbp,%r13,4)
jne 0x6141
cmpb $0x0, 0x1(%r14)
je 0x658b
cmpb $0x23, %r13b
jne 0x61f4
leaq 0x1(%r14), %rax
movq %rax, (%r15)
movzbl 0x1(%r14), %ebx
cmpl $0x27, %ebx
je 0x6161
cmpl $0x22, %ebx
jne 0x6179
callq 0x1230
movq (%rax), %rax
movsbq 0x3(%r14), %rcx
testb $0x20, 0x1(%rax,%rcx,2)
je 0x6179
movb %bl, 0x3(%r14)
movq (%r15), %rdi
leaq 0x8(%rsp), %rsi
callq 0x49bd
movl %eax, %ecx
leaq 0x8134(%rip), %rax      # 0xe2c3
movb %cl, (%rax)
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpb $0x0, 0x7323(%rip)      # 0xd4c0
je 0x6522
leaq 0x7eee(%rip), %rdx      # 0xe098
movq (%rdx), %rdx
xorl %esi, %esi
leaq 0x730a(%rip), %r8       # 0xd4c0
xorl %edi, %edi
xorl %r9d, %r9d
leaq (%rsi,%r9), %r10
movb (%r8,%r10), %r10b
cmpb (%rdx,%r9), %r10b
jne 0x61d7
incq %r9
cmpq $0x3, %r9
jne 0x61bb
jmp 0x6520
cmpq $0x3, %r9
je 0x6520
incl %edi
cmpb $0x0, 0x3(%rsi,%r8)
leaq 0x3(%rsi), %rsi
jne 0x61b8
jmp 0x6522
movq %r14, %rdi
callq 0x10b0
movq %rax, %r15
shlq $0x20, %r15
movabsq $-0x500000000, %rax     # imm = 0xFFFFFFFB00000000
addq %r15, %rax
sarq $0x20, %rax
movsbq (%r14,%rax), %rax
cmpl $0x53, (%rbp,%rax,4)
jne 0x6397
movabsq $-0x600000000, %rax     # imm = 0xFFFFFFFA00000000
addq %r15, %rax
sarq $0x20, %rax
cmpb $0x2c, (%r14,%rax)
jne 0x6397
movabsq $-0x400000000, %rax     # imm = 0xFFFFFFFC00000000
addq %r15, %rax
sarq $0x20, %rax
movsbq (%r14,%rax), %rax
cmpl $0x50, (%rbp,%rax,4)
jne 0x6397
movabsq $-0x300000000, %rax     # imm = 0xFFFFFFFD00000000
addq %r15, %rax
sarq $0x20, %rax
cmpb $0x29, (%r14,%rax)
jne 0x6397
movabsq $-0x100000000, %rax     # imm = 0xFFFFFFFF00000000
addq %r15, %rax
sarq $0x20, %rax
movsbq (%r14,%rax), %rax
cmpl $0x59, (%rbp,%rax,4)
jne 0x6397
movabsq $-0x200000000, %rax     # imm = 0xFFFFFFFE00000000
addq %r15, %rax
sarq $0x20, %rax
cmpb $0x2c, (%r14,%rax)
jne 0x6397
incq %r14
leaq 0x20(%rsp), %rbx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x1080
movabsq $-0x700000000, %rax     # imm = 0xFFFFFFF900000000
addq %rax, %r15
sarq $0x20, %r15
movb $0x0, 0x20(%rsp,%r15)
leaq 0x8(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x49bd
leaq 0x7fc8(%rip), %rcx      # 0xe2c3
movb %al, (%rcx)
movq (%r14), %rcx
leaq 0x7fba(%rip), %rbx      # 0xe2c1
movsbq (%rbx), %rdx
leal 0x1(%rdx), %esi
movb %sil, (%rbx)
leaq 0x7ea8(%rip), %rsi      # 0xe1c0
movb %cl, (%rsi,%rdx)
testb %al, %al
sete %al
cmpq $0x100, %rcx            # imm = 0x100
setl %cl
orb %al, %cl
cmpb $0x1, %cl
jne 0x72b7
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpb $0x0, 0x7320(%rip)      # 0xd661
je 0x70f8
leaq 0x7d4a(%rip), %rcx      # 0xe098
movq (%rcx), %rcx
xorl %edx, %edx
leaq 0x7307(%rip), %rdi      # 0xd661
xorl %esi, %esi
xorl %r8d, %r8d
leaq (%rdx,%r8), %r9
movb (%rdi,%r9), %r9b
cmpb (%rcx,%r8), %r9b
jne 0x637b
incq %r8
cmpq $0x3, %r8
jne 0x635f
jmp 0x70f6
cmpq $0x3, %r8
je 0x70f6
incl %esi
cmpb $0x0, 0x3(%rdx,%rdi)
leaq 0x3(%rdx), %rdx
jne 0x635c
jmp 0x70f8
leaq 0x471f(%rip), %rsi      # 0xaabd
movq %rbx, %rdi
callq 0x1130
testl %eax, %eax
je 0x65d8
leaq 0x470c(%rip), %rsi      # 0xaac1
movq %rbx, %rdi
callq 0x1130
testl %eax, %eax
je 0x664f
leaq 0x46f9(%rip), %rsi      # 0xaac5
movq %rbx, %rdi
callq 0x1130
testl %eax, %eax
je 0x695e
movabsq $-0x100000000, %rax     # imm = 0xFFFFFFFF00000000
movabsq $-0x200000000, %r12     # imm = 0xFFFFFFFE00000000
movabsq $-0x300000000, %rcx     # imm = 0xFFFFFFFD00000000
addq %r15, %rcx
sarq $0x20, %rcx
movb (%r14,%rcx), %cl
cmpb $0x2c, %cl
jne 0x66f5
leaq (%r15,%r12), %rdx
sarq $0x20, %rdx
movsbq (%r14,%rdx), %rdx
cmpl $0x58, (%rbp,%rdx,4)
jne 0x66f5
cmpb $0x28, %r13b
jne 0x66f5
leaq (%r15,%rax), %rdx
sarq $0x20, %rdx
cmpb $0x29, (%r14,%rdx)
jne 0x66f5
incq %r14
leaq 0x20(%rsp), %rbx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x1080
movabsq $-0x400000000, %rax     # imm = 0xFFFFFFFC00000000
addq %rax, %r15
sarq $0x20, %r15
movb $0x0, 0x20(%rsp,%r15)
leaq 0x8(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x49bd
leaq 0x7e3f(%rip), %rcx      # 0xe2c3
movb %al, (%rcx)
movq (%r14), %rcx
leaq 0x7e31(%rip), %rbx      # 0xe2c1
movsbq (%rbx), %rdx
leal 0x1(%rdx), %esi
movb %sil, (%rbx)
leaq 0x7d1f(%rip), %rsi      # 0xe1c0
movb %cl, (%rsi,%rdx)
testb %al, %al
sete %al
cmpq $0x100, %rcx            # imm = 0x100
setl %cl
orb %al, %cl
cmpb $0x1, %cl
jne 0x72b7
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpb $0x0, 0x6f16(%rip)      # 0xd3e0
je 0x7013
leaq 0x7bc1(%rip), %rcx      # 0xe098
movq (%rcx), %rcx
xorl %edx, %edx
leaq 0x6efd(%rip), %rdi      # 0xd3e0
xorl %esi, %esi
xorl %r8d, %r8d
leaq (%rdx,%r8), %r9
movb (%rdi,%r9), %r9b
cmpb (%rcx,%r8), %r9b
jne 0x6504
incq %r8
cmpq $0x3, %r8
jne 0x64e8
jmp 0x7011
cmpq $0x3, %r8
je 0x7011
incl %esi
cmpb $0x0, 0x3(%rdx,%rdi)
leaq 0x3(%rdx), %rdx
jne 0x64e5
jmp 0x7013
movl %edi, %eax
testl %eax, %eax
js 0x72f2
movq 0x8(%rsp), %rdx
leaq 0x7d8b(%rip), %rsi      # 0xe2c1
movsbq (%rsi), %rdi
leal 0x1(%rdi), %r8d
movb %r8b, (%rsi)
leaq 0x7c78(%rip), %rbx      # 0xe1c0
movb %dl, (%rbx,%rdi)
movl %eax, %eax
leaq 0x6fac(%rip), %r9       # 0xd500
movb (%rax,%r9), %al
cmpb $-0xc, %al
jne 0x6569
addl $0x2, %edi
movb %dil, (%rsi)
movsbq %r8b, %rsi
movb %dh, (%rbx,%rsi)
testb %cl, %cl
je 0x6031
cmpq $0x100, %rdx            # imm = 0x100
jl 0x6031
cmpb $-0xc, %al
jne 0x72f2
jmp 0x6031
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpb $0x0, 0x6d59(%rip)      # 0xd2f0
je 0x6639
xorl %ecx, %ecx
leaq 0x6d4a(%rip), %rsi      # 0xd2f0
xorl %edx, %edx
xorl %edi, %edi
leaq (%rcx,%rdi), %r8
movb (%rsi,%r8), %r8b
cmpb (%rbx,%rdi), %r8b
jne 0x65c3
incq %rdi
cmpq $0x3, %rdi
jne 0x65aa
jmp 0x6637
cmpq $0x3, %rdi
je 0x6637
incl %edx
cmpb $0x0, 0x3(%rcx,%rsi)
leaq 0x3(%rcx), %rcx
jne 0x65a8
jmp 0x6639
leaq 0x18(%rsp), %rbx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x49bd
leaq 0x7cd4(%rip), %rcx      # 0xe2c3
movb %al, (%rcx)
leaq 0x7218(%rip), %rcx      # 0xd810
movq (%rbx), %rax
subq (%rcx), %rax
addq $-0x2, %rax
movq %rax, (%rbx)
leaq 0x7cb5(%rip), %rcx      # 0xe2c1
movsbq (%rcx), %rdx
leal 0x1(%rdx), %esi
movb %sil, (%rcx)
leaq 0x7ba3(%rip), %rdi      # 0xe1c0
movb %al, (%rdi,%rdx)
addl $0x2, %edx
movb %dl, (%rcx)
movsbq %sil, %rcx
movb %ah, (%rdi,%rcx)
movb 0x7042(%rip), %al       # 0xd674
jmp 0x6031
movl %edx, %eax
testl %eax, %eax
js 0x72f2
movl %eax, %eax
leaq 0x6cbf(%rip), %rcx      # 0xd309
jmp 0x5e16
leaq 0x20(%rsp), %rdi
movq %r14, %rsi
callq 0x1080
movl $0x1, %r13d
cmpb $0x28, (%r14)
jne 0x6a04
movabsq $-0x100000000, %rax     # imm = 0xFFFFFFFF00000000
addq %r15, %rax
sarq $0x20, %rax
cmpb $0x29, (%r14,%rax)
jne 0x6a04
movabsq $-0x200000000, %rbx     # imm = 0xFFFFFFFE00000000
leaq 0x1(%r14), %rsi
leaq 0x20(%rsp), %rdi
callq 0x1080
movabsq $-0x300000000, %rax     # imm = 0xFFFFFFFD00000000
addq %r15, %rax
sarq $0x20, %rax
movl $0x2, %r13d
cmpb $0x2c, (%r14,%rax)
jne 0x69f7
movq (%r12), %rax
leaq (%r15,%rbx), %rcx
sarq $0x20, %rcx
movsbq (%r14,%rcx), %rcx
xorl %r13d, %r13d
cmpl $0x58, (%rax,%rcx,4)
sete %r13b
movabsq $-0x400000000, %rax     # imm = 0xFFFFFFFC00000000
cmoveq %rax, %rbx
orq $0x2, %r13
jmp 0x69f7
cmpb $0x29, %cl
jne 0x6810
leaq (%r15,%rax), %rdx
sarq $0x20, %rdx
movsbq (%r14,%rdx), %rdx
cmpl $0x59, (%rbp,%rdx,4)
jne 0x6810
cmpb $0x28, %r13b
jne 0x6810
leaq (%r15,%r12), %rdx
sarq $0x20, %rdx
cmpb $0x2c, (%r14,%rdx)
jne 0x6810
incq %r14
leaq 0x20(%rsp), %rbx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x1080
movabsq $-0x400000000, %rax     # imm = 0xFFFFFFFC00000000
addq %rax, %r15
sarq $0x20, %r15
movb $0x0, 0x20(%rsp,%r15)
leaq 0x8(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x49bd
leaq 0x7b4f(%rip), %rcx      # 0xe2c3
movb %al, (%rcx)
movq (%r14), %rcx
leaq 0x7b41(%rip), %rbx      # 0xe2c1
movsbq (%rbx), %rdx
leal 0x1(%rdx), %esi
movb %sil, (%rbx)
leaq 0x7a2f(%rip), %rsi      # 0xe1c0
movb %cl, (%rsi,%rdx)
testb %al, %al
sete %al
cmpq $0x100, %rcx            # imm = 0x100
setl %cl
orb %al, %cl
cmpb $0x1, %cl
jne 0x72b7
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpb $0x0, 0x6dd6(%rip)      # 0xd590
je 0x7058
leaq 0x78d1(%rip), %rcx      # 0xe098
movq (%rcx), %rcx
xorl %edx, %edx
leaq 0x6dbd(%rip), %rdi      # 0xd590
xorl %esi, %esi
xorl %r8d, %r8d
leaq (%rdx,%r8), %r9
movb (%rdi,%r9), %r9b
cmpb (%rcx,%r8), %r9b
jne 0x67f4
incq %r8
cmpq $0x3, %r8
jne 0x67d8
jmp 0x7056
cmpq $0x3, %r8
je 0x7056
incl %esi
cmpb $0x0, 0x3(%rdx,%rdi)
leaq 0x3(%rdx), %rdx
jne 0x67d5
jmp 0x7058
cmpb $0x28, %r13b
jne 0x684a
leaq (%r15,%rax), %rdx
sarq $0x20, %rdx
movsbq (%r14,%rdx), %rdx
cmpl $0x5a, (%rbp,%rdx,4)
jne 0x684a
leaq (%r15,%r12), %rdx
sarq $0x20, %rdx
cmpb $0x2c, (%r14,%rdx)
jne 0x684a
cmpb $0x29, %cl
jne 0x684a
leaq 0x7073(%rip), %rcx      # 0xd8b8
cmpl $0x3, (%rcx)
je 0x6881
leaq 0x7067(%rip), %rdx      # 0xd8b8
cmpb $0x28, %r13b
jne 0x6a5a
movl (%rdx), %ecx
testl %ecx, %ecx
je 0x6a5a
cmpl $0x2, %ecx
jg 0x6a5a
leaq (%r15,%rax), %rcx
sarq $0x20, %rcx
cmpb $0x29, (%r14,%rcx)
jne 0x6a5a
incq %r14
leaq 0x20(%rsp), %rbx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x1080
movabsq $-0x400000000, %rax     # imm = 0xFFFFFFFC00000000
addq %rax, %r15
sarq $0x20, %r15
movb $0x0, 0x20(%rsp,%r15)
leaq 0x8(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x49bd
leaq 0x7a01(%rip), %rcx      # 0xe2c3
movb %al, (%rcx)
movq (%r14), %rcx
leaq 0x79f3(%rip), %rbx      # 0xe2c1
movsbq (%rbx), %rdx
leal 0x1(%rdx), %esi
movb %sil, (%rbx)
leaq 0x78e1(%rip), %rsi      # 0xe1c0
movb %cl, (%rsi,%rdx)
testb %al, %al
sete %al
cmpq $0x100, %rcx            # imm = 0x100
setl %cl
orb %al, %cl
cmpb $0x1, %cl
jne 0x72b7
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpb $0x0, 0x6d38(%rip)      # 0xd640
je 0x6e8a
leaq 0x7783(%rip), %rcx      # 0xe098
movq (%rcx), %rcx
xorl %edx, %edx
leaq 0x6d1f(%rip), %rdi      # 0xd640
xorl %esi, %esi
xorl %r8d, %r8d
leaq (%rdx,%r8), %r9
movb (%rdi,%r9), %r9b
cmpb (%rcx,%r8), %r9b
jne 0x6942
incq %r8
cmpq $0x3, %r8
jne 0x6926
jmp 0x6e88
cmpq $0x3, %r8
je 0x6e88
incl %esi
cmpb $0x0, 0x3(%rdx,%rdi)
leaq 0x3(%rdx), %rdx
jne 0x6923
jmp 0x6e8a
leaq 0x20(%rsp), %rdi
movq %r14, %rsi
callq 0x1080
movl $0x4, %r13d
cmpb $0x28, (%r14)
jne 0x6a04
movabsq $-0x100000000, %rax     # imm = 0xFFFFFFFF00000000
addq %r15, %rax
sarq $0x20, %rax
cmpb $0x29, (%r14,%rax)
jne 0x6a04
movabsq $-0x200000000, %rbx     # imm = 0xFFFFFFFE00000000
leaq 0x1(%r14), %rsi
leaq 0x20(%rsp), %rdi
callq 0x1080
movabsq $-0x300000000, %rax     # imm = 0xFFFFFFFD00000000
addq %r15, %rax
sarq $0x20, %rax
movl $0x5, %r13d
cmpb $0x2c, (%r14,%rax)
jne 0x69f7
movq (%r12), %rax
leaq (%r15,%rbx), %rcx
sarq $0x20, %rcx
movsbq (%r14,%rcx), %rcx
xorl %r13d, %r13d
cmpl $0x58, (%rax,%rcx,4)
sete %r13b
movabsq $-0x400000000, %rax     # imm = 0xFFFFFFFC00000000
cmoveq %rax, %rbx
addq $0x5, %r13
addq %rbx, %r15
sarq $0x20, %r15
movb $0x0, 0x20(%rsp,%r15)
leaq 0x20(%rsp), %rdi
leaq 0x8(%rsp), %rbx
movq %rbx, %rsi
callq 0x49bd
leaq 0x78a6(%rip), %rcx      # 0xe2c3
movb %al, (%rcx)
movq (%rbx), %rax
leaq 0x7898(%rip), %rcx      # 0xe2c1
movsbq (%rcx), %rdx
leal 0x1(%rdx), %esi
movb %sil, (%rcx)
leaq 0x7786(%rip), %rdi      # 0xe1c0
movb %al, (%rdi,%rdx)
addl $0x2, %edx
movb %dl, (%rcx)
movsbq %sil, %rcx
movb %ah, (%rdi,%rcx)
leaq 0x6c24(%rip), %rax      # 0xd674
movb (%r13,%rax), %al
jmp 0x6031
addq %r15, %r12
sarq $0x20, %r12
movb (%r14,%r12), %cl
cmpb $0x2c, %cl
jne 0x6c5a
addq %rax, %r15
sarq $0x20, %r15
movsbq (%r14,%r15), %rax
cmpl $0x59, (%rbp,%rax,4)
jne 0x6b63
leaq 0x20(%rsp), %rbx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x1080
movb $0x0, 0x20(%rsp,%r12)
leaq 0x8(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x49bd
leaq 0x7811(%rip), %rcx      # 0xe2c3
movb %al, (%rcx)
movq (%r14), %rcx
leaq 0x7803(%rip), %rbx      # 0xe2c1
movsbq (%rbx), %rdx
leal 0x1(%rdx), %esi
movb %sil, (%rbx)
leaq 0x76f1(%rip), %rdi      # 0xe1c0
movb %cl, (%rdi,%rdx)
testb %al, %al
leaq 0x75bd(%rip), %r8       # 0xe098
je 0x6fa0
leaq -0x100(%rcx), %rax
cmpq $-0x180, %rax           # imm = 0xFE80
jb 0x6fa0
leaq 0x6fc5(%rip), %rax      # 0xdac0
cmpl $0x0, (%rax)
jne 0x6fa0
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpb $0x0, 0x6ad9(%rip)      # 0xd5e9
je 0x6f8e
movq (%r8), %r8
xorl %r9d, %r9d
leaq 0x6ac6(%rip), %r11      # 0xd5e9
xorl %r10d, %r10d
xorl %r14d, %r14d
leaq (%r9,%r14), %r15
movb (%r11,%r15), %bpl
cmpb (%r8,%r14), %bpl
jne 0x6b45
incq %r14
cmpq $0x3, %r14
jne 0x6b29
jmp 0x6f84
cmpq $0x3, %r14
je 0x6f84
incl %r10d
cmpb $0x0, 0x3(%r9,%r11)
leaq 0x3(%r9), %r9
jne 0x6b26
jmp 0x6f87
cmpb $0x2c, %cl
jne 0x6c5a
movsbq (%r14,%r15), %rax
cmpl $0x58, (%rbp,%rax,4)
jne 0x6c5a
leaq 0x20(%rsp), %rbx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x1080
movb $0x0, 0x20(%rsp,%r12)
leaq 0x8(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x49bd
movl %eax, %ecx
leaq 0x7718(%rip), %rax      # 0xe2c3
movb %cl, (%rax)
movq (%r14), %rdx
leaq 0x770a(%rip), %rbx      # 0xe2c1
movsbq (%rbx), %rax
leal 0x1(%rax), %esi
movb %sil, (%rbx)
leaq 0x75f8(%rip), %rdi      # 0xe1c0
movb %dl, (%rdi,%rax)
testb %cl, %cl
je 0x6be9
cmpq $0xff, %rdx
jg 0x6be9
leaq 0x6ee1(%rip), %r8       # 0xdac0
cmpl $0x0, (%r8)
je 0x7233
addl $0x2, %eax
movb %al, (%rbx)
movsbq %sil, %rax
movb %dh, (%rdi,%rax)
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpb $0x0, 0x690f(%rip)      # 0xd510
leaq 0x7490(%rip), %rsi      # 0xe098
je 0x721b
movq (%rsi), %rsi
xorl %edi, %edi
leaq 0x68f6(%rip), %r9       # 0xd510
xorl %r8d, %r8d
xorl %r10d, %r10d
leaq (%rdi,%r10), %r11
movb (%r9,%r11), %r11b
cmpb (%rsi,%r10), %r11b
jne 0x6c3c
incq %r10
cmpq $0x3, %r10
jne 0x6c20
jmp 0x7218
cmpq $0x3, %r10
je 0x7218
incl %r8d
cmpb $0x0, 0x3(%rdi,%r9)
leaq 0x3(%rdi), %rdi
jne 0x6c1d
jmp 0x721b
movq %rdx, %r15
callq 0x1230
movq (%rax), %rax
movsbq 0x3(%rbx), %rcx
testb $0x8, 0x1(%rax,%rcx,2)
je 0x6c7b
cmpb $0x0, 0x4(%rbx)
je 0x6e31
movl $0xffffffff, %ebp       # imm = 0xFFFFFFFF
cmpb $0x0, 0x6979(%rip)      # 0xd600
je 0x6cc6
xorl %eax, %eax
leaq 0x696e(%rip), %rdx      # 0xd600
xorl %ecx, %ecx
xorl %esi, %esi
leaq (%rax,%rsi), %rdi
movb (%rdx,%rdi), %dil
cmpb (%rbx,%rsi), %dil
jne 0x6caf
incq %rsi
cmpq $0x3, %rsi
jne 0x6c96
jmp 0x6cc4
cmpq $0x3, %rsi
je 0x6cc4
incl %ecx
cmpb $0x0, 0x3(%rax,%rdx)
leaq 0x3(%rax), %rax
jne 0x6c94
jmp 0x6cc6
movl %ecx, %ebp
testl %ebp, %ebp
js 0x6d6e
leaq 0x18(%rsp), %rbx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x49bd
leaq 0x75de(%rip), %rcx      # 0xe2c3
movb %al, (%rcx)
leaq 0x6b22(%rip), %rcx      # 0xd810
movq (%rbx), %r9
subq (%rcx), %r9
leaq -0x2(%r9), %rcx
movq %rcx, (%rbx)
addq $0x7e, %r9
leaq 0x75bb(%rip), %rdx      # 0xe2c1
movsbq (%rdx), %r8
leal 0x1(%r8), %edi
movb %dil, (%rdx)
leaq 0x74a8(%rip), %rsi      # 0xe1c0
movb %cl, (%rsi,%r8)
leaq 0x6abd(%rip), %r10      # 0xd7e0
movl (%r10), %r10d
leaq 0x6ac3(%rip), %r11      # 0xd7f0
cmpl (%r11), %r10d
jge 0x6e08
cmpq $0x100, %r9             # imm = 0x100
setb %r10b
testb %al, %al
setne %r11b
leaq 0x68d1(%rip), %rbx      # 0xd61f
testb %r10b, %r11b
jne 0x70ec
cmpl $0x2, (%r15)
jg 0x70bb
testb %al, %al
jne 0x703d
jmp 0x70ec
leaq 0x8(%rsp), %rbx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x49bd
leaq 0x753e(%rip), %rcx      # 0xe2c3
movb %al, (%rcx)
movq (%rbx), %rcx
leaq 0x7530(%rip), %rbx      # 0xe2c1
movsbq (%rbx), %rdx
leal 0x1(%rdx), %esi
movb %sil, (%rbx)
leaq 0x741e(%rip), %rdi      # 0xe1c0
movb %cl, (%rdi,%rdx)
cmpb $0x0, 0x6664(%rip)      # 0xd410
je 0x6ea0
leaq 0x72df(%rip), %r8       # 0xe098
movq (%r8), %r9
xorl %r10d, %r10d
leaq 0x664a(%rip), %r11      # 0xd410
xorl %r8d, %r8d
xorl %r14d, %r14d
leaq (%r10,%r14), %r15
movb (%r11,%r15), %bpl
cmpb (%r9,%r14), %bpl
jne 0x6de5
incq %r14
cmpq $0x3, %r14
jne 0x6dcc
jmp 0x6e00
cmpq $0x3, %r14
je 0x6e00
incl %r8d
cmpb $0x0, 0x3(%r10,%r11)
leaq 0x3(%r10), %r10
jne 0x6dc9
movl $0xffffffff, %r8d       # imm = 0xFFFFFFFF
movslq %r8d, %r8
jmp 0x6ea7
leaq 0x6cb1(%rip), %rax      # 0xdac0
cmpl $0x0, (%rax)
je 0x7029
leal 0x2(%r8), %eax
movb %al, (%rdx)
movsbq %dil, %rax
movb %ch, (%rsi,%rax)
leaq 0x67fd(%rip), %rbx      # 0xd629
jmp 0x70ec
movl $0xffffffff, %ebp       # imm = 0xFFFFFFFF
cmpb $0x0, 0x64e3(%rip)      # 0xd320
je 0x6f38
xorl %eax, %eax
leaq 0x64d4(%rip), %rdx      # 0xd320
xorl %ecx, %ecx
xorl %esi, %esi
leaq (%rax,%rsi), %rdi
movb (%rdx,%rdi), %dil
cmpb (%rbx,%rsi), %dil
jne 0x6e6c
incq %rsi
cmpq $0x4, %rsi
jne 0x6e50
jmp 0x6f36
cmpq $0x4, %rsi
je 0x6f36
incl %ecx
cmpb $0x0, 0x4(%rax,%rdx)
leaq 0x4(%rax), %rax
jne 0x6e4e
jmp 0x6f38
movl %esi, %eax
testl %eax, %eax
js 0x72b7
movl %eax, %eax
leaq 0x67be(%rip), %rcx      # 0xd659
jmp 0x5e16
movq $-0x1, %r8
testb %al, %al
je 0x6ed8
leaq -0x100(%rcx), %rax
cmpq $-0x180, %rax           # imm = 0xFE80
jb 0x6ed8
leaq 0x6bff(%rip), %rax      # 0xdac0
cmpl $0x0, (%rax)
jne 0x6ed8
leaq 0x65b3(%rip), %rax      # 0xd480
cmpb $0x0, (%r8,%rax)
je 0x6ed8
xorl %eax, %eax
jmp 0x6ef7
leaq 0x65c1(%rip), %rax      # 0xd4a0
cmpb $0x0, (%r8,%rax)
setne %al
je 0x6ef7
leal 0x2(%rdx), %eax
movb %al, (%rbx)
movsbq %sil, %rax
movb %ch, (%rdi,%rax)
movb $0x1, %al
leaq 0x65a2(%rip), %rcx      # 0xd4a0
testb %al, %al
je 0x6f0e
cmpb $0x0, (%r8,%rcx)
jne 0x6f20
jmp 0x72b7
leaq 0x656b(%rip), %rdx      # 0xd480
cmpb $0x0, (%r8,%rdx)
je 0x72b7
leaq 0x6559(%rip), %rdx      # 0xd480
testb %al, %al
cmovneq %rcx, %rdx
movb (%rdx,%r8), %al
jmp 0x6031
movl %ecx, %ebp
testl %ebp, %ebp
js 0x706e
leaq 0x8(%rsp), %rbx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x49bd
leaq 0x736c(%rip), %rcx      # 0xe2c3
movb %al, (%rcx)
movb (%rbx), %al
leaq 0x735f(%rip), %rcx      # 0xe2c1
movsbq (%rcx), %rdx
leal 0x1(%rdx), %esi
movb %sil, (%rcx)
leaq 0x724d(%rip), %rcx      # 0xe1c0
movb %al, (%rcx,%rdx)
movl %ebp, %eax
leaq 0x63f1(%rip), %rcx      # 0xd370
jmp 0x5e16
movl %r10d, %eax
leaq 0x710a(%rip), %r8       # 0xe098
testl %eax, %eax
js 0x6fa0
movl %eax, %eax
leaq 0x6655(%rip), %rcx      # 0xd5f0
jmp 0x5e16
leal 0x2(%rdx), %eax
movb %al, (%rbx)
movsbq %sil, %rax
movb %ch, (%rdi,%rax)
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpb $0x0, 0x6608(%rip)      # 0xd5c0
je 0x6ffb
movq (%r8), %rcx
xorl %edx, %edx
leaq 0x65fa(%rip), %rdi      # 0xd5c0
xorl %esi, %esi
xorl %r8d, %r8d
leaq (%rdx,%r8), %r9
movb (%rdi,%r9), %r9b
cmpb (%rcx,%r8), %r9b
jne 0x6fe4
incq %r8
cmpq $0x3, %r8
jne 0x6fcb
jmp 0x6ff9
cmpq $0x3, %r8
je 0x6ff9
incl %esi
cmpb $0x0, 0x3(%rdx,%rdi)
leaq 0x3(%rdx), %rdx
jne 0x6fc8
jmp 0x6ffb
movl %esi, %eax
testl %eax, %eax
js 0x72b7
movl %eax, %eax
leaq 0x65d3(%rip), %rcx      # 0xd5df
jmp 0x5e16
movl %esi, %eax
testl %eax, %eax
js 0x72b7
movl %eax, %eax
leaq 0x63d5(%rip), %rcx      # 0xd3f9
jmp 0x5e16
leaq 0x65ef(%rip), %rbx      # 0xd61f
cmpq $0x100, %r9             # imm = 0x100
jb 0x70ec
leaq 0x6dac(%rip), %rax      # 0xddf0
movb $0x41, (%rax)
movl $0x41, %edi
callq 0x1ed1
jmp 0x70ec
movl %esi, %eax
testl %eax, %eax
js 0x72b7
movl %eax, %eax
leaq 0x6540(%rip), %rcx      # 0xd5a9
jmp 0x5e16
movl $0xffffffff, %ebp       # imm = 0xFFFFFFFF
cmpb $0x0, 0x6306(%rip)      # 0xd380
je 0x7110
xorl %eax, %eax
leaq 0x62f7(%rip), %rdx      # 0xd380
xorl %ecx, %ecx
xorl %esi, %esi
leaq (%rax,%rsi), %rdi
movb (%rdx,%rdi), %dil
cmpb (%rbx,%rsi), %dil
jne 0x70a6
incq %rsi
cmpq $0x4, %rsi
jne 0x708d
jmp 0x710e
cmpq $0x4, %rsi
je 0x710e
incl %ecx
cmpb $0x0, 0x4(%rax,%rdx)
leaq 0x4(%rax), %rax
jne 0x708b
jmp 0x7110
cmpq $0x100, %r9             # imm = 0x100
setb %r9b
leaq 0x688b(%rip), %r10      # 0xd958
cmpl $0x0, (%r10)
setne %r10b
testb %al, %al
sete %al
testb %r10b, %al
jne 0x6e18
orb %r9b, %al
je 0x6e18
movl %ebp, %eax
movb (%rbx,%rax), %al
jmp 0x6031
movl %esi, %eax
testl %eax, %eax
js 0x72b7
movl %eax, %eax
leaq 0x655f(%rip), %rcx      # 0xd668
jmp 0x5e16
movl %ecx, %ebp
testl %ebp, %ebp
js 0x72f2
leaq 0x20(%rsp), %rbx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x1080
movq %rbx, %rdi
movl $0x2c, %esi
callq 0x10d0
movq %rax, %rbx
testq %rax, %rax
je 0x72d3
movb $0x0, (%rbx)
leaq 0x20(%rsp), %rdi
leaq 0x8(%rsp), %r14
movq %r14, %rsi
callq 0x49bd
leaq 0x7166(%rip), %r12      # 0xe2c3
movb %al, (%r12)
movq (%r14), %rcx
leaq 0x7156(%rip), %r15      # 0xe2c1
movsbq (%r15), %rdx
leal 0x1(%rdx), %esi
movb %sil, (%r15)
leaq 0x7044(%rip), %r13      # 0xe1c0
movb %cl, (%r13,%rdx)
testb %al, %al
setne %dl
cmpq $0x100, %rcx            # imm = 0x100
setge %cl
andb %dl, %cl
cmpb $0x1, %cl
je 0x71f9
movsbq %al, %rax
movq %rax, 0x8(%rsp)
leaq 0x1(%rbx), %rdi
leaq 0x18(%rsp), %r14
movq %r14, %rsi
callq 0x49bd
movb %al, (%r12)
leaq 0x6654(%rip), %rcx      # 0xd810
movq (%r14), %rdx
subq (%rcx), %rdx
leaq -0x3(%rdx), %rcx
movq %rcx, (%r14)
movsbq (%r15), %rsi
leal 0x1(%rsi), %edi
movb %dil, (%r15)
movb %cl, (%r13,%rsi)
testb %al, %al
setne %cl
addq $-0x83, %rdx
cmpq $-0x100, %rdx
setb %dl
andb %cl, %dl
cmpb $0x1, %dl
jne 0x72d5
leaq 0x6bf0(%rip), %rax      # 0xddf0
movb $0x4f, (%rax)
movl $0x4f, %edi
callq 0x1ed1
movb $0x0, (%r15)
xorl %eax, %eax
jmp 0x72e9
movl %r8d, %eax
testl %eax, %eax
js 0x7233
movl %eax, %eax
leaq 0x6348(%rip), %rsi      # 0xd570
movb (%rax,%rsi), %al
testb %al, %al
jne 0x6031
testb %cl, %cl
setne %al
cmpq $0x100, %rdx            # imm = 0x100
setl %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0x72b7
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
cmpb $0x0, 0x62bb(%rip)      # 0xd510
je 0x729f
leaq 0x6e3a(%rip), %rcx      # 0xe098
movq (%rcx), %rcx
xorl %edx, %edx
leaq 0x62a6(%rip), %rdi      # 0xd510
xorl %esi, %esi
xorl %r8d, %r8d
leaq (%rdx,%r8), %r9
movb (%rdi,%r9), %r9b
cmpb (%rcx,%r8), %r9b
jne 0x7288
incq %r8
cmpq $0x3, %r8
jne 0x726f
jmp 0x729d
cmpq $0x3, %r8
je 0x729d
incl %esi
cmpb $0x0, 0x3(%rdx,%rdi)
leaq 0x3(%rdx), %rdx
jne 0x726c
jmp 0x729f
movl %esi, %eax
testl %eax, %eax
js 0x72b7
movl %eax, %eax
leaq 0x62a4(%rip), %rcx      # 0xd550
movb (%rax,%rcx), %al
testb %al, %al
jne 0x6031
leaq 0x6b32(%rip), %rax      # 0xddf0
movb $0x4f, (%rax)
movl $0x4f, %edi
callq 0x1ed1
movb $0x0, (%rbx)
jmp 0x602f
jmp 0x72e9
andb 0x8(%rsp), %al
movb %al, (%r12)
movl %ebp, %eax
leaq 0x60ea(%rip), %rcx      # 0xd3d0
movb (%rax,%rcx), %al
testq %rbx, %rbx
jne 0x6031
leaq 0x6af7(%rip), %rax      # 0xddf0
movb $0x4f, (%rax)
movl $0x4f, %edi
jmp 0x6020
nop