// File: jamesliu516[P]amrdg2d/amr_grid_treat.cpp
// Function: refineCicleDemain(int)
void refineCicleDemain(int rfN)// 1,2,3,4,5�μ���
{
	int i;
	int jk1,jk2,jk3,jk4,jk5;

	switch(rfN)
	{	
	case 5: 
		for(i=1;i<=Nx*Ny;i++) 
		{			
			if(jk1=(bodygrid[i].xc1 >= Ellipse_x - 2 * hx && bodygrid[i].xc1 <= Ellipse_x1 + 2 * hx		    
				&& bodygrid[i].yc1 >= Ellipse_y - 2 * hy && bodygrid[i].yc1 <= Ellipse_y1 + 2 * hy))		
			{					
				refineOneCell(&bodygrid[i], 5);
			}		
			else if(jk2=((!jk1) && bodygrid[i].xc1 > Ellipse_x - 4*hx && bodygrid[i].xc1 <= Ellipse_x1 + 4*hx 					
				&& bodygrid[i].yc1 >= Ellipse_y-4*hy && bodygrid[i].yc1 <= Ellipse_y1+4*hy))	
			{					
				refineOneCell(&bodygrid[i], 4);						
			}	    
			else if(jk3=((!jk2) && bodygrid[i].xc1 > Ellipse_x-6*hx && bodygrid[i].xc1 <= Ellipse_x1 + 6*hx 		   
				&& bodygrid[i].yc1 >=  Ellipse_y-6*hy && bodygrid[i].yc1 < Ellipse_y1 + 6*hy ) )
			{					
				refineOneCell(&bodygrid[i], 3);		
			}
			else if(jk4=((!jk3) && bodygrid[i].xc1 > Ellipse_x-8*hx && bodygrid[i].xc1 <= Ellipse_x1 + 8*hx 		   
				&& bodygrid[i].yc1 >=  Ellipse_y-8*hy && bodygrid[i].yc1 < Ellipse_y1 + 8*hy) )
			{					
				refineOneCell(&bodygrid[i], 2);		
			}				
			else if(jk5=((!jk4) && bodygrid[i].xc1 > Ellipse_x-10*hx && bodygrid[i].xc1 <= Ellipse_x1 + 10*hx 		   
				&& bodygrid[i].yc1 >=  Ellipse_y-10*hy && bodygrid[i].yc1 < Ellipse_y1 + 10*hy) )
			{					
				refineOneCell(&bodygrid[i], 1);		
			}				
		}
		break;

	case 4:
		for(i=1;i<=Nx*Ny;i++) 
		{			
			if(jk1=(bodygrid[i].xc1 >= Ellipse_x - 2 * hx && bodygrid[i].xc1 <= Ellipse_x1+ 2 * hx		    
				&& bodygrid[i].yc1 >= Ellipse_y - 2 * hy && bodygrid[i].yc1 <= Ellipse_y1 + 2 * hy))		
			{					
				refineOneCell(&bodygrid[i], 4);
			}		
			else if(jk2=((!jk1) && bodygrid[i].xc1 > Ellipse_x - 4*hx && bodygrid[i].xc1 <= Ellipse_x1 + 4*hx 					
				&& bodygrid[i].yc1 >= Ellipse_y-4*hy && bodygrid[i].yc1 <= Ellipse_y1+4*hy))	
			{					
				refineOneCell(&bodygrid[i], 3);						
			}	    
			else if(jk3=((!jk2) && bodygrid[i].xc1 > Ellipse_x-6*hx && bodygrid[i].xc1 <= Ellipse_x1+ 6*hx 		   
				&& bodygrid[i].yc1 >=  Ellipse_y-6*hy && bodygrid[i].yc1 < Ellipse_y1 + 6*hy ) )
			{					
				refineOneCell(&bodygrid[i], 2);		
			}
			else if(jk4=((!jk3) && bodygrid[i].xc1 > Ellipse_x-8*hx && bodygrid[i].xc1 <= Ellipse_x1 + 8*hx 		   
				&& bodygrid[i].yc1 >=  Ellipse_y-8*hy && bodygrid[i].yc1 < Ellipse_y1 + 8*hy) )
			{					
				refineOneCell(&bodygrid[i], 1);		
			}							
		}
		break;
	case 3:
		for(i=1;i<=Nx*Ny;i++) 
		{			
			if(jk1=(bodygrid[i].xc1 >= Ellipse_x - 2 * hx && bodygrid[i].xc1 <= Ellipse_x1 + 2 * hx		    
				&& bodygrid[i].yc1 >= Ellipse_y - 2 * hy && bodygrid[i].yc1 <= Ellipse_y1 + 2 * hy))		
			{					
				refineOneCell(&bodygrid[i], 3);
			}		
			else if(jk2=((!jk1) && bodygrid[i].xc1 > Ellipse_x - 4*hx && bodygrid[i].xc1 <= Ellipse_x1 + 4*hx 					
				&& bodygrid[i].yc1 >= Ellipse_y-4*hy && bodygrid[i].yc1 <= Ellipse_y1+4*hy))	
			{					
				refineOneCell(&bodygrid[i], 2);						
			}	    
			else if(jk3=((!jk2) && bodygrid[i].xc1 > Ellipse_x-6*hx && bodygrid[i].xc1 <= Ellipse_x1 + 6*hx 		   
				&& bodygrid[i].yc1 >=  Ellipse_y-6*hy && bodygrid[i].yc1 < Ellipse_y1 + 6*hy ) )
			{					
				refineOneCell(&bodygrid[i], 1);		
			}						
		}
		break;
	case 2:
		for(i=1;i<=Nx*Ny;i++) 
		{			
			if(jk1=(bodygrid[i].xc1 >= Ellipse_x - 2 * hx && bodygrid[i].xc1 <= Ellipse_x1 + 2 * hx		    
				&& bodygrid[i].yc1 >= Ellipse_y - 2 * hy && bodygrid[i].yc1 <= Ellipse_y1+ 2 * hy))		
			{					
				refineOneCell(&bodygrid[i], 2);
			}		
			else if(jk2=((!jk1) && bodygrid[i].xc1 > Ellipse_x - 4*hx && bodygrid[i].xc1 <= Ellipse_x1+ 4*hx 					
				&& bodygrid[i].yc1 >= Ellipse_y-4*hy && bodygrid[i].yc1 <= Ellipse_y1+4*hy))	
			{					
				refineOneCell(&bodygrid[i], 1);						
			}	    
		}
		break;
	case 1:
		for(i=1;i<=Nx*Ny;i++) 
		{			
			if(jk1=(bodygrid[i].xc1 >= Ellipse_x - 2 * hx && bodygrid[i].xc1 <= Ellipse_x1+ 2 * hx		    
				&& bodygrid[i].yc1 >= Ellipse_y - 2 * hy && bodygrid[i].yc1 <= Ellipse_y1+ 2 * hy))		
			{					
				refineOneCell(&bodygrid[i], 1);
			}		
		}
		break;
	default:
		cout<<"Only refine 1,2,3,4,5 time.\n";
		cout<<"You input: "<<rfN<<". No refine out domain.\n";
		break;
	}
}

