Please don't take offense to this, but when a coder is proud of the complexity of his/her code (like your sentence says "wow this code is sooo complex"), most of the time it is a sign of a really bad design.
I say this because it's what I have experienced in my 14 years of professional programming. It's easy to write code that is complex and more difficult to write code that is easy to read, understand, and maintain.
You don't want to be proud of complex code; it means you have not succeeded in making it easy to understand, it means you still have a lot to learn programming-wise.
There is a bunch of software for code quality, qualimetry, that measures complexity of functions, classes, modules. But contrary to what you think, the more parts are awarded red or high complexity scores, the more they need to be re-written.
Personally I focus on Mc Cabe complexity < 10, and that's already a high complexity, and function length of less than 40 lines of code.
It's incredible the pace at which functions are guilty of becoming non-maintainable due to their complexity. And if you use a complex function with another complex function, you end with something even more complex, non-maintainable, and prone to error when modified. And that grows exponentially if you have even more complex layers on complex layers. In software engineering we call it technical debt.
Maybe you should invest in one of those software metrics application. Google "Software Metrics" and the languages of your choice.
If you want it to be maintainable code, rewrite it so that it is not complex; don't be too proud or attached to your code.
Remember, code is written once, but it is read hundred of times.