#include <D3DX11tex.h>
#pragma comment(lib, "D3DX11.lib")
в вверх файла
D3DX11_IMAGE_LOAD_INFO info;
ID3DX11ThreadPump* pump{ nullptr };
D3DX11CreateShaderResourceViewFromMemory(pDevice, crackedGuy, sizeof(crackedGuy), &info,
pump, &MenuBG, 0);
запасти это выше в InitImGui();
crackedguy - байты твоего изображения
ImGui::Begin(xorstr_("i like rape children"));
auto pos = ImGui::GetWindowPos();
auto size = ImGui::GetWindowSize();
auto list = ImGui::GetWindowDrawList();
list->AddImage((PVOID)MenuBG, pos, ImVec2(pos.x + size.x, pos.y + size.y));
list->AddRectFilled(pos, ImVec2(pos.x + size.x, pos.y + size.y),ImColor(0.f,0.f,0.f,0.4f));
получится как-то так
байты изображения не кину