Enterprise Architect from Sparx Systems can reverse-engineer database schemas, XML schemas, source code in C#, Java and half a dozen additional languages, as well as byte and binary code. It can even generate sequence diagrams after being attached to a running process like a debugger.
The license is commercial, but the price is pretty low (depending on which edition you want) and there are academic discounts. You can also download a fully-featured 30-day evaluation license, so if you only need to do this once you won't have to pay anything.
You should be aware, however, that there are no standardized UML profiles for the different programming languages; the exact representation of various code constructs is tool-specific. In other words, whether you will get compositions, aggregations, associations etc for a given code base depends on which tool you use.