Indonesian rescuers recovered 40 bloated and decomposing bodies in waters off eastern Java on Wednesday. The rescuers also saw other floating bodies that likely belong to the 200 missing passengers of a migrant boat that overturned on Saturday while sailing to Australia's Christmas Island.

East Java search and rescue agency chief Sutrisno said the bodies, which include that of a young boy, were found in waters off Layar Island, Banyuwangi district, 320 kilometres away from where the boat capsized, according to AFP.

Limbs of the badly decomposed bodies fell off while rescuers pulled them out of the water.

Other floating bodies were not immediately recovered due to the rough seas.

"High waves and unfriendly weather hamper us from recovering more bodies," said the head of the Indonesian Navy SAR team at Banyuwangi Port, Apang Suparman, according to Jakarta Post.

A total 47 out of an estimated 250 people aboard the ill-fated boat were rescued on Saturday and Monday. Thirteen of the survivors clung to a wreckage of the boat for three days before they were spotted by a passing boat.

Meanwhile, Indonesian police investigating the accident said three soldiers are being suspected of helping people smugglers organise the transport of the mostly Middle Eastern migrants to Christmas Island.

The owners of two small boats that ferried the asylum seekers to the mother boat apparently told investigators that the soldiers were involved in the human smuggling operation, according to ABC.

Some of the people smugglers, who were reportedly paid $1 million by the migrants, were also identified, the police said.