So in this scene I'm reading every vertex for each primitive, put them in an array, move the box, read them back and then add a point at the original position. It looks like this.
Make sure that your Attribute VOPS are running over primitives.
Inside the first VOP I'm using a For Loop and the numvtx (which is the number of verticies that the current primitive has) to drive how many time it will loop. I'm then using an Import Vertex Attribute with the current element index to pick up the position of the vertices. Lastly I'm appending them to an array. As we've selected that we are running over Primitives this will create an array for each Primitive.
To read it back is very easy. Just make sure that you are running over Primitives here as well. After that you can just use an for each node to step through your arrays.
Hope that you will find this useful, The project file can be downloaded from here: Project File