// Assembly:
subq $0x38, %rsp
movl %edi, 0x34(%rsp)
movl 0x34(%rsp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, 0x10(%rsp)
subl $0x4, %eax
ja 0x1e139
movq 0x10(%rsp), %rax
leaq 0x225e6(%rip), %rcx     # 0x3f5d0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl $0x1, 0x30(%rsp)
cmpl $0x1f3b, 0x30(%rsp)     # imm = 0x1F3B
jg 0x1d5a3
leaq 0x2e360(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x224dc(%rip), %xmm1    # 0x3f510
ucomisd %xmm1, %xmm0
movb %al, 0xf(%rsp)
jb 0x1d0d8
leaq 0x2e327(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x224b3(%rip), %xmm0    # 0x3f518
ucomisd 0x278(%rcx), %xmm0
movb %al, 0xf(%rsp)
jb 0x1d0d8
leaq 0x2e2f6(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x22482(%rip), %xmm1    # 0x3f520
ucomisd %xmm1, %xmm0
movb %al, 0xf(%rsp)
jb 0x1d0d8
leaq 0x2e2c1(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x2245f(%rip), %xmm0    # 0x3f528
ucomisd 0x280(%rax), %xmm0
setae %al
movb %al, 0xf(%rsp)
movb 0xf(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x2c(%rsp)
testb $0x1, %al
jne 0x1d0ee
jmp 0x1d116
leaq 0x2e27b(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x5, %esi
callq 0x1ce70
jmp 0x1d591
xorl %eax, %eax
cmpl $0x0, 0x2c(%rsp)
movb %al, 0xe(%rsp)
jne 0x1d1f6
leaq 0x2e242(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x223de(%rip), %xmm1    # 0x3f530
ucomisd %xmm1, %xmm0
movb %al, 0xe(%rsp)
jbe 0x1d1f6
leaq 0x2e209(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x223b5(%rip), %xmm0    # 0x3f538
ucomisd 0x278(%rcx), %xmm0
movb %al, 0xe(%rsp)
jb 0x1d1f6
leaq 0x2e1d8(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x22384(%rip), %xmm1    # 0x3f540
ucomisd %xmm1, %xmm0
movb %al, 0xe(%rsp)
jb 0x1d1f6
leaq 0x2e1a3(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x22361(%rip), %xmm0    # 0x3f548
ucomisd 0x280(%rax), %xmm0
setae %al
movb %al, 0xe(%rsp)
movb 0xe(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x28(%rsp)
testb $0x1, %al
jne 0x1d20c
jmp 0x1d234
leaq 0x2e15d(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x4, %esi
callq 0x1ce70
jmp 0x1d58f
xorl %eax, %eax
cmpl $0x0, 0x28(%rsp)
movb %al, 0xd(%rsp)
jne 0x1d314
leaq 0x2e124(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x222e0(%rip), %xmm1    # 0x3f550
ucomisd %xmm1, %xmm0
movb %al, 0xd(%rsp)
jbe 0x1d314
leaq 0x2e0eb(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x222b7(%rip), %xmm0    # 0x3f558
ucomisd 0x278(%rcx), %xmm0
movb %al, 0xd(%rsp)
jb 0x1d314
leaq 0x2e0ba(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x22286(%rip), %xmm1    # 0x3f560
ucomisd %xmm1, %xmm0
movb %al, 0xd(%rsp)
jb 0x1d314
leaq 0x2e085(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x22263(%rip), %xmm0    # 0x3f568
ucomisd 0x280(%rax), %xmm0
seta %al
movb %al, 0xd(%rsp)
movb 0xd(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x24(%rsp)
testb $0x1, %al
jne 0x1d32a
jmp 0x1d352
leaq 0x2e03f(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x3, %esi
callq 0x1ce70
jmp 0x1d58d
xorl %eax, %eax
cmpl $0x0, 0x24(%rsp)
movb %al, 0xc(%rsp)
jne 0x1d432
leaq 0x2e006(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x221e2(%rip), %xmm1    # 0x3f570
ucomisd %xmm1, %xmm0
movb %al, 0xc(%rsp)
jbe 0x1d432
leaq 0x2dfcd(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x221b9(%rip), %xmm0    # 0x3f578
ucomisd 0x278(%rcx), %xmm0
movb %al, 0xc(%rsp)
jb 0x1d432
leaq 0x2df9c(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x22188(%rip), %xmm1    # 0x3f580
ucomisd %xmm1, %xmm0
movb %al, 0xc(%rsp)
jb 0x1d432
leaq 0x2df67(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x22165(%rip), %xmm0    # 0x3f588
ucomisd 0x280(%rax), %xmm0
seta %al
movb %al, 0xc(%rsp)
movb 0xc(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x20(%rsp)
testb $0x1, %al
jne 0x1d448
jmp 0x1d470
leaq 0x2df21(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x2, %esi
callq 0x1ce70
jmp 0x1d58b
xorl %eax, %eax
cmpl $0x0, 0x20(%rsp)
movb %al, 0xb(%rsp)
jne 0x1d550
leaq 0x2dee8(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x220e4(%rip), %xmm1    # 0x3f590
ucomisd %xmm1, %xmm0
movb %al, 0xb(%rsp)
jbe 0x1d550
leaq 0x2deaf(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x220bb(%rip), %xmm0    # 0x3f598
ucomisd 0x278(%rcx), %xmm0
movb %al, 0xb(%rsp)
jb 0x1d550
leaq 0x2de7e(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x2208a(%rip), %xmm1    # 0x3f5a0
ucomisd %xmm1, %xmm0
movb %al, 0xb(%rsp)
jb 0x1d550
leaq 0x2de49(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x22067(%rip), %xmm0    # 0x3f5a8
ucomisd 0x280(%rax), %xmm0
seta %al
movb %al, 0xb(%rsp)
movb 0xb(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x1c(%rsp)
testb $0x1, %al
jne 0x1d566
jmp 0x1d589
leaq 0x2de03(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x1, %esi
callq 0x1ce70
jmp 0x1d58b
jmp 0x1d58d
jmp 0x1d58f
jmp 0x1d591
jmp 0x1d593
movl 0x30(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x30(%rsp)
jmp 0x1cffb
jmp 0x1e17a
movl $0x1, 0x30(%rsp)
cmpl $0x1f3b, 0x30(%rsp)     # imm = 0x1F3B
jg 0x1da38
leaq 0x2ddab(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x21f27(%rip), %xmm1    # 0x3f510
ucomisd %xmm1, %xmm0
movb %al, 0xa(%rsp)
jb 0x1d68d
leaq 0x2dd72(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x21efe(%rip), %xmm0    # 0x3f518
ucomisd 0x278(%rcx), %xmm0
movb %al, 0xa(%rsp)
jb 0x1d68d
leaq 0x2dd41(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x21ecd(%rip), %xmm1    # 0x3f520
ucomisd %xmm1, %xmm0
movb %al, 0xa(%rsp)
jb 0x1d68d
leaq 0x2dd0c(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x21eaa(%rip), %xmm0    # 0x3f528
ucomisd 0x280(%rax), %xmm0
setae %al
movb %al, 0xa(%rsp)
movb 0xa(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x2c(%rsp)
testb $0x1, %al
jne 0x1d6a3
jmp 0x1d6cb
leaq 0x2dcc6(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x4, %esi
callq 0x1ce70
jmp 0x1da26
xorl %eax, %eax
cmpl $0x0, 0x2c(%rsp)
movb %al, 0x9(%rsp)
jne 0x1d7ab
leaq 0x2dc8d(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x21e29(%rip), %xmm1    # 0x3f530
ucomisd %xmm1, %xmm0
movb %al, 0x9(%rsp)
jbe 0x1d7ab
leaq 0x2dc54(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x21e00(%rip), %xmm0    # 0x3f538
ucomisd 0x278(%rcx), %xmm0
movb %al, 0x9(%rsp)
jb 0x1d7ab
leaq 0x2dc23(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x21dcf(%rip), %xmm1    # 0x3f540
ucomisd %xmm1, %xmm0
movb %al, 0x9(%rsp)
jb 0x1d7ab
leaq 0x2dbee(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x21dac(%rip), %xmm0    # 0x3f548
ucomisd 0x280(%rax), %xmm0
setae %al
movb %al, 0x9(%rsp)
movb 0x9(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x28(%rsp)
testb $0x1, %al
jne 0x1d7c1
jmp 0x1d7e9
leaq 0x2dba8(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x3, %esi
callq 0x1ce70
jmp 0x1da24
xorl %eax, %eax
cmpl $0x0, 0x28(%rsp)
movb %al, 0x8(%rsp)
jne 0x1d8c9
leaq 0x2db6f(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x21d2b(%rip), %xmm1    # 0x3f550
ucomisd %xmm1, %xmm0
movb %al, 0x8(%rsp)
jbe 0x1d8c9
leaq 0x2db36(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x21d02(%rip), %xmm0    # 0x3f558
ucomisd 0x278(%rcx), %xmm0
movb %al, 0x8(%rsp)
jb 0x1d8c9
leaq 0x2db05(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x21cd1(%rip), %xmm1    # 0x3f560
ucomisd %xmm1, %xmm0
movb %al, 0x8(%rsp)
jb 0x1d8c9
leaq 0x2dad0(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x21cae(%rip), %xmm0    # 0x3f568
ucomisd 0x280(%rax), %xmm0
seta %al
movb %al, 0x8(%rsp)
movb 0x8(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x24(%rsp)
testb $0x1, %al
jne 0x1d8df
jmp 0x1d907
leaq 0x2da8a(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x2, %esi
callq 0x1ce70
jmp 0x1da22
xorl %eax, %eax
cmpl $0x0, 0x24(%rsp)
movb %al, 0x7(%rsp)
jne 0x1d9e7
leaq 0x2da51(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x21c2d(%rip), %xmm1    # 0x3f570
ucomisd %xmm1, %xmm0
movb %al, 0x7(%rsp)
jbe 0x1d9e7
leaq 0x2da18(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x21c04(%rip), %xmm0    # 0x3f578
ucomisd 0x278(%rcx), %xmm0
movb %al, 0x7(%rsp)
jb 0x1d9e7
leaq 0x2d9e7(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x21bd3(%rip), %xmm1    # 0x3f580
ucomisd %xmm1, %xmm0
movb %al, 0x7(%rsp)
jb 0x1d9e7
leaq 0x2d9b2(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x21bb0(%rip), %xmm0    # 0x3f588
ucomisd 0x280(%rax), %xmm0
seta %al
movb %al, 0x7(%rsp)
movb 0x7(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x20(%rsp)
testb $0x1, %al
jne 0x1d9fd
jmp 0x1da20
leaq 0x2d96c(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x1, %esi
callq 0x1ce70
jmp 0x1da22
jmp 0x1da24
jmp 0x1da26
jmp 0x1da28
movl 0x30(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x30(%rsp)
jmp 0x1d5b0
jmp 0x1e17a
movl $0x1, 0x30(%rsp)
cmpl $0x1f3b, 0x30(%rsp)     # imm = 0x1F3B
jg 0x1ddad
leaq 0x2d916(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x21a92(%rip), %xmm1    # 0x3f510
ucomisd %xmm1, %xmm0
movb %al, 0x6(%rsp)
jb 0x1db22
leaq 0x2d8dd(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x21a69(%rip), %xmm0    # 0x3f518
ucomisd 0x278(%rcx), %xmm0
movb %al, 0x6(%rsp)
jb 0x1db22
leaq 0x2d8ac(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x21a38(%rip), %xmm1    # 0x3f520
ucomisd %xmm1, %xmm0
movb %al, 0x6(%rsp)
jb 0x1db22
leaq 0x2d877(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x21a15(%rip), %xmm0    # 0x3f528
ucomisd 0x280(%rax), %xmm0
setae %al
movb %al, 0x6(%rsp)
movb 0x6(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x2c(%rsp)
testb $0x1, %al
jne 0x1db38
jmp 0x1db60
leaq 0x2d831(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x3, %esi
callq 0x1ce70
jmp 0x1dd9b
xorl %eax, %eax
cmpl $0x0, 0x2c(%rsp)
movb %al, 0x5(%rsp)
jne 0x1dc40
leaq 0x2d7f8(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x21994(%rip), %xmm1    # 0x3f530
ucomisd %xmm1, %xmm0
movb %al, 0x5(%rsp)
jbe 0x1dc40
leaq 0x2d7bf(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x2196b(%rip), %xmm0    # 0x3f538
ucomisd 0x278(%rcx), %xmm0
movb %al, 0x5(%rsp)
jb 0x1dc40
leaq 0x2d78e(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x2193a(%rip), %xmm1    # 0x3f540
ucomisd %xmm1, %xmm0
movb %al, 0x5(%rsp)
jb 0x1dc40
leaq 0x2d759(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x21917(%rip), %xmm0    # 0x3f548
ucomisd 0x280(%rax), %xmm0
setae %al
movb %al, 0x5(%rsp)
movb 0x5(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x28(%rsp)
testb $0x1, %al
jne 0x1dc56
jmp 0x1dc7e
leaq 0x2d713(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x2, %esi
callq 0x1ce70
jmp 0x1dd99
xorl %eax, %eax
cmpl $0x0, 0x28(%rsp)
movb %al, 0x4(%rsp)
jne 0x1dd5e
leaq 0x2d6da(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x21896(%rip), %xmm1    # 0x3f550
ucomisd %xmm1, %xmm0
movb %al, 0x4(%rsp)
jbe 0x1dd5e
leaq 0x2d6a1(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x2186d(%rip), %xmm0    # 0x3f558
ucomisd 0x278(%rcx), %xmm0
movb %al, 0x4(%rsp)
jb 0x1dd5e
leaq 0x2d670(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x2183c(%rip), %xmm1    # 0x3f560
ucomisd %xmm1, %xmm0
movb %al, 0x4(%rsp)
jb 0x1dd5e
leaq 0x2d63b(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x21819(%rip), %xmm0    # 0x3f568
ucomisd 0x280(%rax), %xmm0
seta %al
movb %al, 0x4(%rsp)
movb 0x4(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x24(%rsp)
testb $0x1, %al
jne 0x1dd74
jmp 0x1dd97
leaq 0x2d5f5(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x1, %esi
callq 0x1ce70
jmp 0x1dd99
jmp 0x1dd9b
jmp 0x1dd9d
movl 0x30(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x30(%rsp)
jmp 0x1da45
jmp 0x1e17a
movl $0x1, 0x30(%rsp)
cmpl $0x1f3b, 0x30(%rsp)     # imm = 0x1F3B
jg 0x1e002
leaq 0x2d5a1(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x2171d(%rip), %xmm1    # 0x3f510
ucomisd %xmm1, %xmm0
movb %al, 0x3(%rsp)
jb 0x1de97
leaq 0x2d568(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x216f4(%rip), %xmm0    # 0x3f518
ucomisd 0x278(%rcx), %xmm0
movb %al, 0x3(%rsp)
jb 0x1de97
leaq 0x2d537(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x216c3(%rip), %xmm1    # 0x3f520
ucomisd %xmm1, %xmm0
movb %al, 0x3(%rsp)
jb 0x1de97
leaq 0x2d502(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x216a0(%rip), %xmm0    # 0x3f528
ucomisd 0x280(%rax), %xmm0
setae %al
movb %al, 0x3(%rsp)
movb 0x3(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x2c(%rsp)
testb $0x1, %al
jne 0x1dead
jmp 0x1ded5
leaq 0x2d4bc(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x2, %esi
callq 0x1ce70
jmp 0x1dff0
xorl %eax, %eax
cmpl $0x0, 0x2c(%rsp)
movb %al, 0x2(%rsp)
jne 0x1dfb5
leaq 0x2d483(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x2161f(%rip), %xmm1    # 0x3f530
ucomisd %xmm1, %xmm0
movb %al, 0x2(%rsp)
jbe 0x1dfb5
leaq 0x2d44a(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x215f6(%rip), %xmm0    # 0x3f538
ucomisd 0x278(%rcx), %xmm0
movb %al, 0x2(%rsp)
jb 0x1dfb5
leaq 0x2d419(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x215c5(%rip), %xmm1    # 0x3f540
ucomisd %xmm1, %xmm0
movb %al, 0x2(%rsp)
jb 0x1dfb5
leaq 0x2d3e4(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x215a2(%rip), %xmm0    # 0x3f548
ucomisd 0x280(%rax), %xmm0
setae %al
movb %al, 0x2(%rsp)
movb 0x2(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x28(%rsp)
testb $0x1, %al
jne 0x1dfcb
jmp 0x1dfee
leaq 0x2d39e(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x1, %esi
callq 0x1ce70
jmp 0x1dff0
jmp 0x1dff2
movl 0x30(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x30(%rsp)
jmp 0x1ddba
jmp 0x1e17a
movl $0x1, 0x30(%rsp)
cmpl $0x1f3b, 0x30(%rsp)     # imm = 0x1F3B
jg 0x1e137
leaq 0x2d34c(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x278(%rax), %xmm0
xorl %eax, %eax
movsd 0x214c8(%rip), %xmm1    # 0x3f510
ucomisd %xmm1, %xmm0
movb %al, 0x1(%rsp)
jb 0x1e0ec
leaq 0x2d313(%rip), %rax     # 0x4b370
movq (%rax), %rcx
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rcx
xorl %eax, %eax
movsd 0x2149f(%rip), %xmm0    # 0x3f518
ucomisd 0x278(%rcx), %xmm0
movb %al, 0x1(%rsp)
jb 0x1e0ec
leaq 0x2d2e2(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x280(%rax), %xmm0
xorl %eax, %eax
movsd 0x2146e(%rip), %xmm1    # 0x3f520
ucomisd %xmm1, %xmm0
movb %al, 0x1(%rsp)
jb 0x1e0ec
leaq 0x2d2ad(%rip), %rax     # 0x4b370
movq (%rax), %rax
movslq 0x30(%rsp), %rcx
imulq $0x360, %rcx, %rcx      # imm = 0x360
addq %rcx, %rax
movsd 0x2144b(%rip), %xmm0    # 0x3f528
ucomisd 0x280(%rax), %xmm0
setae %al
movb %al, 0x1(%rsp)
movb 0x1(%rsp), %al
movb %al, %cl
andb $0x1, %cl
movzbl %cl, %ecx
movl %ecx, 0x2c(%rsp)
testb $0x1, %al
jne 0x1e102
jmp 0x1e125
leaq 0x2d267(%rip), %rax     # 0x4b370
movq (%rax), %rdi
movslq 0x30(%rsp), %rax
imulq $0x360, %rax, %rax      # imm = 0x360
addq %rax, %rdi
movl $0x1, %esi
callq 0x1ce70
jmp 0x1e127
movl 0x30(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x30(%rsp)
jmp 0x1e00f
jmp 0x1e17a
movq 0x2ce90(%rip), %rdi     # 0x4afd0
leaq 0x2149d(%rip), %rsi     # 0x3f5e4
callq 0x3240
movq 0x2ce7d(%rip), %rdi     # 0x4afd0
leaq 0x214a7(%rip), %rsi     # 0x3f601
callq 0x3240
movq %rax, %rdi
movl 0x34(%rsp), %esi
callq 0x3420
movq %rax, %rdi
leaq 0x21498(%rip), %rsi     # 0x3f60d
callq 0x3240
addq $0x38, %rsp
retq
nop