Sachverhalt: Sachverhalt: A. X._ wurde mit Urteil des Bezirksgerichts Zürich vom 25. April 2002 wegen Widerhandlung gegen Art. 19 Ziff. 1 Abs. 4 und 5 in Verbindung mit Art. 19 Ziff. 2 des Betäubungsmittelgesetzes (BetmG) verurteilt. Ihm wurde vorgeworfen, im Juli und August 2000 bandenmässig eine grössere Menge Heroin entgegengenommen, bei sich aufbewahrt sowie an Dritte weitergegeben zu haben. Sodann habe er sich der Geldwäscherei im Sinne von Art. 305bis Ziff. 1 StGB schuldig gemacht, da er dafür verantwortlich sei, dass das Geld aus dem Drogenhandel an den Drogenlieferanten in Mazedonien weitergegeben worden sei. A. X._ wurde mit Urteil des Bezirksgerichts Zürich vom 25. April 2002 wegen Widerhandlung gegen Art. 19 Ziff. 1 Abs. 4 und 5 in Verbindung mit Art. 19 Ziff. 2 des Betäubungsmittelgesetzes (BetmG) verurteilt. Ihm wurde vorgeworfen, im Juli und August 2000 bandenmässig eine grössere Menge Heroin entgegengenommen, bei sich aufbewahrt sowie an Dritte weitergegeben zu haben. Sodann habe er sich der Geldwäscherei im Sinne von Art. 305bis Ziff. 1 StGB schuldig gemacht, da er dafür verantwortlich sei, dass das Geld aus dem Drogenhandel an den Drogenlieferanten in Mazedonien weitergegeben worden sei. B. Das Obergericht des Kantons Zürich sprach X._ auf Berufung hin am 6. März 2003 des mehrfachen Verbrechens im Sinne von Art. 19 Ziff. 1 Abs. 4 und 5 BetmG in Verbindung mit Art. 19 Ziff. 2 lit. a BetmG sowie der Geldwäscherei im Sinne von Art. 305bis Ziff. 1 StGB schuldig. Das Kassationsgericht des Kantons Zürich wies die gegen dieses Urteil erhobene Nichtigkeitsbeschwerde am 25. Dezember 2003 ab, soweit es darauf eintrat. Das Kassationsgericht des Kantons Zürich wies die gegen dieses Urteil erhobene Nichtigkeitsbeschwerde am 25. Dezember 2003 ab, soweit es darauf eintrat. C. X._ führt mit Eingabe vom 11. Februar 2004 staatsrechtliche Beschwerde gegen das Urteil des Kassationsgerichts des Kantons Zürich und beantragt dessen Aufhebung. Gleichzeitig verlangt er die Aufhebung einzelner Ziffern des obergerichtlichen Urteilsdispositivs vom 6. März 2003. Die Sache sei an das Obergericht des Kantons Zürich zurückzuweisen. Zudem ersucht er um Gewährung der unentgeltlichen Rechtspflege für das Verfahren vor Bundesgericht. Das Kassationsgericht und die Staatsanwaltschaft des Kantons Zürich verzichten auf eine Vernehmlassung. Das Kassationsgericht und die Staatsanwaltschaft des Kantons Zürich verzichten auf eine Vernehmlassung. D. Das Gesuch um Gewährung der aufschiebenden Wirkung wurde am 8. März 2004 gutgeheissen.