Конечно возможно.
У каждого процесса свое виртуальное адресное пространство, виртуальное означает что по двум одинаковым адресам у разных процессов могут быть разные данные.
При инжекте длл, ты провоцируешь процесс загрузить чит как библиотеку, при этом виндовый загрузчик проекцирует дллку в память процесса.
Таким образом дллка внутри получает полный доступ к памяти процесса, и она может совершать любые операции чтения и записи как будто это его адресное пространство.
Но стоит еще учитывать что сам экзешник процесса может быть спроецирован по любой базе из-за ASLR, поэтому сперва найди его базовый адрес (GetModuleHandleA(0)) и прибавляй к нему нужные смещения.