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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push esi
push edi
push 0x100a3ca0
push 0x55a35f
push 0xe8
call fcn.100d0420
push 0x100a3660
push 0x61fe3f
push 0xff
call fcn.100d0420
push 0x100a36b0
push 0x61b410
push 0xff
call fcn.100d0420
push 0x100a36b0
push 0x61feea
push 0xff
call fcn.100d0420
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 4]
add esp, 0x30
mov dword [ebp - 4], 0
push eax
push 0x40
push 1
push 0x559b85
call esi
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x100a4223
lea eax, [ebp - 8]
mov byte [0x559b85], 0xff
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 1
push 0x559b85
call esi
test eax, eax
jne 0x100a4225
call edi
lea eax, [ebp - 4]
mov dword [ebp - 4], 0
push eax
push 0x40
push 1
push 0x559b86
call esi
test eax, eax
je 0x100a4261
lea eax, [ebp - 8]
mov byte [0x559b86], 0xff
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 1
push 0x559b86
call esi
test eax, eax
jne 0x100a4263
call edi
push ebx
push 0x100a3c40
push 0x55e4c5
push 0xe9
call fcn.100d0420
mov ebx, 0x100a3700
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 0x100a42ce
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 0x100a42d0
call edi
mov eax, 0x100a3700
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 0x100a4325
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 0x100a4327
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 0x100a4372
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 0x100a4374
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 0x100a43c2
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 0x100a43c4
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 0x100a4412
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 0x100a4414
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 0x100a4462
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 0x100a4464
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 0x100a44b2
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 0x100a44b4
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 0x100a4502
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 0x100a4504
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 0x100a4552
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 0x100a4554
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 0x100a45a2
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 0x100a45a4
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 0x100a45f2
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 0x100a45f4
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 0x100a4642
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 0x100a4644
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 0x100a4692
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 0x100a4694
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
pop ebx
test eax, eax
je 0x100a46e3
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 0x100a46e5
call edi
push 0x100a3bf0
push 0x58101a
push 0xff
call fcn.100d0420
push 0x100a3bf0
push 0x58105b
push 0xff
call fcn.100d0420
push 0x100a3bf0
push 0x58109c
push 0xff
call fcn.100d0420
push 0x100a3bf0
push 0x5810dd
push 0xff
call fcn.100d0420
push 0x100a3bf0
push 0x58111e
push 0xff
call fcn.100d0420
push 0x100a3bf0
push 0x58115f
push 0xff
call fcn.100d0420
add esp, 0x48
push 0x100a3bf0
push 0x5811a0
push 0xff
call fcn.100d0420
push 0x100a3bf0
push 0x5811e1
push 0xff
call fcn.100d0420
push 0x100a3bf0
push 0x581222
push 0xff
call fcn.100d0420
push 0x100a3bf0
push 0x581263
push 0xff
call fcn.100d0420
push 0x100a3bf0
push 0x5812a8
push 0xff
call fcn.100d0420
push 0x100a3bf0
push 0x5812ed
push 0xff
call fcn.100d0420
add esp, 0x48
push 0x100a3bf0
push 0x58132e
push 0xff
call fcn.100d0420
push 0x100a3bf0
push 0x58136f
push 0xff
call fcn.100d0420
push 0x100a3bf0
push 0x5813b4
push 0xff
call fcn.100d0420
push 0x100a3bf0
push 0x5813f9
push 0xff
call fcn.100d0420
push 0x100a3bf0
push 0x586859
push 0xff
call fcn.100d0420
add esp, 0x3c
pop edi
pop esi
mov esp, ebp
pop ebp
ret