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

Disassembly:
push ebp
mov ebp, esp
cmp dword [ebp + 0xc], 1
jne 0x1000144c
push ebx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp + 0xc]
push edi
push eax
push 0x40
push 5
push 0x4fe462
mov dword [ebp + 0xc], 0
call esi
mov edi, dword [sym.imp.KERNEL32.dll_FlushInstructionCache]
mov ebx, dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
test eax, eax
je 0x1000107f
mov eax, dword [ebp + 0xc]
mov ecx, 0x4fe462
or eax, 0x80000000
mov edx, 5
push 0
push eax
mov dword [ecx], 0x90909090
mov byte [ecx + 4], 0x90
call fcn.10001460
add esp, 8
push 5
push 0x4fe462
call ebx
push eax
call edi
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push 0x40
push 5
push 0x5383d5
call esi
test eax, eax
je 0x100010cc
mov eax, dword [ebp + 0xc]
mov ecx, 0x5383d5
or eax, 0x80000000
mov edx, 5
push 0
push eax
mov dword [ecx], 0x90909090
mov byte [ecx + 4], 0x90
call fcn.10001460
add esp, 8
push 5
push 0x5383d5
call ebx
push eax
call edi
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push 0x40
push 5
push 0x52e881
call esi
test eax, eax
je 0x10001119
mov eax, dword [ebp + 0xc]
mov ecx, 0x52e881
or eax, 0x80000000
mov edx, 5
push 0
push eax
mov dword [ecx], 0x90909090
mov byte [ecx + 4], 0x90
call fcn.10001460
add esp, 8
push 5
push 0x52e881
call ebx
push eax
call edi
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push 0x40
push 4
push 0x725e84
call esi
test eax, eax
je 0x10001162
mov eax, dword [ebp + 0xc]
mov ecx, 0x725e84
or eax, 0x80000000
mov edx, 4
push 0
push eax
mov dword [ecx], section..text
call fcn.10001460
add esp, 8
push 4
push 0x725e84
call ebx
push eax
call edi
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push 0x40
push 4
push 0x725e8c
call esi
test eax, eax
je 0x100011ab
mov eax, dword [ebp + 0xc]
mov ecx, 0x725e8c
or eax, 0x80000000
mov edx, 4
push 0
push eax
mov dword [ecx], section..text
call fcn.10001460
add esp, 8
push 4
push 0x725e8c
call ebx
push eax
call edi
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push 0x40
push 4
push 0x725e94
call esi
test eax, eax
je 0x100011f4
mov eax, dword [ebp + 0xc]
mov ecx, 0x725e94
or eax, 0x80000000
mov edx, 4
push 0
push eax
mov dword [ecx], section..text
call fcn.10001460
add esp, 8
push 4
push 0x725e94
call ebx
push eax
call edi
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push 0x40
push 4
push 0x725e9c
call esi
test eax, eax
je 0x1000123d
mov eax, dword [ebp + 0xc]
mov ecx, 0x725e9c
or eax, 0x80000000
mov edx, 4
push 0
push eax
mov dword [ecx], section..text
call fcn.10001460
add esp, 8
push 4
push 0x725e9c
call ebx
push eax
call edi
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push 0x40
push 4
push 0x725ea4
call esi
test eax, eax
je 0x10001286
mov eax, dword [ebp + 0xc]
mov ecx, 0x725ea4
or eax, 0x80000000
mov edx, 4
push 0
push eax
mov dword [ecx], section..text
call fcn.10001460
add esp, 8
push 4
push 0x725ea4
call ebx
push eax
call edi
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push 0x40
push 4
push 0x725ebc
call esi
test eax, eax
je 0x100012cf
mov eax, dword [ebp + 0xc]
mov ecx, 0x725ebc
or eax, 0x80000000
mov edx, 4
push 0
push eax
mov dword [ecx], section..text
call fcn.10001460
add esp, 8
push 4
push 0x725ebc
call ebx
push eax
call edi
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push 0x40
push 5
push 0x69aa54
call esi
test eax, eax
je 0x1000131c
mov eax, dword [ebp + 0xc]
mov ecx, 0x69aa54
or eax, 0x80000000
mov edx, 5
push 0
push eax
mov dword [ecx], 0x90909090
mov byte [ecx + 4], 0x90
call fcn.10001460
add esp, 8
push 5
push 0x69aa54
call ebx
push eax
call edi
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push 0x40
push 4
push 0x725e2c
call esi
test eax, eax
je 0x10001365
mov eax, dword [ebp + 0xc]
mov ecx, 0x725e2c
or eax, 0x80000000
mov edx, 4
push 0
push eax
mov dword [ecx], section..text
call fcn.10001460
add esp, 8
push 4
push 0x725e2c
call ebx
push eax
call edi
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push 0x40
push 4
push 0x725e34
call esi
test eax, eax
je 0x100013ae
mov eax, dword [ebp + 0xc]
mov ecx, 0x725e34
or eax, 0x80000000
mov edx, 4
push 0
push eax
mov dword [ecx], section..text
call fcn.10001460
add esp, 8
push 4
push 0x725e34
call ebx
push eax
call edi
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push 0x40
push 4
push 0x725e3c
call esi
test eax, eax
je 0x100013f7
mov eax, dword [ebp + 0xc]
mov ecx, 0x725e3c
or eax, 0x80000000
mov edx, 4
push 0
push eax
mov dword [ecx], section..text
call fcn.10001460
add esp, 8
push 4
push 0x725e3c
call ebx
push eax
call edi
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push 0x40
push 4
push 0x725e44
call esi
test eax, eax
je 0x10001440
mov eax, dword [ebp + 0xc]
mov ecx, 0x725e44
or eax, 0x80000000
mov edx, 4
push 0
push eax
mov dword [ecx], section..text
call fcn.10001460
add esp, 8
push 4
push 0x725e44
call ebx
push eax
call edi
pop edi
pop esi
mov eax, 1
pop ebx
pop ebp
ret 0xc
mov eax, 1
pop ebp
ret 0xc