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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
push edi
push 0x100a1740
push 0x55a35f
push 0xe8
call fcn.100cc8e0
push 0x100a10d0
push 0x61fe3f
push 0xff
call fcn.100cc8e0
push 0x100a1120
push 0x61b410
push 0xff
call fcn.100cc8e0
push 0x100a1120
push 0x61feea
push 0xff
call fcn.100cc8e0
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 4]
add esp, 0x30
mov dword [ebp - 4], 0
or bl, 0xff
push eax
push 0x40
push 1
push 0x559b85
call esi
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x100a1cd7
mov eax, 0x559b85
mov byte [eax], bl
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 1
push 0x559b85
call esi
test eax, eax
jne 0x100a1cd9
call edi
lea eax, [ebp - 4]
mov dword [ebp - 4], 0
push eax
push 0x40
push 1
push 0x559b86
or bl, 0xff
call esi
test eax, eax
je 0x100a1d18
mov eax, 0x559b86
mov byte [eax], bl
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 1
push 0x559b86
call esi
test eax, eax
jne 0x100a1d1a
call edi
push 0x100a16e0
push 0x55e4c5
push 0xe9
call fcn.100cc8e0
mov ebx, 0x100a1170
mov byte [ebp - 0x10], 0xe8
add esp, 0xc
mov dword [ebp - 4], 0
lea eax, [ebx - 0x4e19a2]
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x4e199d
call esi
test eax, eax
je 0x100a1d84
mov eax, dword [ebp - 0x10]
mov ecx, 0x4e199d
mov dword [ecx], eax
mov al, byte [ebp - 0xc]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100a1d86
call edi
mov eax, 0x100a1170
mov byte [ebp - 0x18], 0xe8
sub eax, 0x58704e
mov dword [ebp - 4], 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x17], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x587049
call esi
test eax, eax
je 0x100a1ddb
mov eax, dword [ebp - 0x18]
mov ecx, 0x587049
mov dword [ecx], eax
mov al, byte [ebp - 0x14]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100a1ddd
call edi
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x17], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x587049
mov byte [ebp - 0x18], 0xe8
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100a1e28
mov eax, dword [ebp - 0x18]
mov ecx, 0x587049
mov dword [ecx], eax
mov al, byte [ebp - 0x14]
mov byte [ecx + 4], al
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 4]
mov dword [ebp - 0x10], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100a1e2a
call edi
lea eax, [ebx - 0x590cd1]
mov byte [ebp - 0x18], 0xe8
mov dword [ebp - 0x17], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x590ccc
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100a1e78
mov eax, dword [ebp - 0x18]
mov ecx, 0x590ccc
mov dword [ecx], eax
mov al, byte [ebp - 0x14]
mov byte [ecx + 4], al
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 4]
mov dword [ebp - 0x10], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100a1e7a
call edi
lea eax, [ebx - 0x5bbeeb]
mov byte [ebp - 0x18], 0xe8
mov dword [ebp - 0x17], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x5bbee6
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100a1ec8
mov eax, dword [ebp - 0x18]
mov ecx, 0x5bbee6
mov dword [ecx], eax
mov al, byte [ebp - 0x14]
mov byte [ecx + 4], al
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 4]
mov dword [ebp - 0x10], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100a1eca
call edi
lea eax, [ebx - 0x6422a2]
mov byte [ebp - 0x18], 0xe8
mov dword [ebp - 0x17], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x64229d
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100a1f18
mov eax, dword [ebp - 0x18]
mov ecx, 0x64229d
mov dword [ecx], eax
mov al, byte [ebp - 0x14]
mov byte [ecx + 4], al
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 4]
mov dword [ebp - 0x10], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100a1f1a
call edi
lea eax, [ebx - 0x642d56]
mov byte [ebp - 0x18], 0xe8
mov dword [ebp - 0x17], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x642d51
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100a1f68
mov eax, dword [ebp - 0x18]
mov ecx, 0x642d51
mov dword [ecx], eax
mov al, byte [ebp - 0x14]
mov byte [ecx + 4], al
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 4]
mov dword [ebp - 0x10], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100a1f6a
call edi
lea eax, [ebx - 0x64322e]
mov byte [ebp - 0x18], 0xe8
mov dword [ebp - 0x17], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x643229
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100a1fb8
mov eax, dword [ebp - 0x18]
mov ecx, 0x643229
mov dword [ecx], eax
mov al, byte [ebp - 0x14]
mov byte [ecx + 4], al
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 4]
mov dword [ebp - 0x10], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100a1fba
call edi
lea eax, [ebx - 0x65ea8b]
mov byte [ebp - 0x18], 0xe8
mov dword [ebp - 0x17], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x65ea86
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100a2008
mov eax, dword [ebp - 0x18]
mov ecx, 0x65ea86
mov dword [ecx], eax
mov al, byte [ebp - 0x14]
mov byte [ecx + 4], al
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 4]
mov dword [ebp - 0x10], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100a200a
call edi
lea eax, [ebx - 0x911a58]
mov byte [ebp - 0x18], 0xe8
mov dword [ebp - 0x17], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x911a53
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100a2058
mov eax, dword [ebp - 0x18]
mov ecx, 0x911a53
mov dword [ecx], eax
mov al, byte [ebp - 0x14]
mov byte [ecx + 4], al
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 4]
mov dword [ebp - 0x10], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100a205a
call edi
lea eax, [ebx - 0x911a72]
mov byte [ebp - 0x18], 0xe8
mov dword [ebp - 0x17], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x911a6d
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100a20a8
mov eax, dword [ebp - 0x18]
mov ecx, 0x911a6d
mov dword [ecx], eax
mov al, byte [ebp - 0x14]
mov byte [ecx + 4], al
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 4]
mov dword [ebp - 0x10], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100a20aa
call edi
lea eax, [ebx - 0x911a8c]
mov byte [ebp - 0x18], 0xe8
mov dword [ebp - 0x17], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x911a87
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100a20f8
mov eax, dword [ebp - 0x18]
mov ecx, 0x911a87
mov dword [ecx], eax
mov al, byte [ebp - 0x14]
mov byte [ecx + 4], al
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 4]
mov dword [ebp - 0x10], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100a20fa
call edi
lea eax, [ebx - 0x911aa6]
mov byte [ebp - 0x18], 0xe8
mov dword [ebp - 0x17], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x911aa1
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100a2148
mov eax, dword [ebp - 0x18]
mov ecx, 0x911aa1
mov dword [ecx], eax
mov al, byte [ebp - 0x14]
mov byte [ecx + 4], al
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 4]
mov dword [ebp - 0x10], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100a214a
call edi
lea eax, [ebp - 4]
mov byte [ebp - 0x18], 0xe8
push eax
push 0x40
push 5
sub ebx, 0x911ac0
mov dword [ebp - 4], 0
push 0x911abb
mov dword [ebp - 0x17], ebx
call esi
test eax, eax
je 0x100a2198
mov eax, dword [ebp - 0x18]
mov ecx, 0x911abb
mov dword [ecx], eax
mov al, byte [ebp - 0x14]
mov byte [ecx + 4], al
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 4]
mov dword [ebp - 0x10], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100a219a
call edi
push 0x100a1690
push 0x58101a
push 0xff
call fcn.100cc8e0
push 0x100a1690
push 0x58105b
push 0xff
call fcn.100cc8e0
push 0x100a1690
push 0x58109c
push 0xff
call fcn.100cc8e0
push 0x100a1690
push 0x5810dd
push 0xff
call fcn.100cc8e0
push 0x100a1690
push 0x58111e
push 0xff
call fcn.100cc8e0
push 0x100a1690
push 0x58115f
push 0xff
call fcn.100cc8e0
add esp, 0x48
push 0x100a1690
push 0x5811a0
push 0xff
call fcn.100cc8e0
push 0x100a1690
push 0x5811e1
push 0xff
call fcn.100cc8e0
push 0x100a1690
push 0x581222
push 0xff
call fcn.100cc8e0
push 0x100a1690
push 0x581263
push 0xff
call fcn.100cc8e0
push 0x100a1690
push 0x5812a8
push 0xff
call fcn.100cc8e0
push 0x100a1690
push 0x5812ed
push 0xff
call fcn.100cc8e0
add esp, 0x48
push 0x100a1690
push 0x58132e
push 0xff
call fcn.100cc8e0
push 0x100a1690
push 0x58136f
push 0xff
call fcn.100cc8e0
push 0x100a1690
push 0x5813b4
push 0xff
call fcn.100cc8e0
push 0x100a1690
push 0x5813f9
push 0xff
call fcn.100cc8e0
push 0x100a1690
push 0x586859
push 0xff
call fcn.100cc8e0
add esp, 0x3c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret