Bueno, hoy haciendo una cosilla con éste code me di cuenta de que cometí algunos errores
. Uno aquí:
miByte=1; //<<<<------ Habrá que inicializara a 1 ese byte no? sino pasan cosas malas xD
//Obtenemos la longitud del nombre de la API
for(int i=0;miByte;i++)
{
szName=i;
LPSTR puntero=ExeBuffer+ITD->u1.Function+2;
puntero+=i;
ReadProcessMemory(hProcess,puntero,&miByte,1,0);
}
Lo cambié ya en el post principal, y hay otro error, pero no lo voy a corregir
.
Está cuando el ejecutable trata de cargar la IAT (voy a ser bueno y voy a marcar la zona donde está), es una metedura de pata bastante gorda así que quien sepa de que va la IAT debería ser quien de arreglarlo, y quien no, demuestra que debe leerse más sobre el tema antes de usar el código
.
Tal y como está sólo carga bien una API por DLL
Saludos