Thanks Guys for willing to help. Here is my code. Note that I have skipped all the imports, just to save some room.
   var viewport:Viewport3D = new Viewport3D(0, 0, true, true);
   container.addChild(viewport);
 
   var renderer:BasicRenderEngine = new BasicRenderEngine();
 
   var scene:Scene3D = new Scene3D();
 
   var camera:Camera3D = new Camera3D();
   camera.zoom = 11;
   camera.focus = 100;                 
   book = new DisplayObject3D();
   var scale = 0.7
   var bookWidth = 100;
   var bookHeight = 200;
   var bookThickness = 40;
   var bookAngle = 45;
 
   var currentPage = 1;
   var face = Params.rootPath.pages[currentPage];
 
   var faces = new Object()
   faces[0] = sideImg;
   faces[1] = sideImg;
   faces[2] = backImg;
   faces[3] = rightImg;
   faces[4] = sideImg;
   faces[5] = face;
   var cube1 = createCube(faces, bookThickness, bookWidth, bookHeight, -bookThickness/2,bookWidth/2, 0)
   cube1.rotationZ = bookAngle;
   faces = new Object()
   faces[0] = sideImg;
   faces[1] = sideImg;
   faces[2] = backImg;
   faces[3] = rightImg;
   faces[4] = sideImg;
   faces[5] = face;
 
var cube2 = createCube(faces,bookThickness,bookWidth,bookHeight,bookThickness/2,bookWidth/2,0)
   cube2.rotationZ = -bookAngle;
   faces = new Object()
   faces[0] = sideImg;
   faces[1] = sideImg;
   faces[2] = backImg;
   faces[3] = coverImg;
   faces[4] = sideImg;
   faces[5] = spineImg;
   var cube3 = createCube(faces,1,1,bookHeight,0,-0.5,0)
   cube3.scaleY = bookThickness*Math.sin(bookAngle*Math.PI/180)
   cube3.scaleX = 2*bookThickness*Math.cos(bookAngle*Math.PI/180)
   book.addChild(cube1);
   book.addChild(cube2);
   book.addChild(cube3);
   scene.addChild(book)
 
renderer.renderScene(scene, camera, viewport);
   var rotator = new Sprite()
   rotator.addEventListener(Event.ENTER_FRAME, rotate);
   function rotate(e:Event):void
   {
 
    book.rotationY += 5
    book.rotationX += 1
    book.rotationY = book.rotationY % 360;
    book.rotationX = book.rotationX % 360;
    renderer.renderScene(scene, camera, viewport);
   }
   // Render the 3D scene
 
 
public function createCube(faces,xWidth,zWidth,yWidth,x,y,z)
  {
   var materialList = new Object();
   var displayOb = new DisplayObject3D();
   for(var i=0;i<6;i++) {
    materialList* = new MovieMaterial(faces*)
    materialList*.smooth = true;
    materialList*.animated = true;  
   }
   var materialsList = new MaterialsList({front:materialList[0], back:materialList[1], left:materialList[2], right:materialList[3],top:materialList[4], bottom:materialList[5]});
   var cube = new Cube(materialsList, xWidth, yWidth, zWidth, 2, 2, 2);
   cube.name = "cube"
   displayOb.addChild(cube,"cube");
   cube.x = x
   cube.y = y
   cube.z = z
   return displayOb;
  }