Matteo Bruni (@Mystral) commented about dlls/d3dx9_36/effect.c:
if (element_count > 1) { WARN("Setting %u elements.\n", element_count);
buffer = HeapAlloc(GetProcessHeap(), 0, const_tbl[op].elem_size * element_count);
buffer = malloc(const_tbl[op].elem_size * element_count);
This one should probably be replaced by a calloc(). Additional upside, you should be able to drop the memset below.