
< memcpy((void *)load_addr, data, data_len);
---
> uint8_t *dest = (uint8_t *)load_addr;
> for (size_t i = 0; i < data_len && i < MAX_ALLOWED_SIZE; i++) {
>     dest[i] = ((uint8_t *)data)[i];
> }
> if (data_len > MAX_ALLOWED_SIZE) {
>     ESP_LOGW(TAG, "data truncated to fit buffer");
> }
