A loose implementation of Arvind Narayanan and Vitaly Shmatikov's Fast Dictionary Attacks on Passwords Using Time-Space Tradeoff.
Individual letter frequencies are generated from the Concise Oxford Dictionary (9th edition, 1995) by Barry Keating and available here.
Words are from https://github.com/dwyl/english-words
For fastest results, use pypy.