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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1c
push esi
lea eax, [esp + 0x10]
mov dword [esp + 4], 0x4c5dbd
lea ecx, [esp + 4]
mov dword [esp + 8], 0x4c5ea5
push eax
push ecx
mov ecx, 0x100acce0
mov dword [esp + 0x14], 0x4c5eb4
call fcn.100122b0
lea eax, [esp + 0x10]
mov dword [esp + 4], 0x4c5da9
lea ecx, [esp + 4]
mov dword [esp + 8], 0x4c5e16
push eax
push ecx
mov ecx, 0x100acdc0
mov dword [esp + 0x14], 0x4c5ec8
call fcn.100122b0
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [esp + 4]
push eax
push 0x40
push 4
push 0x4c5f05
call esi
mov eax, 0x100acde0
sub eax, 0x4c5f09
mov dword [0x4c5f05], eax
lea eax, [esp + 4]
push eax
push dword [esp + 8]
push 4
push 0x4c5f05
call esi
lea eax, [esp + 0xc]
mov dword [esp + 4], 0x4c5f31
lea ecx, [esp + 4]
mov dword [esp + 8], 0x4c5f64
push eax
push ecx
mov ecx, 0x100ace30
call fcn.100122b0
lea eax, [esp + 0xc]
mov dword [esp + 4], 0x4c5f85
lea ecx, [esp + 4]
mov dword [esp + 8], 0x4c5fd3
push eax
push ecx
mov ecx, 0x100acec0
call fcn.100122b0
lea eax, [esp + 0x20]
mov dword [esp + 4], 0x4c5fe4
lea ecx, [esp + 4]
mov dword [esp + 8], 0x4c61b5
push eax
push ecx
mov ecx, 0x100acef0
mov dword [esp + 0x14], 0x4c61e2
mov dword [esp + 0x18], 0x4c61fe
mov dword [esp + 0x1c], 0x4c6479
mov dword [esp + 0x20], 0x4c64b3
mov dword [esp + 0x24], 0x4c64d2
call fcn.100122b0
lea eax, [esp + 4]
push eax
push 0x40
push 4
push 0x4c5fed
call esi
mov eax, 0x100acf10
sub eax, 0x4c5ff1
mov dword [0x4c5fed], eax
lea eax, [esp + 4]
push eax
push dword [esp + 8]
push 4
push 0x4c5fed
call esi
lea eax, [esp + 4]
push eax
push 0x40
push 4
push 0x4c5ff5
call esi
mov eax, 0x100acf70
sub eax, 0x4c5ff9
mov dword [0x4c5ff5], eax
lea eax, [esp + 4]
push eax
push dword [esp + 8]
push 4
push 0x4c5ff5
call esi
lea eax, [esp + 0x1c]
mov dword [esp + 4], 0x4c5e5c
lea ecx, [esp + 4]
mov dword [esp + 8], 0x4c5e8a
push eax
push ecx
mov ecx, 0x100acfe0
mov dword [esp + 0x14], 0x4c5e9e
mov dword [esp + 0x18], 0x4c603d
mov dword [esp + 0x1c], 0x4c6076
mov dword [esp + 0x20], 0x4c60aa
call fcn.100122b0
lea eax, [esp + 4]
push eax
push 0x40
push 4
push 0x4c6163
call esi
mov eax, 0x100ad000
sub eax, 0x4c6167
mov dword [0x4c6163], eax
lea eax, [esp + 4]
push eax
push dword [esp + 8]
push 4
push 0x4c6163
call esi
lea eax, [esp + 4]
push eax
push 0x40
push 4
push 0x4c60b9
call esi
mov eax, 0x100ad030
sub eax, 0x4c60bd
mov dword [0x4c60b9], eax
lea eax, [esp + 4]
push eax
push dword [esp + 8]
push 4
push 0x4c60b9
call esi
lea eax, [esp + 4]
push eax
push 0x40
push 4
push 0x4c60c1
call esi
mov eax, 0x100ad0a0
sub eax, 0x4c60c5
mov dword [0x4c60c1], eax
lea eax, [esp + 4]
push eax
push dword [esp + 8]
push 4
push 0x4c60c1
call esi
lea eax, [esp + 4]
push eax
push 0x40
push 4
push 0x4c60c9
call esi
mov eax, 0x100ad0d0
sub eax, 0x4c60cd
mov dword [0x4c60c9], eax
lea eax, [esp + 4]
push eax
push dword [esp + 8]
push 4
push 0x4c60c9
call esi
lea eax, [esp + 4]
push eax
push 0x40
push 4
push 0x4c60d1
call esi
mov eax, 0x100ad100
sub eax, 0x4c60d5
mov dword [0x4c60d1], eax
lea eax, [esp + 4]
push eax
push dword [esp + 8]
push 4
push 0x4c60d1
call esi
lea eax, [esp + 4]
push eax
push 0x40
push 4
push 0x4c60d9
call esi
mov eax, 0x100ad140
sub eax, 0x4c60dd
mov dword [0x4c60d9], eax
lea eax, [esp + 4]
push eax
push dword [esp + 8]
push 4
push 0x4c60d9
call esi
lea eax, [esp + 0x10]
mov dword [esp + 4], 0x4c5db4
lea ecx, [esp + 4]
mov dword [esp + 8], 0x4c5e2d
push eax
push ecx
mov ecx, 0x100ad170
mov dword [esp + 0x14], 0x4c68bc
call fcn.100122b0
pop esi
mov esp, ebp
pop ebp
ret