DESIGN AN IA-32 ASSEMBLY LANGUAGE PROGRAM TO ENTER 10 DOUBLE
WORD INTEGERS, CHANGE BITS 3 AND 4 IN BYTE 2 OF EACH INTEGER
TO 10, AND PRINT THE RESULT IN BINARY STRING.

People are telling me that I'm missing something, Can someone help me what am i missing?? it seems that i did everything that is asked for.

Code:
include irvine32.inc

makeChange proto, baseAddr:ptr dword, count:dword
printBinary proto, baseAddr:ptr dword, count:dword

.data
numbers    sdword    1234,-1234,3456,-3456,12345

.code
begin:
invoke    makeChaange, addr numbers, lengthof numbers
invoke    printBinary, addr numbers, lengthof numbers





makeChange proc, baseAddr:ptr dword, count:dword
pushad

mov    esi,baseAddr
mov    ecx,count

next:
mov    ah,byte ptr [esi+2]    ;byte 2 of each dword
and    ah,11100111b        ;clear bits 3 and 4
or    ah,00010000b        ;change bits 3 and 4 to 10
mov    byte ptr [esi+2],ah

add    esi,4                ;advance to next dword
loop    next

popad                    ;restore all the dword registers
ret
makeChange endp

printBinary proc, baseAddr:ptr dword, count:dword


printBinary    endp