Function at 0x100ae700
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 0x100ae520
push 0x4d6c3e
mov bl, 0xe8
call fcn.100b6700
push 0x100ae570
push 0x4d7141
call fcn.100b6700
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
add esp, 0x10
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x4d7146
call edi
lea ecx, [ebp - 4]
push ecx
mov byte [0x4d7146], 0x90
mov edx, dword [ebp - 4]
push edx
push 1
push 0x4d7146
call edi
mov esi, 5
mov ebx, 0x4d6c26
call fcn.100b6570
lea ecx, [ebp - 4]
push ecx
push 0x40
mov eax, 0x100ae290
push 5
sub eax, 0x4d6c2b
xor esi, esi
push ebx
mov byte [ebp - 0x10], 0xe9
mov dword [ebp - 0xf], eax
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x100ae7ae
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], esi
call edi
test eax, eax
jne 0x100ae7b4
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 5
mov ebx, 0x4d8af0
call fcn.100b6570
lea edx, [ebp - 4]
push edx
push 0x40
mov ecx, 0x100ae2b0
push 5
sub ecx, 0x4d8af5
xor esi, esi
push ebx
mov byte [ebp - 0x10], 0xe9
mov dword [ebp - 0xf], ecx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x100ae80a
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 0x100ae810
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 5
mov ebx, 0x63d1ce
call fcn.100b6570
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x100ae340
push 5
sub edx, 0x63d1d3
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 0x100ae866
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 0x100ae86c
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 5
mov ebx, 0x63d40f
call fcn.100b6570
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x100ae370
push 5
sub edx, 0x63d414
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 0x100ae8c2
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 0x100ae8c8
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 5
mov ebx, 0x63d1eb
call fcn.100b6570
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x100ae3a0
push 5
sub edx, 0x63d1f0
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 0x100ae91e
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 0x100ae924
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 5
mov ebx, 0x63d42c
call fcn.100b6570
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x100ae3d0
push 5
sub edx, 0x63d431
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 0x100ae97a
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 0x100ae980
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 5
mov ebx, 0x63d208
call fcn.100b6570
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x100ae400
push 5
sub edx, 0x63d20d
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 0x100ae9d6
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 0x100ae9dc
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 5
mov ebx, 0x63d449
call fcn.100b6570
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x100ae430
push 5
sub edx, 0x63d44e
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 0x100aea32
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 0x100aea38
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 5
mov ebx, 0x63d225
call fcn.100b6570
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x100ae460
push 5
sub edx, 0x63d22a
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 0x100aea8e
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 0x100aea94
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 5
mov ebx, 0x63d466
call fcn.100b6570
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x100ae490
push 5
sub edx, 0x63d46b
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 0x100aeaea
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 0x100aeaf0
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 5
mov ebx, 0x63d242
call fcn.100b6570
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x100ae4c0
push 5
sub edx, 0x63d247
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 0x100aeb46
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 0x100aeb4c
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 5
mov ebx, 0x63d483
call fcn.100b6570
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x100ae4f0
push esi
sub edx, 0x63d488
xor ebx, ebx
push 0x63d483
mov byte [ebp - 0x10], 0xe9
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], ebx
call edi
test eax, eax
jne 0x100aeb8e
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
jmp 0x100aebc2
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, 0x63d483
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 0x63d483
mov dword [ebp - 8], ebx
call edi
test eax, eax
jne 0x100aebbc
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
lea edx, [ebp - 4]
push edx
push 0x40
push 1
push 0x57f0fc
mov dword [ebp - 4], ebx
call edi
test eax, eax
je 0x100aebf5
mov ecx, 0x57f0fc
mov al, 0xe9
mov byte [ecx], al
mov eax, dword [ebp - 4]
lea edx, [ebp - 8]
push edx
push eax
push 1
push ecx
mov dword [ebp - 8], ebx
call edi
test eax, eax
jne 0x100aebf7
call esi
lea ecx, [ebp - 4]
push ecx
push 0x40
push 1
push 0x57f0fd
mov dword [ebp - 4], ebx
call edi
test eax, eax
je 0x100aec2a
mov edx, 0x57f0fd
mov al, 0x4a
mov byte [edx], al
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 1
push edx
mov dword [ebp - 8], ebx
call edi
test eax, eax
jne 0x100aec2c
call esi
lea edx, [ebp - 4]
push edx
push 0x40
push 1
push 0x57f0fe
mov dword [ebp - 4], ebx
call edi
test eax, eax
je 0x100aec5f
mov ecx, 0x57f0fe
mov al, 1
mov byte [ecx], al
mov eax, dword [ebp - 4]
lea edx, [ebp - 8]
push edx
push eax
push 1
push ecx
mov dword [ebp - 8], ebx
call edi
test eax, eax
jne 0x100aec61
call esi
lea ecx, [ebp - 4]
push ecx
push 0x40
push 1
push 0x57f0ff
mov dword [ebp - 4], ebx
call edi
test eax, eax
je 0x100aec92
mov edx, 0x57f0ff
mov byte [edx], bl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 1
push edx
mov dword [ebp - 8], ebx
call edi
test eax, eax
jne 0x100aec98
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea edx, [ebp - 4]
push edx
push 0x40
push 1
push 0x57f100
mov dword [ebp - 4], ebx
call edi
test eax, eax
jne 0x100aecb6
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x100aecd7
mov eax, 0x57f100
mov byte [eax], bl
mov edx, dword [ebp - 4]
lea ecx, [ebp - 8]
push ecx
push edx
push 1
push eax
mov dword [ebp - 8], ebx
call edi
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x100aecd9
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x57f101
mov dword [ebp - 4], ebx
call edi
test eax, eax
je 0x100aed0c
mov ecx, 0x57f101
mov al, 0x90
mov byte [ecx], al
mov eax, dword [ebp - 4]
lea edx, [ebp - 8]
push edx
push eax
push 1
push ecx
mov dword [ebp - 8], ebx
call edi
test eax, eax
jne 0x100aed0e
call esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret