aboutsummaryrefslogtreecommitdiff
path: root/CodeExecution/Invoke-ReflectivePEInjection_Resources/Shellcode/x86/CallDllMain.asm
diff options
context:
space:
mode:
Diffstat (limited to 'CodeExecution/Invoke-ReflectivePEInjection_Resources/Shellcode/x86/CallDllMain.asm')
-rw-r--r--CodeExecution/Invoke-ReflectivePEInjection_Resources/Shellcode/x86/CallDllMain.asm23
1 files changed, 23 insertions, 0 deletions
diff --git a/CodeExecution/Invoke-ReflectivePEInjection_Resources/Shellcode/x86/CallDllMain.asm b/CodeExecution/Invoke-ReflectivePEInjection_Resources/Shellcode/x86/CallDllMain.asm
new file mode 100644
index 0000000..41b1034
--- /dev/null
+++ b/CodeExecution/Invoke-ReflectivePEInjection_Resources/Shellcode/x86/CallDllMain.asm
@@ -0,0 +1,23 @@
+[SECTION .text]
+global _start
+
+_start:
+ ; Get stack setup
+ push ebx
+ mov ebx, esp
+ and esp, 0xfffffff0
+
+ ; Call DllMain
+ mov ecx, 0x41414141 ; DLLHandle, set by PowerShell
+ mov edx, 0x1 ; PROCESS_ATTACH
+ mov eax, 0x0 ; NULL
+ push eax
+ push edx
+ push ecx
+ mov eax, 0x41414141 ; Address of DllMain, set by PS
+ call eax
+
+ ; Fix stack
+ mov esp, ebx
+ pop ebx
+ ret