2d bounding box from 3d box

I am trying fetch 2d screen coordinates of the entities. But it seems like results are lagging a bit. Specially when I move car a bit faster which causes camera to move faster. In this sample, you can see that green box (projected 2d box calculated using _WORLD3D_TO_SCREEN2D) is not well synchronized and partially wrong as compared to the 3d box (blue one). The 3d bounding box seems to me accurate though.
Can anyone please help me in fixing it. Or maybe help me in understanding what exactly happens when the function Hash._WORLD3D_TO_SCREEN2D is called. Your help will be really appreciated. Thanks.