I finally got it. The fib code is a bit off anyways, but to fix the loop, I just needed to PUSH ECX right before my _printf block and POP it back after; It was getting messed with by the C function. Phew :)
crumpet commented: thanks! put me on the right track straight away +1
vegaseat commented: thanks for spending your time on this! +11
sneekula commented: I like your style +6