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

Disassembly:
push ebp
mov ebp, esp
push ecx
mov eax, dword [0x102e16ac]
push esi
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
cmp eax, 3
jne 0x100ac6f0
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x4030d4
call esi
lea eax, [ebp - 4]
mov byte [0x4030d4], 6
push eax
push dword [ebp - 4]
push 1
push 0x4030d4
call esi
mov eax, dword [0x102e16ac]
cmp eax, 2
jne 0x100ac720
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x4030d4
call esi
lea eax, [ebp - 4]
mov byte [0x4030d4], 5
push eax
push dword [ebp - 4]
push 1
push 0x4030d4
call esi
mov eax, dword [0x102e16ac]
cmp eax, 1
jne 0x100ac750
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x4030d4
call esi
lea eax, [ebp - 4]
mov byte [0x4030d4], 4
push eax
push dword [ebp - 4]
push 1
push 0x4030d4
call esi
mov eax, dword [0x102e16ac]
cmp eax, 4
jne 0x100ac77b
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x4030d4
call esi
lea eax, [ebp - 4]
mov byte [0x4030d4], 3
push eax
push dword [ebp - 4]
push 1
push 0x4030d4
call esi
mov eax, dword [0x102e1764]
test eax, eax
je 0x100ac789
cmp eax, 2
jne 0x100ac7e5
lea eax, [ebp - 4]
push eax
push 0x40
push 0x2f7
push 0x7d25c0
call esi
push 0x2f7
push 0x90
push 0x7d25c0
call fcn.100d4f20
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x2f7
push 0x7d25c0
call esi
cmp dword [0x102e1764], 0
jne 0x100ac7e5
push 0x7d4161
push 0x7d4000
push 0xe9
call fcn.100d0e40
add esp, 0xc
cmp dword [0x102e16b4], 1
jne 0x100ac841
lea eax, [ebp - 4]
push eax
push 0x40
push 0xc8
push 0x8193f0
call esi
push 0xc8
push 0x90
push 0x8193f0
call fcn.100d4f20
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0xc8
push 0x8193f0
call esi
push 0x77ed20
push 0x77ec97
push 0xe9
call fcn.100d0e40
add esp, 0xc
cmp dword [0x102e1778], 1
jne 0x100ac87d
lea eax, [ebp - 4]
push eax
push 0x40
push 0x52
push 0x830b70
call esi
push 0x52
push 0x90
push 0x830b70
call fcn.100d4f20
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x52
push 0x830b70
call esi
cmp dword [0x102e177c], 1
jne 0x100ac8c2
lea eax, [ebp - 4]
push eax
push 0x40
push 0x69d
push 0x6097b0
call esi
push 0x69d
push 0x90
push 0x6097b0
call fcn.100d4f20
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x69d
push 0x6097b0
call esi
cmp dword [0x102e1794], 1
jne 0x100ac90a
push 0x7d3f45
push 0x7d3d63
push 0xe9
call fcn.100d0e40
push 0x100ac690
push 0x944e50
push 0xe9
call fcn.100d0e40
push 0x100ac690
push 0x661700
push 0xe9
call fcn.100d0e40
add esp, 0x24
cmp dword [0x102e1798], 1
jne 0x100ac946
lea eax, [ebp - 4]
push eax
push 0x40
push 0x5a
push 0x78dc20
call esi
push 0x5a
push 0x90
push 0x78dc20
call fcn.100d4f20
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x5a
push 0x78dc20
call esi
cmp dword [0x102e179c], 1
jne 0x100ac966
push 0x62f8a6
push 0x62f870
push 0xe9
call fcn.100d0e40
add esp, 0xc
cmp dword [0x102e17a0], 1
jne 0x100ac99a
push 0x7d39d8
push 0x7d399f
push 0xe9
call fcn.100d0e40
push 0x77ec0e
push 0x77eb65
push 0xe9
call fcn.100d0e40
add esp, 0x18
cmp dword [0x102e17a4], 1
jne 0x100ac9ba
push 0x77ec97
push 0x77ec0e
push 0xe9
call fcn.100d0e40
add esp, 0xc
cmp dword [0x102e17a8], 1
jne 0x100aca17
push 0x83288f
push 0x83285a
push 0xe9
call fcn.100d0e40
add esp, 0xc
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x830cb8
call esi
lea eax, [ebp - 4]
mov byte [0x830cb8], 0x30
push eax
push dword [ebp - 4]
push 1
push 0x830cb8
call esi
push 0x7d3f9c
push 0x7d3f45
push 0xe9
call fcn.100d0e40
add esp, 0xc
cmp dword [0x102e17ac], 1
jne 0x100aca4b
push 0x7d3902
push 0x7d37a1
push 0xe9
call fcn.100d0e40
push 0x85f992
push 0x85ec8a
push 0xe9
call fcn.100d0e40
add esp, 0x18
cmp dword [0x102e17b0], 1
jne 0x100aca93
push 0x7d371e
push 0x7d36b8
push 0xe9
call fcn.100d0e40
push 0x7d4000
push 0x7d3f9c
push 0xe9
call fcn.100d0e40
push 0x836a58
push 0x8369e4
push 0xe9
call fcn.100d0e40
add esp, 0x24
cmp dword [0x102e17b4], 1
jne 0x100acadb
push 0x7d377f
push 0x7d371e
push 0xe9
call fcn.100d0e40
push 0x857007
push 0x856f94
push 0xe9
call fcn.100d0e40
push 0x8572a5
push 0x85727c
push 0xe9
call fcn.100d0e40
add esp, 0x24
cmp dword [0x102e17b8], 1
jne 0x100acb0f
push 0x8369e4
push 0x836971
push 0xe9
call fcn.100d0e40
push 0x834fc9
push 0x834e23
push 0xe9
call fcn.100d0e40
add esp, 0x18
mov eax, dword [0x102e1760]
dec eax
cmp eax, 2
ja 0x100acb56
lea eax, [ebp - 4]
push eax
push 0x40
push 0x198
push 0x7a8330
call esi
push 0x198
push 0x90
push 0x7a8330
call fcn.100d4f20
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x198
push 0x7a8330
call esi
cmp dword [0x102e17d8], 1
jne 0x100acc5e
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x8742ee
call esi
lea eax, [ebp - 4]
mov byte [0x8742ee], 7
push eax
push dword [ebp - 4]
push 1
push 0x8742ee
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x8743ff
call esi
lea eax, [ebp - 4]
mov byte [0x8743ff], 7
push eax
push dword [ebp - 4]
push 1
push 0x8743ff
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x87454f
call esi
lea eax, [ebp - 4]
mov byte [0x87454f], 7
push eax
push dword [ebp - 4]
push 1
push 0x87454f
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x877dce
call esi
lea eax, [ebp - 4]
mov byte [0x877dce], 6
push eax
push dword [ebp - 4]
push 1
push 0x877dce
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x877edf
call esi
lea eax, [ebp - 4]
mov byte [0x877edf], 6
push eax
push dword [ebp - 4]
push 1
push 0x877edf
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x878032
call esi
lea eax, [ebp - 4]
mov byte [0x878032], 6
push eax
push dword [ebp - 4]
push 1
push 0x878032
call esi
push 0x7e4d16
push 0x7e4ca4
push 0xe9
call fcn.100d0e40
add esp, 0xc
cmp dword [0x102e17dc], 1
jne 0x100acc92
push 0x6284c4
push 0x6284ab
push 0xe9
call fcn.100d0e40
push 0x7128b5
push 0x71273b
push 0xe9
call fcn.100d0e40
add esp, 0x18
cmp dword [0x102e17e8], 1
jne 0x100accc6
push 0x7aa9b1
push 0x7aa93e
push 0xe9
call fcn.100d0e40
push 0x7aa3bf
push 0x7aa354
push 0xe9
call fcn.100d0e40
add esp, 0x18
cmp dword [0x102e17e0], 1
jne 0x100accfd
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0xd46c84
call esi
mov eax, 0xd46c84
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 5
push 0xd46c84
call esi
cmp dword [0x102e17e4], 1
jne 0x100acd34
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0xd46c8c
call esi
mov eax, 0xd46c8c
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 5
push 0xd46c8c
call esi
pop esi
mov esp, ebp
pop ebp
ret