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

Disassembly:
push ebp
mov ebp, esp
push ecx
mov eax, dword [0x102df70c]
push esi
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
cmp eax, 3
jne 0x100aa480
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 [0x102df70c]
cmp eax, 2
jne 0x100aa4b0
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 [0x102df70c]
cmp eax, 1
jne 0x100aa4e0
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 [0x102df70c]
cmp eax, 4
jne 0x100aa50b
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 [0x102df7c4]
test eax, eax
je 0x100aa519
cmp eax, 2
jne 0x100aa575
lea eax, [ebp - 4]
push eax
push 0x40
push 0x2f7
push 0x7d25c0
call esi
push 0x2f7
push 0x90
push 0x7d25c0
call fcn.100d29e0
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x2f7
push 0x7d25c0
call esi
cmp dword [0x102df7c4], 0
jne 0x100aa575
push 0x7d4161
push 0x7d4000
push 0xe9
call fcn.100ce9c0
add esp, 0xc
cmp dword [0x102df714], 1
jne 0x100aa5d1
lea eax, [ebp - 4]
push eax
push 0x40
push 0xc8
push 0x8193f0
call esi
push 0xc8
push 0x90
push 0x8193f0
call fcn.100d29e0
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.100ce9c0
add esp, 0xc
cmp dword [0x102df7d8], 1
jne 0x100aa60d
lea eax, [ebp - 4]
push eax
push 0x40
push 0x52
push 0x830b70
call esi
push 0x52
push 0x90
push 0x830b70
call fcn.100d29e0
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x52
push 0x830b70
call esi
cmp dword [0x102df7dc], 1
jne 0x100aa652
lea eax, [ebp - 4]
push eax
push 0x40
push 0x69d
push 0x6097b0
call esi
push 0x69d
push 0x90
push 0x6097b0
call fcn.100d29e0
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x69d
push 0x6097b0
call esi
cmp dword [0x102df7f4], 1
jne 0x100aa69a
push 0x7d3f45
push 0x7d3d63
push 0xe9
call fcn.100ce9c0
push 0x100aa420
push 0x944e50
push 0xe9
call fcn.100ce9c0
push 0x100aa420
push 0x661700
push 0xe9
call fcn.100ce9c0
add esp, 0x24
cmp dword [0x102df7f8], 1
jne 0x100aa6d6
lea eax, [ebp - 4]
push eax
push 0x40
push 0x5a
push 0x78dc20
call esi
push 0x5a
push 0x90
push 0x78dc20
call fcn.100d29e0
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x5a
push 0x78dc20
call esi
cmp dword [0x102df7fc], 1
jne 0x100aa6f6
push 0x62f8a6
push 0x62f870
push 0xe9
call fcn.100ce9c0
add esp, 0xc
cmp dword [0x102df800], 1
jne 0x100aa72a
push 0x7d39d8
push 0x7d399f
push 0xe9
call fcn.100ce9c0
push 0x77ec0e
push 0x77eb65
push 0xe9
call fcn.100ce9c0
add esp, 0x18
cmp dword [0x102df804], 1
jne 0x100aa74a
push 0x77ec97
push 0x77ec0e
push 0xe9
call fcn.100ce9c0
add esp, 0xc
cmp dword [0x102df808], 1
jne 0x100aa7a7
push 0x83288f
push 0x83285a
push 0xe9
call fcn.100ce9c0
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.100ce9c0
add esp, 0xc
cmp dword [0x102df80c], 1
jne 0x100aa7db
push 0x7d3902
push 0x7d37a1
push 0xe9
call fcn.100ce9c0
push 0x85f992
push 0x85ec8a
push 0xe9
call fcn.100ce9c0
add esp, 0x18
cmp dword [0x102df810], 1
jne 0x100aa823
push 0x7d371e
push 0x7d36b8
push 0xe9
call fcn.100ce9c0
push 0x7d4000
push 0x7d3f9c
push 0xe9
call fcn.100ce9c0
push 0x836a58
push 0x8369e4
push 0xe9
call fcn.100ce9c0
add esp, 0x24
cmp dword [0x102df814], 1
jne 0x100aa86b
push 0x7d377f
push 0x7d371e
push 0xe9
call fcn.100ce9c0
push 0x857007
push 0x856f94
push 0xe9
call fcn.100ce9c0
push 0x8572a5
push 0x85727c
push 0xe9
call fcn.100ce9c0
add esp, 0x24
cmp dword [0x102df818], 1
jne 0x100aa89f
push 0x8369e4
push 0x836971
push 0xe9
call fcn.100ce9c0
push 0x834fc9
push 0x834e23
push 0xe9
call fcn.100ce9c0
add esp, 0x18
mov eax, dword [0x102df7c0]
dec eax
cmp eax, 2
ja 0x100aa8e6
lea eax, [ebp - 4]
push eax
push 0x40
push 0x198
push 0x7a8330
call esi
push 0x198
push 0x90
push 0x7a8330
call fcn.100d29e0
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x198
push 0x7a8330
call esi
cmp dword [0x102df838], 1
jne 0x100aa9ee
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.100ce9c0
add esp, 0xc
cmp dword [0x102df83c], 1
jne 0x100aaa22
push 0x6284c4
push 0x6284ab
push 0xe9
call fcn.100ce9c0
push 0x7128b5
push 0x71273b
push 0xe9
call fcn.100ce9c0
add esp, 0x18
cmp dword [0x102df848], 1
jne 0x100aaa56
push 0x7aa9b1
push 0x7aa93e
push 0xe9
call fcn.100ce9c0
push 0x7aa3bf
push 0x7aa354
push 0xe9
call fcn.100ce9c0
add esp, 0x18
cmp dword [0x102df840], 1
jne 0x100aaa8d
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 [0x102df844], 1
jne 0x100aaac4
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