More than 200 people were feared dead after a heavily overloaded boat packed mostly with Afghan and Iranian asylum-seekers sank off Indonesia en route to Australia, rescuers said.
Australia's government called the sinking "a terrible tragedy", but came under pressure from campaign groups which said its tough approach to refugees was partly responsible for such disasters.
The fibreglass boat had a capacity of 100 but was carrying about 250 people when it sank on Saturday, 40 nautical miles off eastern Java, in heavy rain and high waves, Indonesian officials said.
Thirty-three survivors were plucked from the shark-infested waters, officials said, after the vessel sank along a well-worn - and occasionally lethal - route from Java to Australia's remote Christmas Island.
Officials said there was little hope of finding any other passengers alive, which would make the sinking Indonesia's deadliest migrant boat accident.
"We sent out five boats and three helicopters but no survivor or body was sighted. It's unlikely they were washed up on islands as the closest shore is 40 miles away," district search and rescue official Kelik Purwanto told AFP.
Purwanto said the accident was the "worst disaster involving migrant boats" to date.
"If we find no survivor, then this is by far the largest loss of life," he added.
National Search and Rescue Agency spokesman Gagah Prakoso earlier said "it's very likely they have all drowned."
"It's impossible even for a good swimmer with a life vest to swim to shore safely in such extreme conditions. When boats sink like this, the bodies usually surface on the third day," he told AFP.
Bad weather, strong winds and waves of up to five metres hampered rescue efforts on Sunday, with 300 rescuers including navy and police officers deployed to comb the sea for bodies.
One survivor, 17-year-old Afghan student Armaghan Haidar, said he was sleeping when a storm came up and began to rock the boat.
"I felt water touching my feet and woke up. As the boat was going down, people were panicking and shouting and trying to rush out," he told AFP ashore.
"I managed to swim out and hang on to the side of the boat with about 100 others. (There were) about 20 to 30 others with life jackets, but another 100 people were trapped inside," he said.
Survivors were floating in the sea for six hours before fishermen rescued them, survivors and officials said.
The survivors are being kept at a community hall near Prigi beach, 640 kilometres southeast of Indonesia's capital Jakarta, and say they had official UN documentation to prove their refugee status.
Survivors interviewed by AFP and local officials said that most of the passengers came from Afghanistan or Iran, and they had paid agents between $2,500 and $5,000 to seek asylum in Australia.
Others claimed to be Iraqi, Pakistani, Turkish or Saudi nationals, and that their papers were lost at sea.
Haidar, the Afghan student, said he flew from Dubai to Indonesia and boarded a boat in West Java.
"We want to go to Christmas Island and live a better life in Australia," he said. "There is nothing in Afghanistan. There's a lot of terrorism. We couldn't study, go to college, find jobs. There's no future for us there."
Thousands of asylum-seekers head through Southeast Asian countries on their way to Australia every year and many link up with people-smugglers in Indonesia for the dangerous sea voyage.
Christmas Island is a favoured destination for people-smugglers, lying closer to Indonesia than Australia. Nearly 50 would-be migrants are believed to have died in wild seas during a shipwreck there in December 2010.
"Our focus today is on the search and rescue effort and our thoughts today are with the people who died and with the families of those still lost at sea," Australian Home Affairs Minister Jason Clare said of Saturday's sinking.
"Whenever people make a dangerous journey and risk their lives, I am concerned," he said, adding that Australia had offered an Orion surveillance aircraft to help the rescue effort.
Australia has failed in its efforts to set up a regional processing centre in neighbouring countries to reduce the flow of asylum-seekers heading to its shores.
The number of boatpeople arriving in Australia ballooned to almost 900 in November, with at least nine ships intercepted in Australian waters so far this month.
Ian Rintoul, coordinator of the Refugee Action Coalition, said any sympathy the Australian government or opposition expressed for those who died at sea would amount to "hypocrisy" until the parties adopted humane policies.
The UN High Commissioner for Refugees in November said at least nine people were killed when an overloaded vessel capsized in rough seas off Java on the way to Kupang in eastern Indonesia.