unsigned int* PUINT = static_cast<unsigned int*>(static_cast<void *>(PUCHAR))
なら通る