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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov eax, dword [0x101a306c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push 0x1009f760
push 0x55a35f
push 0xe8
call fcn.100c9b20
push 0x1009f0e0
push 0x61fe3f
push 0xff
call fcn.100c9b20
push 0x1009f130
push 0x61b410
push 0xff
call fcn.100c9b20
push 0x1009f130
push 0x61feea
push 0xff
call fcn.100c9b20
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 8]
add esp, 0x30
mov dword [ebp - 8], 0
or bl, 0xff
push eax
push 0x40
push 1
push 0x559b85
call esi
test eax, eax
je 0x1009fcfa
mov eax, 0x559b85
mov byte [eax], bl
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 8]
mov dword [ebp - 0xc], 0
push 1
push 0x559b85
call esi
test eax, eax
jne 0x1009fd00
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push 0x40
push 1
push 0x559b86
or bl, 0xff
call esi
test eax, eax
je 0x1009fd3f
mov eax, 0x559b86
mov byte [eax], bl
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 8]
mov dword [ebp - 0xc], 0
push 1
push 0x559b86
call esi
test eax, eax
jne 0x1009fd45
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0x1009f700
push 0x55e4c5
push 0xe9
call fcn.100c9b20
push 0xe8
mov edx, 0x1009f180
mov ecx, 0x4e199d
call fcn.100c9250
push 0xe8
mov edx, 0x1009f180
mov ecx, 0x587049
call fcn.100c9250
push 0xe8
mov edx, 0x1009f180
mov ecx, 0x587049
call fcn.100c9250
push 0xe8
mov edx, 0x1009f180
mov ecx, 0x590ccc
call fcn.100c9250
push 0xe8
mov edx, 0x1009f180
mov ecx, 0x5bbee6
call fcn.100c9250
push 0xe8
mov edx, 0x1009f180
mov ecx, 0x64229d
call fcn.100c9250
push 0xe8
mov edx, 0x1009f180
mov ecx, 0x642d51
call fcn.100c9250
push 0xe8
mov edx, 0x1009f180
mov ecx, 0x643229
call fcn.100c9250
push 0xe8
mov edx, 0x1009f180
mov ecx, 0x65ea86
call fcn.100c9250
push 0xe8
mov edx, 0x1009f180
mov ecx, 0x911a53
call fcn.100c9250
push 0xe8
mov edx, 0x1009f180
mov ecx, 0x911a6d
call fcn.100c9250
push 0xe8
mov edx, 0x1009f180
mov ecx, 0x911a87
call fcn.100c9250
push 0xe8
mov edx, 0x1009f180
mov ecx, 0x911aa1
call fcn.100c9250
add esp, 0x40
mov edx, 0x1009f180
mov ecx, 0x911abb
push 0xe8
call fcn.100c9250
push 0x1009f6b0
push 0x58101a
push 0xff
call fcn.100c9b20
push 0x1009f6b0
push 0x58105b
push 0xff
call fcn.100c9b20
push 0x1009f6b0
push 0x58109c
push 0xff
call fcn.100c9b20
push 0x1009f6b0
push 0x5810dd
push 0xff
call fcn.100c9b20
push 0x1009f6b0
push 0x58111e
push 0xff
call fcn.100c9b20
add esp, 0x40
push 0x1009f6b0
push 0x58115f
push 0xff
call fcn.100c9b20
push 0x1009f6b0
push 0x5811a0
push 0xff
call fcn.100c9b20
push 0x1009f6b0
push 0x5811e1
push 0xff
call fcn.100c9b20
push 0x1009f6b0
push 0x581222
push 0xff
call fcn.100c9b20
push 0x1009f6b0
push 0x581263
push 0xff
call fcn.100c9b20
push 0x1009f6b0
push 0x5812a8
push 0xff
call fcn.100c9b20
add esp, 0x48
push 0x1009f6b0
push 0x5812ed
push 0xff
call fcn.100c9b20
push 0x1009f6b0
push 0x58132e
push 0xff
call fcn.100c9b20
push 0x1009f6b0
push 0x58136f
push 0xff
call fcn.100c9b20
push 0x1009f6b0
push 0x5813b4
push 0xff
call fcn.100c9b20
push 0x1009f6b0
push 0x5813f9
push 0xff
call fcn.100c9b20
push 0x1009f6b0
push 0x586859
push 0xff
call fcn.100c9b20
mov ecx, dword [ebp - 4]
add esp, 0x48
xor ecx, ebp
pop esi
pop ebx
call fcn.100ed713
mov esp, ebp
pop ebp
ret