Faits: Faits: A. A la fin de l'année 1999, la Banque B._ à ... (actuellement Banque B._ SA, ci-après: la banque) a décidé d'exploiter à Genève une succursale et d'y apporter l'activité de conseil en placement et de gestion de fortune déployée par D._ Genève SA - dont le but était notamment la gestion de patrimoines mobiliers. Le capital-actions de D._ Genève SA était détenu à raison de 60% par la banque et de 40% par E._ SA - dont l'un des principaux actionnaires était X._, gérant de fortune -, et ses actifs sous gestion lui avaient été principalement amenés par les actionnaires de E._ SA et pour le surplus par la banque. Par "purchase agreement" du 12 avril 2000, la banque a acheté l'intégralité du capital-actions de E._ SA pour un prix fondé sur la participation de 40% dans D._ Genève SA, dont la valeur résidait dans sa clientèle. L'art. 16 du préambule de la convention indiquait qu'après l'exécution de la vente, la banque entendait absorber, avec effet au 31 décembre 1999, E._ SA et D._ Genève SA, au sens de l'art. 748 CO, afin de transférer toutes les activités, actifs et passifs des sociétés absorbées à sa nouvelle succursale à Genève. Selon l'art. 17 du préambule, X._ demeurerait actif pour la banque en qualité de consultant indépendant. Une partie du prix convenu pour les actions de X._ était payable à la signature de la convention et le solde était réductible en fonction de la diminution constatée au 31 décembre 2002 des avoirs en gestion apportés par X._ à D._ Genève SA. A la même date, la banque, A._ SA - société dont le but est notamment la gestion de patrimoine mobilier et qui est entièrement dominée par X._, qui en est l'administrateur - et X._ ont conclu un contrat dont l'exposé préalable indiquait que les parties souhaitaient que X._ représente la banque dans les relations publiques auprès de la clientèle internationale et que A._ SA soit liée à la banque en qualité de gérant extérieur. L'art. 1, intitulé "contrat de représentation", portait sur les relations entre la banque et X._ et l'art. 2, nommé "contrat de collaboration", avait trait aux rapports entre A._ SA et la banque. Selon le "contrat de représentation", X._ était engagé en qualité de représentant de la banque afin de promouvoir l'image de celle-ci auprès de la clientèle internationale d'origine européenne, nord et sud américaine, asiatique et du Moyen-Orient (art. 1.1) pour un salaire annuel brut de 55'000 fr. dont à déduire 25'000 fr. au titre de contribution au fonds de prévoyance de la banque (art. 1.2). Il pouvait décider du moment et de la durée de ses vacances (art. 1.4), mais était soumis à l'autorité des associés de la banque ou de sa direction générale (art. 1.7). La banque ne fournissait pas de place de travail à X._, lequel était autorisé à déployer son activité depuis les locaux de A._ SA (art. 1.6). X._ était raccordé au système informatique de la banque et avait accès aux recherches financières et économiques de celle-ci (art. 1.9 et 1.10). Le "contrat de représentation" était conclu pour une durée de six ans prenant fin le jour où X._ atteignait l'âge de soixante-deux ans, étant précisé qu'il pouvait être résilié pour justes motifs au sens de l'art. 337 CO ou d'un commun accord (art. 1.5). Cette partie du contrat avait uniquement pour but de permettre à X._ de rester affilié à la caisse de prévoyance de la banque jusqu'à l'âge de soixante-deux ans. Le "contrat de collaboration" entre la banque et A._ SA était conclu pour une durée indéterminée, mais ne pouvait être résilié aussi longtemps que le contrat de représentation était en vigueur (art. 2.1). Ce contrat de collaboration distinguait les comptes anciens (art. 2.2), les comptes nouveaux (art. 2.3) et les apports de fonds nouveaux sur comptes anciens (art. 2.4). Selon cette convention, les comptes anciens étaient les comptes des clients apportés par X._ et ouverts jusqu'au 31 décembre 1999 (art. 2.2.1). Les relations contractuelles entre la banque et les titulaires de comptes anciens étaient maintenues en l'état et A._ SA assurait la relation avec la clientèle pour ces comptes (art. 2.2.2). Selon le contrat, A._ SA recevrait une rémunération de 0.25% des avoirs déposés sur les comptes anciens, dont à déduire 55'000 fr. prévus à titre de rémunération de l'activité de représentant de A._ SA (art. 2.5.1). Pour le cas où les titulaires de comptes anciens exigeaient que le mandat de gestion soit transféré à A._ SA ou à X._, la banque recevrait deux tiers des honoraires de gestion (art. 2.2.3). Selon le contrat, tous les comptes ouverts dès le 1er janvier 2000 étaient des comptes nouveaux, A._ SA s'engageant à amener ses clients à ouvrir des comptes de dépôts (art. 2.3.1). A._ SA pouvait demander à la banque de prendre le mandat de gestion, laquelle n'était pas obligée de l'accepter (art. 2.3.3). L'art. 2.4.1, intitulé "apport de fonds nouveaux dans les comptes anciens", prévoyait que "tout montant d'argent frais ou de titres dépassant CHF 300.000.- net (soit apports moins retraits) apporté dès le 1er janvier 2000 sur un compte ancien, sera rémunéré par un finder's fee de 1% payable après 6 mois et une moitié payable après 12 mois et un trail fee de 0.25". En sus, A._ SA recevait 40% des honoraires de gestion, de courtage et de "forex", et 25% des frais administratifs, relatifs aux fonds nouveaux (art. 2.5.2 et 2.5.3). Au mois d'août 2000, les trois parties ont conclu un avenant intitulé "memorandum for the implementation of a contract signed on the 12th April 2000" réglant les modalités pratiques du paiement des commissions et des rétrocessions convenues. Selon cet avenant, la rémunération relative aux fonds nouveaux sur comptes anciens était calculée à la fin de chaque année civile et payable en deux fois, le 30 juin et le 31 décembre de l'année suivante (art. 2.4.1). Par lettre du 8 août 2000 de la banque intitulée "contrat de travail" et contresignée par X._, les dispositions du "contrat de représentation" ont été précisées en tant qu'il s'éteignait automatiquement le 31 décembre 2006 et ne pouvait être résilié avant cette date que pour des justes motifs au sens de l'art. 337 CO. Par courrier du 7 décembre 2001 reçu par X._ et A._ SA le 10 du même mois, la banque a résilié avec effet immédiat le contrat de travail du 8 août 2000 et le "contrat de représentation" du 12 avril 2000, étant précisé qu'elle déclarait s'engager à honorer ses obligations découlant desdits contrats jusqu'à leur échéance contractuelle, soit le 31 décembre 2006. De même, la banque a résilié avec effet immédiat le "contrat de collaboration" du 12 avril 2000 et le "memorandum", la banque déclarant s'engager à verser les rétrocessions dues jusqu'alors. En outre, selon ledit courrier, le contrat de vente des actions de E._ restait en vigueur. A l'appui de résiliations, la banque se prévalait des difficultés dans l'exécution desdits contrats, notamment les risques de violation du secret bancaire en raison du comportement de X._. Par courrier du 7 décembre 2001 reçu par X._ et A._ SA le 10 du même mois, la banque a résilié avec effet immédiat le contrat de travail du 8 août 2000 et le "contrat de représentation" du 12 avril 2000, étant précisé qu'elle déclarait s'engager à honorer ses obligations découlant desdits contrats jusqu'à leur échéance contractuelle, soit le 31 décembre 2006. De même, la banque a résilié avec effet immédiat le "contrat de collaboration" du 12 avril 2000 et le "memorandum", la banque déclarant s'engager à verser les rétrocessions dues jusqu'alors. En outre, selon ledit courrier, le contrat de vente des actions de E._ restait en vigueur. A l'appui de résiliations, la banque se prévalait des difficultés dans l'exécution desdits contrats, notamment les risques de violation du secret bancaire en raison du comportement de X._. B. Par demande du 26 septembre 2002, X._ et A._ SA ont assigné la banque devant le Tribunal de première instance du canton de Genève. Ils ont conclu à la condamnation de celle-ci à payer à A._ SA les sommes de 9'406 fr. 36 avec intérêt à 5% l'an dès le 10 décembre 2001 (soit 1'316 fr. 25 comme solde de rémunération pour un compte ancien et 8'090 fr. 10 en paiement du solde des rétrocessions relatives à un compte joint), 77'968 fr. 80 avec intérêt à 5% l'an dès le 30 juin 2001 (solde des rémunérations relatives aux fonds nouveaux pour l'année 2000), 77'968 fr. 80 avec intérêt à 5% l'an dès le 31 décembre 2001 (idem), 10'155 fr. 70 avec intérêt à 5% l'an dès le 30 juin 2002 (solde des rémunérations relatives aux fonds nouveaux pour l'année 2001), 10'155 fr. 70 avec intérêt à 5% l'an dès le 31 décembre 2002 (idem) et 4'885'703 fr. avec intérêt à 5% l'an dès le 10 décembre 2001 (rémunération qui aurait été due jusqu'au 31 décembre 2006) et à X._ la somme de 500'000 fr. avec intérêt à 5% l'an dès le 10 décembre 2001 (réparation du préjudice que lui aurait causé la banque en le dénigrant). Par jugement du 6 mars 2003, le Tribunal de première instance du canton de Genève s'est déclaré incompétent à raison de la matière en ce qui concerne les prétentions de X._ contre la banque, considérant qu'ils étaient liés par un contrat de travail et, par jugement du 18 décembre 2003, il a condamné la banque à payer à A._ SA les sommes de 1'316 fr. avec intérêt à 5% l'an dès le 10 décembre 2001, sous déduction de 1'541 fr. versés le 5 septembre 2003 (ch. 1), 8'090 fr. 10 avec intérêt à 5% l'an dès le 10 décembre 2001 (ch. 2), 74'084 fr. 90 avec intérêt à 5% l'an dès le 30 juin 2001 (ch. 3), 74'084 fr. 90 avec intérêt à 5% l'an dès le 31 décembre 2001 (ch. 4), 10'155 fr. 70 avec intérêt à 5% l'an dès le 30 juin 2002 (ch. 5) et 10'155 fr. 70 avec intérêt à 5% l'an dès le 31 décembre 2002 (ch. 6). A._ SA a été condamnée à payer à la banque les quatre cinquièmes des dépens comprenant une indemnité de procédure entière de 50'000 fr. (ch. 7). Enfin, le Tribunal a débouté les parties de toutes autres conclusions (ch. 8). Statuant sur appel de A._ SA et appel incident de la banque par arrêt du 8 octobre 2004, la Chambre civile de la Cour de justice du canton de Genève a confirmé la jugement du Tribunal de première instance du 18 décembre 2003. Elle a notamment considéré qu'en l'espèce, il n'existait pas d'indices concourant à établir la volonté interne des parties au moment de la conclusion du contrat du 12 avril 2000 et qu'il seyait ainsi de recourir à l'interprétation selon le principe de la confiance. Elle est parvenue à la conclusion que le "contrat de collaboration" entre les parties était un contrat de coopération entre un gérant de fortune indépendant, en l'occurrence une personne morale, et une banque, soumis aux règles du mandat. L'art. 404 al. 1 CO, étant de droit impératif et s'appliquant à tous les mandats, onéreux ou gratuits, typiques ou atypiques, régissait également la fin du "contrat de collaboration" conclu par les parties. Il s'ensuivait que la banque était parfaitement fondée à résilier le contrat avec effet immédiat, de sorte que A._ SA n'avait droit à aucune indemnité correspondant à ce qu'elle aurait gagné du 10 décembre 2001 au 31 décembre 2006. Statuant sur appel de A._ SA et appel incident de la banque par arrêt du 8 octobre 2004, la Chambre civile de la Cour de justice du canton de Genève a confirmé la jugement du Tribunal de première instance du 18 décembre 2003. Elle a notamment considéré qu'en l'espèce, il n'existait pas d'indices concourant à établir la volonté interne des parties au moment de la conclusion du contrat du 12 avril 2000 et qu'il seyait ainsi de recourir à l'interprétation selon le principe de la confiance. Elle est parvenue à la conclusion que le "contrat de collaboration" entre les parties était un contrat de coopération entre un gérant de fortune indépendant, en l'occurrence une personne morale, et une banque, soumis aux règles du mandat. L'art. 404 al. 1 CO, étant de droit impératif et s'appliquant à tous les mandats, onéreux ou gratuits, typiques ou atypiques, régissait également la fin du "contrat de collaboration" conclu par les parties. Il s'ensuivait que la banque était parfaitement fondée à résilier le contrat avec effet immédiat, de sorte que A._ SA n'avait droit à aucune indemnité correspondant à ce qu'elle aurait gagné du 10 décembre 2001 au 31 décembre 2006. C. A._ SA (la demanderesse) interjette un recours en réforme au Tribunal fédéral. Elle conclut principalement à la réforme de l'arrêt du 8 octobre 2004 en ce qu'il confirme les chiffres 7 et 8 du dispositif du jugement du 18 décembre 2003, à la confirmation de celui-là en ce qu'il confirme les chiffres 1 à 6 du dispositif de celui-ci et à la condamnation de la banque à lui payer les sommes de 3'883 fr. 90 avec intérêt à 5% l'an dès le 30 juin 2001 (+TVA), 3'883 fr. 90 avec intérêt à 5% l'an dès le 31 décembre 2001 (+TVA) et 4'885'703 fr. avec intérêt à 5% l'an dès le 10 décembre 2001 (+TVA), subsidiairement à l'annulation de l'arrêt du 8 octobre 2004 et au renvoi de la cause à l'autorité cantonale pour nouvel examen et, en tout état de cause, au déboutement de la banque de toutes ses conclusions, le tout avec suite de dépens de la procédure cantonale et de l'instance fédérale. La banque (la défenderesse) propose le rejet du recours, avec suite de dépens. Parallèlement à son recours en réforme, A._ SA a formé un recours de droit public, qui a été rejeté dans la mesure où il était recevable par arrêt de ce jour. 