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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov eax, dword [0x10149040]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
push 0x1000f7c0
push 0x789084
push 0xe9
call fcn.1007db20
push 0x1000f730
push 0x7890c6
push 0xe9
call fcn.1007db20
push 0x1000f800
push 0x787748
push 0xe8
call fcn.1007db20
push 0x1000f840
push 0x787847
push 0xe8
call fcn.1007db20
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 8]
add esp, 0x30
push eax
push 0x40
push 4
push 0x7856eb
call esi
lea eax, [ebp - 8]
mov dword [0x7856eb], 0x1013a5e0
push eax
push dword [ebp - 8]
push 4
push 0x7856eb
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 4
push 0x78566b
call esi
lea eax, [ebp - 8]
mov dword [0x78566b], 0x1013a614
push eax
push dword [ebp - 8]
push 4
push 0x78566b
call esi
push 0x1000ebd0
push 0x78b09a
push 0xe8
call fcn.1007db20
push 0x7867b3
push 0x7867a5
push 0xe9
call fcn.1007db20
push 0x1000ee00
push 0x78b0cf
push 0xe8
call fcn.1007db20
add esp, 0x24
lea eax, [ebp - 8]
push eax
push 0x40
push 4
push 0x788a2d
call esi
lea eax, [ebp - 8]
mov dword [0x788a2d], 0x13a
push eax
push dword [ebp - 8]
push 4
push 0x788a2d
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 0x23a
push 0x787960
call esi
push 0x23a
push 0x90
push 0x787960
call fcn.100e5530
add esp, 0xc
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 0x23a
push 0x787960
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x787c7d
call esi
mov eax, 0x787c7d
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push 0x787c7d
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x7863a8
call esi
mov eax, 0x7863a8
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push 0x7863a8
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x78641e
call esi
mov eax, 0x78641e
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push 0x78641e
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x7864b3
call esi
mov eax, 0x7864b3
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push 0x7864b3
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x7862e2
call esi
mov eax, 0x7862e2
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push 0x7862e2
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x78653e
call esi
mov eax, 0x78653e
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push 0x78653e
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x786574
call esi
mov eax, 0x786574
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push 0x786574
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x7877fe
call esi
mov eax, 0x7877fe
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push 0x7877fe
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x787893
call esi
mov eax, 0x787893
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push 0x787893
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x7878de
call esi
mov eax, 0x7878de
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push 0x7878de
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x787931
call esi
mov eax, 0x787931
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push 0x787931
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x785c6a
call esi
mov eax, 0x785c6a
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push 0x785c6a
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x785ca7
call esi
mov eax, 0x785ca7
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push 0x785ca7
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x785965
call esi
lea eax, [ebp - 8]
mov byte [0x785965], 6
push eax
push dword [ebp - 8]
push 1
push 0x785965
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x78595b
call esi
lea eax, [ebp - 8]
mov byte [0x78595b], 9
push eax
push dword [ebp - 8]
push 1
push 0x78595b
call esi
push 0x1000f900
push 0x78633c
push 0xe9
call fcn.1007db20
add esp, 0xc
mov byte [ebp - 0x14], 0xe9
mov eax, 0x1000f920
mov dword [ebp - 8], 0
sub eax, 0x85a42a
mov dword [ebp - 0x13], eax
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x85a425
call esi
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x1000ff62
mov eax, dword [ebp - 0x14]
mov ecx, 0x85a425
mov dword [ecx], eax
mov al, byte [ebp - 0x10]
mov byte [ecx + 4], al
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 8]
mov dword [ebp - 0xc], 0
push 5
push ecx
call esi
test eax, eax
jne 0x1000ff64
call edi
mov eax, 0x1000f960
mov byte [ebp - 0x14], 0xe9
sub eax, 0x85a0a2
mov dword [ebp - 8], 0
mov dword [ebp - 0x13], eax
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x85a09d
call esi
test eax, eax
je 0x1000ffb6
mov eax, dword [ebp - 0x14]
mov ecx, 0x85a09d
mov dword [ecx], eax
mov al, byte [ebp - 0x10]
mov byte [ecx + 4], al
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 8]
mov dword [ebp - 0xc], 0
push 5
push ecx
call esi
test eax, eax
jne 0x1000ffb8
call edi
mov eax, 0x1000f990
mov byte [ebp - 0x14], 0xe9
sub eax, 0x785a59
mov dword [ebp - 8], 0
mov dword [ebp - 0x13], eax
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x785a54
call esi
test eax, eax
je 0x1001000a
mov eax, dword [ebp - 0x14]
mov ecx, 0x785a54
mov dword [ecx], eax
mov al, byte [ebp - 0x10]
mov byte [ecx + 4], al
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 8]
mov dword [ebp - 0xc], 0
push 5
push ecx
call esi
test eax, eax
jne 0x1001000c
call edi
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.10080ce9
mov esp, ebp
pop ebp
ret