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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xac
push ebx
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov ebx, 0xc7ddb1
mov byte [ebp - 6], dl
mov byte [ebp - 5], cl
mov dword [ebp - 0xc], 0xc7f161
lea ecx, [ebx - 1]
call fcn.100be740
mov dword [ebp - 4], eax
lea ecx, [ebp - 4]
lea eax, [ebp - 0x90]
push eax
call fcn.10016c90
mov dword [ebp - 0x18], 1
mov esi, dword [eax]
lea eax, [ebp - 0x14]
push eax
push 0x40
push 1
push esi
mov dword [ebp - 0x1c], esi
call edi
test eax, eax
mov al, byte [ebp - 5]
setne byte [ebp - 0x10]
mov byte [esi], al
cmp byte [ebp - 0x10], 0
je 0x10066b09
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 4]
push ecx
push eax
push dword [ebp - 0x18]
mov dword [ebp - 4], eax
push dword [ebp - 0x1c]
call edi
mov ecx, ebx
call fcn.100be740
mov dword [ebp - 4], eax
lea ecx, [ebp - 4]
lea eax, [ebp - 0x94]
push eax
call fcn.10016c90
mov dword [ebp - 0x28], 1
mov esi, dword [eax]
lea eax, [ebp - 0x24]
push eax
push 0x40
push 1
push esi
mov dword [ebp - 0x2c], esi
call edi
test eax, eax
mov al, byte [ebp - 6]
setne byte [ebp - 0x20]
mov byte [esi], al
cmp byte [ebp - 0x20], 0
je 0x10066b5d
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 4]
push ecx
push eax
push dword [ebp - 0x28]
mov dword [ebp - 4], eax
push dword [ebp - 0x2c]
call edi
lea ecx, [ebx + 1]
call fcn.100be740
mov dword [ebp - 4], eax
lea ecx, [ebp - 4]
lea eax, [ebp - 0x98]
push eax
call fcn.10016c90
mov dword [ebp - 0x38], 1
mov esi, dword [eax]
lea eax, [ebp - 0x34]
push eax
push 0x40
push 1
push esi
mov dword [ebp - 0x3c], esi
call edi
test eax, eax
mov al, byte [ebp + 8]
setne byte [ebp - 0x30]
mov byte [esi], al
cmp byte [ebp - 0x30], 0
je 0x10066bb2
mov eax, dword [ebp - 0x34]
lea ecx, [ebp - 4]
push ecx
push eax
push dword [ebp - 0x38]
mov dword [ebp - 4], eax
push dword [ebp - 0x3c]
call edi
lea ecx, [ebx + 2]
call fcn.100be740
mov dword [ebp - 4], eax
lea ecx, [ebp - 4]
lea eax, [ebp - 0x9c]
push eax
call fcn.10016c90
mov dword [ebp - 0x48], 1
mov esi, dword [eax]
lea eax, [ebp - 0x44]
push eax
push 0x40
push 1
push esi
mov dword [ebp - 0x4c], esi
call edi
test eax, eax
mov al, byte [ebp + 0xc]
setne byte [ebp - 0x40]
mov byte [esi], al
cmp byte [ebp - 0x40], 0
je 0x10066c07
mov eax, dword [ebp - 0x44]
lea ecx, [ebp - 4]
push ecx
push eax
push dword [ebp - 0x48]
mov dword [ebp - 4], eax
push dword [ebp - 0x4c]
call edi
mov ecx, dword [ebp - 0xc]
dec ecx
call fcn.100be740
mov dword [ebp - 4], eax
lea ecx, [ebp - 4]
lea eax, [ebp - 0xa0]
push eax
call fcn.10016c90
mov dword [ebp - 0x58], 1
mov esi, dword [eax]
lea eax, [ebp - 0x54]
push eax
push 0x40
push 1
push esi
mov dword [ebp - 0x5c], esi
call edi
test eax, eax
mov al, byte [ebp - 5]
setne byte [ebp - 0x50]
mov byte [esi], al
cmp byte [ebp - 0x50], 0
je 0x10066c5d
mov eax, dword [ebp - 0x54]
lea ecx, [ebp - 4]
push ecx
push eax
push dword [ebp - 0x58]
mov dword [ebp - 4], eax
push dword [ebp - 0x5c]
call edi
mov ecx, dword [ebp - 0xc]
call fcn.100be740
mov dword [ebp - 4], eax
lea ecx, [ebp - 4]
lea eax, [ebp - 0xa4]
push eax
call fcn.10016c90
mov dword [ebp - 0x68], 1
mov esi, dword [eax]
lea eax, [ebp - 0x64]
push eax
push 0x40
push 1
push esi
mov dword [ebp - 0x6c], esi
call edi
test eax, eax
mov al, byte [ebp - 6]
setne byte [ebp - 0x60]
mov byte [esi], al
cmp byte [ebp - 0x60], 0
je 0x10066cb2
mov eax, dword [ebp - 0x64]
lea ecx, [ebp - 4]
push ecx
push eax
push dword [ebp - 0x68]
mov dword [ebp - 4], eax
push dword [ebp - 0x6c]
call edi
mov ecx, dword [ebp - 0xc]
lea ecx, [ecx + 1]
call fcn.100be740
mov dword [ebp - 4], eax
lea ecx, [ebp - 4]
lea eax, [ebp - 0xa8]
push eax
call fcn.10016c90
mov dword [ebp - 0x78], 1
mov esi, dword [eax]
lea eax, [ebp - 0x74]
push eax
push 0x40
push 1
push esi
mov dword [ebp - 0x7c], esi
call edi
test eax, eax
mov al, byte [ebp + 8]
setne byte [ebp - 0x70]
mov byte [esi], al
cmp byte [ebp - 0x70], 0
je 0x10066d0a
mov eax, dword [ebp - 0x74]
lea ecx, [ebp - 4]
push ecx
push eax
push dword [ebp - 0x78]
mov dword [ebp - 4], eax
push dword [ebp - 0x7c]
call edi
mov ecx, dword [ebp - 0xc]
lea ecx, [ecx + 2]
call fcn.100be740
mov dword [ebp - 4], eax
lea ecx, [ebp - 4]
lea eax, [ebp - 0xac]
push eax
call fcn.10016c90
mov dword [ebp - 0x88], 1
mov esi, dword [eax]
lea eax, [ebp - 0x84]
push eax
push 0x40
push 1
push esi
mov dword [ebp - 0x8c], esi
call edi
test eax, eax
mov al, byte [ebp + 0xc]
setne byte [ebp - 0x80]
mov byte [esi], al
cmp byte [ebp - 0x80], 0
je 0x10066d74
mov eax, dword [ebp - 0x84]
lea ecx, [ebp - 4]
push ecx
push eax
push dword [ebp - 0x88]
mov dword [ebp - 4], eax
push dword [ebp - 0x8c]
call edi
add dword [ebp - 0xc], 0x38
add ebx, 0xa0
cmp ebx, 0xc7f1b1
jle 0x10066ab4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret