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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
push edi
push 0x10084310
push 0x60576a
push 0xe9
call fcn.10099d10
push 0x10084350
push 0x7d1e43
push 0xe9
call fcn.10099d10
push 0x100843a0
push 0x7d1ebe
push 0xe9
call fcn.10099d10
push 0x100843f0
push 0x916be8
push 0xe9
call fcn.10099d10
push 0x10084560
push 0x592731
push 0xe9
call fcn.10099d10
push 0x100845a0
push 0x56ca92
push 0xe9
call fcn.10099d10
add esp, 0x48
push 0x100845f0
push 0x5bfdee
push 0xe9
call fcn.10099d10
push 0x10084620
push 0x6058e5
push 0xe9
call fcn.10099d10
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov ebx, fcn.10084660
add esp, 0x18
mov byte [ebp - 0x10], 0xe8
mov dword [ebp - 4], 0
lea eax, [ebx - 0x4b59d0]
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x4b59cb
call esi
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x1008342e
mov eax, dword [ebp - 0x10]
mov ecx, 0x4b59cb
mov dword [ecx], eax
mov al, byte [ebp - 0xc]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x10083430
call edi
lea eax, [ebx - 0x635dcb]
mov byte [ebp - 0x10], 0xe8
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x635dc6
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x1008347e
mov eax, dword [ebp - 0x10]
mov ecx, 0x635dc6
mov dword [ecx], eax
mov al, byte [ebp - 0xc]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x10083480
call edi
lea eax, [ebx - 0x639f7c]
mov byte [ebp - 0x10], 0xe8
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x639f77
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100834ce
mov eax, dword [ebp - 0x10]
mov ecx, 0x639f77
mov dword [ecx], eax
mov al, byte [ebp - 0xc]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100834d0
call edi
lea eax, [ebx - 0x63afe9]
mov byte [ebp - 0x10], 0xe8
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x63afe4
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x1008351e
mov eax, dword [ebp - 0x10]
mov ecx, 0x63afe4
mov dword [ecx], eax
mov al, byte [ebp - 0xc]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x10083520
call edi
lea eax, [ebx - 0x63b731]
mov byte [ebp - 0x10], 0xe8
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x63b72c
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x1008356e
mov eax, dword [ebp - 0x10]
mov ecx, 0x63b72c
mov dword [ecx], eax
mov al, byte [ebp - 0xc]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x10083570
call edi
lea eax, [ebp - 4]
mov byte [ebp - 0x10], 0xe8
push eax
push 0x40
push 5
sub ebx, 0x65ce62
mov dword [ebp - 4], 0
push 0x65ce5d
mov dword [ebp - 0xf], ebx
call esi
test eax, eax
je 0x100835be
mov eax, dword [ebp - 0x10]
mov ecx, 0x65ce5d
mov dword [ecx], eax
mov al, byte [ebp - 0xc]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100835c0
call edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret