el problema de system es q intenta meter el argumento como si estuvieramos escribiendolo, y hay caracteres q no se pueden pasar por parametros cuando escribimos en una ventana, ej \x00.
Lo estuve probando y cambie vuln1.exe por "echo " para ver q hacia. y resulta q tira error me intenta ejecutar algo cuando solo debe mostrar. Luego sake el offset y le puse letras comunes y ahi si me muestra el texto en patanlla.
Es decir, la shellcode no tiene ningun caracter q "moleste", pero el offset si. Segun mis pruebas el caractere q molesta para la funcion system es el "\x7c", ese pude ser tu problema ya q mi offset el tuyo y todos van a tener 7C.
Creo q con system no se puede.
Vas a tener q intentar con WinExec, o con execv o con otro :p.