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

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x550, %rsp            # imm = 0x550
movq %rdi, -0x8(%rbp)
movsd %xmm0, -0x10(%rbp)
movsd %xmm1, -0x18(%rbp)
movl %esi, -0x1c(%rbp)
movq -0x8(%rbp), %rdi
movq %rdi, -0x500(%rbp)
addq $0x138, %rdi            # imm = 0x138
movslq -0x1c(%rbp), %rsi
callq 0xf090
movq %rax, %rsi
leaq -0x150(%rbp), %rdi
movq %rdi, -0x4f8(%rbp)
callq 0xf0d0
movq -0x500(%rbp), %rsi
movq -0x4f8(%rbp), %rdx
movsd -0x10(%rbp), %xmm1
movsd -0x18(%rbp), %xmm2
leaq -0xb8(%rbp), %rdi
xorps %xmm0, %xmm0
xorl %ecx, %ecx
movl $0x1, %r9d
movl %r9d, %r8d
callq 0xfa5d0
jmp 0xfb011
movq -0x500(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movslq -0x1c(%rbp), %rsi
callq 0xf090
movq %rax, -0x508(%rbp)
jmp 0xfb031
movq -0x508(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
movq %rsi, -0x518(%rbp)
callq 0xfcef0
movq -0x518(%rbp), %rdi
callq 0xf200
leaq -0x150(%rbp), %rdi
callq 0xf200
movq -0x500(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x1c(%rbp), %eax
incl %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, %rsi
leaq -0x290(%rbp), %rdi
movq %rdi, -0x510(%rbp)
callq 0xf0d0
movq -0x500(%rbp), %rsi
movq -0x510(%rbp), %rdx
movsd -0x10(%rbp), %xmm1
movsd -0x18(%rbp), %xmm2
leaq -0x1f8(%rbp), %rdi
xorps %xmm0, %xmm0
xorl %ecx, %ecx
movl $0xffffffff, %r8d       # imm = 0xFFFFFFFF
movl $0x1, %r9d
callq 0xfa5d0
jmp 0xfb0cb
movq -0x500(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x1c(%rbp), %eax
incl %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, -0x520(%rbp)
jmp 0xfb0ef
movq -0x520(%rbp), %rdi
leaq -0x1f8(%rbp), %rsi
movq %rsi, -0x530(%rbp)
callq 0xfcef0
movq -0x530(%rbp), %rdi
callq 0xf200
leaq -0x290(%rbp), %rdi
callq 0xf200
movq -0x500(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x1c(%rbp), %eax
addl $0x2, %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, %rsi
leaq -0x3c0(%rbp), %rdi
movq %rdi, -0x528(%rbp)
callq 0xf0d0
movq -0x500(%rbp), %rsi
movq -0x528(%rbp), %rdx
movsd -0x10(%rbp), %xmm1
movsd -0x18(%rbp), %xmm2
leaq -0x328(%rbp), %rdi
xorps %xmm0, %xmm0
xorl %ecx, %ecx
movl $0xffffffff, %r9d       # imm = 0xFFFFFFFF
movl %r9d, %r8d
callq 0xfa5d0
jmp 0xfb187
movq -0x500(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x1c(%rbp), %eax
addl $0x2, %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, -0x538(%rbp)
jmp 0xfb1ac
movq -0x538(%rbp), %rdi
leaq -0x328(%rbp), %rsi
movq %rsi, -0x548(%rbp)
callq 0xfcef0
movq -0x548(%rbp), %rdi
callq 0xf200
leaq -0x3c0(%rbp), %rdi
callq 0xf200
movq -0x500(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x1c(%rbp), %eax
addl $0x3, %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, %rsi
leaq -0x4f0(%rbp), %rdi
movq %rdi, -0x540(%rbp)
callq 0xf0d0
movq -0x500(%rbp), %rsi
movq -0x540(%rbp), %rdx
movsd -0x10(%rbp), %xmm1
movsd -0x18(%rbp), %xmm2
leaq -0x458(%rbp), %rdi
xorps %xmm0, %xmm0
xorl %ecx, %ecx
movl $0x1, %r8d
movl $0xffffffff, %r9d       # imm = 0xFFFFFFFF
callq 0xfa5d0
jmp 0xfb247
movq -0x500(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
movl -0x1c(%rbp), %eax
addl $0x3, %eax
movslq %eax, %rsi
callq 0xf090
movq %rax, -0x550(%rbp)
jmp 0xfb26c
movq -0x550(%rbp), %rdi
leaq -0x458(%rbp), %rsi
callq 0xfcef0
leaq -0x458(%rbp), %rdi
callq 0xf200
leaq -0x4f0(%rbp), %rdi
callq 0xf200
addq $0x550, %rsp            # imm = 0x550
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x158(%rbp)
movl %eax, -0x15c(%rbp)
jmp 0xfb2d2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x158(%rbp)
movl %eax, -0x15c(%rbp)
leaq -0xb8(%rbp), %rdi
callq 0xf200
leaq -0x150(%rbp), %rdi
callq 0xf200
jmp 0xfb3a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x158(%rbp)
movl %eax, -0x15c(%rbp)
jmp 0xfb315
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x158(%rbp)
movl %eax, -0x15c(%rbp)
leaq -0x1f8(%rbp), %rdi
callq 0xf200
leaq -0x290(%rbp), %rdi
callq 0xf200
jmp 0xfb3a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x158(%rbp)
movl %eax, -0x15c(%rbp)
jmp 0xfb355
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x158(%rbp)
movl %eax, -0x15c(%rbp)
leaq -0x328(%rbp), %rdi
callq 0xf200
leaq -0x3c0(%rbp), %rdi
callq 0xf200
jmp 0xfb3a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x158(%rbp)
movl %eax, -0x15c(%rbp)
jmp 0xfb395
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x158(%rbp)
movl %eax, -0x15c(%rbp)
leaq -0x458(%rbp), %rdi
callq 0xf200
leaq -0x4f0(%rbp), %rdi
callq 0xf200
movq -0x158(%rbp), %rdi
callq 0x58f0
nopl (%rax)