Well D3DXCreateTeapot returns a ID3DXMesh object. You can call GetVertexBuffer on it. Don't forget to lock it before editing. You also need to figure out the vertex stride of the buffer. You can use D3DXGetFVFVertexSize:

you can grab the the fvf and & D3DFVF_XYZ to see if the FVF have vertex information .If it does then that data is usually resides at the beginning of the vertex memory block when you lock it for access.