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

Disassembly:
push ebp
mov ebp, esp
push ecx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
push edi
mov edi, dword [0x10050d7c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push edi
call esi
test eax, eax
je 0x10001716
mov eax, dword [ebp - 4]
mov cl, byte [0x10043054]
lea edx, [ebp - 4]
push edx
push eax
push 1
push edi
mov byte [edi], cl
call esi
mov edi, dword [0x100515a8]
lea ecx, [ebp - 4]
push ecx
push 0x40
push 1
push edi
call esi
test eax, eax
je 0x10001740
mov ecx, dword [ebp - 4]
mov dl, byte [0x10043054]
lea eax, [ebp - 4]
push eax
push ecx
push 1
push edi
mov byte [edi], dl
call esi
mov edi, dword [0x1005164c]
lea edx, [ebp - 4]
push edx
push 0x40
push 1
push edi
call esi
test eax, eax
je 0x10001769
mov edx, dword [ebp - 4]
mov al, byte [0x10043054]
lea ecx, [ebp - 4]
push ecx
push edx
push 1
push edi
mov byte [edi], al
call esi
mov edi, dword [0x1005165c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push edi
call esi
test eax, eax
je 0x10001793
mov eax, dword [ebp - 4]
mov cl, byte [0x10043054]
lea edx, [ebp - 4]
push edx
push eax
push 1
push edi
mov byte [edi], cl
call esi
mov edi, dword [0x10050564]
lea ecx, [ebp - 4]
push ecx
push 0x40
push 1
push edi
call esi
test eax, eax
je 0x100017bd
mov ecx, dword [ebp - 4]
mov dl, byte [0x10043054]
lea eax, [ebp - 4]
push eax
push ecx
push 1
push edi
mov byte [edi], dl
call esi
mov edi, dword [0x100515d4]
lea edx, [ebp - 4]
push edx
push 0x40
push 1
push edi
call esi
test eax, eax
je 0x100017e6
mov edx, dword [ebp - 4]
mov al, byte [0x10043054]
lea ecx, [ebp - 4]
push ecx
push edx
push 1
push edi
mov byte [edi], al
call esi
mov edi, dword [0x10051610]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push edi
call esi
test eax, eax
je 0x10001810
mov eax, dword [ebp - 4]
mov cl, byte [0x10043054]
lea edx, [ebp - 4]
push edx
push eax
push 1
push edi
mov byte [edi], cl
call esi
lea ecx, [ebp - 4]
push ecx
push 0x40
push 5
push 0x422593
call esi
test eax, eax
je 0x1000184a
mov edx, dword [0x10043058]
mov eax, 0x422593
mov dword [eax], edx
mov cl, byte [0x1004305c]
lea edx, [ebp - 4]
push edx
mov byte [eax + 4], cl
mov eax, dword [ebp - 4]
push eax
push 5
push 0x422593
call esi
mov edi, dword [0x10050550]
lea ecx, [ebp - 4]
push ecx
push 0x40
push 1
push edi
call esi
test eax, eax
je 0x10001874
mov ecx, dword [ebp - 4]
mov dl, byte [0x10043054]
lea eax, [ebp - 4]
push eax
push ecx
push 1
push edi
mov byte [edi], dl
call esi
mov edi, dword [0x10050d94]
lea edx, [ebp - 4]
push edx
push 0x40
push 1
push edi
call esi
test eax, eax
je 0x1000189d
mov edx, dword [ebp - 4]
mov al, byte [0x10043054]
lea ecx, [ebp - 4]
push ecx
push edx
push 1
push edi
mov byte [edi], al
call esi
mov edi, dword [0x100515fc]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push edi
call esi
test eax, eax
je 0x100018c7
mov eax, dword [ebp - 4]
mov cl, byte [0x10043054]
lea edx, [ebp - 4]
push edx
push eax
push 1
push edi
mov byte [edi], cl
call esi
mov edi, dword [0x1005161c]
lea ecx, [ebp - 4]
push ecx
push 0x40
push 1
push edi
call esi
test eax, eax
je 0x100018f1
mov ecx, dword [ebp - 4]
mov dl, byte [0x10043054]
lea eax, [ebp - 4]
push eax
push ecx
push 1
push edi
mov byte [edi], dl
call esi
lea edx, [ebp - 4]
push edx
push 0x40
push 5
push 0x1a70878
call esi
test eax, eax
je 0x1000192b
mov ecx, dword [0x10043060]
mov eax, 0x1a70878
mov dword [eax], ecx
mov dl, byte [0x10043064]
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 4]
push eax
push ecx
push 5
push 0x1a70878
call esi
pop edi
mov eax, 1
pop esi
mov esp, ebp
pop ebp
ret