// File: /workspace/github_cpp_makefile_star2_O3/jamesliu516[P]amrdg2d/point_vec.cpp
// Function: point_vec()
void point_vec()
{
   Node *current;
   
   OctCell *pcell0;
   OctCell *pcell1;
   Vec2D x0,x1;
   
  // OctCell *pcellv[4]={NULL}; 
   map<OctCell *, short> pcellv; //��������cell,�ڶ�������ֵ��ʾcell�ĵڼ������㹲��cell
   set<OctCell *> pcell_set;   //���ܹ�������Щcell
   
   cellPointIndex cpi1;	
   pointInCell pic1;
   
   int cnt=0;//the number of points
   short cnl=0;//��ʾ���������м���cell���˵�,һ��4��������Ӧ��ϸ���洦Ϊ2
   
   int idflg=0;
   
   int id1=0;
   short ii,jj;
   
   OctCell *pp[8]={NULL};
   OctCell *parent;
   
   current = HeadListAllGrid;  
   
   cellPoints.clear();
   points4out.clear();
  while(current != NULL)
  {		
    pcell0 = current->cell;
    if(pcell0->flag % 2 == 0 && current->flg==0) 
//    if(pcell0->exflag  == 2  ) 
         cellPoints.insert(make_pair(pcell0,cpi1)); 
    current = current->next;
  }
  
  cout<<"Total output cells: "<<cellPoints.size()<<endl;

  
  cnt=0;
  	   
    map<OctCell *, cellPointIndex>::iterator itmb;

    for(map<OctCell *, cellPointIndex>::iterator itmap=cellPoints.begin(); itmap!=cellPoints.end();++itmap) {
    
        parent=pcell0=itmap->first;       
    
        pp[0]=EastNeighbor(parent);
	 pp[1]=NorthNeighbor(pp[0]);
        pp[2]=NorthNeighbor(parent);
	 pp[3]=WestNeighbor(pp[2]);
	 pp[4]=WestNeighbor(parent);
	 pp[5]=SouthNeighbor(pp[4]);
	 pp[6]=SouthNeighbor(parent);
	 pp[7]=EastNeighbor(pp[6]);
         
        pcell_set.clear();
        if(pp[0]->reflag==0){
            pcell_set.insert(pp[0]);
         }         
        else {
            pcell_set.insert(pp[0]->children[3]);
            pcell_set.insert(pp[0]->children[0]);
        }
        
        if(pp[1]->reflag==0){
            pcell_set.insert(pp[1]);
         }         
        else {
            pcell_set.insert(pp[1]->children[0]);
         }        
         
        if(pp[2]->reflag==0){
            pcell_set.insert(pp[2]);
         }         
        else {
            pcell_set.insert(pp[2]->children[1]);
            pcell_set.insert(pp[2]->children[0]);
        }
        
        if(pp[3]->reflag==0){
            pcell_set.insert(pp[3]);
         }         
        else {
            pcell_set.insert(pp[3]->children[1]);
        }

        if(pp[4]->reflag==0){
            pcell_set.insert(pp[4]);
         }         
        else {
            pcell_set.insert(pp[4]->children[2]);
            pcell_set.insert(pp[4]->children[1]);
        }
                                
        if(pp[5]->reflag==0){
            pcell_set.insert(pp[5]);
         }         
        else {
            pcell_set.insert(pp[5]->children[2]);
        }
        
        if(pp[6]->reflag==0){
            pcell_set.insert(pp[6]);
         }         
        else {
            pcell_set.insert(pp[6]->children[3]);
            pcell_set.insert(pp[6]->children[2]);
        }
        
        if(pp[7]->reflag==0){
            pcell_set.insert(pp[7]);
         }         
        else {
            pcell_set.insert(pp[7]->children[3]);
        }        
        
         
        pcellv.clear(); 
        if(itmap->second.iPoint[0]==0) 
         {
             x0[0]=pcell0->xc1-0.5*pcell0->dx;
             x0[1]=pcell0->yc1-0.5*pcell0->dy;  
                                   
             idflg=0;  //ȡ���Ѿ����ǵĵ���Ӧ�������еĵ�����  
             cnl=0;//��ʾ���������м���cell���˵�,һ��4��������Ӧ��ϸ���洦Ϊ2
             for(set<OctCell*>::iterator iter=pcell_set.begin(); iter!=pcell_set.end(); ++iter){
                  pcell1=*iter;
                  for(short i1=0;i1<4; ++i1){
 	              switch(i1) {	
	                  case 0: ii=-1;jj=-1;break;
	                  case 1: ii=1;jj=-1;break;
	                  case 2: ii=1;jj=1;break;
	                  case 3: ii=-1;jj=1;break;	
	                }            
	           x1[0]=pcell1->xc1+ii*pcell1->dx/2.0;				
	           x1[1]=pcell1->yc1+jj*pcell1->dy/2.0;	
	                
	           if(fabs(x1-x0)<ERRS){
	              ++cnl;
                     itmb=cellPoints.find(pcell1);                   
                     if(itmb!=cellPoints.end()){
                          pcellv.insert(make_pair(pcell1,i1));
                       }
                    }
                  }
                if(cnl==4) break;
             }
             
            for(map<OctCell*, short>::iterator itm1=pcellv.begin(); itm1!=pcellv.end(); ++itm1){
               if(cellPoints[itm1->first].iPoint[itm1->second]!=0)
                    idflg=cellPoints[itm1->first].iPoint[itm1->second];
             }
            
            if(idflg==0){
               cnt++;
               id1=cnt;
               pic1.pt=x0;  
               points4out.push_back(pic1);        
             }
            else{
               id1=idflg;
             }
             
           itmap->second.iPoint[0]=id1;
           
            for(map<OctCell*, short>::iterator itm1=pcellv.begin(); itm1!=pcellv.end(); ++itm1){
                    cellPoints[itm1->first].iPoint[itm1->second]=id1;
             }           
        } 
 //==          
        pcellv.clear(); 
        if(itmap->second.iPoint[1]==0) 
         {
             x0[0]=pcell0->xc1+0.5*pcell0->dx;
             x0[1]=pcell0->yc1-0.5*pcell0->dy;  
                                   
             idflg=0;  //ȡ���Ѿ����ǵĵ���Ӧ�������еĵ�����  
             cnl=0;//��ʾ���������м���cell���˵�,һ��4��������Ӧ��ϸ���洦Ϊ3
             for(set<OctCell*>::iterator iter=pcell_set.begin(); iter!=pcell_set.end(); ++iter){
                  pcell1=*iter;
                  for(short i1=0;i1<4; ++i1){
 	              switch(i1) {	
	                  case 0: ii=-1;jj=-1;break;
	                  case 1: ii=1;jj=-1;break;
	                  case 2: ii=1;jj=1;break;
	                  case 3: ii=-1;jj=1;break;	
	                }            
	           x1[0]=pcell1->xc1+ii*pcell1->dx/2.0;				
	           x1[1]=pcell1->yc1+jj*pcell1->dy/2.0;	
	                
	           if(fabs(x1-x0)<ERRS){
	              ++cnl;
                     itmb=cellPoints.find(pcell1);                   
                     if(itmb!=cellPoints.end()){
                          pcellv.insert(make_pair(pcell1,i1));
                       }
                    }
                  }
                if(cnl==4) break;
             }
             
            for(map<OctCell*, short>::iterator itm1=pcellv.begin(); itm1!=pcellv.end(); ++itm1){
               if(cellPoints[itm1->first].iPoint[itm1->second]!=0)
                    idflg=cellPoints[itm1->first].iPoint[itm1->second];
             }
            
            if(idflg==0){
               cnt++;
               id1=cnt;
               pic1.pt=x0;                
                points4out.push_back(pic1);                        
             }
            else{
               id1=idflg;
             }
             
           itmap->second.iPoint[1]=id1;
           
            for(map<OctCell*, short>::iterator itm1=pcellv.begin(); itm1!=pcellv.end(); ++itm1){
                    cellPoints[itm1->first].iPoint[itm1->second]=id1;
             }           
        } 
//==
        pcellv.clear(); 
        if(itmap->second.iPoint[2]==0) 
         {
             x0[0]=pcell0->xc1+0.5*pcell0->dx;
             x0[1]=pcell0->yc1+0.5*pcell0->dy;  
                                   
             idflg=0;  //ȡ���Ѿ����ǵĵ���Ӧ�������еĵ�����  
             cnl=0;//��ʾ���������м���cell���˵�,һ��4��������Ӧ��ϸ���洦Ϊ3
             for(set<OctCell*>::iterator iter=pcell_set.begin(); iter!=pcell_set.end(); ++iter){
                  pcell1=*iter;
                  for(short i1=0;i1<4; ++i1){
 	              switch(i1) {	
	                  case 0: ii=-1;jj=-1;break;
	                  case 1: ii=1;jj=-1;break;
	                  case 2: ii=1;jj=1;break;
	                  case 3: ii=-1;jj=1;break;	
	                }            
	           x1[0]=pcell1->xc1+ii*pcell1->dx/2.0;				
	           x1[1]=pcell1->yc1+jj*pcell1->dy/2.0;	
	                
	           if(fabs(x1-x0)<ERRS){
	              ++cnl;
                     itmb=cellPoints.find(pcell1);                   
                     if(itmb!=cellPoints.end()){
                          pcellv.insert(make_pair(pcell1,i1));
                       }
                    }
                  }
                if(cnl==4) break;
             }
             
            for(map<OctCell*, short>::iterator itm1=pcellv.begin(); itm1!=pcellv.end(); ++itm1){
               if(cellPoints[itm1->first].iPoint[itm1->second]!=0)
                    idflg=cellPoints[itm1->first].iPoint[itm1->second];
             }
            
            if(idflg==0){
               cnt++;
               id1=cnt;
               pic1.pt=x0;
               points4out.push_back(pic1);                
                         
             }
            else{
               id1=idflg;
             }
             
           itmap->second.iPoint[2]=id1;
           
            for(map<OctCell*, short>::iterator itm1=pcellv.begin(); itm1!=pcellv.end(); ++itm1){
                    cellPoints[itm1->first].iPoint[itm1->second]=id1;
             }           
        }         
// 

        pcellv.clear(); 
        if(itmap->second.iPoint[3]==0) 
         {
             x0[0]=pcell0->xc1-0.5*pcell0->dx;
             x0[1]=pcell0->yc1+0.5*pcell0->dy;  
                                   
             idflg=0;  //ȡ���Ѿ����ǵĵ���Ӧ�������еĵ�����  
             cnl=0;//��ʾ���������м���cell���˵�,һ��4��������Ӧ��ϸ���洦Ϊ3
             for(set<OctCell*>::iterator iter=pcell_set.begin(); iter!=pcell_set.end(); ++iter){
                  pcell1=*iter;
                  for(short i1=0;i1<4; ++i1){
 	              switch(i1) {	
	                  case 0: ii=-1;jj=-1;break;
	                  case 1: ii=1;jj=-1;break;
	                  case 2: ii=1;jj=1;break;
	                  case 3: ii=-1;jj=1;break;	
	                }            
	           x1[0]=pcell1->xc1+ii*pcell1->dx/2.0;				
	           x1[1]=pcell1->yc1+jj*pcell1->dy/2.0;	
	                
	           if(fabs(x1-x0)<ERRS){
	              ++cnl;
                     itmb=cellPoints.find(pcell1);                   
                     if(itmb!=cellPoints.end()){
                          pcellv.insert(make_pair(pcell1,i1));
                       }
                    }
                  }
                if(cnl==4) break;
             }
             
            for(map<OctCell*, short>::iterator itm1=pcellv.begin(); itm1!=pcellv.end(); ++itm1){
               if(cellPoints[itm1->first].iPoint[itm1->second]!=0)
                    idflg=cellPoints[itm1->first].iPoint[itm1->second];
             }
            
            if(idflg==0){
               cnt++;
               id1=cnt;
               pic1.pt=x0; 
                points4out.push_back(pic1);                        
             }
            else{
               id1=idflg;
             }
             
           itmap->second.iPoint[3]=id1;
           
            for(map<OctCell*, short>::iterator itm1=pcellv.begin(); itm1!=pcellv.end(); ++itm1){
                    cellPoints[itm1->first].iPoint[itm1->second]=id1;
             }           
        }        
   }     
   
   cout<<"Total Output Points: "<<cnt<<endl; 
   bool is_here=false;
   int tnmc;
   for(map<OctCell *, cellPointIndex>::iterator itmap=cellPoints.begin(); itmap!=cellPoints.end();++itmap) {
        pcell0=itmap->first;
       for(int m=0; m<4;++m) {
         is_here=false;
         tnmc=points4out[itmap->second.iPoint[m]-1].nmc;
         for(int i1=0;i1<tnmc; ++i1) {
             if(points4out[itmap->second.iPoint[m]-1].mcell[i1]==pcell0) {
                  is_here=true;
                  break;
               }
          }
         if(!is_here) {
              points4out[itmap->second.iPoint[m]-1].mcell[tnmc]=pcell0;
              points4out[itmap->second.iPoint[m]-1].nmc+=1;
         }
      }
    }
    
  }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x168, %rsp            # imm = 0x168
leaq 0x30(%rsp), %rdi
xorpd %xmm0, %xmm0
xorpd %xmm1, %xmm1
callq 0xcf30
leaq 0x148(%rsp), %rdi
xorpd %xmm0, %xmm0
xorpd %xmm1, %xmm1
callq 0xcf30
leaq 0x50(%rsp), %rcx
xorl %eax, %eax
movl %eax, (%rcx)
movq %rax, 0x8(%rcx)
movq %rcx, 0x10(%rcx)
movq %rcx, 0x18(%rcx)
movq %rax, 0x20(%rcx)
leaq 0x98(%rsp), %rcx
movl %eax, (%rcx)
movq %rax, 0x8(%rcx)
movq %rcx, 0x10(%rcx)
movq %rcx, 0x18(%rcx)
movq %rax, 0x20(%rcx)
leaq 0x158(%rsp), %rdi
callq 0x4824
leaq 0x108(%rsp), %rdi
callq 0x482c
xorpd %xmm0, %xmm0
movapd %xmm0, 0xf0(%rsp)
movapd %xmm0, 0xe0(%rsp)
movapd %xmm0, 0xd0(%rsp)
movapd %xmm0, 0xc0(%rsp)
leaq 0x23eb0(%rip), %rax     # 0x29610
movq (%rax), %rbx
leaq 0x23f5e(%rip), %r13     # 0x296c8
movq %r13, %rdi
callq 0x6aba
leaq 0x23f7f(%rip), %rcx     # 0x296f8
movq (%rcx), %rax
cmpq %rax, 0x8(%rcx)
je 0x5786
movq %rax, 0x8(%rcx)
testq %rbx, %rbx
je 0x57da
leaq 0x80(%rsp), %r12
leaq 0x23f2e(%rip), %r14     # 0x296c8
leaq 0x78(%rsp), %r15
movq 0x8(%rbx), %rax
testb $0x1, 0x1b0(%rax)
jne 0x57d1
cmpw $0x0, (%rbx)
jne 0x57d1
movq %rax, 0x78(%rsp)
movupd 0x158(%rsp), %xmm0
movupd %xmm0, (%r12)
movq %r14, %rdi
movq %r15, %rsi
callq 0x6ae8
movq 0x10(%rbx), %rbx
testq %rbx, %rbx
jne 0x579f
movq 0x1e7e7(%rip), %rdi     # 0x23fc8
leaq 0x17970(%rip), %rsi     # 0x1d158
movl $0x14, %edx
callq 0x3250
movq 0x28(%r13), %rsi
movq 0x1e7cb(%rip), %rdi     # 0x23fc8
callq 0x3160
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x3200
movsbl %al, %esi
movq %r14, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x3170
movq 0x18(%r13), %r14
leaq 0x8(%r13), %rax
movq %rax, 0x140(%rsp)
xorl %ebx, %ebx
cmpq %rax, %r14
je 0x68cb
leaq 0x148(%rsp), %r12
movq 0x20(%r14), %rdi
movq %rdi, 0x28(%rsp)
callq 0x8d37
movq %rax, 0xc0(%rsp)
movq %rax, %rdi
callq 0x8c30
movq %rax, 0xc8(%rsp)
movq 0x28(%rsp), %rdi
callq 0x8c30
movq %rax, 0xd0(%rsp)
movq %rax, %rdi
callq 0x8cb4
movq %rax, 0xd8(%rsp)
movq 0x28(%rsp), %rdi
callq 0x8cb4
movq %rax, 0xe0(%rsp)
movq %rax, %rdi
callq 0x8db8
movq %rax, 0xe8(%rsp)
movq 0x28(%rsp), %rdi
callq 0x8db8
movq %rax, 0xf0(%rsp)
movq %rax, %rdi
callq 0x8d37
movq %rax, 0xf8(%rsp)
leaq 0x90(%rsp), %r15
movq %r15, %rdi
callq 0x6c36
movq 0xc0(%rsp), %rax
cmpw $0x0, 0x1fc(%rax)
leaq 0xc0(%rsp), %rsi
je 0x592e
addq $0x270, %rax            # imm = 0x270
movq %r15, %rdi
movq %rax, %rsi
callq 0x6c64
movq 0xc0(%rsp), %rsi
movl $0x258, %eax            # imm = 0x258
addq %rax, %rsi
leaq 0x90(%rsp), %r15
movq %r15, %rdi
callq 0x6c64
movq 0xc8(%rsp), %rax
leaq 0x258(%rax), %rsi
cmpw $0x0, 0x1fc(%rax)
leaq 0xc8(%rsp), %rax
cmoveq %rax, %rsi
leaq 0x90(%rsp), %rdi
callq 0x6c64
movq 0xd0(%rsp), %rax
cmpw $0x0, 0x1fc(%rax)
leaq 0xd0(%rsp), %rsi
je 0x59a6
addq $0x260, %rax            # imm = 0x260
leaq 0x90(%rsp), %rdi
movq %rax, %rsi
callq 0x6c64
movq 0xd0(%rsp), %rsi
movl $0x258, %eax            # imm = 0x258
addq %rax, %rsi
leaq 0x90(%rsp), %rdi
callq 0x6c64
movq 0xd8(%rsp), %rax
leaq 0x260(%rax), %rsi
cmpw $0x0, 0x1fc(%rax)
leaq 0xd8(%rsp), %rax
cmoveq %rax, %rsi
leaq 0x90(%rsp), %rdi
callq 0x6c64
movq 0xe0(%rsp), %rax
cmpw $0x0, 0x1fc(%rax)
leaq 0xe0(%rsp), %rsi
je 0x5a23
addq $0x268, %rax            # imm = 0x268
leaq 0x90(%rsp), %rdi
movq %rax, %rsi
callq 0x6c64
movq 0xe0(%rsp), %rsi
movl $0x260, %eax            # imm = 0x260
addq %rax, %rsi
leaq 0x90(%rsp), %rdi
callq 0x6c64
movq 0xe8(%rsp), %rax
leaq 0x268(%rax), %rsi
cmpw $0x0, 0x1fc(%rax)
leaq 0xe8(%rsp), %rax
cmoveq %rax, %rsi
leaq 0x90(%rsp), %rdi
callq 0x6c64
movq 0xf0(%rsp), %rax
cmpw $0x0, 0x1fc(%rax)
leaq 0xf0(%rsp), %rsi
je 0x5aa0
addq $0x270, %rax            # imm = 0x270
leaq 0x90(%rsp), %rdi
movq %rax, %rsi
callq 0x6c64
movq 0xf0(%rsp), %rsi
movl $0x268, %eax            # imm = 0x268
addq %rax, %rsi
leaq 0x90(%rsp), %rdi
callq 0x6c64
movq 0xf8(%rsp), %rax
leaq 0x270(%rax), %rsi
cmpw $0x0, 0x1fc(%rax)
leaq 0xf8(%rsp), %rax
cmoveq %rax, %rsi
leaq 0x90(%rsp), %rdi
callq 0x6c64
leaq 0x48(%rsp), %rdi
callq 0x6d76
cmpl $0x0, 0x28(%r14)
movq %r14, 0x20(%rsp)
jne 0x5e55
movq 0x28(%rsp), %rax
movsd 0x278(%rax), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x288(%rax), %xmm0
movsd %xmm0, 0x8(%rsp)
leaq 0x30(%rsp), %rdi
xorl %esi, %esi
callq 0xd1c0
movsd 0x8(%rsp), %xmm0
mulsd 0x1760e(%rip), %xmm0    # 0x1d140
addsd 0x10(%rsp), %xmm0
movsd %xmm0, (%rax)
movq 0x28(%rsp), %rax
movsd 0x280(%rax), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x290(%rax), %xmm0
movsd %xmm0, 0x8(%rsp)
leaq 0x30(%rsp), %rdi
movl $0x1, %esi
callq 0xd1c0
movl %ebx, 0x1c(%rsp)
movsd 0x8(%rsp), %xmm0
mulsd 0x175c2(%rip), %xmm0    # 0x1d140
addsd 0x10(%rsp), %xmm0
movsd %xmm0, (%rax)
movq 0xa8(%rsp), %rcx
leaq 0x98(%rsp), %rax
cmpq %rax, %rcx
je 0x5d2d
xorl %r14d, %r14d
movq %rcx, 0x40(%rsp)
movq 0x20(%rcx), %r15
xorl %ebx, %ebx
cmpw $0x3, %bx
ja 0x5bd4
movl %ebx, %ecx
shll $0x4, %ecx
movabsq $0x10001ffffffff, %r13  # imm = 0x10001FFFFFFFF
shrq %cl, %r13
movabsq $-0xfffefffe0001, %rbp  # imm = 0xFFFF00010001FFFF
shrq %cl, %rbp
movsd 0x278(%r15), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x288(%r15), %xmm0
movsd %xmm0, 0x8(%rsp)
movq %r12, %rdi
xorl %esi, %esi
callq 0xd1c0
movswl %bp, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %ecx, %xmm0
movsd 0x8(%rsp), %xmm1
mulsd %xmm0, %xmm1
mulsd 0x17530(%rip), %xmm1    # 0x1d148
movsd 0x10(%rsp), %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, (%rax)
movsd 0x280(%r15), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x290(%r15), %xmm0
movsd %xmm0, 0x8(%rsp)
movq %r12, %rdi
movl $0x1, %esi
callq 0xd1c0
movswl %r13w, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %ecx, %xmm0
movsd 0x8(%rsp), %xmm1
mulsd %xmm0, %xmm1
mulsd 0x174da(%rip), %xmm1    # 0x1d148
movsd 0x10(%rsp), %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, (%rax)
movq %r12, %rdi
leaq 0x30(%rsp), %rsi
callq 0xd15a
callq 0xcf51
movsd 0x174ba(%rip), %xmm1    # 0x1d150
ucomisd %xmm0, %xmm1
jbe 0x5cfc
incl %r14d
leaq 0x23a22(%rip), %rax     # 0x296c8
movq 0x10(%rax), %rcx
testq %rcx, %rcx
je 0x5cfc
addq $0x8, %rax
xorl %edx, %edx
cmpq %r15, 0x20(%rcx)
setb %dl
cmovaeq %rcx, %rax
movq 0x10(%rcx,%rdx,8), %rcx
testq %rcx, %rcx
jne 0x5cb3
leaq 0x239f7(%rip), %rcx     # 0x296c8
addq $0x8, %rcx
cmpq %rcx, %rax
je 0x5cfc
cmpq 0x20(%rax), %r15
jb 0x5cfc
movq %r15, 0x78(%rsp)
movw %bx, 0x80(%rsp)
leaq 0x48(%rsp), %rdi
leaq 0x78(%rsp), %rsi
callq 0x6da4
incl %ebx
cmpw $0x4, %bx
jne 0x5baf
cmpw $0x4, %r14w
je 0x5d2d
movq 0x40(%rsp), %rdi
callq 0x3260
movq %rax, %rcx
leaq 0x98(%rsp), %rax
cmpq %rax, %rcx
jne 0x5ba4
movq 0x60(%rsp), %r15
leaq 0x50(%rsp), %rax
cmpq %rax, %r15
je 0x5d98
xorl %ebx, %ebx
leaq 0x20(%r15), %r14
leaq 0x2397f(%rip), %rdi     # 0x296c8
movq %r14, %rsi
callq 0x6a04
movswq 0x28(%r15), %rcx
cmpl $0x0, (%rax,%rcx,4)
je 0x5d73
leaq 0x23965(%rip), %rdi     # 0x296c8
movq %r14, %rsi
callq 0x6a04
movswq 0x28(%r15), %rcx
movl (%rax,%rcx,4), %ebx
movq %r15, %rdi
callq 0x3180
movq %rax, %r15
leaq 0x50(%rsp), %rax
cmpq %rax, %r15
jne 0x5d3e
testl %ebx, %ebx
je 0x5d98
movl 0x1c(%rsp), %r14d
movq 0x20(%rsp), %r15
jmp 0x5e15
leaq 0x108(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0xcfb8
movl 0x1c(%rsp), %r14d
movq 0x20(%rsp), %r15
incl %r14d
leaq 0x2393a(%rip), %rdi     # 0x296f8
movq 0x8(%rdi), %rsi
cmpq 0x10(%rdi), %rsi
je 0x5e05
movq 0x138(%rsp), %rax
movq %rax, 0x30(%rsi)
movupd 0x108(%rsp), %xmm0
movupd 0x118(%rsp), %xmm1
movups 0x128(%rsp), %xmm2
movups %xmm2, 0x20(%rsi)
movupd %xmm1, 0x10(%rsi)
movupd %xmm0, (%rsi)
addq $0x38, 0x8(%rdi)
movl %r14d, %ebx
jmp 0x5e15
leaq 0x108(%rsp), %rdx
callq 0x70b4
movl %r14d, %ebx
movl %ebx, 0x28(%r15)
movq 0x60(%rsp), %r15
leaq 0x50(%rsp), %rax
cmpq %rax, %r15
je 0x5e4d
leaq 0x20(%r15), %rsi
leaq 0x23895(%rip), %rdi     # 0x296c8
callq 0x6a04
movswq 0x28(%r15), %rcx
movl %ebx, (%rax,%rcx,4)
movq %r15, %rdi
callq 0x3180
movq %rax, %r15
jmp 0x5e1e
movl %r14d, %ebx
movq 0x20(%rsp), %r14
leaq 0x48(%rsp), %rdi
callq 0x6d76
cmpl $0x0, 0x2c(%r14)
jne 0x61c8
movq 0x28(%rsp), %rax
movsd 0x278(%rax), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x288(%rax), %xmm0
movsd %xmm0, 0x8(%rsp)
leaq 0x30(%rsp), %rdi
xorl %esi, %esi
callq 0xd1c0
movsd 0x8(%rsp), %xmm0
mulsd 0x172a3(%rip), %xmm0    # 0x1d148
addsd 0x10(%rsp), %xmm0
movsd %xmm0, (%rax)
movq 0x28(%rsp), %rax
movsd 0x280(%rax), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x290(%rax), %xmm0
movsd %xmm0, 0x8(%rsp)
leaq 0x30(%rsp), %rdi
movl $0x1, %esi
callq 0xd1c0
movl %ebx, 0x1c(%rsp)
movsd 0x8(%rsp), %xmm0
mulsd 0x1724f(%rip), %xmm0    # 0x1d140
addsd 0x10(%rsp), %xmm0
movsd %xmm0, (%rax)
movq 0xa8(%rsp), %rcx
leaq 0x98(%rsp), %rax
cmpq %rax, %rcx
je 0x60a0
xorl %r14d, %r14d
movq %rcx, 0x40(%rsp)
movq 0x20(%rcx), %r15
xorl %ebx, %ebx
cmpw $0x3, %bx
ja 0x5f47
movl %ebx, %ecx
shll $0x4, %ecx
movabsq $0x10001ffffffff, %r13  # imm = 0x10001FFFFFFFF
shrq %cl, %r13
movabsq $-0xfffefffe0001, %rbp  # imm = 0xFFFF00010001FFFF
shrq %cl, %rbp
movsd 0x278(%r15), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x288(%r15), %xmm0
movsd %xmm0, 0x8(%rsp)
movq %r12, %rdi
xorl %esi, %esi
callq 0xd1c0
movswl %bp, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %ecx, %xmm0
movsd 0x8(%rsp), %xmm1
mulsd %xmm0, %xmm1
mulsd 0x171bd(%rip), %xmm1    # 0x1d148
movsd 0x10(%rsp), %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, (%rax)
movsd 0x280(%r15), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x290(%r15), %xmm0
movsd %xmm0, 0x8(%rsp)
movq %r12, %rdi
movl $0x1, %esi
callq 0xd1c0
movswl %r13w, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %ecx, %xmm0
movsd 0x8(%rsp), %xmm1
mulsd %xmm0, %xmm1
mulsd 0x17167(%rip), %xmm1    # 0x1d148
movsd 0x10(%rsp), %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, (%rax)
movq %r12, %rdi
leaq 0x30(%rsp), %rsi
callq 0xd15a
callq 0xcf51
movsd 0x17147(%rip), %xmm1    # 0x1d150
ucomisd %xmm0, %xmm1
jbe 0x606f
incl %r14d
leaq 0x236af(%rip), %rax     # 0x296c8
movq 0x10(%rax), %rcx
testq %rcx, %rcx
je 0x606f
addq $0x8, %rax
xorl %edx, %edx
cmpq %r15, 0x20(%rcx)
setb %dl
cmovaeq %rcx, %rax
movq 0x10(%rcx,%rdx,8), %rcx
testq %rcx, %rcx
jne 0x6026
leaq 0x23684(%rip), %rcx     # 0x296c8
addq $0x8, %rcx
cmpq %rcx, %rax
je 0x606f
cmpq 0x20(%rax), %r15
jb 0x606f
movq %r15, 0x78(%rsp)
movw %bx, 0x80(%rsp)
leaq 0x48(%rsp), %rdi
leaq 0x78(%rsp), %rsi
callq 0x6da4
incl %ebx
cmpw $0x4, %bx
jne 0x5f22
cmpw $0x4, %r14w
je 0x60a0
movq 0x40(%rsp), %rdi
callq 0x3260
movq %rax, %rcx
leaq 0x98(%rsp), %rax
cmpq %rax, %rcx
jne 0x5f17
movq 0x60(%rsp), %r15
leaq 0x50(%rsp), %rax
cmpq %rax, %r15
je 0x610b
xorl %ebx, %ebx
leaq 0x20(%r15), %r14
leaq 0x2360c(%rip), %rdi     # 0x296c8
movq %r14, %rsi
callq 0x6a04
movswq 0x28(%r15), %rcx
cmpl $0x0, (%rax,%rcx,4)
je 0x60e6
leaq 0x235f2(%rip), %rdi     # 0x296c8
movq %r14, %rsi
callq 0x6a04
movswq 0x28(%r15), %rcx
movl (%rax,%rcx,4), %ebx
movq %r15, %rdi
callq 0x3180
movq %rax, %r15
leaq 0x50(%rsp), %rax
cmpq %rax, %r15
jne 0x60b1
testl %ebx, %ebx
je 0x610b
movl 0x1c(%rsp), %r14d
movq 0x20(%rsp), %r15
jmp 0x6188
leaq 0x108(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0xcfb8
movl 0x1c(%rsp), %r14d
movq 0x20(%rsp), %r15
incl %r14d
leaq 0x235c7(%rip), %rdi     # 0x296f8
movq 0x8(%rdi), %rsi
cmpq 0x10(%rdi), %rsi
je 0x6178
movq 0x138(%rsp), %rax
movq %rax, 0x30(%rsi)
movupd 0x108(%rsp), %xmm0
movupd 0x118(%rsp), %xmm1
movups 0x128(%rsp), %xmm2
movups %xmm2, 0x20(%rsi)
movupd %xmm1, 0x10(%rsi)
movupd %xmm0, (%rsi)
addq $0x38, 0x8(%rdi)
movl %r14d, %ebx
jmp 0x6188
leaq 0x108(%rsp), %rdx
callq 0x70b4
movl %r14d, %ebx
movl %ebx, 0x2c(%r15)
movq 0x60(%rsp), %r15
leaq 0x50(%rsp), %rax
cmpq %rax, %r15
je 0x61c0
leaq 0x20(%r15), %rsi
leaq 0x23522(%rip), %rdi     # 0x296c8
callq 0x6a04
movswq 0x28(%r15), %rcx
movl %ebx, (%rax,%rcx,4)
movq %r15, %rdi
callq 0x3180
movq %rax, %r15
jmp 0x6191
movl %r14d, %ebx
movq 0x20(%rsp), %r14
leaq 0x48(%rsp), %rdi
callq 0x6d76
cmpl $0x0, 0x30(%r14)
jne 0x653b
movq 0x28(%rsp), %rax
movsd 0x278(%rax), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x288(%rax), %xmm0
movsd %xmm0, 0x8(%rsp)
leaq 0x30(%rsp), %rdi
xorl %esi, %esi
callq 0xd1c0
movsd 0x8(%rsp), %xmm0
mulsd 0x16f30(%rip), %xmm0    # 0x1d148
addsd 0x10(%rsp), %xmm0
movsd %xmm0, (%rax)
movq 0x28(%rsp), %rax
movsd 0x280(%rax), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x290(%rax), %xmm0
movsd %xmm0, 0x8(%rsp)
leaq 0x30(%rsp), %rdi
movl $0x1, %esi
callq 0xd1c0
movsd 0x8(%rsp), %xmm0
mulsd 0x16ee8(%rip), %xmm0    # 0x1d148
addsd 0x10(%rsp), %xmm0
movsd %xmm0, (%rax)
movq 0xa8(%rsp), %rcx
leaq 0x98(%rsp), %rax
cmpq %rax, %rcx
movl %ebx, 0x1c(%rsp)
je 0x6413
xorl %r14d, %r14d
movq %rcx, 0x40(%rsp)
movq 0x20(%rcx), %r15
xorl %ebx, %ebx
cmpw $0x3, %bx
ja 0x62ba
movl %ebx, %ecx
shll $0x4, %ecx
movabsq $0x10001ffffffff, %r13  # imm = 0x10001FFFFFFFF
shrq %cl, %r13
movabsq $-0xfffefffe0001, %rbp  # imm = 0xFFFF00010001FFFF
shrq %cl, %rbp
movsd 0x278(%r15), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x288(%r15), %xmm0
movsd %xmm0, 0x8(%rsp)
movq %r12, %rdi
xorl %esi, %esi
callq 0xd1c0
movswl %bp, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %ecx, %xmm0
movsd 0x8(%rsp), %xmm1
mulsd %xmm0, %xmm1
mulsd 0x16e4a(%rip), %xmm1    # 0x1d148
movsd 0x10(%rsp), %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, (%rax)
movsd 0x280(%r15), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x290(%r15), %xmm0
movsd %xmm0, 0x8(%rsp)
movq %r12, %rdi
movl $0x1, %esi
callq 0xd1c0
movswl %r13w, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %ecx, %xmm0
movsd 0x8(%rsp), %xmm1
mulsd %xmm0, %xmm1
mulsd 0x16df4(%rip), %xmm1    # 0x1d148
movsd 0x10(%rsp), %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, (%rax)
movq %r12, %rdi
leaq 0x30(%rsp), %rsi
callq 0xd15a
callq 0xcf51
movsd 0x16dd4(%rip), %xmm1    # 0x1d150
ucomisd %xmm0, %xmm1
jbe 0x63e2
incl %r14d
leaq 0x2333c(%rip), %rax     # 0x296c8
movq 0x10(%rax), %rcx
testq %rcx, %rcx
je 0x63e2
addq $0x8, %rax
xorl %edx, %edx
cmpq %r15, 0x20(%rcx)
setb %dl
cmovaeq %rcx, %rax
movq 0x10(%rcx,%rdx,8), %rcx
testq %rcx, %rcx
jne 0x6399
leaq 0x23311(%rip), %rcx     # 0x296c8
addq $0x8, %rcx
cmpq %rcx, %rax
je 0x63e2
cmpq 0x20(%rax), %r15
jb 0x63e2
movq %r15, 0x78(%rsp)
movw %bx, 0x80(%rsp)
leaq 0x48(%rsp), %rdi
leaq 0x78(%rsp), %rsi
callq 0x6da4
incl %ebx
cmpw $0x4, %bx
jne 0x6295
cmpw $0x4, %r14w
je 0x6413
movq 0x40(%rsp), %rdi
callq 0x3260
movq %rax, %rcx
leaq 0x98(%rsp), %rax
cmpq %rax, %rcx
jne 0x628a
movq 0x60(%rsp), %r15
leaq 0x50(%rsp), %rax
cmpq %rax, %r15
je 0x647e
xorl %ebx, %ebx
leaq 0x20(%r15), %r14
leaq 0x23299(%rip), %rdi     # 0x296c8
movq %r14, %rsi
callq 0x6a04
movswq 0x28(%r15), %rcx
cmpl $0x0, (%rax,%rcx,4)
je 0x6459
leaq 0x2327f(%rip), %rdi     # 0x296c8
movq %r14, %rsi
callq 0x6a04
movswq 0x28(%r15), %rcx
movl (%rax,%rcx,4), %ebx
movq %r15, %rdi
callq 0x3180
movq %rax, %r15
leaq 0x50(%rsp), %rax
cmpq %rax, %r15
jne 0x6424
testl %ebx, %ebx
je 0x647e
movl 0x1c(%rsp), %r14d
movq 0x20(%rsp), %r15
jmp 0x64fb
leaq 0x108(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0xcfb8
movl 0x1c(%rsp), %r14d
movq 0x20(%rsp), %r15
incl %r14d
leaq 0x23254(%rip), %rdi     # 0x296f8
movq 0x8(%rdi), %rsi
cmpq 0x10(%rdi), %rsi
je 0x64eb
movq 0x138(%rsp), %rax
movq %rax, 0x30(%rsi)
movupd 0x108(%rsp), %xmm0
movupd 0x118(%rsp), %xmm1
movups 0x128(%rsp), %xmm2
movups %xmm2, 0x20(%rsi)
movupd %xmm1, 0x10(%rsi)
movupd %xmm0, (%rsi)
addq $0x38, 0x8(%rdi)
movl %r14d, %ebx
jmp 0x64fb
leaq 0x108(%rsp), %rdx
callq 0x70b4
movl %r14d, %ebx
movl %ebx, 0x30(%r15)
movq 0x60(%rsp), %r15
leaq 0x50(%rsp), %rax
cmpq %rax, %r15
je 0x6533
leaq 0x20(%r15), %rsi
leaq 0x231af(%rip), %rdi     # 0x296c8
callq 0x6a04
movswq 0x28(%r15), %rcx
movl %ebx, (%rax,%rcx,4)
movq %r15, %rdi
callq 0x3180
movq %rax, %r15
jmp 0x6504
movl %r14d, %ebx
movq 0x20(%rsp), %r14
leaq 0x48(%rsp), %rdi
callq 0x6d76
cmpl $0x0, 0x34(%r14)
jne 0x68b2
movq 0x28(%rsp), %rax
movsd 0x278(%rax), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x288(%rax), %xmm0
movsd %xmm0, 0x8(%rsp)
leaq 0x30(%rsp), %rdi
xorl %esi, %esi
callq 0xd1c0
movsd 0x8(%rsp), %xmm0
mulsd 0x16bb5(%rip), %xmm0    # 0x1d140
addsd 0x10(%rsp), %xmm0
movsd %xmm0, (%rax)
movq 0x28(%rsp), %rax
movsd 0x280(%rax), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x290(%rax), %xmm0
movsd %xmm0, 0x8(%rsp)
leaq 0x30(%rsp), %rdi
movl $0x1, %esi
callq 0xd1c0
movsd 0x8(%rsp), %xmm0
mulsd 0x16b75(%rip), %xmm0    # 0x1d148
addsd 0x10(%rsp), %xmm0
movsd %xmm0, (%rax)
movq 0xa8(%rsp), %rcx
leaq 0x98(%rsp), %rax
cmpq %rax, %rcx
movl %ebx, 0x1c(%rsp)
je 0x678a
xorl %r14d, %r14d
movq %rcx, 0x40(%rsp)
movq 0x20(%rcx), %r15
xorl %ebx, %ebx
cmpw $0x3, %bx
ja 0x662d
movl %ebx, %ecx
shll $0x4, %ecx
movabsq $0x10001ffffffff, %r13  # imm = 0x10001FFFFFFFF
shrq %cl, %r13
movabsq $-0xfffefffe0001, %rbp  # imm = 0xFFFF00010001FFFF
shrq %cl, %rbp
movsd 0x278(%r15), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x288(%r15), %xmm0
movsd %xmm0, 0x8(%rsp)
movq %r12, %rdi
xorl %esi, %esi
callq 0xd1c0
movswl %bp, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %ecx, %xmm0
movsd 0x8(%rsp), %xmm1
mulsd %xmm0, %xmm1
mulsd 0x16ad7(%rip), %xmm1    # 0x1d148
movsd 0x10(%rsp), %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, (%rax)
movsd 0x280(%r15), %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x290(%r15), %xmm0
movsd %xmm0, 0x8(%rsp)
movq %r12, %rdi
movl $0x1, %esi
callq 0xd1c0
movswl %r13w, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %ecx, %xmm0
movsd 0x8(%rsp), %xmm1
mulsd %xmm0, %xmm1
mulsd 0x16a81(%rip), %xmm1    # 0x1d148
movsd 0x10(%rsp), %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, (%rax)
movq %r12, %rdi
leaq 0x30(%rsp), %rsi
callq 0xd15a
callq 0xcf51
movsd 0x16a61(%rip), %xmm1    # 0x1d150
ucomisd %xmm0, %xmm1
jbe 0x6759
incl %r14d
leaq 0x22fc9(%rip), %rax     # 0x296c8
movq 0x10(%rax), %rcx
testq %rcx, %rcx
je 0x6759
movq 0x140(%rsp), %rax
xorl %edx, %edx
cmpq %r15, 0x20(%rcx)
setb %dl
cmovaeq %rcx, %rax
movq 0x10(%rcx,%rdx,8), %rcx
testq %rcx, %rcx
jne 0x6710
leaq 0x22f9a(%rip), %rcx     # 0x296c8
addq $0x8, %rcx
cmpq %rcx, %rax
je 0x6759
cmpq 0x20(%rax), %r15
jb 0x6759
movq %r15, 0x78(%rsp)
movw %bx, 0x80(%rsp)
leaq 0x48(%rsp), %rdi
leaq 0x78(%rsp), %rsi
callq 0x6da4
incl %ebx
cmpw $0x4, %bx
jne 0x6608
cmpw $0x4, %r14w
je 0x678a
movq 0x40(%rsp), %rdi
callq 0x3260
movq %rax, %rcx
leaq 0x98(%rsp), %rax
cmpq %rax, %rcx
jne 0x65fd
movq 0x60(%rsp), %r15
leaq 0x50(%rsp), %rax
cmpq %rax, %r15
je 0x67f5
xorl %ebx, %ebx
leaq 0x20(%r15), %r14
leaq 0x22f22(%rip), %rdi     # 0x296c8
movq %r14, %rsi
callq 0x6a04
movswq 0x28(%r15), %rcx
cmpl $0x0, (%rax,%rcx,4)
je 0x67d0
leaq 0x22f08(%rip), %rdi     # 0x296c8
movq %r14, %rsi
callq 0x6a04
movswq 0x28(%r15), %rcx
movl (%rax,%rcx,4), %ebx
movq %r15, %rdi
callq 0x3180
movq %rax, %r15
leaq 0x50(%rsp), %rax
cmpq %rax, %r15
jne 0x679b
testl %ebx, %ebx
je 0x67f5
movl 0x1c(%rsp), %r14d
movq 0x20(%rsp), %r15
jmp 0x6872
leaq 0x108(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0xcfb8
movl 0x1c(%rsp), %r14d
movq 0x20(%rsp), %r15
incl %r14d
leaq 0x22edd(%rip), %rdi     # 0x296f8
movq 0x8(%rdi), %rsi
cmpq 0x10(%rdi), %rsi
je 0x6862
movq 0x138(%rsp), %rax
movq %rax, 0x30(%rsi)
movupd 0x108(%rsp), %xmm0
movupd 0x118(%rsp), %xmm1
movups 0x128(%rsp), %xmm2
movups %xmm2, 0x20(%rsi)
movupd %xmm1, 0x10(%rsi)
movupd %xmm0, (%rsi)
addq $0x38, 0x8(%rdi)
movl %r14d, %ebx
jmp 0x6872
leaq 0x108(%rsp), %rdx
callq 0x70b4
movl %r14d, %ebx
movl %ebx, 0x34(%r15)
movq 0x60(%rsp), %r15
leaq 0x50(%rsp), %rax
cmpq %rax, %r15
je 0x68aa
leaq 0x20(%r15), %rsi
leaq 0x22e38(%rip), %rdi     # 0x296c8
callq 0x6a04
movswq 0x28(%r15), %rcx
movl %ebx, (%rax,%rcx,4)
movq %r15, %rdi
callq 0x3180
movq %rax, %r15
jmp 0x687b
movl %r14d, %ebx
movq 0x20(%rsp), %r14
movq %r14, %rdi
callq 0x3180
movq %rax, %r14
cmpq 0x140(%rsp), %rax
jne 0x584f
movq 0x1d6f6(%rip), %rdi     # 0x23fc8
leaq 0x16894(%rip), %rsi     # 0x1d16d
movl $0x15, %edx
callq 0x3250
movq 0x1d6de(%rip), %rdi     # 0x23fc8
movl %ebx, %esi
callq 0x3350
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x3200
movsbl %al, %esi
movq %r14, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x3170
leaq 0x22da6(%rip), %r14     # 0x296c8
movq 0x18(%r14), %rax
addq $0x8, %r14
cmpq %r14, %rax
leaq 0x22dc4(%rip), %r15     # 0x296f8
je 0x698f
movq (%r15), %rbx
movq 0x20(%rax), %rcx
xorl %edx, %edx
movslq 0x28(%rax,%rdx,4), %rsi
decq %rsi
imulq $0x38, %rsi, %rsi
leaq (%rbx,%rsi), %rdi
movswq 0x30(%rbx,%rsi), %r8
testq %r8, %r8
jle 0x696c
xorl %r9d, %r9d
cmpq %rcx, 0x10(%rdi,%r9,8)
je 0x6979
incq %r9
cmpq %r9, %r8
jne 0x695d
movq %rcx, 0x10(%rdi,%r8,8)
movq (%r15), %rbx
incw 0x30(%rbx,%rsi)
incq %rdx
cmpq $0x4, %rdx
jne 0x693f
movq %rax, %rdi
callq 0x3180
cmpq %r14, %rax
jne 0x6939
leaq 0x90(%rsp), %rdi
callq 0x4e40
leaq 0x48(%rsp), %rdi
callq 0x6a6a
addq $0x168, %rsp            # imm = 0x168
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
jmp 0x69e2
movq %rax, %rbx
leaq 0x90(%rsp), %rdi
callq 0x4e40
leaq 0x48(%rsp), %rdi
callq 0x6a6a
movq %rbx, %rdi
callq 0x3370