IN ASSEMLY LANGUAGE MASM! please show output run. Write a program that ask the user to write a string and reverse a string using indirect addressing (may not use the stack - push/pop). The string will be given by the user and be up to 64 characters long. INCLUDE Irvine32.incINCLUDE macros.inc MAX = 64 .data source BYTE MAX DUP('#'),0 destination BYTE LENGTHOF source DUP('*'),0 actual_length DWORD ? ask BYTE \"Enter a String: \",0 .code main proc ; ask user for input mov edx, OFFSET ask call WriteString ; read string from keyboard mov edx, OFFSET source ; where to put string from keyboard mov ecx, LENGTHOF source ; max num char to get (dont' over fill) call ReadString ; get string mov actual_length, eax ; how long is the string call WriteString mov esi, OFFSET source mov ecx, SIZEOF source call ShowBuffer exit main ENDP