How can a user-input password be used to generate a natural-like dictionary corpus?
If I had such problem, I would operate as follows:  


Obtain a list of 8192 different words. Then the $x$-th word of this list is denoted by L[x] (where $x$ is a natural number in decimal).  
Given any bitstring (hash of the password), split it into 13-bit parts. Denote an $i$-th part by N_i.  
The sequence of words is L[N_1] L[N_2] L[N_3] ....  


For example, SHA3-512 online web app shows that SHA-3-512("MyPassword") starts with the following bytes:  

35 c6 36 f4 40 b7 d7 40 7a ...


Converting this hash to a binary form (byte after byte) and splitting into 13-bit parts yields the sequence  

0011010111000 1100011011011 1101000100000 ...


Converting each part from binary to decimal yields  

L[1720] L[6363] L[6688] ...


If the list is taken from Wiktionary:Frequency_lists/PG/2006/04/1-10000, the resulting sequence of English words would be  

admit billion lists ...


if we assume that 13 zero bits correspond to the last word of the list. If we assume that 13 zero bits correspond to the first word of the list and 13 set bits correspond to the last word of the list, then the resulting sequence of English words would be  

supply shorter gallop ...