The Azamara Quest, which had left on a 17-day Southeast Asian cruise, drifted in southern Philippine waters after a fire broke out on Friday night.
The ship docked in the port of Sandakan in Malaysia's eastern state of Sabah on Borneo island following repairs, the ship's operator said.
The fire knocked out its engines and injured five crew members, including one seriously. They suffered smoke inhalation.
Operator Azamara Club Cruises said five crew suffered smoke inhalation, but that no passengers were injured.
After crossing from Philippines into Malaysian waters earlier on Sunday, the liner, travelling at a speed of six knots, was escorted to Sandakan by a Malaysian patrol boat.
The company has said that the rest of the ship's voyage will be cancelled on arrival in Malaysia, the BBC reported.
The 11-deck cruise ship with 590 passengers, mostly American and European, and 411 crew members, including 58 Indians had yet to enter Malaysian waters off Kudat, said MMEA Regional Enforcement chief for Sabah and Labuan First Admiral M Karunanithi when confirming the vessel was heading to Sandakan.
A British passenger, Deborah Garnett, said dinner was about to be served when the fire broke out.
"One of the engineers ran up covered in oil, running through the dining room and smoke filled the dining room and everybody was evacuated and given life jackets," she said.
Image: The stricken luxury cruise ship Azamara Quest sails toward a port in Malaysia's town of Sandakan on Borneo island.
Photograph: Bazuki Muhammad/Reuters