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

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 4]
push edi
push eax
push 0x40
push 5
push 0x5b993a
call esi
mov eax, 0x5b993a
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 5
push 0x5b993a
call esi
push 0x10041100
push 0x5edda9
push 0xe8
call fcn.100cd930
push 0x10042030
push 0x4d7eb1
push 0xe8
call fcn.100cd930
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
add esp, 0x18
cmp dword [0x1025a288], 4
jne 0x100428d9
mov ebx, dword [0x1025a28c]
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x4d75f0
dec ebx
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x1004282d
lea eax, [ebp - 8]
mov dword [0x4d75f0], ebx
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 4
push 0x4d75f0
call esi
test eax, eax
jne 0x1004282f
call edi
push 0x10040f20
push 0x4d76fb
push 0xe8
call fcn.100cd930
push 0x10040f20
push 0x4d79c3
push 0xe8
call fcn.100cd930
add esp, 0x18
mov dword [ebp - 4], 0
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x4d7a0e
call esi
test eax, eax
je 0x10042899
lea eax, [ebp - 8]
mov dword [0x4d7a0e], 0x1e0
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 4
push 0x4d7a0e
call esi
test eax, eax
jne 0x1004289b
call edi
lea eax, [ebp - 4]
mov dword [ebp - 4], 0
push eax
push 0x40
push 1
push 0x4d7a18
call esi
test eax, eax
je 0x100428d7
lea eax, [ebp - 8]
mov byte [0x4d7a18], 0
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 1
push 0x4d7a18
call esi
test eax, eax
jne 0x100428d9
call edi
cmp dword [0x1025a290], 4
jne 0x10042a87
mov ebx, dword [0x1025a294]
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x4d6c2c
dec ebx
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x10042928
lea eax, [ebp - 8]
mov dword [0x4d6c2c], ebx
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 4
push 0x4d6c2c
call esi
test eax, eax
jne 0x1004292a
call edi
push 0x10040f20
push 0x4d712a
push 0xe8
call fcn.100cd930
push 0x10042220
push 0x57f020
push 0xe9
call fcn.100cd930
push 0x100424e0
push 0x48e504
push 0xe8
call fcn.100cd930
push 0x100424e0
push 0x503986
push 0xe8
call fcn.100cd930
add esp, 0x30
mov dword [ebp - 4], 0
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x4d7179
call esi
test eax, eax
je 0x100429bc
lea eax, [ebp - 8]
mov dword [0x4d7179], 0x1e0
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 4
push 0x4d7179
call esi
test eax, eax
jne 0x100429be
call edi
lea eax, [ebp - 4]
mov dword [ebp - 4], 0
push eax
push 0x40
push 1
push 0x4d7183
call esi
test eax, eax
je 0x100429fa
lea eax, [ebp - 8]
mov byte [0x4d7183], 0
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 1
push 0x4d7183
call esi
test eax, eax
jne 0x100429fc
call edi
push 0xe9
mov edx, 0x10041f60
mov ecx, 0x4d87c8
call fcn.100cd010
push 0xe9
mov edx, 0x10041f80
mov ecx, 0x4d87fc
call fcn.100cd010
push 0xe9
mov edx, 0x10041fa0
mov ecx, 0x5db52b
call fcn.100cd010
add esp, 8
mov edx, 5
mov ecx, 0x63d1ce
call fcn.100cd080
push 0xe9
mov edx, 0x10041fc0
mov ecx, 0x63d1ce
call fcn.100cd010
add esp, 4
mov edx, 5
mov ecx, 0x63d40f
call fcn.100cd080
push 0xe9
mov edx, 0x10042000
mov ecx, 0x63d40f
call fcn.100cd010
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret