Function at 0x100aa1d0
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 0x100aa210
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 0x100aa240
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 0x100aa270
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 0x100aa29b
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 0x100aa2a9
cmp eax, 2
jne 0x100aa305
lea eax, [ebp - 4]
push eax
push 0x40
push 0x2f7
push 0x7d25c0
call esi
push 0x2f7
push 0x90
push 0x7d25c0
call fcn.100d2920
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x2f7
push 0x7d25c0
call esi
cmp dword [0x102df7c4], 0
jne 0x100aa305
push 0x7d4161
push 0x7d4000
push 0xe9
call fcn.100ce900
add esp, 0xc
cmp dword [0x102df714], 1
jne 0x100aa361
lea eax, [ebp - 4]
push eax
push 0x40
push 0xc8
push 0x8193f0
call esi
push 0xc8
push 0x90
push 0x8193f0
call fcn.100d2920
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.100ce900
add esp, 0xc
cmp dword [0x102df7d8], 1
jne 0x100aa39d
lea eax, [ebp - 4]
push eax
push 0x40
push 0x52
push 0x830b70
call esi
push 0x52
push 0x90
push 0x830b70
call fcn.100d2920
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x52
push 0x830b70
call esi
cmp dword [0x102df7dc], 1
jne 0x100aa3e2
lea eax, [ebp - 4]
push eax
push 0x40
push 0x69d
push 0x6097b0
call esi
push 0x69d
push 0x90
push 0x6097b0
call fcn.100d2920
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x69d
push 0x6097b0
call esi
cmp dword [0x102df7f4], 1
jne 0x100aa42a
push 0x7d3f45
push 0x7d3d63
push 0xe9
call fcn.100ce900
push 0x100aa1b0
push 0x944e50
push 0xe9
call fcn.100ce900
push 0x100aa1b0
push 0x661700
push 0xe9
call fcn.100ce900
add esp, 0x24
cmp dword [0x102df7f8], 1
jne 0x100aa466
lea eax, [ebp - 4]
push eax
push 0x40
push 0x5a
push 0x78dc20
call esi
push 0x5a
push 0x90
push 0x78dc20
call fcn.100d2920
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x5a
push 0x78dc20
call esi
cmp dword [0x102df7fc], 1
jne 0x100aa486
push 0x62f8a6
push 0x62f870
push 0xe9
call fcn.100ce900
add esp, 0xc
cmp dword [0x102df800], 1
jne 0x100aa4ba
push 0x7d39d8
push 0x7d399f
push 0xe9
call fcn.100ce900
push 0x77ec0e
push 0x77eb65
push 0xe9
call fcn.100ce900
add esp, 0x18
cmp dword [0x102df804], 1
jne 0x100aa4da
push 0x77ec97
push 0x77ec0e
push 0xe9
call fcn.100ce900
add esp, 0xc
cmp dword [0x102df808], 1
jne 0x100aa537
push 0x83288f
push 0x83285a
push 0xe9
call fcn.100ce900
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.100ce900
add esp, 0xc
cmp dword [0x102df80c], 1
jne 0x100aa56b
push 0x7d3902
push 0x7d37a1
push 0xe9
call fcn.100ce900
push 0x85f992
push 0x85ec8a
push 0xe9
call fcn.100ce900
add esp, 0x18
cmp dword [0x102df810], 1
jne 0x100aa5b3
push 0x7d371e
push 0x7d36b8
push 0xe9
call fcn.100ce900
push 0x7d4000
push 0x7d3f9c
push 0xe9
call fcn.100ce900
push 0x836a58
push 0x8369e4
push 0xe9
call fcn.100ce900
add esp, 0x24
cmp dword [0x102df814], 1
jne 0x100aa5fb
push 0x7d377f
push 0x7d371e
push 0xe9
call fcn.100ce900
push 0x857007
push 0x856f94
push 0xe9
call fcn.100ce900
push 0x8572a5
push 0x85727c
push 0xe9
call fcn.100ce900
add esp, 0x24
cmp dword [0x102df818], 1
jne 0x100aa62f
push 0x8369e4
push 0x836971
push 0xe9
call fcn.100ce900
push 0x834fc9
push 0x834e23
push 0xe9
call fcn.100ce900
add esp, 0x18
mov eax, dword [0x102df7c0]
dec eax
cmp eax, 2
ja 0x100aa676
lea eax, [ebp - 4]
push eax
push 0x40
push 0x198
push 0x7a8330
call esi
push 0x198
push 0x90
push 0x7a8330
call fcn.100d2920
add esp, 0xc
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 0x198
push 0x7a8330
call esi
cmp dword [0x102df838], 1
jne 0x100aa77e
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.100ce900
add esp, 0xc
cmp dword [0x102df83c], 1
jne 0x100aa7b2
push 0x6284c4
push 0x6284ab
push 0xe9
call fcn.100ce900
push 0x7128b5
push 0x71273b
push 0xe9
call fcn.100ce900
add esp, 0x18
cmp dword [0x102df848], 1
jne 0x100aa7e6
push 0x7aa9b1
push 0x7aa93e
push 0xe9
call fcn.100ce900
push 0x7aa3bf
push 0x7aa354
push 0xe9
call fcn.100ce900
add esp, 0x18
cmp dword [0x102df840], 1
jne 0x100aa81d
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 0x100aa854
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