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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
push edi
push 0x100944e0
push 0x7e3e5a
mov bl, 0xe9
call fcn.10098b80
push 0x100960d0
push 0x4e8b80
call fcn.10098b80
push 0x100943c0
push 0x4e8990
call fcn.10098b80
push 0x6e00
push 0
push 0x10600cf8
call sub.MSVCR100.dll_memset
add esp, 0x24
mov esi, 0xd
mov ebx, 0x4e956e
mov dword [0x10600cd4], 0x10600cf8
mov dword [0x10600cd8], 0x4e957b
call fcn.10098e00
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea ecx, [ebp - 4]
push ecx
push 0x40
mov eax, 0x100963f0
push 5
sub eax, 0x4e9573
push ebx
mov byte [ebp - 0x10], 0xe9
mov dword [ebp - 0xf], eax
mov dword [ebp - 4], 0
call edi
test eax, eax
je 0x10096591
mov edx, dword [ebp - 0x10]
mov cl, byte [ebp - 0xc]
mov eax, ebx
mov dword [eax], edx
mov byte [eax + 4], cl
mov eax, dword [ebp - 4]
lea edx, [ebp - 8]
push edx
push eax
push 5
push ebx
mov dword [ebp - 8], 0
call edi
test eax, eax
jne 0x10096597
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 0xa
mov ebx, 0x4e926b
mov dword [0x10600cdc], 0x4e9275
call fcn.10098e00
lea edx, [ebp - 4]
push edx
push 0x40
mov ecx, 0x10096400
push 5
sub ecx, 0x4e9270
mov bl, 0xe9
xor esi, esi
push 0x4e926b
mov byte [ebp - 0x10], bl
mov dword [ebp - 0xf], ecx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x10096603
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, 0x4e926b
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push 0x4e926b
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x10096609
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0x100945b0
push 0x5bfad8
call fcn.10098b80
push 0x10094ff0
push 0x7e5cb6
mov bl, 0xe8
call fcn.10098b80
push fcn.10094670
push 0x5bfc9b
call fcn.10098b80
add esp, 0x18
cmp dword [0x105d0678], esi
jne 0x1009666c
mov esi, 0xa
mov ebx, 0x4ec4c4
mov dword [0x10600ce0], 0x4ec4ce
call fcn.10098e00
mov cl, 0xe9
mov eax, 0x10096410
mov esi, ebx
call fcn.10097e80
jmp 0x100966bc
push 0x100964b0
push 0x4ebc06
mov bl, 0xe9
call fcn.10098b80
push 0x10094520
push 0x5bfec6
call fcn.10098b80
push 0x10094560
push 0x5bfe5f
call fcn.10098b80
push 0x100945a0
push 0x5c0000
call fcn.10098b80
push 0x10095850
push 0x4ec410
call fcn.10098b80
add esp, 0x28
mov esi, 0xa
mov ebx, 0x4ec2a5
mov dword [0x10600ce4], 0x4ec2af
call fcn.10098e00
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10096420
push 5
sub edx, 0x4ec2aa
xor esi, esi
push ebx
mov byte [ebp - 0x10], 0xe9
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x1009671c
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, ebx
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push ebx
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x10096722
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 0xa
mov ebx, 0x4ec3a9
mov dword [0x10600ce8], 0x4ec3b3
call fcn.10098e00
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10096430
push 5
sub edx, 0x4ec3ae
xor esi, esi
push ebx
mov byte [ebp - 0x10], 0xe9
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x10096782
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, ebx
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push ebx
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x10096788
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 0xd
mov ebx, 0x4ebd7f
mov dword [0x10600cec], 0x4ebd8c
call fcn.10098e00
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10096440
push 5
sub edx, 0x4ebd84
xor esi, esi
push ebx
mov byte [ebp - 0x10], 0xe9
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x100967e8
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, ebx
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push ebx
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x100967ee
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 0xa
mov ebx, 0x4ebee9
mov dword [0x10600cf0], 0x4ebef3
call fcn.10098e00
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10096450
push 5
sub edx, 0x4ebeee
xor esi, esi
push ebx
mov byte [ebp - 0x10], 0xe9
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x1009684e
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, ebx
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push ebx
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x10096854
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 0xa
mov ebx, 0x4ecaaa
mov dword [0x10600cf4], 0x4ecab4
call fcn.10098e00
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10096460
push 5
sub edx, 0x4ecaaf
xor esi, esi
push ebx
mov byte [ebp - 0x10], 0xe9
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x100968b4
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, ebx
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push ebx
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x100968ba
call dword [sym.imp.KERNEL32.dll_GetLastError]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret