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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
mov eax, dword [0x1003a040]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x20], 0x747483
push eax
lea ecx, [ebp - 0x20]
call fcn.10004750
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov dword [ebp - 0x14], 6
mov esi, dword [eax]
lea eax, [ebp - 0x10]
push eax
push 0x40
push 6
push esi
mov dword [ebp - 0x18], esi
call edi
test eax, eax
mov dword [ebp - 0x20], 0xc8d4c0
mov eax, 0x90909090
setne byte [ebp - 0xc]
mov dword [esi], eax
mov word [esi + 4], ax
cmp byte [ebp - 0xc], 0
je 0x10006db3
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 8]
push ecx
push eax
push dword [ebp - 0x14]
mov dword [ebp - 8], eax
push dword [ebp - 0x18]
call edi
lea eax, [ebp - 8]
push eax
lea ecx, [ebp - 0x20]
call fcn.10004750
push ecx
mov eax, dword [eax]
mov dword [eax], 5
mov eax, esp
push ecx
mov esi, esp
mov dword [ebp - 8], 0x590ae4
lea ecx, [ebp - 8]
mov dword [eax], 0x590c9e
lea eax, [ebp - 0x1c]
push eax
call fcn.10004750
lea ecx, [ebp - 8]
mov eax, dword [eax]
mov dword [esi], eax
call fcn.10006c80
add esp, 8
mov dword [ebp - 8], 0x5905b4
lea eax, [ebp - 0x1c]
lea ecx, [ebp - 8]
push eax
call fcn.10004750
mov dword [ebp - 0x14], 5
mov esi, dword [eax]
lea eax, [ebp - 0x10]
push eax
push 0x40
push 5
push esi
mov dword [ebp - 0x18], esi
call edi
test eax, eax
setne byte [ebp - 0xc]
mov dword [esi], 0x90909090
mov byte [esi + 4], 0x90
cmp byte [ebp - 0xc], 0
je 0x10006e48
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 8]
push ecx
push eax
push dword [ebp - 0x14]
mov dword [ebp - 8], eax
push dword [ebp - 0x18]
call edi
lea eax, [ebp - 0x1c]
mov dword [ebp - 8], 0x590d9f
push eax
lea ecx, [ebp - 8]
call fcn.10004750
mov dword [ebp - 0x14], 5
mov esi, dword [eax]
lea eax, [ebp - 0x10]
push eax
push 0x40
push 5
push esi
mov dword [ebp - 0x18], esi
call edi
test eax, eax
setne byte [ebp - 0xc]
mov dword [esi], 0x90909090
mov byte [esi + 4], 0x90
cmp byte [ebp - 0xc], 0
je 0x10006e9b
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 8]
push ecx
push eax
push dword [ebp - 0x14]
mov dword [ebp - 8], eax
push dword [ebp - 0x18]
call edi
lea eax, [ebp - 0x1c]
mov dword [ebp - 8], 0x590d9f
push eax
lea ecx, [ebp - 8]
call fcn.10004750
mov dword [ebp - 0x14], 1
mov esi, dword [eax]
lea eax, [ebp - 0x10]
push eax
push 0x40
push 1
push esi
mov dword [ebp - 0x18], esi
call edi
test eax, eax
setne byte [ebp - 0xc]
mov byte [esi], 0xc3
cmp byte [ebp - 0xc], 0
je 0x10006ee7
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 8]
push ecx
push eax
push dword [ebp - 0x14]
mov dword [ebp - 8], eax
push dword [ebp - 0x18]
call edi
lea eax, [ebp - 0x1c]
mov dword [ebp - 8], 0x748cf6
push eax
lea ecx, [ebp - 8]
call fcn.10004750
mov dword [ebp - 0x14], 5
mov esi, dword [eax]
lea eax, [ebp - 0x10]
push eax
push 0x40
push 5
push esi
mov dword [ebp - 0x18], esi
call edi
test eax, eax
setne byte [ebp - 0xc]
mov dword [esi], 0x90909090
mov byte [esi + 4], 0x90
cmp byte [ebp - 0xc], 0
je 0x10006f3a
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 8]
push ecx
push eax
push dword [ebp - 0x14]
mov dword [ebp - 8], eax
push dword [ebp - 0x18]
call edi
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.1000d8a4
mov esp, ebp
pop ebp
ret