To speed up my bignum divisons I need to speed up operation y = x^2 for bigints which are represented as dynamic arrays of unsigned DWORDs. To be clear:
y = x^2
If I understand your algorithm correctly, it seems O(n^2) where n is the number of digits.
O(n^2)
n
Have you looked at Karatsuba Algorithm? It speeds up multiplication using the divide and conquer approach. It may be worth taking a look at.