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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push esi
push edi
push 0x10063130
push 0x7e3e5a
push 0xe9
call fcn.100d0420
push 0x10064d80
push 0x4e8b80
push 0xe9
call fcn.100d0420
push 0x6e00
push 0
push 0x10599274
call fcn.101456e0
add esp, 0x20
mov dword [0x10599250], 0x10599274
mov edx, 0xd
mov dword [0x10599254], 0x4e957b
mov ecx, 0x4e956e
call fcn.100cfb70
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
add esp, 4
mov eax, 0x10065090
mov byte [ebp - 0x10], 0xe9
sub eax, 0x4e9573
mov dword [ebp - 4], 0
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x4e956e
call esi
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x10064338
mov eax, dword [ebp - 0x10]
mov ecx, 0x4e956e
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 0x1006433a
call edi
push ecx
mov edx, 0xa
mov dword [0x10599258], 0x4e9275
mov ecx, 0x4e926b
call fcn.100cfb70
add esp, 4
mov byte [ebp - 0x10], 0xe9
mov eax, 0x100650a0
mov dword [ebp - 4], 0
sub eax, 0x4e9270
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x4e926b
call esi
test eax, eax
je 0x100643a9
mov eax, dword [ebp - 0x10]
mov ecx, 0x4e926b
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 0x100643ab
call edi
mov eax, dword [0x1025e280]
sub eax, 0
je 0x100644cb
sub eax, 1
je 0x10064476
sub eax, 1
jne 0x10064510
push 0x10064260
push 0x5bfad8
push 0xe9
call fcn.100d0420
push 0x10064220
push 0x4ebc06
push 0xe9
call fcn.100d0420
push 0x10064250
push 0x5c0000
push 0xe9
call fcn.100d0420
push 0x10063560
push 0x7e5cb6
push 0xe8
call fcn.100d0420
push fcn.100631b0
push 0x5bfc9b
push 0xe8
call fcn.100d0420
push 0x100630f0
push 0x5bfec6
push 0xe9
call fcn.100d0420
add esp, 0x48
push 0x10063170
push 0x5bfe5f
push 0xe9
call fcn.100d0420
push 0x10064750
push 0x4ec410
push 0xe9
call fcn.100d0420
add esp, 0x18
jmp 0x10064510
push 0x10063560
push 0x7e5cb6
push 0xe8
call fcn.100d0420
push fcn.100631b0
push 0x5bfc9b
push 0xe8
call fcn.100d0420
push 0x100630f0
push 0x5bfec6
push 0xe9
call fcn.100d0420
push 0x10063170
push 0x5bfe5f
push 0xe9
call fcn.100d0420
add esp, 0x2c
jmp 0x100644cc
push ecx
mov edx, 0xa
mov dword [0x1059925c], 0x4ec4ce
mov ecx, 0x4ec4c4
call fcn.100cfb70
push 0xe9
mov edx, 0x100650b0
mov ecx, 0x4ec4c4
call fcn.100cfb00
push 0x10064170
push 0x7e5ca2
push 0xe9
call fcn.100d0420
add esp, 0x14
push ecx
mov edx, 0xa
mov dword [0x10599260], 0x4ec2af
mov ecx, 0x4ec2a5
call fcn.100cfb70
add esp, 4
mov byte [ebp - 0x10], 0xe9
mov eax, 0x100650c0
mov dword [ebp - 4], 0
sub eax, 0x4ec2aa
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x4ec2a5
call esi
test eax, eax
je 0x1006457f
mov eax, dword [ebp - 0x10]
mov ecx, 0x4ec2a5
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 0x10064581
call edi
push ecx
mov edx, 0xa
mov dword [0x10599264], 0x4ec3b3
mov ecx, 0x4ec3a9
call fcn.100cfb70
add esp, 4
mov byte [ebp - 0x10], 0xe9
mov eax, 0x100650d0
mov dword [ebp - 4], 0
sub eax, 0x4ec3ae
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x4ec3a9
call esi
test eax, eax
je 0x100645f0
mov eax, dword [ebp - 0x10]
mov ecx, 0x4ec3a9
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 0x100645f2
call edi
push ecx
mov edx, 0xd
mov dword [0x10599268], 0x4ebd8c
mov ecx, 0x4ebd7f
call fcn.100cfb70
add esp, 4
mov byte [ebp - 0x10], 0xe9
mov eax, 0x100650e0
mov dword [ebp - 4], 0
sub eax, 0x4ebd84
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x4ebd7f
call esi
test eax, eax
je 0x10064661
mov eax, dword [ebp - 0x10]
mov ecx, 0x4ebd7f
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 0x10064663
call edi
push ecx
mov edx, 0xa
mov dword [0x1059926c], 0x4ebef3
mov ecx, 0x4ebee9
call fcn.100cfb70
add esp, 4
mov byte [ebp - 0x10], 0xe9
mov eax, 0x100650f0
mov dword [ebp - 4], 0
sub eax, 0x4ebeee
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x4ebee9
call esi
test eax, eax
je 0x100646d2
mov eax, dword [ebp - 0x10]
mov ecx, 0x4ebee9
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 0x100646d4
call edi
push ecx
mov edx, 0xa
mov dword [0x10599270], 0x4ecab4
mov ecx, 0x4ecaaa
call fcn.100cfb70
add esp, 4
mov byte [ebp - 0x10], 0xe9
mov eax, 0x10065100
mov dword [ebp - 4], 0
sub eax, 0x4ecaaf
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x4ecaaa
call esi
test eax, eax
je 0x10064743
mov eax, dword [ebp - 0x10]
mov ecx, 0x4ecaaa
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 0x10064745
call edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret