// File: /workspace/github_c_makefile_star2_O3/jonof[P]jftekwar/jfbuild/src/kplib.c
// Function: kzread
int kzread (void *buffer, int leng)
{
	int i, j, k, bfinal, btype, hlit, hdist;

	if ((!kzfs.fil) || (leng <= 0)) return(0);

	if (kzfs.comptyp == 0)
	{
		if (kzfs.pos != kzfs.i) //Seek only when position changes
			fseek(kzfs.fil,kzfs.seek0+kzfs.pos,SEEK_SET);
		i = min(kzfs.leng-kzfs.pos,leng);
		i = (int)fread(buffer,1,i,kzfs.fil);
		kzfs.i += i; //kzfs.i is a local copy of ftell(kzfs.fil);
	}
	else if (kzfs.comptyp == 8)
	{
		zipfilmode = 1;

			//Initialize for putbuf4zip
		gzbufptr = (char *)buffer; gzbufptr = &gzbufptr[-kzfs.pos];
		kzfs.endpos = min(kzfs.pos+leng,kzfs.leng);
		if (kzfs.endpos == kzfs.pos) return(0); //Guard against reading 0 length

		if (kzfs.pos < gslidew-32768) // Must go back to start :(
		{
			if (kzfs.comptell) fseek(kzfs.fil,kzfs.seek0,SEEK_SET);

			gslidew = 0; gslider = 16384;
			kzfs.jmpplc = 0;

				//Initialize for suckbits/peekbits/getbits
			kzfs.comptell = min(kzfs.compleng,(int)sizeof(olinbuf));
			kzfs.comptell = (int)fread(&olinbuf[0],1,kzfs.comptell,kzfs.fil);
				//Make it re-load when there are < 32 bits left in FIFO
			bitpos = -(((int)sizeof(olinbuf)-4)<<3);
				//Identity: filptr + (bitpos>>3) = &olinbuf[0]
			filptr = &olinbuf[-(bitpos>>3)];
		}
		else
		{
			i = max(gslidew-32768,0); j = gslider-16384;

				//HACK: Don't unzip anything until you have to...
				//   (keeps file pointer as low as possible)
			if (kzfs.endpos <= gslidew) j = kzfs.endpos;

				//write uncompoffs on slidebuf from: i to j
			if (!((i^j)&32768))
				putbuf4zip(&slidebuf[i&32767],i,j);
			else
			{
				putbuf4zip(&slidebuf[i&32767],i,j&~32767);
				putbuf4zip(slidebuf,j&~32767,j);
			}

				//HACK: Don't unzip anything until you have to...
				//   (keeps file pointer as low as possible)
			if (kzfs.endpos <= gslidew) goto retkzread;
		}

		switch (kzfs.jmpplc)
		{
			case 0: goto kzreadplc0;
			case 1: goto kzreadplc1;
			case 2: goto kzreadplc2;
			case 3: goto kzreadplc3;
		}
kzreadplc0:;
		do
		{
			bfinal = getbits(1); btype = getbits(2);

#if 0
				//Display Huffman block offsets&lengths of input file - for debugging only!
			{
			static int ouncomppos = 0, ocomppos = 0;
			if (kzfs.comptell == sizeof(olinbuf)) i = 0;
			else if (kzfs.comptell < kzfs.compleng) i = kzfs.comptell-(sizeof(olinbuf)-4);
			else i = kzfs.comptell-(kzfs.comptell%(sizeof(olinbuf)-4));
			i += ((char *)&filptr[bitpos>>3])-((char *)(&olinbuf[0]));
			i = (i<<3)+(bitpos&7)-3;
			if (gslidew) printf(" ULng:0x%08x CLng:0x%08x.%x",gslidew-ouncomppos,(i-ocomppos)>>3,((i-ocomppos)&7)<<1);
			printf("\ntype:%d, Uoff:0x%08x Coff:0x%08x.%x",btype,gslidew,i>>3,(i&7)<<1);
			if (bfinal)
			{
				printf(" ULng:0x%08x CLng:0x%08x.%x",kzfs.leng-gslidew,((kzfs.compleng<<3)-i)>>3,(((kzfs.compleng<<3)-i)&7)<<1);
				printf("\n        Uoff:0x%08x Coff:0x%08x.0",kzfs.leng,kzfs.compleng);
				ouncomppos = ocomppos = 0;
			}
			else { ouncomppos = gslidew; ocomppos = i; }
			}
#endif

			if (btype == 0)
			{
				  //Raw (uncompressed)
				suckbits((-bitpos)&7);  //Synchronize to start of next byte
				i = getbits(16); if ((getbits(16)^i) != 0xffff) return(-1);
				for(;i;i--)
				{
					if (gslidew >= gslider)
					{
						putbuf4zip(&slidebuf[(gslider-16384)&32767],gslider-16384,gslider); gslider += 16384;
						if (gslider-16384 >= kzfs.endpos)
						{
							kzfs.jmpplc = 1; kzfs.i = i; kzfs.bfinal = bfinal;
							goto retkzread;
kzreadplc1:;         i = kzfs.i; bfinal = kzfs.bfinal;
						}
					}
					slidebuf[(gslidew++)&32767] = (char)getbits(8);
				}
				continue;
			}
			if (btype == 3) continue;

			if (btype == 1) //Fixed Huffman
			{
				hlit = 288; hdist = 32; i = 0;
				for(;i<144;i++) clen[i] = 8; //Fixed bit sizes (literals)
				for(;i<256;i++) clen[i] = 9; //Fixed bit sizes (literals)
				for(;i<280;i++) clen[i] = 7; //Fixed bit sizes (EOI,lengths)
				for(;i<288;i++) clen[i] = 8; //Fixed bit sizes (lengths)
				for(;i<320;i++) clen[i] = 5; //Fixed bit sizes (distances)
			}
			else  //Dynamic Huffman
			{
				hlit = getbits(5)+257; hdist = getbits(5)+1; j = getbits(4)+4;
				for(i=0;i<j;i++) cclen[ccind[i]] = getbits(3);
				for(;i<19;i++) cclen[ccind[i]] = 0;
				hufgencode(cclen,19,ibuf0,nbuf0);

				j = 0; k = hlit+hdist;
				while (j < k)
				{
					i = hufgetsym(ibuf0,nbuf0);
					if (i < 16) { clen[j++] = i; continue; }
					if (i == 16)
						{ for(i=getbits(2)+3;i;i--) { clen[j] = clen[j-1]; j++; } }
					else
					{
						if (i == 17) i = getbits(3)+3; else i = getbits(7)+11;
						for(;i;i--) clen[j++] = 0;
					}
				}
			}

			hufgencode(clen,hlit,ibuf0,nbuf0);
			qhufgencode(ibuf0,nbuf0,qhufval0,qhufbit0,LOGQHUFSIZ0);

			hufgencode(&clen[hlit],hdist,ibuf1,nbuf1);
			qhufgencode(ibuf1,nbuf1,qhufval1,qhufbit1,LOGQHUFSIZ1);

			while (1)
			{
				if (gslidew >= gslider)
				{
					putbuf4zip(&slidebuf[(gslider-16384)&32767],gslider-16384,gslider); gslider += 16384;
					if (gslider-16384 >= kzfs.endpos)
					{
						kzfs.jmpplc = 2; kzfs.bfinal = bfinal; goto retkzread;
kzreadplc2:;      bfinal = kzfs.bfinal;
					}
				}

				k = peekbits(LOGQHUFSIZ0);
				if (qhufbit0[k]) { i = qhufval0[k]; suckbits((int)qhufbit0[k]); }
				else i = hufgetsym(ibuf0,nbuf0);

				if (i < 256) { slidebuf[(gslidew++)&32767] = (char)i; continue; }
				if (i == 256) break;
				i = getbits(hxbit[i+30-257][0]) + hxbit[i+30-257][1];

				k = peekbits(LOGQHUFSIZ1);
				if (qhufbit1[k]) { j = qhufval1[k]; suckbits((int)qhufbit1[k]); }
				else j = hufgetsym(ibuf1,nbuf1);

				j = getbits(hxbit[j][0]) + hxbit[j][1];
				for(;i;i--,gslidew++) slidebuf[gslidew&32767] = slidebuf[(gslidew-j)&32767];
			}
		} while (!bfinal);

		gslider -= 16384;
		if (!((gslider^gslidew)&32768))
			putbuf4zip(&slidebuf[gslider&32767],gslider,gslidew);
		else
		{
			putbuf4zip(&slidebuf[gslider&32767],gslider,gslidew&~32767);
			putbuf4zip(slidebuf,gslidew&~32767,gslidew);
		}
kzreadplc3:; kzfs.jmpplc = 3;
	}

retkzread:;
	i = kzfs.pos;
	kzfs.pos += leng; if (kzfs.pos > kzfs.leng) kzfs.pos = kzfs.leng;
	return(kzfs.pos-i);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %esi, %r13d
movq 0x56f107(%rip), %rcx    # 0x5b6fc8
testq %rcx, %rcx
sete %dl
testl %esi, %esi
setle %sil
xorl %eax, %eax
orb %dl, %sil
jne 0x47f61
movq %rdi, %r14
movl 0x56f0ef(%rip), %edx    # 0x5b6fd0
cmpl $0x8, %edx
je 0x47f70
testl %edx, %edx
jne 0x47f3e
movl 0x56f104(%rip), %esi    # 0x5b6ff8
cmpl 0x56f116(%rip), %esi    # 0x5b7010
je 0x47f19
addl 0x56f0d6(%rip), %esi    # 0x5b6fd8
movq %rcx, %rdi
xorl %edx, %edx
callq 0x6c70
movl 0x56f0e6(%rip), %esi    # 0x5b6ff8
movq 0x56f0af(%rip), %rcx    # 0x5b6fc8
movl 0x56f0d1(%rip), %eax    # 0x5b6ff0
subl %esi, %eax
cmpl %r13d, %eax
cmovgel %r13d, %eax
movslq %eax, %rdx
movl $0x1, %esi
movq %r14, %rdi
callq 0x6550
addl %eax, 0x56f0d2(%rip)    # 0x5b7010
movl 0x56f0b4(%rip), %eax    # 0x5b6ff8
addl %eax, %r13d
movl 0x56f0a3(%rip), %ecx    # 0x5b6ff0
cmpl %ecx, %r13d
cmovgel %ecx, %r13d
movl %r13d, 0x56f09d(%rip)   # 0x5b6ff8
subl %eax, %r13d
movl %r13d, %eax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movb $0x1, 0x56f1c9(%rip)    # 0x5b7140
movslq 0x56f07a(%rip), %r12    # 0x5b6ff8
subq %r12, %r14
movq %r14, 0x56f1c0(%rip)    # 0x5b7148
leal (%r12,%r13), %edx
movl 0x56f05e(%rip), %ebx    # 0x5b6ff0
cmpl %ebx, %edx
cmovll %edx, %ebx
movl %ebx, 0x56f063(%rip)    # 0x5b7000
cmpl %r12d, %ebx
je 0x47f61
movl 0x56f077(%rip), %r15d   # 0x5b7020
leal -0x8000(%r15), %edx
cmpl %edx, %r12d
movq %r13, 0x10(%rsp)
jge 0x48043
cmpl $0x0, 0x56f023(%rip)    # 0x5b6fe8
je 0x47fde
movl 0x56f00b(%rip), %esi    # 0x5b6fd8
movq %rcx, %rdi
xorl %edx, %edx
callq 0x6c70
movq 0x56efea(%rip), %rcx    # 0x5b6fc8
xorl %eax, %eax
movl %eax, 0x56f03a(%rip)    # 0x5b7020
movl $0x4000, 0x56f160(%rip) # imm = 0x4000
movl %eax, 0x56f012(%rip)    # 0x5b7008
movl 0x56efe4(%rip), %eax    # 0x5b6fe0
movl $0x10000, %edx          # imm = 0x10000
cmpl %edx, %eax
cmovll %eax, %edx
movl %edx, 0x56efdc(%rip)    # 0x5b6fe8
movslq %edx, %rdx
leaq 0x56f14a(%rip), %rdi    # 0x5b7160
movl $0x1, %esi
callq 0x6550
movl %eax, 0x56efc2(%rip)    # 0x5b6fe8
movl $0xfff80020, 0x57f130(%rip) # imm = 0xFFF80020
leaq 0x57f125(%rip), %rax    # 0x5c715c
movq %rax, 0x57f12a(%rip)    # 0x5c7168
jmp 0x48121
xorl %eax, %eax
testl %edx, %edx
cmovgl %edx, %eax
movl $0xffffc000, %ebp       # imm = 0xFFFFC000
addl 0x56f0fb(%rip), %ebp    # 0x5b7150
cmpl %r15d, %ebx
cmovlel %ebx, %ebp
movl %ebp, %ecx
xorw %ax, %cx
js 0x48099
cmpl %eax, %r12d
movl %eax, %ecx
cmovgl %r12d, %ecx
cmpl %ebp, %ebx
cmovll %ebx, %ebp
subl %ecx, %ebp
jle 0x48113
movl %eax, %edx
andl $0x7fff, %edx           # imm = 0x7FFF
leaq 0x57f0e9(%rip), %rdi    # 0x5c7170
addq %rdx, %rdi
movl %ecx, %edx
addq %rdx, %r14
subl %eax, %ecx
movslq %ecx, %rsi
addq %rdi, %rsi
jmp 0x48108
movl %ebp, %r13d
andl $0xffff8000, %r13d      # imm = 0xFFFF8000
cmpl %eax, %r12d
movl %eax, %edx
cmovgl %r12d, %edx
cmpl %r13d, %ebx
movl %r13d, %ecx
cmovll %ebx, %ecx
subl %edx, %ecx
jle 0x480e0
movl %eax, %esi
andl $0x7fff, %esi           # imm = 0x7FFF
leaq 0x57f0a8(%rip), %r8     # 0x5c7170
addq %rsi, %r8
movl %edx, %edi
addq %r14, %rdi
subl %eax, %edx
movslq %edx, %rsi
addq %r8, %rsi
movslq %ecx, %rdx
callq 0x60c0
cmpl %r13d, %r12d
movl %r13d, %eax
cmovgl %r12d, %eax
cmpl %ebp, %ebx
cmovll %ebx, %ebp
subl %eax, %ebp
jle 0x48113
movslq %eax, %rcx
addq %rcx, %r14
subl %r13d, %eax
cltq
leaq 0x57f06b(%rip), %rsi    # 0x5c7170
addq %rax, %rsi
movslq %ebp, %rdx
movq %r14, %rdi
callq 0x60c0
cmpl %r15d, %ebx
movq 0x10(%rsp), %r13
jle 0x47f3e
movl 0x56eee1(%rip), %eax    # 0x5b7008
cmpl $0x1, %eax
je 0x4814a
cmpl $0x2, %eax
je 0x4813b
cmpl $0x3, %eax
jne 0x48166
jmp 0x493b0
movl 0x56eed7(%rip), %eax    # 0x5b7018
movl %eax, 0x8(%rsp)
jmp 0x4943a
movl 0x56eec0(%rip), %ebx    # 0x5b7010
movl 0x56eec2(%rip), %eax    # 0x5b7018
movl %eax, 0x8(%rsp)
movl 0x57efff(%rip), %r14d   # 0x5c7160
jmp 0x4916a
movq 0x57effb(%rip), %rax    # 0x5c7168
movl 0x57efed(%rip), %ebx    # 0x5c7160
movl %ebx, %ecx
sarl $0x3, %ecx
movslq %ecx, %rcx
movl (%rax,%rcx), %ebp
leal 0x1(%rbx), %r14d
movl %r14d, 0x57efd7(%rip)   # 0x5c7160
cmpl $-0x1, %ebx
jl 0x48279
cmpb $0x0, 0x56efa7(%rip)    # 0x5b7140
je 0x481f4
movl 0x57efbb(%rip), %eax    # 0x5c715c
movl %eax, 0x56efb9(%rip)    # 0x5b7160
movl 0x56ee33(%rip), %eax    # 0x5b6fe0
subl 0x56ee35(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56ee01(%rip), %rcx    # 0x5b6fc8
leaq 0x56ef96(%rip), %rdi    # 0x5b7164
movl $0x1, %esi
callq 0x6550
addl %eax, 0x56ee0a(%rip)    # 0x5b6fe8
movl $0xfff80020, %r14d      # imm = 0xFFF80020
addl 0x57ef75(%rip), %r14d   # 0x5c7160
movq 0x57ef76(%rip), %rcx    # 0x5c7168
jmp 0x4826f
movq 0x588c05(%rip), %rcx    # 0x5d0e00
testq %rcx, %rcx
je 0x48227
movq %rcx, 0x57ef61(%rip)    # 0x5c7168
movq $0x0, 0x588bee(%rip) # 0x5d0e00
movl 0x5ac098(%rip), %eax    # 0x5f42b0
shll $0x3, %eax
movl %ebx, %r14d
subl %eax, %r14d
addl $0x21, %r14d
jmp 0x4826f
movl 0x8(%rax), %ecx
bswapl %ecx
movl %ecx, 0x5ac07e(%rip)    # 0x5f42b0
movslq %ecx, %rcx
addq %rax, %rcx
addq $0xc, %rcx
movq %rcx, 0x588bbd(%rip)    # 0x5d0e00
movl (%rax), %ecx
movl %ecx, 0x5ac069(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rax)  # imm = 0x54414449
jne 0x4825d
movl 0x10(%rax), %eax
movl %eax, 0x5ac05b(%rip)    # 0x5f42b8
leaq 0x5ac054(%rip), %rcx    # 0x5f42b8
movq %rcx, 0x57eefd(%rip)    # 0x5c7168
leal -0x1f(%rbx), %r14d
movl %r14d, 0x57eeea(%rip)   # 0x5c7160
movq %rcx, %rax
andl $0x7, %ebx
xorl %ecx, %ecx
btl %ebx, %ebp
setb %cl
movl %ecx, 0x8(%rsp)
movl %r14d, %ecx
sarl $0x3, %ecx
movslq %ecx, %rcx
movl (%rax,%rcx), %ebx
leal 0x2(%r14), %r15d
movl %r15d, 0x57eec1(%rip)   # 0x5c7160
cmpl $-0x2, %r14d
jl 0x48386
cmpb $0x0, 0x56ee90(%rip)    # 0x5b7140
je 0x48304
movl 0x57eea4(%rip), %eax    # 0x5c715c
movl %eax, 0x56eea2(%rip)    # 0x5b7160
movl 0x56ed1c(%rip), %eax    # 0x5b6fe0
subl 0x56ed1e(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56ecea(%rip), %rcx    # 0x5b6fc8
leaq 0x56ee7f(%rip), %rdi    # 0x5b7164
movl $0x1, %esi
callq 0x6550
addl %eax, 0x56ecf3(%rip)    # 0x5b6fe8
movl $0xfff80020, %r15d      # imm = 0xFFF80020
addl 0x57ee5e(%rip), %r15d   # 0x5c7160
jmp 0x4837f
movq 0x588af5(%rip), %rcx    # 0x5d0e00
testq %rcx, %rcx
je 0x48337
movq %rcx, 0x57ee51(%rip)    # 0x5c7168
movq $0x0, 0x588ade(%rip) # 0x5d0e00
movl 0x5abf88(%rip), %eax    # 0x5f42b0
shll $0x3, %eax
movl %r14d, %r15d
subl %eax, %r15d
addl $0x22, %r15d
jmp 0x4837f
movl 0x8(%rax), %ecx
bswapl %ecx
movl %ecx, 0x5abf6e(%rip)    # 0x5f42b0
movslq %ecx, %rcx
addq %rax, %rcx
addq $0xc, %rcx
movq %rcx, 0x588aad(%rip)    # 0x5d0e00
movl (%rax), %ecx
movl %ecx, 0x5abf59(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rax)  # imm = 0x54414449
jne 0x4836d
movl 0x10(%rax), %eax
movl %eax, 0x5abf4b(%rip)    # 0x5f42b8
leaq 0x5abf44(%rip), %rax    # 0x5f42b8
movq %rax, 0x57eded(%rip)    # 0x5c7168
leal -0x1e(%r14), %r15d
movl %r15d, 0x57edda(%rip)   # 0x5c7160
andb $0x7, %r14b
movl %r14d, %ecx
sarl %cl, %ebx
andl $0x3, %ebx
leaq 0x2f603(%rip), %rax     # 0x7799c
movslq (%rax,%rbx,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl %r15d, %r14d
negl %r14d
andl $0x7, %r14d
addl %r15d, %r14d
movl %r14d, 0x57edaa(%rip)   # 0x5c7160
js 0x485f9
cmpb $0x0, 0x56ed7d(%rip)    # 0x5b7140
je 0x4853f
movl 0x57ed8d(%rip), %eax    # 0x5c715c
movl %eax, 0x56ed8b(%rip)    # 0x5b7160
movl 0x56ec05(%rip), %eax    # 0x5b6fe0
subl 0x56ec07(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56ebd3(%rip), %rcx    # 0x5b6fc8
leaq 0x56ed68(%rip), %rdi    # 0x5b7164
movl $0x1, %esi
callq 0x6550
addl %eax, 0x56ebdc(%rip)    # 0x5b6fe8
movl $0xfff80020, %r14d      # imm = 0xFFF80020
addl 0x57ed47(%rip), %r14d   # 0x5c7160
jmp 0x485f9
movq 0x57ed43(%rip), %rax    # 0x5c7168
movl %r15d, %ecx
sarl $0x3, %ecx
movslq %ecx, %rcx
movl (%rax,%rcx), %ebx
leal 0x5(%r15), %r12d
movl %r12d, 0x57ed24(%rip)   # 0x5c7160
cmpl $-0x5, %r15d
jl 0x48712
cmpb $0x0, 0x56ecf3(%rip)    # 0x5b7140
je 0x48572
movl 0x57ed03(%rip), %eax    # 0x5c715c
movl %eax, 0x56ed01(%rip)    # 0x5b7160
movl 0x56eb7b(%rip), %eax    # 0x5b6fe0
subl 0x56eb7d(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56eb49(%rip), %rcx    # 0x5b6fc8
leaq 0x56ecde(%rip), %rdi    # 0x5b7164
movl $0x1, %esi
callq 0x6550
addl %eax, 0x56eb52(%rip)    # 0x5b6fe8
movl $0xfff80020, %r12d      # imm = 0xFFF80020
addl 0x57ecbd(%rip), %r12d   # 0x5c7160
movq 0x57ecbe(%rip), %rcx    # 0x5c7168
jmp 0x48708
xorl %ecx, %ecx
leaq 0x586cb8(%rip), %rax    # 0x5cf170
movaps 0x2eba1(%rip), %xmm0    # 0x77060
movaps %xmm0, (%rcx,%rax)
addq $0x10, %rcx
cmpq $0x240, %rcx            # imm = 0x240
jne 0x484bf
xorl %ecx, %ecx
movaps 0x2f357(%rip), %xmm1    # 0x77830
movaps %xmm1, 0x240(%rax,%rcx,4)
addq $0x4, %rcx
cmpq $0x70, %rcx
jne 0x484d9
xorl %ecx, %ecx
movaps 0x2f34c(%rip), %xmm1    # 0x77840
movaps %xmm1, 0x400(%rax,%rcx,4)
addq $0x4, %rcx
cmpq $0x18, %rcx
jne 0x484f4
movaps %xmm0, 0x5870c3(%rip)   # 0x5cf5d0
movaps %xmm0, 0x5870cc(%rip)   # 0x5cf5e0
xorl %ecx, %ecx
movaps 0x2f333(%rip), %xmm0    # 0x77850
movaps %xmm0, 0x480(%rax,%rcx,4)
addq $0x4, %rcx
cmpq $0x20, %rcx
jne 0x4851d
movl $0x20, %r15d
movl $0x120, %ebx            # imm = 0x120
jmp 0x48ee6
movq 0x5888ba(%rip), %rax    # 0x5d0e00
testq %rax, %rax
je 0x485ac
movq %rax, 0x57ec16(%rip)    # 0x5c7168
movq $0x0, 0x5888a3(%rip) # 0x5d0e00
movl 0x5abd4d(%rip), %eax    # 0x5f42b0
shll $0x3, %eax
subl %eax, %r14d
addl $0x20, %r14d
jmp 0x485f9
movq 0x588887(%rip), %rcx    # 0x5d0e00
testq %rcx, %rcx
je 0x486c0
movq %rcx, 0x57ebdf(%rip)    # 0x5c7168
movq $0x0, 0x58886c(%rip) # 0x5d0e00
movl 0x5abd16(%rip), %eax    # 0x5f42b0
shll $0x3, %eax
movl %r15d, %r12d
subl %eax, %r12d
addl $0x25, %r12d
jmp 0x48708
movq 0x57ebb5(%rip), %rax    # 0x5c7168
movl 0x8(%rax), %ecx
bswapl %ecx
movl %ecx, 0x5abcf2(%rip)    # 0x5f42b0
movslq %ecx, %rcx
leaq 0xc(%rax,%rcx), %rcx
movq %rcx, 0x588833(%rip)    # 0x5d0e00
movl (%rax), %ecx
movl %ecx, 0x5abcdf(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rax)  # imm = 0x54414449
jne 0x485e7
movl 0x10(%rax), %eax
movl %eax, 0x5abcd1(%rip)    # 0x5f42b8
leaq 0x5abcca(%rip), %rax    # 0x5f42b8
movq %rax, 0x57eb73(%rip)    # 0x5c7168
addl $-0x20, %r14d
movq 0x57eb68(%rip), %rax    # 0x5c7168
movl %r14d, %ecx
sarl $0x3, %ecx
movslq %ecx, %rcx
movl (%rax,%rcx), %ebp
leal 0x10(%r14), %r15d
movl %r15d, 0x57eb49(%rip)   # 0x5c7160
cmpl $-0x10, %r14d
jl 0x48fc2
cmpb $0x0, 0x56eb18(%rip)    # 0x5b7140
je 0x48686
movl 0x57eb2c(%rip), %eax    # 0x5c715c
movl %eax, 0x56eb2a(%rip)    # 0x5b7160
movl 0x56e9a4(%rip), %eax    # 0x5b6fe0
subl 0x56e9a6(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56e972(%rip), %rcx    # 0x5b6fc8
leaq 0x56eb07(%rip), %rdi    # 0x5b7164
movl $0x1, %esi
callq 0x6550
addl %eax, 0x56e97b(%rip)    # 0x5b6fe8
movl $0xfff80020, %r15d      # imm = 0xFFF80020
addl 0x57eae6(%rip), %r15d   # 0x5c7160
movq 0x57eae7(%rip), %rcx    # 0x5c7168
jmp 0x48fb8
movq 0x588773(%rip), %rcx    # 0x5d0e00
testq %rcx, %rcx
je 0x48f70
movq %rcx, 0x57eacb(%rip)    # 0x5c7168
movq $0x0, 0x588758(%rip) # 0x5d0e00
movl 0x5abc02(%rip), %eax    # 0x5f42b0
shll $0x3, %eax
movl %r14d, %r15d
subl %eax, %r15d
addl $0x30, %r15d
jmp 0x48fb8
movl 0x8(%rax), %ecx
bswapl %ecx
movl %ecx, 0x5abbe5(%rip)    # 0x5f42b0
movslq %ecx, %rcx
addq %rax, %rcx
addq $0xc, %rcx
movq %rcx, 0x588724(%rip)    # 0x5d0e00
movl (%rax), %ecx
movl %ecx, 0x5abbd0(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rax)  # imm = 0x54414449
jne 0x486f6
movl 0x10(%rax), %eax
movl %eax, 0x5abbc2(%rip)    # 0x5f42b8
leaq 0x5abbbb(%rip), %rcx    # 0x5f42b8
movq %rcx, 0x57ea64(%rip)    # 0x5c7168
leal -0x1b(%r15), %r12d
movl %r12d, 0x57ea51(%rip)   # 0x5c7160
movq %rcx, %rax
andb $0x7, %r15b
movl %r15d, %ecx
sarl %cl, %ebx
andl $0x1f, %ebx
addl $0x101, %ebx            # imm = 0x101
movl %r12d, %ecx
sarl $0x3, %ecx
movslq %ecx, %rcx
movl (%rax,%rcx), %r14d
leal 0x5(%r12), %r13d
movl %r13d, 0x57ea23(%rip)   # 0x5c7160
cmpl $-0x5, %r12d
movq %rbx, 0x20(%rsp)
jl 0x48834
cmpb $0x0, 0x56e9ed(%rip)    # 0x5b7140
je 0x487ae
movl 0x57ea01(%rip), %eax    # 0x5c715c
movl %eax, 0x56e9ff(%rip)    # 0x5b7160
movl 0x56e879(%rip), %eax    # 0x5b6fe0
subl 0x56e87b(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56e847(%rip), %rcx    # 0x5b6fc8
leaq 0x56e9dc(%rip), %rdi    # 0x5b7164
movl $0x1, %esi
callq 0x6550
addl %eax, 0x56e850(%rip)    # 0x5b6fe8
movl $0xfff80020, %r13d      # imm = 0xFFF80020
addl 0x57e9bb(%rip), %r13d   # 0x5c7160
movq 0x57e9bc(%rip), %rcx    # 0x5c7168
jmp 0x4882a
movq 0x58864b(%rip), %rcx    # 0x5d0e00
testq %rcx, %rcx
je 0x487e1
movq %rcx, 0x57e9a7(%rip)    # 0x5c7168
movq $0x0, 0x588634(%rip) # 0x5d0e00
movl 0x5abade(%rip), %eax    # 0x5f42b0
shll $0x3, %eax
movl %r12d, %r13d
subl %eax, %r13d
addl $0x25, %r13d
jmp 0x4882a
movl 0x8(%rax), %ecx
bswapl %ecx
movl %ecx, 0x5abac4(%rip)    # 0x5f42b0
movslq %ecx, %rcx
addq %rax, %rcx
addq $0xc, %rcx
movq %rcx, 0x588603(%rip)    # 0x5d0e00
movl (%rax), %ecx
movl %ecx, 0x5abaaf(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rax)  # imm = 0x54414449
jne 0x48817
movl 0x10(%rax), %eax
movl %eax, 0x5abaa1(%rip)    # 0x5f42b8
leaq 0x5aba9a(%rip), %rcx    # 0x5f42b8
movq %rcx, 0x57e943(%rip)    # 0x5c7168
leal -0x1b(%r12), %r13d
movl %r13d, 0x57e92f(%rip)   # 0x5c7160
movq %rcx, %rax
andb $0x7, %r12b
movl %r12d, %ecx
sarl %cl, %r14d
andl $0x1f, %r14d
incl %r14d
movl %r13d, %ecx
sarl $0x3, %ecx
movslq %ecx, %rcx
movl (%rax,%rcx), %ebx
leal 0x4(%r13), %r12d
movl %r12d, 0x57e904(%rip)   # 0x5c7160
cmpl $-0x4, %r13d
movq %r14, 0x18(%rsp)
jl 0x48952
cmpb $0x0, 0x56e8ce(%rip)    # 0x5b7140
je 0x488cd
movl 0x57e8e2(%rip), %eax    # 0x5c715c
movl %eax, 0x56e8e0(%rip)    # 0x5b7160
movl 0x56e75a(%rip), %eax    # 0x5b6fe0
subl 0x56e75c(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56e728(%rip), %rcx    # 0x5b6fc8
leaq 0x56e8bd(%rip), %rdi    # 0x5b7164
movl $0x1, %esi
callq 0x6550
addl %eax, 0x56e731(%rip)    # 0x5b6fe8
movl $0xfff80020, %r12d      # imm = 0xFFF80020
addl 0x57e89c(%rip), %r12d   # 0x5c7160
movq 0x57e89d(%rip), %rcx    # 0x5c7168
jmp 0x48948
movq 0x58852c(%rip), %rcx    # 0x5d0e00
testq %rcx, %rcx
je 0x48900
movq %rcx, 0x57e888(%rip)    # 0x5c7168
movq $0x0, 0x588515(%rip) # 0x5d0e00
movl 0x5ab9bf(%rip), %eax    # 0x5f42b0
shll $0x3, %eax
movl %r13d, %r12d
subl %eax, %r12d
addl $0x24, %r12d
jmp 0x48948
movl 0x8(%rax), %ecx
bswapl %ecx
movl %ecx, 0x5ab9a5(%rip)    # 0x5f42b0
movslq %ecx, %rcx
addq %rax, %rcx
addq $0xc, %rcx
movq %rcx, 0x5884e4(%rip)    # 0x5d0e00
movl (%rax), %ecx
movl %ecx, 0x5ab990(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rax)  # imm = 0x54414449
jne 0x48936
movl 0x10(%rax), %eax
movl %eax, 0x5ab982(%rip)    # 0x5f42b8
leaq 0x5ab97b(%rip), %rcx    # 0x5f42b8
movq %rcx, 0x57e824(%rip)    # 0x5c7168
leal -0x1c(%r13), %r12d
movl %r12d, 0x57e811(%rip)   # 0x5c7160
movq %rcx, %rax
andb $0x7, %r13b
movl %r13d, %ecx
sarl %cl, %ebx
andl $0xf, %ebx
movq $-0x4, %rbp
subq %rbx, %rbp
leaq 0x2f081(%rip), %rbx     # 0x779f0
movq $-0x1, %r14
leaq 0x586cf3(%rip), %r15    # 0x5cf670
movl %r12d, %ecx
sarl $0x3, %ecx
movslq %ecx, %rcx
movl (%rax,%rcx), %r13d
leal 0x3(%r12), %edx
movl %edx, 0x57e7cb(%rip)    # 0x5c7160
cmpl $-0x3, %r12d
jl 0x48a84
cmpb $0x0, 0x56e79a(%rip)    # 0x5b7140
je 0x48a01
movl 0x57e7ae(%rip), %eax    # 0x5c715c
movl %eax, 0x56e7ac(%rip)    # 0x5b7160
movl 0x56e626(%rip), %eax    # 0x5b6fe0
subl 0x56e628(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56e5f4(%rip), %rcx    # 0x5b6fc8
movl $0x1, %esi
leaq 0x56e784(%rip), %rdi    # 0x5b7164
callq 0x6550
addl %eax, 0x56e5fd(%rip)    # 0x5b6fe8
movl 0x57e76f(%rip), %edx    # 0x5c7160
movl $0xfff80020, %eax       # imm = 0xFFF80020
addl %eax, %edx
movq 0x57e769(%rip), %rcx    # 0x5c7168
jmp 0x48a7b
movq 0x5883f8(%rip), %rcx    # 0x5d0e00
testq %rcx, %rcx
je 0x48a32
movq %rcx, 0x57e754(%rip)    # 0x5c7168
movq $0x0, 0x5883e1(%rip) # 0x5d0e00
movl 0x5ab88b(%rip), %eax    # 0x5f42b0
shll $0x3, %eax
movl %r12d, %edx
subl %eax, %edx
addl $0x23, %edx
jmp 0x48a7b
movl 0x8(%rax), %ecx
bswapl %ecx
movl %ecx, 0x5ab873(%rip)    # 0x5f42b0
movslq %ecx, %rcx
addq %rax, %rcx
addq $0xc, %rcx
movq %rcx, 0x5883b2(%rip)    # 0x5d0e00
movl (%rax), %ecx
movl %ecx, 0x5ab85e(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rax)  # imm = 0x54414449
jne 0x48a68
movl 0x10(%rax), %eax
movl %eax, 0x5ab850(%rip)    # 0x5f42b8
leaq 0x5ab849(%rip), %rcx    # 0x5f42b8
movq %rcx, 0x57e6f2(%rip)    # 0x5c7168
leal -0x1d(%r12), %edx
movl %edx, 0x57e6df(%rip)    # 0x5c7160
movq %rcx, %rax
andb $0x7, %r12b
movl %r12d, %ecx
sarl %cl, %r13d
andl $0x7, %r13d
movslq (%rbx), %rcx
movl %r13d, (%r15,%rcx,4)
addq $0x4, %rbx
leaq (%r14,%rbp), %rcx
incq %rcx
incq %r14
movl %edx, %r12d
cmpq $-0x1, %rcx
jne 0x4897d
cmpq $0x11, %r14
ja 0x48ad2
movslq (%rbx), %rax
movl $0x0, (%r15,%rax,4)
incq %r14
addq $0x4, %rbx
cmpq $0x12, %r14
jb 0x48aba
leaq 0x586b97(%rip), %rdi    # 0x5cf670
leaq 0x586be0(%rip), %r13    # 0x5cf6c0
leaq 0x587059(%rip), %rbx    # 0x5cfb40
movl $0x13, %esi
movq %r13, %rdx
movq %rbx, %rcx
callq 0x49b99
movq 0x20(%rsp), %rax
movq 0x18(%rsp), %rcx
leal (%rcx,%rax), %ebp
xorl %r14d, %r14d
leaq 0x586662(%rip), %r15    # 0x5cf170
movl %ebp, 0xc(%rsp)
movq %r13, %rdi
movq %rbx, %rsi
callq 0x49c30
movslq %r14d, %r12
cmpl $0xf, %eax
jg 0x48b33
leal 0x1(%r12), %r14d
movl %eax, (%r15,%r12,4)
jmp 0x48ed3
movq %r13, %rbx
movq 0x57e62b(%rip), %rcx    # 0x5c7168
movl 0x57e61d(%rip), %ebp    # 0x5c7160
movl %ebp, %edx
sarl $0x3, %edx
movslq %edx, %rdx
movl (%rcx,%rdx), %r13d
cmpl $0x11, %eax
je 0x48bd1
cmpl $0x10, %eax
jne 0x48c45
leal 0x2(%rbp), %eax
movl %eax, 0x57e5fa(%rip)    # 0x5c7160
cmpl $-0x2, %ebp
jl 0x48dc4
cmpb $0x0, 0x56e5ca(%rip)    # 0x5b7140
je 0x48cd3
movl 0x57e5da(%rip), %eax    # 0x5c715c
movl %eax, 0x56e5d8(%rip)    # 0x5b7160
movl 0x56e452(%rip), %eax    # 0x5b6fe0
subl 0x56e454(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56e420(%rip), %rcx    # 0x5b6fc8
movl $0x1, %esi
leaq 0x56e5b0(%rip), %rdi    # 0x5b7164
callq 0x6550
addl %eax, 0x56e429(%rip)    # 0x5b6fe8
movl 0x57e59b(%rip), %eax    # 0x5c7160
movl $0xfff80020, %ecx       # imm = 0xFFF80020
addl %ecx, %eax
jmp 0x48dbe
leal 0x3(%rbp), %eax
movl %eax, 0x57e586(%rip)    # 0x5c7160
cmpl $-0x3, %ebp
jl 0x48cb5
cmpb $0x0, 0x56e556(%rip)    # 0x5b7140
je 0x48d0a
movl 0x57e566(%rip), %eax    # 0x5c715c
movl %eax, 0x56e564(%rip)    # 0x5b7160
movl 0x56e3de(%rip), %eax    # 0x5b6fe0
subl 0x56e3e0(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56e3ac(%rip), %rcx    # 0x5b6fc8
movl $0x1, %esi
leaq 0x56e53c(%rip), %rdi    # 0x5b7164
callq 0x6550
addl %eax, 0x56e3b5(%rip)    # 0x5b6fe8
movl 0x57e527(%rip), %ecx    # 0x5c7160
movl $0xfff80020, %eax       # imm = 0xFFF80020
addl %eax, %ecx
jmp 0x48e3e
leal 0x7(%rbp), %eax
movl %eax, 0x57e512(%rip)    # 0x5c7160
cmpl $-0x7, %ebp
jl 0x48cc4
cmpb $0x0, 0x56e4e6(%rip)    # 0x5b7140
je 0x48d41
movl 0x57e4f6(%rip), %eax    # 0x5c715c
movl %eax, 0x56e4f4(%rip)    # 0x5b7160
movl 0x56e36e(%rip), %eax    # 0x5b6fe0
subl 0x56e370(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56e33c(%rip), %rcx    # 0x5b6fc8
movl $0x1, %esi
leaq 0x56e4cc(%rip), %rdi    # 0x5b7164
callq 0x6550
addl %eax, 0x56e345(%rip)    # 0x5b6fe8
movl 0x57e4b7(%rip), %ecx    # 0x5c7160
movl $0xfff80020, %eax       # imm = 0xFFF80020
addl %eax, %ecx
jmp 0x48e90
movl $0x3, %eax
movl $0x7, %edx
jmp 0x48ea0
movl $0xb, %eax
movl $0x7f, %edx
jmp 0x48ea0
movq 0x588126(%rip), %rax    # 0x5d0e00
testq %rax, %rax
je 0x48d78
movq %rax, 0x57e47e(%rip)    # 0x5c7168
movq $0x0, 0x58810b(%rip) # 0x5d0e00
movl 0x5ab5b5(%rip), %ecx    # 0x5f42b0
shll $0x3, %ecx
movl %ebp, %eax
subl %ecx, %eax
addl $0x22, %eax
jmp 0x48dbe
movq 0x5880ef(%rip), %rax    # 0x5d0e00
testq %rax, %rax
je 0x48df8
movq %rax, 0x57e447(%rip)    # 0x5c7168
movq $0x0, 0x5880d4(%rip) # 0x5d0e00
movl 0x5ab57e(%rip), %eax    # 0x5f42b0
shll $0x3, %eax
movl %ebp, %ecx
subl %eax, %ecx
addl $0x23, %ecx
jmp 0x48e3e
movq 0x5880b8(%rip), %rax    # 0x5d0e00
testq %rax, %rax
je 0x48e4a
movq %rax, 0x57e410(%rip)    # 0x5c7168
movq $0x0, 0x58809d(%rip) # 0x5d0e00
movl 0x5ab547(%rip), %eax    # 0x5f42b0
shll $0x3, %eax
movl %ebp, %ecx
subl %eax, %ecx
addl $0x27, %ecx
jmp 0x48e90
movl 0x8(%rcx), %eax
bswapl %eax
movl %eax, 0x5ab52d(%rip)    # 0x5f42b0
cltq
addq %rcx, %rax
addq $0xc, %rax
movq %rax, 0x58806d(%rip)    # 0x5d0e00
movl (%rcx), %eax
movl %eax, 0x5ab519(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rcx)  # imm = 0x54414449
jne 0x48dad
movl 0x10(%rcx), %eax
movl %eax, 0x5ab50b(%rip)    # 0x5f42b8
leaq 0x5ab504(%rip), %rax    # 0x5f42b8
movq %rax, 0x57e3ad(%rip)    # 0x5c7168
leal -0x1e(%rbp), %eax
movl %eax, 0x57e39c(%rip)    # 0x5c7160
andb $0x7, %bpl
movl %ebp, %ecx
sarl %cl, %r13d
movl -0x4(%r15,%r12,4), %eax
shlq $0x2, %r12
andl $0x3, %r13d
addq $0x3, %r13
xorl %ecx, %ecx
leaq (%r12,%rcx,4), %rdx
movl %eax, (%r15,%rdx)
incq %rcx
cmpl %ecx, %r13d
jne 0x48de0
addl %ecx, %r14d
jmp 0x48ec5
movl 0x8(%rcx), %eax
bswapl %eax
movl %eax, 0x5ab4ad(%rip)    # 0x5f42b0
cltq
addq %rcx, %rax
addq $0xc, %rax
movq %rax, 0x587fed(%rip)    # 0x5d0e00
movl (%rcx), %eax
movl %eax, 0x5ab499(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rcx)  # imm = 0x54414449
jne 0x48e2d
movl 0x10(%rcx), %eax
movl %eax, 0x5ab48b(%rip)    # 0x5f42b8
leaq 0x5ab484(%rip), %rax    # 0x5f42b8
movq %rax, 0x57e32d(%rip)    # 0x5c7168
leal -0x1d(%rbp), %ecx
movl $0x3, %eax
movl $0x7, %edx
jmp 0x48e9a
movl 0x8(%rcx), %eax
bswapl %eax
movl %eax, 0x5ab45b(%rip)    # 0x5f42b0
cltq
addq %rcx, %rax
addq $0xc, %rax
movq %rax, 0x587f9b(%rip)    # 0x5d0e00
movl (%rcx), %eax
movl %eax, 0x5ab447(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rcx)  # imm = 0x54414449
jne 0x48e7f
movl 0x10(%rcx), %eax
movl %eax, 0x5ab439(%rip)    # 0x5f42b8
leaq 0x5ab432(%rip), %rax    # 0x5f42b8
movq %rax, 0x57e2db(%rip)    # 0x5c7168
leal -0x19(%rbp), %ecx
movl $0xb, %eax
movl $0x7f, %edx
movl %ecx, 0x57e2c0(%rip)    # 0x5c7160
andb $0x7, %bpl
movl %ebp, %ecx
sarl %cl, %r13d
andl %edx, %r13d
addl %eax, %r13d
leaq (%r15,%r12,4), %rdi
leal (,%r13,4), %edx
xorl %esi, %esi
callq 0x62f0
addl %r13d, %r14d
movq %rbx, %r13
leaq 0x586c71(%rip), %rbx    # 0x5cfb40
movl 0xc(%rsp), %ebp
cmpl %ebp, %r14d
jl 0x48b12
movq 0x20(%rsp), %rbx
movq 0x18(%rsp), %r15
leaq 0x586283(%rip), %r12    # 0x5cf170
leaq 0x5867cc(%rip), %r13    # 0x5cf6c0
leaq 0x586c45(%rip), %rbp    # 0x5cfb40
movq %r12, %rdi
movl %ebx, %esi
movq %r13, %rdx
movq %rbp, %rcx
callq 0x49b99
leaq 0x586cae(%rip), %rdx    # 0x5cfbc0
leaq 0x5874a7(%rip), %rcx    # 0x5d03c0
movq %r13, %rdi
movq %rbp, %rsi
movl $0x9, %r8d
callq 0x49da2
movl %ebx, %eax
leaq (%r12,%rax,4), %rdi
leaq 0x587689(%rip), %r14    # 0x5d05c0
leaq 0x587702(%rip), %r12    # 0x5d0640
movl %r15d, %esi
movq %r14, %rdx
movq %r12, %rcx
callq 0x49b99
leaq 0x58776d(%rip), %rdx    # 0x5d06c0
leaq 0x587866(%rip), %rcx    # 0x5d07c0
movq %r14, %rdi
movq %r12, %rsi
movl $0x6, %r8d
callq 0x49da2
jmp 0x493c5
movl 0x8(%rax), %ecx
bswapl %ecx
movl %ecx, 0x5ab335(%rip)    # 0x5f42b0
movslq %ecx, %rcx
addq %rax, %rcx
addq $0xc, %rcx
movq %rcx, 0x587e74(%rip)    # 0x5d0e00
movl (%rax), %ecx
movl %ecx, 0x5ab320(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rax)  # imm = 0x54414449
jne 0x48fa6
movl 0x10(%rax), %eax
movl %eax, 0x5ab312(%rip)    # 0x5f42b8
leaq 0x5ab30b(%rip), %rcx    # 0x5f42b8
movq %rcx, 0x57e1b4(%rip)    # 0x5c7168
leal -0x10(%r14), %r15d
movl %r15d, 0x57e1a1(%rip)   # 0x5c7160
movq %rcx, %rax
andb $0x7, %r14b
movl %r14d, %ecx
sarl %cl, %ebp
movzwl %bp, %ebx
movl %r15d, %ecx
sarl $0x3, %ecx
movslq %ecx, %rcx
movl (%rax,%rcx), %r12d
leal 0x10(%r15), %r14d
movl %r14d, 0x57e17a(%rip)   # 0x5c7160
cmpl $-0x10, %r15d
jl 0x490cd
cmpb $0x0, 0x56e149(%rip)    # 0x5b7140
je 0x4904b
movl 0x57e15d(%rip), %eax    # 0x5c715c
movl %eax, 0x56e15b(%rip)    # 0x5b7160
movl 0x56dfd5(%rip), %eax    # 0x5b6fe0
subl 0x56dfd7(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56dfa3(%rip), %rcx    # 0x5b6fc8
leaq 0x56e138(%rip), %rdi    # 0x5b7164
movl $0x1, %esi
callq 0x6550
addl %eax, 0x56dfac(%rip)    # 0x5b6fe8
movl $0xfff80020, %r14d      # imm = 0xFFF80020
addl 0x57e117(%rip), %r14d   # 0x5c7160
jmp 0x490c6
movq 0x587dae(%rip), %rcx    # 0x5d0e00
testq %rcx, %rcx
je 0x4907e
movq %rcx, 0x57e10a(%rip)    # 0x5c7168
movq $0x0, 0x587d97(%rip) # 0x5d0e00
movl 0x5ab241(%rip), %eax    # 0x5f42b0
shll $0x3, %eax
movl %r15d, %r14d
subl %eax, %r14d
addl $0x30, %r14d
jmp 0x490c6
movl 0x8(%rax), %ecx
bswapl %ecx
movl %ecx, 0x5ab227(%rip)    # 0x5f42b0
movslq %ecx, %rcx
addq %rax, %rcx
addq $0xc, %rcx
movq %rcx, 0x587d66(%rip)    # 0x5d0e00
movl (%rax), %ecx
movl %ecx, 0x5ab212(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rax)  # imm = 0x54414449
jne 0x490b4
movl 0x10(%rax), %eax
movl %eax, 0x5ab204(%rip)    # 0x5f42b8
leaq 0x5ab1fd(%rip), %rax    # 0x5f42b8
movq %rax, 0x57e0a6(%rip)    # 0x5c7168
leal -0x10(%r15), %r14d
movl %r14d, 0x57e093(%rip)   # 0x5c7160
andb $0x7, %r15b
movl %r15d, %ecx
sarl %cl, %r12d
xorl %ebp, %r12d
cmpw $-0x1, %r12w
je 0x490eb
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
jmp 0x47f61
testl %ebx, %ebx
je 0x492af
movl 0x56e056(%rip), %r15d   # 0x5b7150
cmpl %r15d, 0x56df1f(%rip)   # 0x5b7020
jl 0x4916a
leal -0x4000(%r15), %eax
movl 0x56dee8(%rip), %ecx    # 0x5b6ff8
cmpl %eax, %ecx
cmovlel %eax, %ecx
movl 0x56dee5(%rip), %ebp    # 0x5b7000
cmpl %r15d, %ebp
movl %r15d, %edx
cmovll %ebp, %edx
subl %ecx, %edx
jle 0x49154
movl %eax, %esi
andl $0x7fff, %esi           # imm = 0x7FFF
leaq 0x57e039(%rip), %r8     # 0x5c7170
addq %rsi, %r8
movslq %ecx, %rdi
addq 0x56e004(%rip), %rdi    # 0x5b7148
subl %eax, %ecx
movslq %ecx, %rsi
addq %r8, %rsi
movslq %edx, %rdx
callq 0x60c0
leal 0x4000(%r15), %eax
movl %eax, 0x56dfef(%rip)    # 0x5b7150
cmpl %ebp, %r15d
jge 0x4929a
movq 0x57dff7(%rip), %rcx    # 0x5c7168
movl %r14d, %eax
sarl $0x3, %eax
cltq
movl (%rcx,%rax), %ebp
leal 0x8(%r14), %eax
movl %eax, 0x57dfda(%rip)    # 0x5c7160
cmpl $-0x8, %r14d
jl 0x49267
cmpb $0x0, 0x56dfa9(%rip)    # 0x5b7140
je 0x491e9
movl 0x57dfbd(%rip), %eax    # 0x5c715c
movl %eax, 0x56dfbb(%rip)    # 0x5b7160
movl 0x56de35(%rip), %eax    # 0x5b6fe0
subl 0x56de37(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56de03(%rip), %rcx    # 0x5b6fc8
leaq 0x56df98(%rip), %rdi    # 0x5b7164
movl $0x1, %esi
callq 0x6550
addl %eax, 0x56de0c(%rip)    # 0x5b6fe8
movl $0xfff80020, %eax       # imm = 0xFFF80020
addl 0x57df79(%rip), %eax    # 0x5c7160
jmp 0x49261
movq 0x587c10(%rip), %rax    # 0x5d0e00
testq %rax, %rax
je 0x4921a
movq %rax, 0x57df6c(%rip)    # 0x5c7168
movq $0x0, 0x587bf9(%rip) # 0x5d0e00
movl 0x5ab0a3(%rip), %ecx    # 0x5f42b0
shll $0x3, %ecx
movl %r14d, %eax
subl %ecx, %eax
addl $0x28, %eax
jmp 0x49261
movl 0x8(%rcx), %eax
bswapl %eax
movl %eax, 0x5ab08b(%rip)    # 0x5f42b0
cltq
addq %rcx, %rax
addq $0xc, %rax
movq %rax, 0x587bcb(%rip)    # 0x5d0e00
movl (%rcx), %eax
movl %eax, 0x5ab077(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rcx)  # imm = 0x54414449
jne 0x4924f
movl 0x10(%rcx), %eax
movl %eax, 0x5ab069(%rip)    # 0x5f42b8
leaq 0x5ab062(%rip), %rax    # 0x5f42b8
movq %rax, 0x57df0b(%rip)    # 0x5c7168
leal -0x18(%r14), %eax
movl %eax, 0x57def9(%rip)    # 0x5c7160
andb $0x7, %r14b
movl %r14d, %ecx
sarl %cl, %ebp
movl 0x56ddaa(%rip), %ecx    # 0x5b7020
leal 0x1(%rcx), %edx
movl %edx, 0x56dda1(%rip)    # 0x5b7020
andl $0x7fff, %ecx           # imm = 0x7FFF
leaq 0x57dee4(%rip), %rdx    # 0x5c7170
movb %bpl, (%rcx,%rdx)
decl %ebx
movl %eax, %r14d
jmp 0x490eb
movl $0x1, 0x56dd64(%rip)    # 0x5b7008
movl %ebx, 0x56dd66(%rip)    # 0x5b7010
jmp 0x4997c
movl 0x8(%rsp), %eax
testl %eax, %eax
je 0x48166
movslq 0x56de8e(%rip), %rax    # 0x5b7150
addq $-0x4000, %rax          # imm = 0xC000
movl %eax, 0x56de82(%rip)    # 0x5b7150
movl 0x56dd4c(%rip), %ebx    # 0x5b7020
movl %eax, %ecx
xorw %bx, %cx
js 0x49323
movl 0x56dd17(%rip), %ecx    # 0x5b6ff8
cmpl %eax, %ecx
cmovlel %eax, %ecx
movl 0x56dd14(%rip), %edx    # 0x5b7000
cmpl %ebx, %edx
cmovll %edx, %ebx
subl %ecx, %ebx
jle 0x493b0
movl %eax, %edx
andl $0x7fff, %edx           # imm = 0x7FFF
leaq 0x57de68(%rip), %r8     # 0x5c7170
addq %rdx, %r8
movslq %ecx, %rsi
movq 0x56de33(%rip), %rdi    # 0x5b7148
addq %rsi, %rdi
subq %rax, %rsi
addq %r8, %rsi
jmp 0x493a8
movl %ebx, %ebp
andl $0xffff8000, %ebp       # imm = 0xFFFF8000
movl 0x56dcc6(%rip), %r14d   # 0x5b6ff8
cmpl %eax, %r14d
movl %eax, %ecx
cmovgl %r14d, %ecx
movl 0x56dcbe(%rip), %r15d   # 0x5b7000
cmpl %ebp, %r15d
movl %ebp, %edx
cmovll %r15d, %edx
subl %ecx, %edx
jle 0x4937b
movl %eax, %esi
andl $0x7fff, %esi           # imm = 0x7FFF
leaq 0x57de12(%rip), %r8     # 0x5c7170
addq %rsi, %r8
movslq %ecx, %rdi
addq 0x56dddd(%rip), %rdi    # 0x5b7148
subl %eax, %ecx
movslq %ecx, %rsi
addq %r8, %rsi
movslq %edx, %rdx
callq 0x60c0
cmpl %ebp, %r14d
cmovlel %ebp, %r14d
cmpl %ebx, %r15d
cmovll %r15d, %ebx
subl %r14d, %ebx
jle 0x493b0
movslq %r14d, %rdi
addq 0x56ddb0(%rip), %rdi    # 0x5b7148
subl %ebp, %r14d
movslq %r14d, %rax
leaq 0x57ddcb(%rip), %rsi    # 0x5c7170
addq %rax, %rsi
movslq %ebx, %rdx
callq 0x60c0
movl $0x3, 0x56dc4e(%rip)    # 0x5b7008
jmp 0x47f3e
movl %eax, 0x56dc5b(%rip)    # 0x5b7020
movq 0x10(%rsp), %r13
movl 0x56dd80(%rip), %ebx    # 0x5b7150
cmpl %ebx, 0x56dc4a(%rip)    # 0x5b7020
jl 0x4943a
leal -0x4000(%rbx), %eax
movl 0x56dc14(%rip), %ecx    # 0x5b6ff8
cmpl %eax, %ecx
cmovlel %eax, %ecx
movl 0x56dc11(%rip), %ebp    # 0x5b7000
cmpl %ebx, %ebp
movl %ebx, %edx
cmovll %ebp, %edx
subl %ecx, %edx
jle 0x49426
movl %eax, %esi
andl $0x7fff, %esi           # imm = 0x7FFF
leaq 0x57dd67(%rip), %r8     # 0x5c7170
addq %rsi, %r8
movslq %ecx, %rdi
addq 0x56dd32(%rip), %rdi    # 0x5b7148
subl %eax, %ecx
movslq %ecx, %rsi
addq %r8, %rsi
movslq %edx, %rdx
callq 0x60c0
leal 0x4000(%rbx), %eax
movl %eax, 0x56dd1e(%rip)    # 0x5b7150
cmpl %ebp, %ebx
jge 0x49972
movq 0x57dd27(%rip), %rdx    # 0x5c7168
movl 0x57dd19(%rip), %eax    # 0x5c7160
movl %eax, %ecx
sarl $0x3, %ecx
movslq %ecx, %rcx
movl (%rdx,%rcx), %esi
movl %eax, %ecx
andb $0x7, %cl
sarl %cl, %esi
andl $0x1ff, %esi            # imm = 0x1FF
leaq 0x586f5a(%rip), %rcx    # 0x5d03c0
movzbl (%rsi,%rcx), %ecx
testl %ecx, %ecx
je 0x494e3
leaq 0x58674b(%rip), %rdi    # 0x5cfbc0
movl (%rdi,%rsi,4), %r15d
addl %ecx, %eax
movl %eax, 0x57dcdf(%rip)    # 0x5c7160
js 0x49576
cmpb $0x0, 0x56dcb2(%rip)    # 0x5b7140
je 0x494fb
movl 0x57dcc6(%rip), %eax    # 0x5c715c
movl %eax, 0x56dcc4(%rip)    # 0x5b7160
movl 0x56db3e(%rip), %eax    # 0x5b6fe0
subl 0x56db40(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56db0c(%rip), %rcx    # 0x5b6fc8
leaq 0x56dca1(%rip), %rdi    # 0x5b7164
movl $0x1, %esi
callq 0x6550
addl %eax, 0x56db15(%rip)    # 0x5b6fe8
movl $0xfff80020, %eax       # imm = 0xFFF80020
addl 0x57dc82(%rip), %eax    # 0x5c7160
jmp 0x49570
leaq 0x5861d6(%rip), %rdi    # 0x5cf6c0
leaq 0x58664f(%rip), %rsi    # 0x5cfb40
callq 0x49c30
movl %eax, %r15d
jmp 0x49576
movq 0x5878fe(%rip), %rcx    # 0x5d0e00
testq %rcx, %rcx
je 0x49529
movq %rcx, 0x57dc5a(%rip)    # 0x5c7168
movq $0x0, 0x5878e7(%rip) # 0x5d0e00
movl 0x5aad91(%rip), %ecx    # 0x5f42b0
shll $0x3, %ecx
subl %ecx, %eax
addl $0x20, %eax
jmp 0x49570
movl 0x8(%rdx), %ecx
bswapl %ecx
movl %ecx, 0x5aad7c(%rip)    # 0x5f42b0
movslq %ecx, %rcx
addq %rdx, %rcx
addq $0xc, %rcx
movq %rcx, 0x5878bb(%rip)    # 0x5d0e00
movl (%rdx), %ecx
movl %ecx, 0x5aad67(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rdx)  # imm = 0x54414449
jne 0x4955f
movl 0x10(%rdx), %ecx
movl %ecx, 0x5aad59(%rip)    # 0x5f42b8
leaq 0x5aad52(%rip), %rcx    # 0x5f42b8
movq %rcx, 0x57dbfb(%rip)    # 0x5c7168
addl $-0x20, %eax
movl %eax, 0x57dbea(%rip)    # 0x5c7160
cmpl $0xff, %r15d
jg 0x495a3
movl 0x56da9b(%rip), %eax    # 0x5b7020
leal 0x1(%rax), %ecx
movl %ecx, 0x56da92(%rip)    # 0x5b7020
andl $0x7fff, %eax           # imm = 0x7FFF
leaq 0x57dbd6(%rip), %rcx    # 0x5c7170
movb %r15b, (%rax,%rcx)
jmp 0x493ca
cmpl $0x100, %r15d           # imm = 0x100
je 0x492af
addl $0xffffff1d, %r15d      # imm = 0xFFFFFF1D
leaq 0x587242(%rip), %r12    # 0x5d0800
movslq (%r12,%r15,8), %r14
movq 0x57db9f(%rip), %rax    # 0x5c7168
movl 0x57db91(%rip), %ebp    # 0x5c7160
movl %ebp, %ecx
sarl $0x3, %ecx
movslq %ecx, %rcx
movl (%rax,%rcx), %ebx
leaq 0x2e4df(%rip), %rcx     # 0x77ac0
movl (%rcx,%r14,4), %r13d
addl %ebp, %r14d
movl %r14d, 0x57db71(%rip)   # 0x5c7160
js 0x496d9
cmpb $0x0, 0x56db44(%rip)    # 0x5b7140
je 0x49657
movl 0x57db58(%rip), %eax    # 0x5c715c
movl %eax, 0x56db56(%rip)    # 0x5b7160
movl 0x56d9d0(%rip), %eax    # 0x5b6fe0
subl 0x56d9d2(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56d99e(%rip), %rcx    # 0x5b6fc8
leaq 0x56db33(%rip), %rdi    # 0x5b7164
movl $0x1, %esi
callq 0x6550
addl %eax, 0x56d9a7(%rip)    # 0x5b6fe8
movl $0xfff80020, %r14d      # imm = 0xFFF80020
addl 0x57db12(%rip), %r14d   # 0x5c7160
movq 0x57db13(%rip), %rcx    # 0x5c7168
jmp 0x496cf
movq 0x5877a2(%rip), %rcx    # 0x5d0e00
testq %rcx, %rcx
je 0x49687
movq %rcx, 0x57dafe(%rip)    # 0x5c7168
movq $0x0, 0x58778b(%rip) # 0x5d0e00
movl 0x5aac35(%rip), %eax    # 0x5f42b0
shll $0x3, %eax
subl %eax, %r14d
addl $0x20, %r14d
jmp 0x496cf
movl 0x8(%rax), %ecx
bswapl %ecx
movl %ecx, 0x5aac1e(%rip)    # 0x5f42b0
movslq %ecx, %rcx
addq %rax, %rcx
addq $0xc, %rcx
movq %rcx, 0x58775d(%rip)    # 0x5d0e00
movl (%rax), %ecx
movl %ecx, 0x5aac09(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rax)  # imm = 0x54414449
jne 0x496bd
movl 0x10(%rax), %eax
movl %eax, 0x5aabfb(%rip)    # 0x5f42b8
leaq 0x5aabf4(%rip), %rcx    # 0x5f42b8
movq %rcx, 0x57da9d(%rip)    # 0x5c7168
addl $-0x20, %r14d
movl %r14d, 0x57da8a(%rip)   # 0x5c7160
movq %rcx, %rax
andb $0x7, %bpl
movl %ebp, %ecx
sarl %cl, %ebx
andl %r13d, %ebx
addl 0x4(%r12,%r15,8), %ebx
movl %r14d, %ecx
sarl $0x3, %ecx
movslq %ecx, %rcx
movl (%rax,%rcx), %edx
movl %r14d, %ecx
andb $0x7, %cl
sarl %cl, %edx
andl $0x3f, %edx
leaq 0x5870b9(%rip), %rcx    # 0x5d07c0
movzbl (%rdx,%rcx), %ecx
testl %ecx, %ecx
je 0x49787
leaq 0x586faa(%rip), %rsi    # 0x5d06c0
movl (%rsi,%rdx,4), %ebp
addl %ecx, %r14d
movl %r14d, 0x57da3d(%rip)   # 0x5c7160
js 0x4981d
cmpb $0x0, 0x56da10(%rip)    # 0x5b7140
je 0x497a5
movl 0x57da24(%rip), %eax    # 0x5c715c
movl %eax, 0x56da22(%rip)    # 0x5b7160
movl 0x56d89c(%rip), %eax    # 0x5b6fe0
subl 0x56d89e(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56d86a(%rip), %rcx    # 0x5b6fc8
leaq 0x56d9ff(%rip), %rdi    # 0x5b7164
movl $0x1, %esi
callq 0x6550
addl %eax, 0x56d873(%rip)    # 0x5b6fe8
movl $0xfff80020, %r14d      # imm = 0xFFF80020
addl 0x57d9de(%rip), %r14d   # 0x5c7160
jmp 0x4981d
leaq 0x586e32(%rip), %rdi    # 0x5d05c0
leaq 0x586eab(%rip), %rsi    # 0x5d0640
callq 0x49c30
movl %eax, %ebp
movl 0x57d9bd(%rip), %r14d   # 0x5c7160
jmp 0x4981d
movq 0x587654(%rip), %rcx    # 0x5d0e00
testq %rcx, %rcx
je 0x497d5
movq %rcx, 0x57d9b0(%rip)    # 0x5c7168
movq $0x0, 0x58763d(%rip) # 0x5d0e00
movl 0x5aaae7(%rip), %eax    # 0x5f42b0
shll $0x3, %eax
subl %eax, %r14d
addl $0x20, %r14d
jmp 0x4981d
movl 0x8(%rax), %ecx
bswapl %ecx
movl %ecx, 0x5aaad0(%rip)    # 0x5f42b0
movslq %ecx, %rcx
addq %rax, %rcx
addq $0xc, %rcx
movq %rcx, 0x58760f(%rip)    # 0x5d0e00
movl (%rax), %ecx
movl %ecx, 0x5aaabb(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rax)  # imm = 0x54414449
jne 0x4980b
movl 0x10(%rax), %eax
movl %eax, 0x5aaaad(%rip)    # 0x5f42b8
leaq 0x5aaaa6(%rip), %rax    # 0x5f42b8
movq %rax, 0x57d94f(%rip)    # 0x5c7168
addl $-0x20, %r14d
movslq %ebp, %rbp
movslq (%r12,%rbp,8), %rax
movq 0x57d93d(%rip), %rcx    # 0x5c7168
movl %r14d, %edx
sarl $0x3, %edx
movslq %edx, %rdx
movl (%rcx,%rdx), %r15d
leaq 0x2e281(%rip), %rdx     # 0x77ac0
movl (%rdx,%rax,4), %r13d
addl %r14d, %eax
movl %eax, 0x57d914(%rip)    # 0x5c7160
js 0x49926
cmpb $0x0, 0x56d8e7(%rip)    # 0x5b7140
je 0x498ab
movl 0x57d8fb(%rip), %eax    # 0x5c715c
movl %eax, 0x56d8f9(%rip)    # 0x5b7160
movl 0x56d773(%rip), %eax    # 0x5b6fe0
subl 0x56d775(%rip), %eax    # 0x5b6fe8
movl $0xfffc, %ecx           # imm = 0xFFFC
cmpl %ecx, %eax
cmovgel %ecx, %eax
movslq %eax, %rdx
movq 0x56d741(%rip), %rcx    # 0x5b6fc8
leaq 0x56d8d6(%rip), %rdi    # 0x5b7164
movl $0x1, %esi
callq 0x6550
addl %eax, 0x56d74a(%rip)    # 0x5b6fe8
movl $0xfff80020, %eax       # imm = 0xFFF80020
addl 0x57d8b7(%rip), %eax    # 0x5c7160
jmp 0x49920
movq 0x58754e(%rip), %rdx    # 0x5d0e00
testq %rdx, %rdx
je 0x498d9
movq %rdx, 0x57d8aa(%rip)    # 0x5c7168
movq $0x0, 0x587537(%rip) # 0x5d0e00
movl 0x5aa9e1(%rip), %ecx    # 0x5f42b0
shll $0x3, %ecx
subl %ecx, %eax
addl $0x20, %eax
jmp 0x49920
movl 0x8(%rcx), %edx
bswapl %edx
movl %edx, 0x5aa9cc(%rip)    # 0x5f42b0
movslq %edx, %rdx
addq %rcx, %rdx
addq $0xc, %rdx
movq %rdx, 0x58750b(%rip)    # 0x5d0e00
movl (%rcx), %edx
movl %edx, 0x5aa9b7(%rip)    # 0x5f42b4
cmpl $0x54414449, 0xc(%rcx)  # imm = 0x54414449
jne 0x4990f
movl 0x10(%rcx), %ecx
movl %ecx, 0x5aa9a9(%rip)    # 0x5f42b8
leaq 0x5aa9a2(%rip), %rcx    # 0x5f42b8
movq %rcx, 0x57d84b(%rip)    # 0x5c7168
addl $-0x20, %eax
movl %eax, 0x57d83a(%rip)    # 0x5c7160
testl %ebx, %ebx
je 0x493c5
andb $0x7, %r14b
movl %r14d, %ecx
sarl %cl, %r15d
andl %r13d, %r15d
addl 0x4(%r12,%rbp,8), %r15d
movl 0x56d6da(%rip), %eax    # 0x5b7020
negl %r15d
movl $0x7fff, %ecx           # imm = 0x7FFF
leaq 0x57d81b(%rip), %rdx    # 0x5c7170
leal (%r15,%rax), %esi
andl %ecx, %esi
movb (%rsi,%rdx), %sil
movl %eax, %edi
andl %ecx, %edi
movb %sil, (%rdi,%rdx)
incl %eax
decl %ebx
jne 0x49955
jmp 0x493bf
movl $0x2, 0x56d68c(%rip)    # 0x5b7008
movl 0x8(%rsp), %eax
movl %eax, 0x56d692(%rip)    # 0x5b7018
jmp 0x47f3e