// File: Luthaf[P]zeopp/v_network.cc
// Function: voronoi_network::safe_search_previous_rect(double, double, double, int&, int&, int&, int&, int&)
bool voronoi_network::safe_search_previous_rect(double x,double y,double z,int &ijk,int &q,int &ci,int &cj,int &ck) {
	const double tol(0.5*net_tol);
	if(search_previous_rect(x+tol,y+tol,z+tol,ijk,q,ci,cj,ck)) return true;
	if(search_previous_rect(x-tol,y+tol,z+tol,ijk,q,ci,cj,ck)) return true;
	if(search_previous_rect(x+tol,y-tol,z+tol,ijk,q,ci,cj,ck)) return true;
	if(search_previous_rect(x-tol,y-tol,z+tol,ijk,q,ci,cj,ck)) return true;
	if(search_previous_rect(x+tol,y+tol,z-tol,ijk,q,ci,cj,ck)) return true;
	if(search_previous_rect(x-tol,y+tol,z-tol,ijk,q,ci,cj,ck)) return true;
	if(search_previous_rect(x+tol,y-tol,z-tol,ijk,q,ci,cj,ck)) return true;
	return search_previous_rect(x-tol,y-tol,z-tol,ijk,q,ci,cj,ck);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq %rdi, -0x10(%rbp)
movsd %xmm0, -0x18(%rbp)
movsd %xmm1, -0x20(%rbp)
movsd %xmm2, -0x28(%rbp)
movq %rsi, -0x30(%rbp)
movq %rdx, -0x38(%rbp)
movq %rcx, -0x40(%rbp)
movq %r8, -0x48(%rbp)
movq %r9, -0x50(%rbp)
movq -0x10(%rbp), %rdi
movq %rdi, -0x60(%rbp)
movsd 0x10d3e9(%rip), %xmm0   # 0x1f2078
mulsd 0x58(%rdi), %xmm0
movsd %xmm0, -0x58(%rbp)
movsd -0x18(%rbp), %xmm0
addsd -0x58(%rbp), %xmm0
movsd -0x20(%rbp), %xmm1
addsd -0x58(%rbp), %xmm1
movsd -0x28(%rbp), %xmm2
addsd -0x58(%rbp), %xmm2
movq -0x30(%rbp), %rsi
movq -0x38(%rbp), %rdx
movq -0x40(%rbp), %rcx
movq -0x48(%rbp), %r8
movq -0x50(%rbp), %r9
callq 0xe4ef0
testb $0x1, %al
jne 0xe4cd6
jmp 0xe4cdf
movb $0x1, -0x1(%rbp)
jmp 0xe4ed8
movq -0x60(%rbp), %rdi
movsd -0x18(%rbp), %xmm0
subsd -0x58(%rbp), %xmm0
movsd -0x20(%rbp), %xmm1
addsd -0x58(%rbp), %xmm1
movsd -0x28(%rbp), %xmm2
addsd -0x58(%rbp), %xmm2
movq -0x30(%rbp), %rsi
movq -0x38(%rbp), %rdx
movq -0x40(%rbp), %rcx
movq -0x48(%rbp), %r8
movq -0x50(%rbp), %r9
callq 0xe4ef0
testb $0x1, %al
jne 0xe4d20
jmp 0xe4d29
movb $0x1, -0x1(%rbp)
jmp 0xe4ed8
movq -0x60(%rbp), %rdi
movsd -0x18(%rbp), %xmm0
addsd -0x58(%rbp), %xmm0
movsd -0x20(%rbp), %xmm1
subsd -0x58(%rbp), %xmm1
movsd -0x28(%rbp), %xmm2
addsd -0x58(%rbp), %xmm2
movq -0x30(%rbp), %rsi
movq -0x38(%rbp), %rdx
movq -0x40(%rbp), %rcx
movq -0x48(%rbp), %r8
movq -0x50(%rbp), %r9
callq 0xe4ef0
testb $0x1, %al
jne 0xe4d6a
jmp 0xe4d73
movb $0x1, -0x1(%rbp)
jmp 0xe4ed8
movq -0x60(%rbp), %rdi
movsd -0x18(%rbp), %xmm0
subsd -0x58(%rbp), %xmm0
movsd -0x20(%rbp), %xmm1
subsd -0x58(%rbp), %xmm1
movsd -0x28(%rbp), %xmm2
addsd -0x58(%rbp), %xmm2
movq -0x30(%rbp), %rsi
movq -0x38(%rbp), %rdx
movq -0x40(%rbp), %rcx
movq -0x48(%rbp), %r8
movq -0x50(%rbp), %r9
callq 0xe4ef0
testb $0x1, %al
jne 0xe4db4
jmp 0xe4dbd
movb $0x1, -0x1(%rbp)
jmp 0xe4ed8
movq -0x60(%rbp), %rdi
movsd -0x18(%rbp), %xmm0
addsd -0x58(%rbp), %xmm0
movsd -0x20(%rbp), %xmm1
addsd -0x58(%rbp), %xmm1
movsd -0x28(%rbp), %xmm2
subsd -0x58(%rbp), %xmm2
movq -0x30(%rbp), %rsi
movq -0x38(%rbp), %rdx
movq -0x40(%rbp), %rcx
movq -0x48(%rbp), %r8
movq -0x50(%rbp), %r9
callq 0xe4ef0
testb $0x1, %al
jne 0xe4dfe
jmp 0xe4e07
movb $0x1, -0x1(%rbp)
jmp 0xe4ed8
movq -0x60(%rbp), %rdi
movsd -0x18(%rbp), %xmm0
subsd -0x58(%rbp), %xmm0
movsd -0x20(%rbp), %xmm1
addsd -0x58(%rbp), %xmm1
movsd -0x28(%rbp), %xmm2
subsd -0x58(%rbp), %xmm2
movq -0x30(%rbp), %rsi
movq -0x38(%rbp), %rdx
movq -0x40(%rbp), %rcx
movq -0x48(%rbp), %r8
movq -0x50(%rbp), %r9
callq 0xe4ef0
testb $0x1, %al
jne 0xe4e48
jmp 0xe4e51
movb $0x1, -0x1(%rbp)
jmp 0xe4ed8
movq -0x60(%rbp), %rdi
movsd -0x18(%rbp), %xmm0
addsd -0x58(%rbp), %xmm0
movsd -0x20(%rbp), %xmm1
subsd -0x58(%rbp), %xmm1
movsd -0x28(%rbp), %xmm2
subsd -0x58(%rbp), %xmm2
movq -0x30(%rbp), %rsi
movq -0x38(%rbp), %rdx
movq -0x40(%rbp), %rcx
movq -0x48(%rbp), %r8
movq -0x50(%rbp), %r9
callq 0xe4ef0
testb $0x1, %al
jne 0xe4e92
jmp 0xe4e98
movb $0x1, -0x1(%rbp)
jmp 0xe4ed8
movq -0x60(%rbp), %rdi
movsd -0x18(%rbp), %xmm0
subsd -0x58(%rbp), %xmm0
movsd -0x20(%rbp), %xmm1
subsd -0x58(%rbp), %xmm1
movsd -0x28(%rbp), %xmm2
subsd -0x58(%rbp), %xmm2
movq -0x30(%rbp), %rsi
movq -0x38(%rbp), %rdx
movq -0x40(%rbp), %rcx
movq -0x48(%rbp), %r8
movq -0x50(%rbp), %r9
callq 0xe4ef0
andb $0x1, %al
movb %al, -0x1(%rbp)
movb -0x1(%rbp), %al
andb $0x1, %al
addq $0x60, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)