// File: /workspace/github_cpp_makefile_star2_O1/aman-agrawal[P]Terminal-based-file-explorer/aman.cpp
// Function: main
int main(int argc, char* argv[])
{
	clear2();		//to clear terminal
	string hmd=mycwd();

	stack<string>l;
	stack<string>r;
	l.push(string(argv[1]));
	while(r.empty()!=1)
    			{r.pop();}

	filename = list(argv[1],1);	//to print ls 
    x=1;y=1;
    mov(x,y);
    off_keyboard();
    while(1) {
    	int i = cursor_handle(x, y);
    if(i==1)
    {
		//enter key is tapped

    	//f status
    	if(filename[x-1].second != 'd')
    	{
			system(("xdg-open " + filename[x-1].first).c_str());
    	}
		
    
    	//d status
    	else
    	{
            sonu=sonu+"/"+filename[x-1].first;

    	const char *ye = filename[x-1].first.c_str();
    	char* z= (char*)ye; 		//converting const char* into char*
    	string largepath(z);	//converting char* into string

    	int len=largepath.size();
    	if(largepath[len-1]=='.' && largepath[len-2]=='.')
    	{
    		if(largepath!=hmd)
    		{
    			string trimpath=trim1(largepath);
    			char *trimstring = (char*)trimpath.c_str();

    			l.push(trimpath);	///////push into l stack
    			while(r.empty()!=1)
    			{r.pop();}
    			filename= list(trimstring, filename[x-1].second);
    		}
    		else
    		{
    			// when .. is pressed and we r in home directory
    			filename = list(argv[1],1);	//to print ls

    		}
            x=1;y=1;
            mov(x,y);

    	}
    	else
    	{	
    		l.push(largepath);	///////push into l stack
    		while(r.empty()!=1)
    			{r.pop();}
    		filename=list(z, filename[x-1].second);	//refer line 67 for z
                x=1;y=1;
            mov(x,y);
    	}
    	}
    		
    	
    }

    if(i==2)
    {
    	//home key is tapped
    	filename = list(argv[1], filename[x-1].second);	//to print home directory 	
        x=1;y=1;
            mov(x,y);
    }

   
    if(i==3)
    {
    	//left key is pressed
    	if(l.empty()==0)
    	{string pl=l.top();
    	l.pop();
    	r.push(pl);
    	string pll=l.top();
    	const char *o1 = pll.c_str();
    	char* o11= (char*)o1;
    	filename=list(o11, filename[x-1].second);
        x=1;y=1;
            mov(x,y);
    	}

    }
   
    if(i==4)
    {
    	//right key is pressed
    	if(r.empty()==0)
    	{string pr=r.top();
    	const char *o2 = pr.c_str();
    	char* o22= (char*)o2;

    	r.pop();
    	l.push(pr);
    	filename=list(o22, filename[x-1].second);
        x=1;y=1;
        mov(x,y);
    	}
    }

    if(i==5)
    {	//backspace key is pressed
    	const char *y4 = filename[x-1].first.c_str();
    	char* z2= (char*)y4; 		//converting const char* into char*
    	string originalpath(z2);	//converting char* into string
    	string parentpath=originalpath.substr(0, originalpath.find_last_of("\\/"));
    	parentpath=originalpath.substr(0, parentpath.find_last_of("\\/"));

    	const char *o3 = parentpath.c_str();

    	char* parentpointer= (char*)o3;
    	filename = list(parentpointer, filename[x-1].second);
        x=1;y=1;
            mov(x,y);
    }

    if(i==6)
    {
    	//colon is pressed

    	on_keyboard();
        x=28,y=1;
    	mov(x,y);
    	printf("\033[27;1H");
    	cout<<"*******************************************"<<endl<<"enter command : ";
        vector<string> v;
            string s1 ;
            getline(cin,s1);
            auto i = s1.begin() ;
            string::iterator start = s1.begin() ;

            if(s1[0]==27)
                {
                    //escape is pressed
                     x=1,y=1;
                     mov(x,y);
                    printf("\033[27;1H");
                    cout<<"                                                           "<<endl;
                    cout<<"                                                           "<<endl;
                    cout<<"                                                           ";
                }  
        else{

        while(i!= s1.end())
        {
            if(*i == ' ')
            {
                string s2(start, i) ;
                v.push_back(s2) ;
                start = ++i ;
            }
            else 
                i++ ;
        }
        string s2(start,i) ;
        v.push_back(s2) ;
        if(v[0]=="copy")
        {
            int vectorsize1=v.size();
            int vectorsize2=vectorsize1-2;
            int i=1;
            while(vectorsize2--)
            {   copyfile(sonu+"/"+v[i],v[vectorsize1-1]+"/"+v[i]);
                i++;
            }
            cout << "all file(s) Copied done successfully";
        }
        else if(v[0]=="create_file")
        {
            createfile(v[1],v[2]);
        }
        else if(v[0]=="create_dir")
        {
            createdir(v[1],v[2]);
        }
        else if(v[0]=="move")
        {
            int vectorsize1=v.size();
            int vectorsize2=vectorsize1-2;
            int i=1;
            while(vectorsize2--)
            {   movefile(v[i],v[vectorsize1-1]+v[i]);
                i++;
            }
            cout << "all file(s) moved successfully";
        }
        else if(v[0]=="rename")
        {
            renamefile(v[1],v[2]);
        }
        else if(v[0]=="delete_file")
        {
            int result=deletefile(v[1]);
            if (result == 1)
                cout<<"File successfully deleted";
            else
                cout<<"wrong input";
        }
        else if(v[0]=="delete_dir")
        {
            int result=deletedir(v[1]);
            if(result==0)
                cout<<"wrong input";
            else
                cout<<"directory successfully deleted";
        }
        else if(v[0]=="goto")
        {
            go_to(v[1]);
        }
      }
    	
      }  
    }	
    
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x328, %rsp            # imm = 0x328
movq %rsi, 0x98(%rsp)
leaq 0x2bda(%rip), %rdi      # 0x8004
xorl %eax, %eax
callq 0x3040
leaq 0x308(%rsp), %rdi
callq 0x42f0
xorps %xmm0, %xmm0
leaq 0x2b0(%rsp), %rdi
movaps %xmm0, 0x40(%rdi)
movaps %xmm0, 0x30(%rdi)
movaps %xmm0, 0x20(%rdi)
movaps %xmm0, 0x10(%rdi)
movaps %xmm0, (%rdi)
xorl %esi, %esi
callq 0x712e
leaq 0x140(%rsp), %rdi
xorps %xmm0, %xmm0
movaps %xmm0, 0x40(%rdi)
movaps %xmm0, 0x30(%rdi)
movaps %xmm0, 0x20(%rdi)
movaps %xmm0, 0x10(%rdi)
movaps %xmm0, (%rdi)
xorl %esi, %esi
callq 0x712e
movq 0x98(%rsp), %rax
movq 0x8(%rax), %rsi
movq %rsp, %rdi
leaq 0x20(%rsp), %rdx
callq 0x3cce
leaq 0x2b0(%rsp), %rdi
movq %rsp, %rsi
callq 0x72c2
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x54cc
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3220
movq 0x170(%rsp), %rax
cmpq 0x150(%rsp), %rax
je 0x5500
leaq 0x140(%rsp), %rbx
movq %rbx, %rdi
callq 0x7590
movq 0x170(%rsp), %rax
cmpq 0x150(%rsp), %rax
jne 0x54e6
movq 0x98(%rsp), %rax
movq 0x8(%rax), %rsi
leaq 0x20(%rsp), %rdi
movl $0x1, %ebp
movl $0x1, %edx
callq 0x369c
xorps %xmm0, %xmm0
movq %rsp, %rdi
movaps %xmm0, (%rdi)
movups 0x5db8(%rip), %xmm0     # 0xb2e8
movq 0x5dc1(%rip), %rax      # 0xb2f8
leaq 0x20(%rsp), %rbx
movups (%rbx), %xmm1
movups %xmm1, 0x5da2(%rip)     # 0xb2e8
movq 0x10(%rbx), %rcx
movq %rcx, 0x5da7(%rip)      # 0xb2f8
movaps (%rdi), %xmm1
movaps %xmm0, (%rdi)
movq %rax, 0x10(%rdi)
movups %xmm1, (%rbx)
movq $0x0, 0x10(%rbx)
callq 0x3d0c
movq %rbx, %rdi
callq 0x3d0c
movl %ebp, 0x5cb7(%rip)      # 0xb230
movl %ebp, 0x5cb5(%rip)      # 0xb234
movl $0x1, %edi
movl $0x1, %esi
callq 0x4150
callq 0x424c
leaq 0x5c9a(%rip), %r14      # 0xb234
leaq 0x20(%rsp), %r12
leaq 0x40(%rsp), %rbx
leaq 0x5c85(%rip), %rdi      # 0xb230
movq %r14, %rsi
callq 0x4162
movl %eax, %r13d
leal -0x1(%r13), %eax
cmpl $0x5, %eax
ja 0x55a4
leaq 0x2aaa(%rip), %rcx      # 0x8070
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movslq 0x5c5a(%rip), %rcx      # 0xb230
movq 0x5d0b(%rip), %rax      # 0xb2e8
leaq (%rcx,%rcx,4), %rcx
cmpb $0x64, -0x8(%rax,%rcx,8)
jne 0x5667
leaq 0x30(%rsp), %rax
movq %rax, 0x20(%rsp)
movq 0x5ccf(%rip), %rsi      # 0xb2c8
movq 0x5cd0(%rip), %rdx      # 0xb2d0
addq %rsi, %rdx
movq %r12, %rdi
callq 0x3d68
movq %r12, %rdi
leaq 0x2b40(%rip), %rsi      # 0x8155
callq 0x33f0
movq %rsp, %r15
movslq 0x5c0c(%rip), %rax      # 0xb230
movq 0x5cbd(%rip), %rcx      # 0xb2e8
leaq (%rax,%rax,4), %rax
movq -0x28(%rcx,%rax,8), %rsi
movq -0x20(%rcx,%rax,8), %rdx
movq %r12, %rdi
callq 0x30b0
leaq 0x10(%rsp), %r14
movq %r14, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x568c
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x5693
leaq (%rax,%rcx,8), %rdx
addq $-0x28, %rdx
movq %rsp, %rdi
leaq 0x2ad1(%rip), %rsi      # 0x814a
callq 0x6e0a
movq (%rsp), %rdi
callq 0x31b0
jmp 0x59c5
movups (%rcx), %xmm0
movups %xmm0, (%r14)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x5c16(%rip), %rdi      # 0xb2c8
movq %r15, %rsi
callq 0x3290
movq (%rsp), %rdi
cmpq %r14, %rdi
je 0x56d0
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3220
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x56ec
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x3220
movslq 0x5b3d(%rip), %rax      # 0xb230
movq 0x5bee(%rip), %rcx      # 0xb2e8
leaq (%rax,%rax,4), %rax
movq -0x28(%rcx,%rax,8), %rbp
movq %r15, %rdi
movq %rbp, %rsi
movq %r12, %rdx
callq 0x3cce
movq (%rsp), %r15
movq 0x8(%rsp), %r14
movq %r14, %rax
shlq $0x20, %rax
movabsq $-0x100000000, %rcx     # imm = 0xFFFFFFFF00000000
addq %rax, %rcx
sarq $0x20, %rcx
cmpb $0x2e, (%r15,%rcx)
jne 0x58dd
movabsq $-0x200000000, %rcx     # imm = 0xFFFFFFFE00000000
addq %rcx, %rax
sarq $0x20, %rax
cmpb $0x2e, (%r15,%rax)
jne 0x58dd
cmpq 0x310(%rsp), %r14
jne 0x5787
testq %r14, %r14
je 0x6966
movq 0x308(%rsp), %rsi
movq %r15, %rdi
movq %r14, %rdx
callq 0x3230
testl %eax, %eax
je 0x6966
leaq 0x280(%rsp), %rax
movq %rax, 0x270(%rsp)
addq %r15, %r14
leaq 0x270(%rsp), %rbp
movq %rbp, %rdi
movq %r15, %rsi
movq %r14, %rdx
callq 0x3d68
movq %r12, %rdi
movq %rbp, %rsi
callq 0x42bc
movq 0x270(%rsp), %rdi
leaq 0x280(%rsp), %rax
cmpq %rax, %rdi
je 0x57e0
movq 0x280(%rsp), %rsi
incq %rsi
callq 0x3220
movq 0x20(%rsp), %r14
leaq 0x2b0(%rsp), %rdi
movq %r12, %rsi
callq 0x761c
movq 0x170(%rsp), %rax
cmpq 0x150(%rsp), %rax
leaq 0x140(%rsp), %rbp
je 0x5829
movq %rbp, %rdi
callq 0x7590
movq 0x170(%rsp), %rax
cmpq 0x150(%rsp), %rax
jne 0x580f
movslq 0x5a00(%rip), %rax      # 0xb230
movq 0x5ab1(%rip), %rcx      # 0xb2e8
leaq (%rax,%rax,4), %rax
movsbl -0x8(%rcx,%rax,8), %edx
leaq 0x78(%rsp), %rbp
movq %rbp, %rdi
movq %r14, %rsi
callq 0x369c
xorps %xmm0, %xmm0
movaps %xmm0, 0x40(%rsp)
movups 0x5a89(%rip), %xmm0     # 0xb2e8
movq 0x5a92(%rip), %rax      # 0xb2f8
movups 0x78(%rsp), %xmm1
movups %xmm1, 0x5a76(%rip)     # 0xb2e8
movq 0x88(%rsp), %rcx
movq %rcx, 0x5a77(%rip)      # 0xb2f8
movaps 0x40(%rsp), %xmm1
movaps %xmm0, 0x40(%rsp)
movq %rax, 0x50(%rsp)
movups %xmm1, 0x78(%rsp)
movq $0x0, 0x88(%rsp)
movq %rbx, %rdi
callq 0x3d0c
movq %rbp, %rdi
callq 0x3d0c
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
leaq 0x596f(%rip), %r14      # 0xb234
je 0x59a5
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x3220
jmp 0x59a5
leaq 0x2b0(%rsp), %rdi
movq %rsp, %rsi
callq 0x761c
leaq 0x5940(%rip), %r14      # 0xb234
movq 0x170(%rsp), %rax
cmpq 0x150(%rsp), %rax
leaq 0x140(%rsp), %r15
je 0x5928
movq %r15, %rdi
callq 0x7590
movq 0x170(%rsp), %rax
cmpq 0x150(%rsp), %rax
jne 0x590e
movslq 0x5901(%rip), %rax      # 0xb230
movq 0x59b2(%rip), %rcx      # 0xb2e8
leaq (%rax,%rax,4), %rax
movsbl -0x8(%rcx,%rax,8), %edx
movq %rbx, %rdi
movq %rbp, %rsi
callq 0x369c
xorps %xmm0, %xmm0
movaps %xmm0, 0x20(%rsp)
movups 0x598f(%rip), %xmm0     # 0xb2e8
movq 0x5998(%rip), %rax      # 0xb2f8
movups 0x40(%rsp), %xmm1
movups %xmm1, 0x597c(%rip)     # 0xb2e8
movq 0x50(%rsp), %rcx
movq %rcx, 0x5980(%rip)      # 0xb2f8
movaps 0x20(%rsp), %xmm1
movaps %xmm0, 0x20(%rsp)
movq %rax, 0x30(%rsp)
movups %xmm1, 0x40(%rsp)
movq $0x0, 0x50(%rsp)
movq %r12, %rdi
callq 0x3d0c
movq %rbx, %rdi
callq 0x3d0c
movl $0x1, %eax
movl %eax, 0x5880(%rip)      # 0xb230
movl %eax, 0x587e(%rip)      # 0xb234
movl $0x1, %edi
movl $0x1, %esi
callq 0x4150
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x59e0
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3220
leal -0x2(%r13), %eax
cmpl $0x4, %eax
ja 0x55a4
leaq 0x2694(%rip), %rcx      # 0x8088
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x98(%rsp), %rax
movq 0x8(%rax), %rsi
movslq 0x5820(%rip), %rax      # 0xb230
movq 0x58d1(%rip), %rcx      # 0xb2e8
leaq (%rax,%rax,4), %rax
movsbl -0x8(%rcx,%rax,8), %edx
movq %r12, %rdi
callq 0x369c
xorps %xmm0, %xmm0
movaps %xmm0, (%rsp)
movups 0x58b2(%rip), %xmm0     # 0xb2e8
movq 0x58bb(%rip), %rax      # 0xb2f8
movups 0x20(%rsp), %xmm1
movups %xmm1, 0x589f(%rip)     # 0xb2e8
movq 0x30(%rsp), %rcx
movq %rcx, 0x58a3(%rip)      # 0xb2f8
movaps (%rsp), %xmm1
movaps %xmm0, (%rsp)
movq %rax, 0x10(%rsp)
movups %xmm1, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
movq %rsp, %rdi
callq 0x3d0c
movq %r12, %rdi
callq 0x3d0c
movl $0x1, %eax
movl %eax, 0x57a5(%rip)      # 0xb230
movl %eax, 0x57a3(%rip)      # 0xb234
movl $0x1, %edi
movl $0x1, %esi
callq 0x4150
leal -0x3(%r13), %eax
cmpl $0x3, %eax
ja 0x55a4
leaq 0x25e8(%rip), %rcx      # 0x809c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x2e0(%rsp), %rax
cmpq 0x2c0(%rsp), %rax
je 0x5c51
cmpq 0x2e8(%rsp), %rax
jne 0x5af1
movq 0x2f8(%rsp), %rax
movq -0x8(%rax), %rax
movl $0x200, %ecx            # imm = 0x200
addq %rcx, %rax
leaq 0x10(%rsp), %rcx
movq %rcx, (%rsp)
movq -0x20(%rax), %rsi
movq -0x18(%rax), %rdx
addq %rsi, %rdx
movq %rsp, %rbp
movq %rbp, %rdi
callq 0x3d68
leaq 0x2b0(%rsp), %rdi
callq 0x7590
leaq 0x140(%rsp), %rdi
movq %rbp, %rsi
callq 0x761c
movq 0x2e0(%rsp), %rax
cmpq 0x2e8(%rsp), %rax
jne 0x5b53
movq 0x2f8(%rsp), %rax
movq -0x8(%rax), %rax
movl $0x200, %ecx            # imm = 0x200
addq %rcx, %rax
leaq 0x30(%rsp), %rcx
movq %rcx, 0x20(%rsp)
movq -0x20(%rax), %rsi
movq -0x18(%rax), %rdx
addq %rsi, %rdx
movq %r12, %rdi
callq 0x3d68
movq 0x20(%rsp), %rsi
movslq 0x56b4(%rip), %rax      # 0xb230
movq 0x5765(%rip), %rcx      # 0xb2e8
leaq (%rax,%rax,4), %rax
movsbl -0x8(%rcx,%rax,8), %edx
leaq 0x78(%rsp), %rbp
movq %rbp, %rdi
callq 0x369c
xorps %xmm0, %xmm0
movaps %xmm0, 0x40(%rsp)
movups 0x5740(%rip), %xmm0     # 0xb2e8
movq 0x5749(%rip), %rax      # 0xb2f8
movups 0x78(%rsp), %xmm1
movups %xmm1, 0x572d(%rip)     # 0xb2e8
movq 0x88(%rsp), %rcx
movq %rcx, 0x572e(%rip)      # 0xb2f8
movaps 0x40(%rsp), %xmm1
movaps %xmm0, 0x40(%rsp)
movq %rax, 0x50(%rsp)
movups %xmm1, 0x78(%rsp)
movq $0x0, 0x88(%rsp)
movq %rbx, %rdi
callq 0x3d0c
movq %rbp, %rdi
callq 0x3d0c
movl $0x1, %eax
movl %eax, 0x562b(%rip)      # 0xb230
movl %eax, 0x5629(%rip)      # 0xb234
movl $0x1, %edi
movl $0x1, %esi
callq 0x4150
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x5c36
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x3220
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x5c51
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3220
cmpl $0x6, %r13d
je 0x5f42
cmpl $0x5, %r13d
je 0x5db6
cmpl $0x4, %r13d
jne 0x55a4
movq 0x170(%rsp), %rax
cmpq 0x150(%rsp), %rax
je 0x5da2
cmpq 0x178(%rsp), %rax
jne 0x5ca3
movq 0x188(%rsp), %rax
movq -0x8(%rax), %rax
movl $0x200, %ecx            # imm = 0x200
addq %rcx, %rax
leaq 0x10(%rsp), %rcx
movq %rcx, (%rsp)
movq -0x20(%rax), %rsi
movq -0x18(%rax), %rdx
addq %rsi, %rdx
movq %rsp, %rbp
movq %rbp, %rdi
callq 0x3d68
movq (%rsp), %r14
leaq 0x140(%rsp), %rdi
callq 0x7590
leaq 0x2b0(%rsp), %rdi
movq %rbp, %rsi
callq 0x761c
movslq 0x5546(%rip), %rax      # 0xb230
movq 0x55f7(%rip), %rcx      # 0xb2e8
leaq (%rax,%rax,4), %rax
movsbl -0x8(%rcx,%rax,8), %edx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x369c
xorps %xmm0, %xmm0
movaps %xmm0, 0x20(%rsp)
movups 0x55d4(%rip), %xmm0     # 0xb2e8
movq 0x55dd(%rip), %rax      # 0xb2f8
movups 0x40(%rsp), %xmm1
movups %xmm1, 0x55c1(%rip)     # 0xb2e8
movq 0x50(%rsp), %rcx
movq %rcx, 0x55c5(%rip)      # 0xb2f8
movaps 0x20(%rsp), %xmm1
movaps %xmm0, 0x20(%rsp)
movq %rax, 0x30(%rsp)
movups %xmm1, 0x40(%rsp)
movq $0x0, 0x50(%rsp)
movq %r12, %rdi
callq 0x3d0c
movq %rbx, %rdi
callq 0x3d0c
movl $0x1, %eax
movl %eax, 0x54c5(%rip)      # 0xb230
movl %eax, 0x54c3(%rip)      # 0xb234
movl $0x1, %edi
movl $0x1, %esi
callq 0x4150
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x5d9b
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3220
leaq 0x5492(%rip), %r14      # 0xb234
cmpl $0x6, %r13d
je 0x5f42
cmpl $0x5, %r13d
jne 0x55a4
movslq 0x5473(%rip), %rax      # 0xb230
movq 0x5524(%rip), %rcx      # 0xb2e8
leaq (%rax,%rax,4), %rax
movq -0x28(%rcx,%rax,8), %rsi
movq %rsp, %rbp
movq %rbp, %rdi
movq %r12, %rdx
callq 0x3cce
movl $0x2, %ecx
movq %rbp, %rdi
leaq 0x236a(%rip), %r15      # 0x8154
movq %r15, %rsi
movq $-0x1, %rdx
callq 0x3420
movq %r12, %rdi
movq %rbp, %rsi
xorl %edx, %edx
movq %rax, %rcx
callq 0x3240
movl $0x2, %ecx
movq %r12, %rdi
movq %r15, %rsi
movq $-0x1, %rdx
callq 0x3420
movq %rbx, %rdi
movq %rbp, %rsi
xorl %edx, %edx
movq %rax, %rcx
callq 0x3240
movq %r12, %rdi
movq %rbx, %rsi
callq 0x3290
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x5e57
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x3220
movq 0x20(%rsp), %rsi
movslq 0x53cd(%rip), %rax      # 0xb230
movq 0x547e(%rip), %rcx      # 0xb2e8
leaq (%rax,%rax,4), %rax
movsbl -0x8(%rcx,%rax,8), %edx
leaq 0x78(%rsp), %rbp
movq %rbp, %rdi
callq 0x369c
xorps %xmm0, %xmm0
movaps %xmm0, 0x40(%rsp)
movups 0x5459(%rip), %xmm0     # 0xb2e8
movq 0x5462(%rip), %rax      # 0xb2f8
movups 0x78(%rsp), %xmm1
movups %xmm1, 0x5446(%rip)     # 0xb2e8
movq 0x88(%rsp), %rcx
movq %rcx, 0x5447(%rip)      # 0xb2f8
movaps 0x40(%rsp), %xmm1
movaps %xmm0, 0x40(%rsp)
movq %rax, 0x50(%rsp)
movups %xmm1, 0x78(%rsp)
movq $0x0, 0x88(%rsp)
movq %rbx, %rdi
callq 0x3d0c
movq %rbp, %rdi
callq 0x3d0c
movl $0x1, %eax
movl %eax, 0x5344(%rip)      # 0xb230
movl %eax, 0x5342(%rip)      # 0xb234
movl $0x1, %edi
movl $0x1, %esi
callq 0x4150
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x5f1d
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x3220
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x5f38
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3220
cmpl $0x6, %r13d
jne 0x55a4
callq 0x42ab
movl $0x1c, 0x52df(%rip)     # 0xb230
movl $0x1, 0x52d9(%rip)      # 0xb234
movl $0x1c, %edi
movl $0x1, %esi
callq 0x4150
leaq 0x21e6(%rip), %rdi      # 0x8157
xorl %eax, %eax
callq 0x3040
movl $0x2b, %edx
movq 0x504c(%rip), %rdi      # 0xafd0
leaq 0x21d4(%rip), %rsi      # 0x815f
callq 0x3270
movq 0x5039(%rip), %rcx      # 0xafd0
movq (%rcx), %rax
movq -0x18(%rax), %rdi
addq %rcx, %rdi
movl $0xa, %esi
callq 0x3200
movsbl %al, %esi
movq 0x501b(%rip), %rdi      # 0xafd0
callq 0x3030
movq %rax, %rdi
callq 0x3160
movl $0x10, %edx
movq %rax, %rdi
leaq 0x21ba(%rip), %rsi      # 0x818b
callq 0x3270
xorps %xmm0, %xmm0
movaps %xmm0, 0x60(%rsp)
xorl %ecx, %ecx
movq %rcx, 0x70(%rsp)
leaq 0x10(%rsp), %rax
movq %rax, (%rsp)
movq %rcx, 0x8(%rsp)
movb $0x0, 0x10(%rsp)
movq 0x4fe1(%rip), %r15      # 0xafe0
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x3200
movsbl %al, %edx
movq %r15, %rdi
movq %rsp, %rsi
callq 0x33e0
movq (%rsp), %rsi
cmpb $0x1b, (%rsi)
jne 0x610d
movl $0x1, %eax
movl %eax, 0x51f7(%rip)      # 0xb230
movl %eax, 0x51f5(%rip)      # 0xb234
movl $0x1, %edi
movl $0x1, %esi
callq 0x4150
leaq 0x2102(%rip), %rdi      # 0x8157
xorl %eax, %eax
callq 0x3040
movl $0x3b, %edx
movq 0x4f68(%rip), %rdi      # 0xafd0
leaq 0x212d(%rip), %rsi      # 0x819c
callq 0x3270
movq 0x4f55(%rip), %rcx      # 0xafd0
movq (%rcx), %rax
movq -0x18(%rax), %rdi
addq %rcx, %rdi
movl $0xa, %esi
callq 0x3200
movsbl %al, %esi
movq 0x4f37(%rip), %rdi      # 0xafd0
callq 0x3030
movq %rax, %rdi
callq 0x3160
movl $0x3b, %edx
movq 0x4f1e(%rip), %rdi      # 0xafd0
leaq 0x20e3(%rip), %rsi      # 0x819c
callq 0x3270
movq 0x4f0b(%rip), %rcx      # 0xafd0
movq (%rcx), %rax
movq -0x18(%rax), %rdi
addq %rcx, %rdi
movl $0xa, %esi
callq 0x3200
movsbl %al, %esi
movq 0x4eed(%rip), %rdi      # 0xafd0
callq 0x3030
movq %rax, %rdi
callq 0x3160
movl $0x3b, %edx
movq 0x4ed4(%rip), %rdi      # 0xafd0
leaq 0x2099(%rip), %rsi      # 0x819c
callq 0x3270
jmp 0x681e
movq (%rsp), %rax
addq 0x8(%rsp), %rax
movq %rsi, %r13
cmpq %rax, %rsi
je 0x617c
cmpb $0x20, (%r13)
jne 0x616b
leaq 0x30(%rsp), %rax
movq %rax, 0x20(%rsp)
movq %r12, %rdi
movq %r13, %rdx
callq 0x776a
leaq 0x60(%rsp), %rdi
movq %r12, %rsi
callq 0x6e92
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x6163
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x3220
incq %r13
movq %r13, %rsi
jmp 0x616e
incq %r13
movq (%rsp), %rax
addq 0x8(%rsp), %rax
cmpq %rax, %r13
jne 0x611e
leaq 0x30(%rsp), %rax
movq %rax, 0x20(%rsp)
movq %r12, %rdi
movq %r13, %rdx
callq 0x776a
leaq 0x60(%rsp), %rdi
movq %r12, %rsi
callq 0x6e92
movq 0x60(%rsp), %rdi
leaq 0x202e(%rip), %rsi      # 0x81d8
callq 0x30a0
testl %eax, %eax
je 0x62b5
movq 0x60(%rsp), %rdi
leaq 0x203f(%rip), %rsi      # 0x8202
callq 0x30a0
movq 0x60(%rsp), %rdi
testl %eax, %eax
je 0x64ff
leaq 0x2032(%rip), %rsi      # 0x820e
callq 0x30a0
movq 0x60(%rsp), %rdi
testl %eax, %eax
je 0x65a1
leaq 0x2024(%rip), %rsi      # 0x8219
callq 0x30a0
testl %eax, %eax
je 0x6643
movq 0x60(%rsp), %rdi
leaq 0x202f(%rip), %rsi      # 0x823d
callq 0x30a0
movq 0x60(%rsp), %rdi
testl %eax, %eax
je 0x6752
leaq 0x201d(%rip), %rsi      # 0x8244
callq 0x30a0
movq 0x60(%rsp), %rdi
testl %eax, %eax
je 0x6848
leaq 0x202a(%rip), %rsi      # 0x826a
callq 0x30a0
movq 0x60(%rsp), %rdi
testl %eax, %eax
je 0x68d7
leaq 0x203b(%rip), %rsi      # 0x8294
callq 0x30a0
testl %eax, %eax
jne 0x6802
movq 0x60(%rsp), %rax
leaq 0x1a0(%rsp), %rcx
movq %rcx, 0x190(%rsp)
movq 0x20(%rax), %rsi
movq 0x28(%rax), %rdx
addq %rsi, %rdx
leaq 0x190(%rsp), %rdi
callq 0x3d68
leaq 0x190(%rsp), %rdi
callq 0x53c2
movq 0x190(%rsp), %rdi
leaq 0x1a0(%rsp), %rcx
jmp 0x67ef
movq 0x68(%rsp), %r14
subq 0x60(%rsp), %r14
movq %r14, %r15
shrq $0x5, %r15
cmpl $0x2, %r15d
je 0x64db
shlq $0x1b, %r14
movabsq $-0x100000000, %rax     # imm = 0xFFFFFFFF00000000
addq %rax, %r14
sarq $0x1b, %r14
addl $-0x2, %r15d
movl $0x28, %r13d
leaq 0x50(%rsp), %rax
movq %rax, 0x40(%rsp)
movq 0x4fc8(%rip), %rsi      # 0xb2c8
movq 0x4fc9(%rip), %rdx      # 0xb2d0
addq %rsi, %rdx
movq %rbx, %rdi
callq 0x3d68
movq %rbx, %rdi
leaq 0x1e39(%rip), %rsi      # 0x8155
callq 0x33f0
movq 0x60(%rsp), %rax
movq -0x8(%rax,%r13), %rsi
movq (%rax,%r13), %rdx
movq %rbx, %rdi
callq 0x30b0
leaq 0xd0(%rsp), %rsi
movq %rsi, 0xc0(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x636b
movq %rdx, 0xc0(%rsp)
movq (%rcx), %rdx
movq %rdx, 0xd0(%rsp)
jmp 0x6371
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0xc8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x60(%rsp), %rax
leaq 0x88(%rsp), %rcx
movq %rcx, 0x78(%rsp)
movq (%rax,%r14), %rsi
movq 0x8(%rax,%r14), %rdx
addq %rsi, %rdx
leaq 0x78(%rsp), %rbp
movq %rbp, %rdi
callq 0x3d68
movq %rbp, %rdi
leaq 0x1d94(%rip), %rsi      # 0x8155
callq 0x33f0
movq 0x60(%rsp), %rax
movq -0x8(%rax,%r13), %rsi
movq (%rax,%r13), %rdx
movq %rbp, %rdi
callq 0x30b0
leaq 0xb0(%rsp), %rsi
movq %rsi, 0xa0(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x6410
movq %rdx, 0xa0(%rsp)
movq (%rcx), %rdx
movq %rdx, 0xb0(%rsp)
jmp 0x6416
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0xa8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xc0(%rsp), %rdi
leaq 0xa0(%rsp), %rsi
callq 0x4351
movq 0xa0(%rsp), %rdi
leaq 0xb0(%rsp), %rax
cmpq %rax, %rdi
je 0x646b
movq 0xb0(%rsp), %rsi
incq %rsi
callq 0x3220
movq 0x78(%rsp), %rdi
leaq 0x88(%rsp), %rax
cmpq %rax, %rdi
je 0x648d
movq 0x88(%rsp), %rsi
incq %rsi
callq 0x3220
movq 0xc0(%rsp), %rdi
leaq 0xd0(%rsp), %rax
cmpq %rax, %rdi
je 0x64b2
movq 0xd0(%rsp), %rsi
incq %rsi
callq 0x3220
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x64ce
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x3220
addq $0x20, %r13
decl %r15d
jne 0x62ef
movl $0x24, %edx
movq 0x4ae9(%rip), %rdi      # 0xafd0
leaq 0x1cef(%rip), %rsi      # 0x81dd
callq 0x3270
leaq 0x4d3a(%rip), %r14      # 0xb234
jmp 0x6802
leaq 0x260(%rsp), %rax
movq %rax, 0x250(%rsp)
movq 0x20(%rdi), %rsi
movq 0x28(%rdi), %rdx
addq %rsi, %rdx
leaq 0x250(%rsp), %rdi
callq 0x3d68
movq 0x60(%rsp), %rax
leaq 0x240(%rsp), %rcx
movq %rcx, 0x230(%rsp)
movq 0x40(%rax), %rsi
movq 0x48(%rax), %rdx
addq %rsi, %rdx
leaq 0x230(%rsp), %r15
movq %r15, %rdi
callq 0x3d68
leaq 0x250(%rsp), %rdi
movq %r15, %rsi
callq 0x4521
movq 0x230(%rsp), %rdi
leaq 0x240(%rsp), %rax
cmpq %rax, %rdi
je 0x658c
movq 0x240(%rsp), %rsi
incq %rsi
callq 0x3220
movq 0x250(%rsp), %rdi
leaq 0x260(%rsp), %rcx
jmp 0x67ef
leaq 0x220(%rsp), %rax
movq %rax, 0x210(%rsp)
movq 0x20(%rdi), %rsi
movq 0x28(%rdi), %rdx
addq %rsi, %rdx
leaq 0x210(%rsp), %rdi
callq 0x3d68
movq 0x60(%rsp), %rax
leaq 0x200(%rsp), %rcx
movq %rcx, 0x1f0(%rsp)
movq 0x40(%rax), %rsi
movq 0x48(%rax), %rdx
addq %rsi, %rdx
leaq 0x1f0(%rsp), %r15
movq %r15, %rdi
callq 0x3d68
leaq 0x210(%rsp), %rdi
movq %r15, %rsi
callq 0x4992
movq 0x1f0(%rsp), %rdi
leaq 0x200(%rsp), %rax
cmpq %rax, %rdi
je 0x662e
movq 0x200(%rsp), %rsi
incq %rsi
callq 0x3220
movq 0x210(%rsp), %rdi
leaq 0x220(%rsp), %rcx
jmp 0x67ef
movq 0x68(%rsp), %r14
subq 0x60(%rsp), %r14
movq %r14, %r15
shrq $0x5, %r15
cmpl $0x2, %r15d
je 0x672e
shlq $0x1b, %r14
movabsq $-0x100000000, %rax     # imm = 0xFFFFFFFF00000000
addq %rax, %r14
sarq $0x1b, %r14
addl $-0x2, %r15d
movl $0x20, %r13d
movq 0x60(%rsp), %rax
leaq 0x130(%rsp), %rcx
movq %rcx, 0x120(%rsp)
movq (%rax,%r13), %rsi
movq 0x8(%rax,%r13), %rdx
addq %rsi, %rdx
leaq 0x120(%rsp), %rdi
callq 0x3d68
movq 0x60(%rsp), %rdx
leaq (%rdx,%r14), %rsi
addq %r13, %rdx
leaq 0x290(%rsp), %rbp
movq %rbp, %rdi
callq 0x6ecf
leaq 0x120(%rsp), %rdi
movq %rbp, %rsi
callq 0x4fec
movq 0x290(%rsp), %rdi
leaq 0x2a0(%rsp), %rax
cmpq %rax, %rdi
je 0x66fc
movq 0x2a0(%rsp), %rsi
incq %rsi
callq 0x3220
movq 0x120(%rsp), %rdi
leaq 0x130(%rsp), %rax
cmpq %rax, %rdi
je 0x6721
movq 0x130(%rsp), %rsi
incq %rsi
callq 0x3220
addq $0x20, %r13
decl %r15d
jne 0x667d
movl $0x1e, %edx
movq 0x4896(%rip), %rdi      # 0xafd0
leaq 0x1add(%rip), %rsi      # 0x821e
callq 0x3270
leaq 0x4ae7(%rip), %r14      # 0xb234
jmp 0x6802
leaq 0x1e0(%rsp), %rax
movq %rax, 0x1d0(%rsp)
movq 0x20(%rdi), %rsi
movq 0x28(%rdi), %rdx
addq %rsi, %rdx
leaq 0x1d0(%rsp), %rdi
callq 0x3d68
movq 0x60(%rsp), %rax
leaq 0x1c0(%rsp), %rcx
movq %rcx, 0x1b0(%rsp)
movq 0x40(%rax), %rsi
movq 0x48(%rax), %rdx
addq %rsi, %rdx
leaq 0x1b0(%rsp), %r15
movq %r15, %rdi
callq 0x3d68
leaq 0x1d0(%rsp), %rdi
movq %r15, %rsi
callq 0x4db1
movq 0x1b0(%rsp), %rdi
leaq 0x1c0(%rsp), %rax
cmpq %rax, %rdi
je 0x67df
movq 0x1c0(%rsp), %rsi
incq %rsi
callq 0x3220
movq 0x1d0(%rsp), %rdi
leaq 0x1e0(%rsp), %rcx
movq %rcx, %rax
cmpq %rcx, %rdi
je 0x6802
movq (%rax), %rsi
incq %rsi
callq 0x3220
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x681e
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x3220
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x6839
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3220
leaq 0x60(%rsp), %rdi
callq 0x6f2a
jmp 0x55a4
leaq 0x110(%rsp), %rax
movq %rax, 0x100(%rsp)
movq 0x20(%rdi), %rsi
movq 0x28(%rdi), %rdx
addq %rsi, %rdx
leaq 0x100(%rsp), %rdi
callq 0x3d68
leaq 0x100(%rsp), %rdi
callq 0x5106
movl %eax, %ebp
movq 0x100(%rsp), %rdi
leaq 0x110(%rsp), %rax
cmpq %rax, %rdi
je 0x68a4
movq 0x110(%rsp), %rsi
incq %rsi
callq 0x3220
testl %ebp, %ebp
leaq 0x19a3(%rip), %rsi      # 0x8250
leaq 0x1881(%rip), %rax      # 0x8135
cmoveq %rax, %rsi
movl $0x19, %edx
movl $0xb, %eax
cmoveq %rax, %rdx
movq 0x4703(%rip), %rdi      # 0xafd0
callq 0x3270
jmp 0x6802
leaq 0xf0(%rsp), %rax
movq %rax, 0xe0(%rsp)
movq 0x20(%rdi), %rsi
movq 0x28(%rdi), %rdx
addq %rsi, %rdx
leaq 0xe0(%rsp), %rdi
callq 0x3d68
leaq 0xe0(%rsp), %rdi
callq 0x521b
movl %eax, %ebp
movq 0xe0(%rsp), %rdi
leaq 0xf0(%rsp), %rax
cmpq %rax, %rdi
je 0x6933
movq 0xf0(%rsp), %rsi
incq %rsi
callq 0x3220
testl %ebp, %ebp
leaq 0x1939(%rip), %rsi      # 0x8275
leaq 0x17f2(%rip), %rax      # 0x8135
cmoveq %rax, %rsi
movl $0x1e, %edx
movl $0xb, %eax
cmoveq %rax, %rdx
movq 0x4674(%rip), %rdi      # 0xafd0
callq 0x3270
jmp 0x6802
movq 0x98(%rsp), %rax
movq 0x8(%rax), %rsi
movq %rbx, %rdi
movl $0x1, %edx
callq 0x369c
xorps %xmm0, %xmm0
movaps %xmm0, 0x20(%rsp)
movups 0x495a(%rip), %xmm0     # 0xb2e8
movq 0x4963(%rip), %rax      # 0xb2f8
movups 0x40(%rsp), %xmm1
movups %xmm1, 0x4947(%rip)     # 0xb2e8
movq 0x50(%rsp), %rcx
movq %rcx, 0x494b(%rip)      # 0xb2f8
movaps 0x20(%rsp), %xmm1
movaps %xmm0, 0x20(%rsp)
movq %rax, 0x30(%rsp)
movups %xmm1, 0x40(%rsp)
movq $0x0, 0x50(%rsp)
movq %r12, %rdi
callq 0x3d0c
movq %rbx, %rdi
callq 0x3d0c
leaq 0x4853(%rip), %r14      # 0xb234
jmp 0x59a5
movq %rax, %rbx
movq 0x190(%rsp), %rdi
leaq 0x1a0(%rsp), %rax
cmpq %rax, %rdi
je 0x6d4c
movq 0x1a0(%rsp), %rsi
jmp 0x6d3d
jmp 0x6c2a
movq %rax, %rbx
movq 0xe0(%rsp), %rdi
leaq 0xf0(%rsp), %rax
cmpq %rax, %rdi
je 0x6d4c
movq 0xf0(%rsp), %rsi
jmp 0x6d3d
movq %rax, %rbx
movq 0x100(%rsp), %rdi
leaq 0x110(%rsp), %rax
cmpq %rax, %rdi
je 0x6d4c
movq 0x110(%rsp), %rsi
jmp 0x6d3d
jmp 0x6d49
jmp 0x6c09
jmp 0x6c09
movq %rax, %rbx
movq 0x270(%rsp), %rdi
leaq 0x280(%rsp), %rax
cmpq %rax, %rdi
je 0x6c2d
movq 0x280(%rsp), %rsi
jmp 0x6c20
jmp 0x6c2a
movq %rax, %rbx
movq 0x1b0(%rsp), %rdi
leaq 0x1c0(%rsp), %rax
cmpq %rax, %rdi
je 0x6ad0
movq 0x1c0(%rsp), %rsi
incq %rsi
callq 0x3220
jmp 0x6ad0
movq %rax, %rbx
movq 0x1d0(%rsp), %rdi
leaq 0x1e0(%rsp), %rax
cmpq %rax, %rdi
je 0x6d4c
movq 0x1e0(%rsp), %rsi
jmp 0x6d3d
jmp 0x6d49
jmp 0x6d49
movq %rax, %rbx
movq 0x1f0(%rsp), %rdi
leaq 0x200(%rsp), %rax
cmpq %rax, %rdi
je 0x6b2d
movq 0x200(%rsp), %rsi
incq %rsi
callq 0x3220
jmp 0x6b2d
movq %rax, %rbx
movq 0x210(%rsp), %rdi
leaq 0x220(%rsp), %rax
cmpq %rax, %rdi
je 0x6d4c
movq 0x220(%rsp), %rsi
jmp 0x6d3d
jmp 0x6c2a
movq %rax, %rbx
movq 0x230(%rsp), %rdi
leaq 0x240(%rsp), %rax
cmpq %rax, %rdi
je 0x6b85
movq 0x240(%rsp), %rsi
incq %rsi
callq 0x3220
jmp 0x6b85
movq %rax, %rbx
movq 0x250(%rsp), %rdi
leaq 0x260(%rsp), %rax
cmpq %rax, %rdi
je 0x6d4c
movq 0x260(%rsp), %rsi
jmp 0x6d3d
jmp 0x6dba
jmp 0x6bb2
movq %rax, %rbx
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x6dbd
movq 0x30(%rsp), %rsi
jmp 0x6db0
jmp 0x6c2a
jmp 0x6dba
jmp 0x6dba
jmp 0x6d49
jmp 0x6c2a
jmp 0x6c09
jmp 0x6c09
jmp 0x6c2a
jmp 0x6c2a
jmp 0x6dba
jmp 0x6c2a
jmp 0x6dba
jmp 0x6dba
jmp 0x6d6a
jmp 0x6c2a
jmp 0x6c09
jmp 0x6c09
movq %rax, %rbx
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x6c2d
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x3220
jmp 0x6c2d
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
jmp 0x6da6
jmp 0x6dba
jmp 0x6d49
jmp 0x6d49
movq %rax, %rbx
movq 0x290(%rsp), %rdi
leaq 0x2a0(%rsp), %rax
cmpq %rax, %rdi
je 0x6c77
movq 0x2a0(%rsp), %rsi
incq %rsi
callq 0x3220
jmp 0x6c77
movq %rax, %rbx
movq 0x120(%rsp), %rdi
leaq 0x130(%rsp), %rax
cmpq %rax, %rdi
je 0x6d4c
movq 0x130(%rsp), %rsi
jmp 0x6d3d
jmp 0x6d6a
jmp 0x6d49
jmp 0x6cae
movq %rax, %rbx
jmp 0x6d04
movq %rax, %rbx
jmp 0x6d29
jmp 0x6cdf
movq %rax, %rbx
movq 0xa0(%rsp), %rdi
leaq 0xb0(%rsp), %rax
cmpq %rax, %rdi
je 0x6ce2
movq 0xb0(%rsp), %rsi
incq %rsi
callq 0x3220
jmp 0x6ce2
movq %rax, %rbx
movq 0x78(%rsp), %rdi
leaq 0x88(%rsp), %rax
cmpq %rax, %rdi
je 0x6d04
movq 0x88(%rsp), %rsi
incq %rsi
callq 0x3220
movq 0xc0(%rsp), %rdi
leaq 0xd0(%rsp), %rax
cmpq %rax, %rdi
je 0x6d29
movq 0xd0(%rsp), %rsi
incq %rsi
callq 0x3220
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x6d4c
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x3220
jmp 0x6d4c
jmp 0x6d6a
movq %rax, %rbx
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x6d6d
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x3220
jmp 0x6d6d
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x6d88
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3220
leaq 0x60(%rsp), %rdi
callq 0x6f2a
jmp 0x6dbd
jmp 0x6dba
jmp 0x6dba
jmp 0x6dba
movq %rax, %rbx
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6dbd
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3220
jmp 0x6dbd
movq %rax, %rbx
leaq 0x140(%rsp), %rdi
callq 0x6f86
jmp 0x6dcf
movq %rax, %rbx
leaq 0x2b0(%rsp), %rdi
callq 0x6f86
jmp 0x6de1
movq %rax, %rbx
leaq 0x318(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6e02
movq 0x318(%rsp), %rsi
incq %rsi
callq 0x3220
movq %rbx, %rdi
callq 0x33b0