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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 4]
push esi
push edi
push eax
push 4
push 4
push 0x5b8610
call ebx
lea eax, [ebp - 8]
mov dword [0x5b8610], 0x100081c0
push eax
push dword [ebp - 4]
push 4
push 0x5b8610
call ebx
lea eax, [ebp - 4]
push eax
push 4
push 4
push 0x5b8574
call ebx
lea eax, [ebp - 8]
mov dword [0x5b8574], 0x10008140
push eax
push dword [ebp - 4]
push 4
push 0x5b8574
call ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
call ebx
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtectEx]
mov esi, eax
lea eax, [ebp - 0xc]
push eax
push 4
push 5
push 0x4c6e87
push esi
call edi
lea eax, [ebp - 0x10]
mov byte [0x4c6e87], 0xe8
push eax
mov dword [0x4c6e88], 0xffff2854
push dword [ebp - 0xc]
push 5
push 0x4c6e87
push esi
call edi
call ebx
mov esi, eax
lea eax, [ebp - 0xc]
push eax
push 4
push 4
push 0x5bd9c0
push esi
call edi
lea eax, [ebp - 0x10]
mov dword [0x5bd9c0], 0x10008e70
push eax
push dword [ebp - 0xc]
push 4
push 0x5bd9c0
push esi
call edi
call ebx
mov esi, eax
lea eax, [ebp - 0xc]
push eax
push 4
push 5
push 0x453283
push esi
call edi
mov ecx, 0x10008910
mov byte [0x453283], 0xe8
sub ecx, 0x453288
lea eax, [ebp - 0x10]
mov dword [0x453284], ecx
push eax
push dword [ebp - 0xc]
push 5
push 0x453283
push esi
call edi
call ebx
mov esi, eax
lea eax, [ebp - 0xc]
push eax
push 4
push 5
push 0x45cab6
push esi
call edi
mov ecx, 0x10008200
mov byte [0x45cab6], 0xe8
lea eax, [ebp - 0x10]
sub ecx, 0x45cabb
push eax
mov dword [0x45cab7], ecx
push dword [ebp - 0xc]
push 5
push 0x45cab6
push esi
call edi
lea eax, [ebp - 0xc]
mov esi, 0x10009da0
push eax
mov eax, dword [sym.imp.KERNEL32.dll_VirtualProtect]
sub esi, 0x45a34f
push 0x80
push 4
push 0x45a34b
call eax
mov eax, dword [0x45a34b]
add eax, 0x45a34f
mov dword [0x100135bc], eax
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 0xc]
mov dword [0x45a34b], esi
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
push 5
push 0x45a34b
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 0x238000
push 0x401000
call esi
mov eax, 0xbbf2
mov dword [0x100135b8], 0x522a90
mov word [0x4ab9da], ax
mov ecx, 0x90909090
mov byte [0x4ab9e0], 0x90
mov eax, 0x6c64
mov dword [0x50080c], 0xfc8a448b
mov byte [0x500810], 0x90
mov dword [0x500944], 0xb7157e9
mov dword [0x500948], 0x90909000
mov byte [0x50094c], 0x90
mov word [0x500968], ax
mov eax, 0x4ab9de
mov dword [0x500972], 0x908a0489
mov dword [0x5b7aa0], 0xbd048d3e
mov dword [0x5b7aa8], 0x9f64e850
mov dword [0x5b7aac], 0x9ae9fffb
mov dword [0x5b7ab0], 0xfff48e
mov byte [0x50bca4], 0xeb
mov byte [0x415fcd], 5
mov byte [0x41695c], 5
push 0x28
mov word [eax], cx
push 1
mov byte [eax + 2], cl
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov dword [0x100135c4], eax
add esp, 8
mov dword [eax + 0x14], 0x100090b0
call ebx
mov esi, eax
lea eax, [ebp - 0xc]
push eax
push 4
push 5
push 0x4f5675
push esi
call edi
mov edi, 0x100091f0
mov byte [0x4f5675], 0xe8
lea eax, [edi - 0x4f567a]
mov dword [0x4f5676], eax
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 0xc]
push 5
push 0x4f5675
push esi
call dword [sym.imp.KERNEL32.dll_VirtualProtectEx]
call ebx
mov esi, eax
lea eax, [ebp - 0xc]
push eax
push 4
push 5
push 0x4f573e
push esi
call dword [sym.imp.KERNEL32.dll_VirtualProtectEx]
lea eax, [ebp - 0x10]
mov byte [0x4f573e], 0xe8
push eax
lea ecx, [edi - 0x4f5743]
mov dword [0x4f573f], ecx
push dword [ebp - 0xc]
push 5
push 0x4f573e
push esi
call dword [sym.imp.KERNEL32.dll_VirtualProtectEx]
call ebx
mov esi, eax
lea eax, [ebp - 0xc]
push eax
push 4
push 5
push 0x4f5875
push esi
call dword [sym.imp.KERNEL32.dll_VirtualProtectEx]
lea eax, [ebp - 0x10]
mov byte [0x4f5875], 0xe8
push eax
lea ecx, [edi - 0x4f587a]
mov dword [0x4f5876], ecx
push dword [ebp - 0xc]
push 5
push 0x4f5875
push esi
call dword [sym.imp.KERNEL32.dll_VirtualProtectEx]
call ebx
mov ebx, dword [sym.imp.KERNEL32.dll_VirtualProtectEx]
mov esi, eax
lea eax, [ebp - 0xc]
push eax
push 4
push 5
push 0x4f5922
push esi
call ebx
lea eax, [ebp - 0x10]
mov byte [0x4f5922], 0xe8
push eax
sub edi, 0x4f5927
mov dword [0x4f5923], edi
push dword [ebp - 0xc]
push 5
push 0x4f5922
push esi
call ebx
mov eax, 0xffd0
mov word [0x4f57d8], ax
mov word [0x4f5912], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov eax, dword [sym.imp.KERNEL32.dll_VirtualProtect]
push 0x238000
push 0x401000
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret