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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
mov eax, dword [0x1007d068]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [0x1007f258]
lea ecx, [ebp - 0xc]
add ebx, 0x6526a2
push esi
push edi
lea eax, [ebx + 1]
push eax
call fcn.10001270
mov esi, dword [ebp - 0xc]
lea eax, [ebp - 0x14]
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
push eax
push 0x40
push 4
push esi
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x1c], esi
call edi
test eax, eax
setne byte [ebp - 0x10]
mov ecx, dword [esi]
mov dword [ebp - 8], ecx
test eax, eax
je 0x10001d3e
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0xc]
push ecx
push eax
push dword [ebp - 0x18]
mov dword [ebp - 0xc], eax
push dword [ebp - 0x1c]
call edi
mov ecx, dword [ebp - 8]
push ecx
mov eax, esp
add esi, 4
push ecx
add esi, ecx
mov ecx, esp
push ebx
mov dword [eax], 0x10001b40
call fcn.10001270
lea ecx, [ebp - 8]
call fcn.10001480
mov ebx, dword [0x1007f258]
lea ecx, [ebp - 8]
add ebx, 0x65104d
mov dword [0x1007f144], esi
add esp, 8
lea eax, [ebx + 1]
push eax
call fcn.10001270
mov esi, dword [ebp - 8]
lea eax, [ebp - 0x14]
push eax
push 0x40
push 4
push esi
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x1c], esi
call edi
test eax, eax
setne byte [ebp - 0x10]
mov ecx, dword [esi]
mov dword [ebp - 0xc], ecx
test eax, eax
je 0x10001dbb
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 8]
push ecx
push eax
push dword [ebp - 0x18]
mov dword [ebp - 8], eax
push dword [ebp - 0x1c]
call edi
mov ecx, dword [ebp - 0xc]
push ecx
mov eax, esp
add esi, 4
push ecx
add esi, ecx
mov ecx, esp
push ebx
mov dword [eax], 0x10001b70
call fcn.10001270
lea ecx, [ebp - 0xc]
call fcn.10001480
mov ebx, dword [0x1007f258]
lea ecx, [ebp - 8]
add ebx, 0x64d227
mov dword [0x1007f150], esi
add esp, 8
lea eax, [ebx + 1]
push eax
call fcn.10001270
mov esi, dword [ebp - 8]
lea eax, [ebp - 0x14]
push eax
push 0x40
push 4
push esi
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x1c], esi
call edi
test eax, eax
setne byte [ebp - 0x10]
mov ecx, dword [esi]
mov dword [ebp - 0xc], ecx
test eax, eax
je 0x10001e38
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 8]
push ecx
push eax
push dword [ebp - 0x18]
mov dword [ebp - 8], eax
push dword [ebp - 0x1c]
call edi
mov ecx, dword [ebp - 0xc]
push ecx
mov eax, esp
add esi, 4
push ecx
add esi, ecx
mov ecx, esp
push ebx
mov dword [eax], 0x10001ba0
call fcn.10001270
lea ecx, [ebp - 0xc]
call fcn.10001480
mov ebx, dword [0x1007f258]
lea ecx, [ebp - 8]
add ebx, 0x650770
mov dword [0x1007f140], esi
add esp, 8
lea eax, [ebx + 1]
push eax
call fcn.10001270
mov esi, dword [ebp - 8]
lea eax, [ebp - 0x14]
push eax
push 0x40
push 4
push esi
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x1c], esi
call edi
test eax, eax
setne byte [ebp - 0x10]
mov ecx, dword [esi]
mov dword [ebp - 0xc], ecx
test eax, eax
je 0x10001eb5
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 8]
push ecx
push eax
push dword [ebp - 0x18]
mov dword [ebp - 8], eax
push dword [ebp - 0x1c]
call edi
mov ecx, dword [ebp - 0xc]
push ecx
mov eax, esp
add esi, 4
push ecx
add esi, ecx
mov ecx, esp
push ebx
mov dword [eax], 0x10001bd0
call fcn.10001270
lea ecx, [ebp - 0xc]
call fcn.10001480
mov ebx, dword [0x1007f258]
lea ecx, [ebp - 8]
add ebx, 0x64d411
mov dword [0x1007f14c], esi
add esp, 8
lea eax, [ebx + 1]
push eax
call fcn.10001270
mov esi, dword [ebp - 8]
lea eax, [ebp - 0x14]
push eax
push 0x40
push 4
push esi
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x1c], esi
call edi
test eax, eax
setne byte [ebp - 0x10]
mov ecx, dword [esi]
mov dword [ebp - 0xc], ecx
test eax, eax
je 0x10001f32
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 8]
push ecx
push eax
push dword [ebp - 0x18]
mov dword [ebp - 8], eax
push dword [ebp - 0x1c]
call edi
mov ecx, dword [ebp - 0xc]
push ecx
mov eax, esp
add esi, 4
push ecx
add esi, ecx
mov ecx, esp
push ebx
mov dword [eax], 0x10001c00
call fcn.10001270
lea ecx, [ebp - 0xc]
call fcn.10001480
mov ebx, dword [0x1007f258]
lea ecx, [ebp - 8]
add ebx, 0x64d40a
mov dword [0x1007f148], esi
add esp, 8
lea eax, [ebx + 1]
push eax
call fcn.10001270
mov esi, dword [ebp - 8]
lea eax, [ebp - 0x14]
push eax
push 0x40
push 4
push esi
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x1c], esi
call edi
test eax, eax
setne byte [ebp - 0x10]
mov ecx, dword [esi]
mov dword [ebp - 0xc], ecx
test eax, eax
je 0x10001faf
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 8]
push ecx
push eax
push dword [ebp - 0x18]
mov dword [ebp - 8], eax
push dword [ebp - 0x1c]
call edi
mov ecx, dword [ebp - 0xc]
push ecx
mov eax, esp
add esi, 4
push ecx
add esi, ecx
mov ecx, esp
push ebx
mov dword [eax], 0x10001c30
call fcn.10001270
lea ecx, [ebp - 0xc]
call fcn.10001480
mov ebx, dword [0x1007f258]
lea ecx, [ebp - 8]
add ebx, 0x65264c
mov dword [0x1007f130], esi
add esp, 8
lea eax, [ebx + 1]
push eax
call fcn.10001270
mov esi, dword [ebp - 8]
lea eax, [ebp - 0x14]
push eax
push 0x40
push 4
push esi
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x1c], esi
call edi
test eax, eax
setne byte [ebp - 0x10]
mov ecx, dword [esi]
mov dword [ebp - 0xc], ecx
test eax, eax
je 0x1000202c
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 8]
push ecx
push eax
push dword [ebp - 0x18]
mov dword [ebp - 8], eax
push dword [ebp - 0x1c]
call edi
mov ecx, dword [ebp - 0xc]
push ecx
mov eax, esp
add esi, 4
push ecx
add esi, ecx
mov ecx, esp
push ebx
mov dword [eax], 0x10001c60
call fcn.10001270
lea ecx, [ebp - 0xc]
call fcn.10001480
mov ebx, dword [0x1007f258]
lea ecx, [ebp - 8]
add ebx, 0xb9d499
mov dword [0x1007f13c], esi
add esp, 8
lea eax, [ebx + 1]
push eax
call fcn.10001270
mov esi, dword [ebp - 8]
lea eax, [ebp - 0x14]
push eax
push 0x40
push 4
push esi
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x1c], esi
call edi
test eax, eax
setne byte [ebp - 0x10]
mov ecx, dword [esi]
mov dword [ebp - 0xc], ecx
test eax, eax
je 0x100020a9
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 8]
push ecx
push eax
push dword [ebp - 0x18]
mov dword [ebp - 8], eax
push dword [ebp - 0x1c]
call edi
mov ecx, dword [ebp - 0xc]
push ecx
mov eax, esp
add esi, 4
push ecx
add esi, ecx
mov ecx, esp
push ebx
mov dword [eax], 0x10001c90
call fcn.10001270
lea ecx, [ebp - 0xc]
call fcn.10001480
mov ebx, dword [0x1007f258]
lea ecx, [ebp - 8]
add ebx, 0xb9d0fa
mov dword [0x1007f138], esi
add esp, 8
lea eax, [ebx + 1]
push eax
call fcn.10001270
mov esi, dword [ebp - 8]
lea eax, [ebp - 0x14]
push eax
push 0x40
push 4
push esi
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x1c], esi
call edi
test eax, eax
setne byte [ebp - 0x10]
mov ecx, dword [esi]
mov dword [ebp - 0xc], ecx
test eax, eax
je 0x10002126
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 8]
push ecx
push eax
push dword [ebp - 0x18]
mov dword [ebp - 8], eax
push dword [ebp - 0x1c]
call edi
mov ecx, dword [ebp - 0xc]
push ecx
mov eax, esp
add esi, 4
push ecx
add esi, ecx
mov ecx, esp
push ebx
mov dword [eax], 0x10001cc0
call fcn.10001270
lea ecx, [ebp - 0xc]
call fcn.10001480
mov ecx, dword [ebp - 4]
add esp, 8
mov dword [0x1007f134], esi
xor ecx, ebp
pop edi
pop esi
pop ebx
call fcn.1003bb2a
mov esp, ebp
pop ebp
ret