keysArrayHandle[counter] = malloc(sizeof(char) * length);
returns a pointer to keysArrayHandle[counter]
.
Then you are using *(keysArrayHandle[counter])
instead of keysArrayHandle[counter]
in memcpy.
maybe you should
*(keysArrayHandle[counter]) = malloc(sizeof(char) * length);
valter