// File: Luthaf[P]zeopp/sphere_approx.cc
// Function: AtomCluster::plusMinus_axes(double, int)
void AtomCluster::plusMinus_axes(double shift, int i){
	atom_vector.at(i) = translate_sphere(atom_vector.at(i), shift, 0, 0, 1, 0, 0);
	atom_vector.at(i+1) = translate_sphere(atom_vector.at(i+1), shift, 0, 0, -1, 0, 0);
	atom_vector.at(i+2) = translate_sphere(atom_vector.at(i+2), 0, shift, 0, 0, 1, 0);
	atom_vector.at(i+3) = translate_sphere(atom_vector.at(i+3), 0, shift, 0, 0, -1, 0);
	atom_vector.at(i+4) = translate_sphere(atom_vector.at(i+4), 0, 0, shift, 0, 0, 1);
	atom_vector.at(i+5) = translate_sphere(atom_vector.at(i+5), 0, 0, shift, 0, 0, -1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x7e0, %rsp            # imm = 0x7E0
movq %rdi, -0x8(%rbp)
movsd %xmm0, -0x10(%rbp)
movl %esi, -0x14(%rbp)
movq -0x8(%rbp), %rdi
movq %rdi, -0x758(%rbp)
addq $0x138, %rdi            # imm = 0x138
movslq -0x14(%rbp), %rsi
callq 0xf090
movq %rax, %rsi
leaq -0x148(%rbp), %rdi
movq %rdi, -0x750(%rbp)
callq 0xf0d0
movq -0x758(%rbp), %rsi
movq -0x750(%rbp), %rdx
movsd -0x10(%rbp), %xmm0
leaq -0xb0(%rbp), %rdi
xorps %xmm2, %xmm2
movl $0x1, %ecx
xorl %r9d, %r9d
movaps %xmm2, %xmm1
movl %r9d, %r8d
callq 0xfa5d0
jmp 0xf8aea
movq -0x758(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movslq -0x14(%rbp), %rsi
callq 0xf090
movq %rax, -0x760(%rbp)
jmp 0xf8b0a
movq -0x760(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
movq %rsi, -0x770(%rbp)
callq 0xfcef0
movq -0x770(%rbp), %rdi
callq 0xf200
leaq -0x148(%rbp), %rdi
callq 0xf200
movq -0x758(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x14(%rbp), %eax
incl %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, %rsi
leaq -0x288(%rbp), %rdi
movq %rdi, -0x768(%rbp)
callq 0xf0d0
movq -0x758(%rbp), %rsi
movq -0x768(%rbp), %rdx
movsd -0x10(%rbp), %xmm0
leaq -0x1f0(%rbp), %rdi
xorps %xmm2, %xmm2
movl $0xffffffff, %ecx       # imm = 0xFFFFFFFF
xorl %r9d, %r9d
movaps %xmm2, %xmm1
movl %r9d, %r8d
callq 0xfa5d0
jmp 0xf8b9f
movq -0x758(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x14(%rbp), %eax
incl %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, -0x778(%rbp)
jmp 0xf8bc3
movq -0x778(%rbp), %rdi
leaq -0x1f0(%rbp), %rsi
movq %rsi, -0x788(%rbp)
callq 0xfcef0
movq -0x788(%rbp), %rdi
callq 0xf200
leaq -0x288(%rbp), %rdi
callq 0xf200
movq -0x758(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x14(%rbp), %eax
addl $0x2, %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, %rsi
leaq -0x3b8(%rbp), %rdi
movq %rdi, -0x780(%rbp)
callq 0xf0d0
movq -0x758(%rbp), %rsi
movq -0x780(%rbp), %rdx
movsd -0x10(%rbp), %xmm1
leaq -0x320(%rbp), %rdi
xorps %xmm2, %xmm2
movl $0x1, %r8d
xorl %r9d, %r9d
movaps %xmm2, %xmm0
movl %r9d, %ecx
callq 0xfa5d0
jmp 0xf8c5a
movq -0x758(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x14(%rbp), %eax
addl $0x2, %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, -0x790(%rbp)
jmp 0xf8c7f
movq -0x790(%rbp), %rdi
leaq -0x320(%rbp), %rsi
movq %rsi, -0x7a0(%rbp)
callq 0xfcef0
movq -0x7a0(%rbp), %rdi
callq 0xf200
leaq -0x3b8(%rbp), %rdi
callq 0xf200
movq -0x758(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x14(%rbp), %eax
addl $0x3, %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, %rsi
leaq -0x4e8(%rbp), %rdi
movq %rdi, -0x798(%rbp)
callq 0xf0d0
movq -0x758(%rbp), %rsi
movq -0x798(%rbp), %rdx
movsd -0x10(%rbp), %xmm1
leaq -0x450(%rbp), %rdi
xorps %xmm2, %xmm2
movl $0xffffffff, %r8d       # imm = 0xFFFFFFFF
xorl %r9d, %r9d
movaps %xmm2, %xmm0
movl %r9d, %ecx
callq 0xfa5d0
jmp 0xf8d16
movq -0x758(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x14(%rbp), %eax
addl $0x3, %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, -0x7a8(%rbp)
jmp 0xf8d3b
movq -0x7a8(%rbp), %rdi
leaq -0x450(%rbp), %rsi
movq %rsi, -0x7b8(%rbp)
callq 0xfcef0
movq -0x7b8(%rbp), %rdi
callq 0xf200
leaq -0x4e8(%rbp), %rdi
callq 0xf200
movq -0x758(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x14(%rbp), %eax
addl $0x4, %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, %rsi
leaq -0x618(%rbp), %rdi
movq %rdi, -0x7b0(%rbp)
callq 0xf0d0
movq -0x758(%rbp), %rsi
movq -0x7b0(%rbp), %rdx
movsd -0x10(%rbp), %xmm2
leaq -0x580(%rbp), %rdi
xorps %xmm1, %xmm1
xorl %r8d, %r8d
movl $0x1, %r9d
movaps %xmm1, %xmm0
movl %r8d, %ecx
callq 0xfa5d0
jmp 0xf8dd2
movq -0x758(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x14(%rbp), %eax
addl $0x4, %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, -0x7c0(%rbp)
jmp 0xf8df7
movq -0x7c0(%rbp), %rdi
leaq -0x580(%rbp), %rsi
movq %rsi, -0x7d0(%rbp)
callq 0xfcef0
movq -0x7d0(%rbp), %rdi
callq 0xf200
leaq -0x618(%rbp), %rdi
callq 0xf200
movq -0x758(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x14(%rbp), %eax
addl $0x5, %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, %rsi
leaq -0x748(%rbp), %rdi
movq %rdi, -0x7c8(%rbp)
callq 0xf0d0
movq -0x758(%rbp), %rsi
movq -0x7c8(%rbp), %rdx
movsd -0x10(%rbp), %xmm2
leaq -0x6b0(%rbp), %rdi
xorps %xmm1, %xmm1
xorl %r8d, %r8d
movl $0xffffffff, %r9d       # imm = 0xFFFFFFFF
movaps %xmm1, %xmm0
movl %r8d, %ecx
callq 0xfa5d0
jmp 0xf8e8e
movq -0x758(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x14(%rbp), %eax
addl $0x5, %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, -0x7d8(%rbp)
jmp 0xf8eb3
movq -0x7d8(%rbp), %rdi
leaq -0x6b0(%rbp), %rsi
callq 0xfcef0
leaq -0x6b0(%rbp), %rdi
callq 0xf200
leaq -0x748(%rbp), %rdi
callq 0xf200
addq $0x7e0, %rsp            # imm = 0x7E0
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x150(%rbp)
movl %eax, -0x154(%rbp)
jmp 0xf8f19
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x150(%rbp)
movl %eax, -0x154(%rbp)
leaq -0xb0(%rbp), %rdi
callq 0xf200
leaq -0x148(%rbp), %rdi
callq 0xf200
jmp 0xf906e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x150(%rbp)
movl %eax, -0x154(%rbp)
jmp 0xf8f5c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x150(%rbp)
movl %eax, -0x154(%rbp)
leaq -0x1f0(%rbp), %rdi
callq 0xf200
leaq -0x288(%rbp), %rdi
callq 0xf200
jmp 0xf906e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x150(%rbp)
movl %eax, -0x154(%rbp)
jmp 0xf8f9f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x150(%rbp)
movl %eax, -0x154(%rbp)
leaq -0x320(%rbp), %rdi
callq 0xf200
leaq -0x3b8(%rbp), %rdi
callq 0xf200
jmp 0xf906e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x150(%rbp)
movl %eax, -0x154(%rbp)
jmp 0xf8fe2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x150(%rbp)
movl %eax, -0x154(%rbp)
leaq -0x450(%rbp), %rdi
callq 0xf200
leaq -0x4e8(%rbp), %rdi
callq 0xf200
jmp 0xf906e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x150(%rbp)
movl %eax, -0x154(%rbp)
jmp 0xf9022
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x150(%rbp)
movl %eax, -0x154(%rbp)
leaq -0x580(%rbp), %rdi
callq 0xf200
leaq -0x618(%rbp), %rdi
callq 0xf200
jmp 0xf906e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x150(%rbp)
movl %eax, -0x154(%rbp)
jmp 0xf9062
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x150(%rbp)
movl %eax, -0x154(%rbp)
leaq -0x6b0(%rbp), %rdi
callq 0xf200
leaq -0x748(%rbp), %rdi
callq 0xf200
movq -0x150(%rbp), %rdi
callq 0x58f0
nopw (%rax,%rax)