DLL Injection
Process injection allowed us to inject arbitrary shellcode
into a remote process and execute it.
This served us well for shellcode,
but for larger codebases or pre-existing DLLs,
we might want to inject an entire DLL
into a remote process instead of just shellcode.