Malaysia im 19. Jahrhundert. England will mithilfe der Ostindischen Handelskompanie seinen Einfluss in Südostasien verstärken. Unter den Männern im Dienst der englischen Krone ist auch James Brooke, der "der weiße Radscha von Sarawak" genannt wird. Ihm widersetzt sich der rebellische Sandokan, ein Pirat adliger Herkunft. Sir William Fitzgerald (Andrea Giordana) soll James Brooke (Adolfo Celi), den "weißen Radscha von Sarawak", im Kampf gegen Piraten unterstützen, obwohl er dessen brutale Methoden verachtet. Brooke entführt sogar das malaysische Prinzengeschwisterpaar, um seine Macht zu sichern. Doch Sandokan (Kabir Bedi), ein Pirat adliger Herkunft, befreit die Kinder und kehrt nach Mompracem zurück. Kurz darauf plant er einen Überfall auf die überquellenden Lagerhäuser der "Indian Company". Fitzgerald lauert ihm mit einem als Dschunke getarnten Kanonenboot auf. In der Schlacht fallen fast alle Piraten, Sandokan wird schwer verletzt über Bord gespült. An Land findet ihn ein Diener Lord Guillonks (Hans Caninenberg) und bringt ihn in dessen Palast. Marianna (Carole André), die Nichte des Lords, pflegt den Bewusstlosen. Zwischen ihr und Sandokan entsteht eine tiefe Zuneigung, doch beide wagen es nicht, über ihre Gefühle füreinander zu sprechen. Als er genesen ist, gibt sich Sandokan als Bruder eines malaysischen Sultans aus und erscheint auf Mariannas Geburtstagsfest. Fitzgerald erkennt ihn nicht. Bei der Tigerjagd tötet Sandokan einen Tiger für Marianna und gesteht ihr seine Liebe - und dass er ein Pirat ist. Fitzgerald erkennt ihn nun und will ihn festnehmen, doch Sandokan entkommt mit Naiks (Ganesh Kumar) Hilfe. Fitzgerald macht Marianna einen Heiratsantrag, doch sie trifft heimlich Sandokan wieder. Gemeinsam fliehen sie, während Yanez (Philippe Leroy) mit Getreuen nach Labuan kommt, um Sandokan zu retten. Die Flucht gelingt, bis ein englischer Kreuzer mit Brooke an Bord das Schiff stellt.
