Function at 0x10015160
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea eax, [ebp - 0xc]
push esi
push edi
push eax
push 1
lea eax, [ebp - 4]
mov byte [ebp - 4], 0xe8
push eax
push 0x4d2047
call ebx
mov edi, dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
push eax
call edi
mov esi, 0x1000fff0
lea eax, [esi - 0x4d204c]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0xc]
push eax
push 4
lea eax, [ebp - 0x10]
push eax
push 0x4d2048
call ebx
push eax
call edi
lea eax, [ebp - 0x10]
mov byte [ebp - 4], 0xe8
push eax
push 1
lea eax, [ebp - 4]
push eax
push 0x4c87cd
call ebx
push eax
call edi
lea eax, [esi - 0x4c87d2]
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push 0x4c87ce
call ebx
push eax
call edi
lea eax, [ebp - 0x10]
mov byte [ebp - 4], 0xe8
push eax
push 1
lea eax, [ebp - 4]
push eax
push 0x4d207b
call ebx
push eax
call edi
lea eax, [esi - 0x4d2080]
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push 0x4d207c
call ebx
push eax
call edi
lea eax, [ebp - 0x10]
mov byte [ebp - 4], 0xe8
push eax
push 1
lea eax, [ebp - 4]
push eax
push 0x556792
call ebx
push eax
call edi
lea eax, [esi - 0x556797]
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push 0x556793
call ebx
push eax
call edi
lea eax, [ebp - 0x10]
mov byte [ebp - 4], 0xe8
push eax
push 1
lea eax, [ebp - 4]
push eax
push 0x5567ce
call ebx
push eax
call edi
lea eax, [esi - 0x5567d3]
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push 0x5567cf
call ebx
push eax
call edi
lea eax, [ebp - 0x10]
mov byte [ebp - 4], 0xe8
push eax
push 1
lea eax, [ebp - 4]
push eax
push 0x557b86
call ebx
push eax
call edi
lea eax, [esi - 0x557b8b]
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push 0x557b87
call ebx
push eax
call edi
lea eax, [ebp - 0x10]
mov byte [ebp - 4], 0xe8
push eax
push 1
lea eax, [ebp - 4]
push eax
push 0x557bf5
call ebx
push eax
call edi
lea eax, [esi - 0x557bfa]
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push 0x557bf6
call ebx
push eax
call edi
lea eax, [ebp - 0x10]
mov byte [ebp - 4], 0xe8
push eax
push 1
lea eax, [ebp - 4]
push eax
push 0x4c7d15
call ebx
push eax
call edi
lea eax, [ebp - 0x10]
sub esi, 0x4c7d1a
push eax
push 4
lea eax, [ebp - 0xc]
mov dword [ebp - 0xc], esi
push eax
push 0x4c7d16
call ebx
push eax
call edi
lea eax, [ebp - 0x10]
mov byte [ebp - 4], 0xe9
push eax
push 1
lea eax, [ebp - 4]
push eax
push 0x5e6edd
call ebx
push eax
call edi
mov eax, 0x1000ffc0
sub eax, 0x5e6ee2
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push 0x5e6ede
call ebx
push eax
call edi
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 0x14]
push eax
push 0x40
push 1
push 0x5e6ee2
call esi
mov eax, 0x5e6ee2
mov byte [eax], 0x90
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 0x14]
push 1
push 0x5e6ee2
call esi
lea eax, [ebp - 0x10]
mov byte [ebp - 4], 0xe9
push eax
push 1
lea eax, [ebp - 4]
push eax
push 0x520db9
call ebx
push eax
call edi
mov eax, 0x10010570
sub eax, 0x520dbe
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push 0x520dba
call ebx
push eax
call edi
push 0
push 1
lea eax, [ebp - 4]
mov byte [ebp - 4], 0x26
push eax
push 0x5e65aa
call ebx
push eax
call edi
mov byte [ebp - 4], 0x26
push 0
push 1
lea eax, [ebp - 4]
push eax
push 0x5e65b2
call ebx
push eax
call edi
lea eax, [ebp - 0xc]
mov byte [ebp - 4], 0xf
push eax
push 1
lea eax, [ebp - 4]
mov byte [ebp - 5], 0x87
push eax
push 0x5e6600
call ebx
push eax
call edi
lea eax, [ebp - 0xc]
push eax
push 1
lea eax, [ebp - 5]
push eax
push 0x5e6601
call ebx
push eax
call edi
mov eax, 0x100106d0
sub eax, 0x5e6606
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0xc]
push eax
push 4
lea eax, [ebp - 0x10]
push eax
push 0x5e6602
call ebx
push eax
call edi
lea eax, [ebp - 0x10]
mov byte [ebp - 5], 0xe9
push eax
push 1
lea eax, [ebp - 5]
push eax
push 0x51b15b
call ebx
push eax
call edi
mov eax, 0x100104b0
sub eax, 0x51b160
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push 0x51b15c
call ebx
push eax
call edi
lea eax, [ebp - 0x10]
mov byte [ebp - 5], 0xe9
push eax
push 1
lea eax, [ebp - 5]
push eax
push 0x523e5a
call ebx
push eax
call edi
mov eax, 0x100104f0
sub eax, 0x523e5f
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push 0x523e5b
call ebx
push eax
call edi
lea eax, [ebp - 0xc]
mov byte [ebp - 5], 0xf
push eax
push 1
lea eax, [ebp - 5]
mov byte [ebp - 4], 0x8e
push eax
push 0x520af7
call ebx
push eax
call edi
lea eax, [ebp - 0xc]
push eax
push 1
lea eax, [ebp - 4]
push eax
push 0x520af8
call ebx
push eax
call edi
mov eax, 0x1000ffe0
sub eax, 0x520afd
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0xc]
push eax
push 4
lea eax, [ebp - 0x10]
push eax
push 0x520af9
call ebx
push eax
call edi
lea eax, [ebp - 0x10]
mov byte [ebp - 5], 0xe8
push eax
push 1
lea eax, [ebp - 5]
push eax
push 0x52107d
call ebx
push eax
call edi
mov eax, 0x100105e0
sub eax, 0x521082
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push 0x52107e
call ebx
push eax
call edi
lea eax, [ebp - 0x10]
mov byte [ebp - 5], 0xe9
push eax
push 1
lea eax, [ebp - 5]
push eax
push 0x520e72
call ebx
push eax
call edi
mov eax, 0x10010180
sub eax, 0x520e77
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push 0x520e73
call ebx
push eax
call edi
lea eax, [ebp - 0x14]
push eax
push 0x40
push 1
push 0x520e77
call esi
mov eax, 0x520e77
mov byte [eax], 0x90
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 0x14]
push 1
push 0x520e77
call esi
lea eax, [ebp - 0x10]
mov byte [ebp - 5], 0xe8
push eax
push 1
lea eax, [ebp - 5]
push eax
push 0x520fc8
call ebx
push eax
call edi
mov eax, 0x100108b0
sub eax, 0x520fcd
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push 0x520fc9
call ebx
push eax
call edi
lea eax, [ebp - 0x10]
mov byte [ebp - 5], 0xe9
push eax
push 1
lea eax, [ebp - 5]
push eax
push 0x520cdd
call ebx
push eax
call edi
mov eax, 0x10010840
sub eax, 0x520ce2
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push 0x520cde
call ebx
push eax
call edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret