Beat you to it. I understand the parts about locking the buffers, copying the data in and unlocking them again. As far as parsing the file, from what I can understand the LoadGeometryFromObj method takes care of this by using an if statement to scan through the lines of the obj file, vertices first, then vertex normals, etc. etc. and if it can't find any of those then it does some random gumf that I don't get, I think it uses faces and gets the data that way but I'm not sure.
It stores the data it finds in a section of "CGrowableArray"'s but it's tight lipped on what data type these are and I can't even see where they're declared, much less what to do with them when they're full of mesh.