blackroserugby 0 Newbie Poster

so i am suppose to write the towers of hanoi in MASM and have the directions needed to solve the tower for an inputed number of disks. this is what i have so far

solveHanoi   PROTO,
numDisks:DWORD, post1: DWORD, post2: DWORD, post3: DWORD



INCLUDE Irvine32.inc
.data
messagePrompt		BYTE		"Number of Disks: ",0
input				DWORD		50 DUP(0)
tower1to3			BYTE		"Move disk from post 1 to post 3",0		
tower1to2			BYTE		"Move disk from post 1 to post 2",0
tower2to3			BYTE		"Move disk from post 2 to post 3",0
tower3to1			BYTE		"Move disk from post 3 to post 1",0
tower3to2			BYTE		"Move disk from post 3 to post 1",0
tower2to1			BYTE		"Move disk from post 2 to post 1",0

.code
main PROC
	call promptUser
	call getCommand
	INVOKE   solveHanoi,input,ADDR p1, ADDR p2, ADDR p3

	exit
main ENDP

promptUser	PROC uses edx
mov			edx, OFFSET messagePrompt
call		WriteString
ret
PromptUser	ENDP

getCommand	PROC uses ecx edx
mov			ecx, 10
mov			edx, OFFSET input
call		ReadString
ret
GetCommand	ENDP

solveHanoi   PROC uses edx,numDisks:D WORD, post1:D WORD, post2: DWORD, post3: DWORD
mov   edx, numDisks
dec   edx
cmp   numDisks,0
je	  endHanoi
INVOKE   solveHanoi,edx,post1,post2,post3
INVOKE   printmessage,post1,post3
INVOKE   solveHanoi,edx,post2,post1,post3

endHanoi:
ret

solveHanoi   ENDP

printString    PROC   string: DWORD
mov    edx,string
call   WriteString
ret

printString    ENDP






END main

what do i do from here?