Function at 0x10082850
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 0x100827f0
push 0x5914ab
push 0xe8
call fcn.100d5c50
push 0x100827f0
push 0x5914c7
push 0xe8
call fcn.100d5c50
push 0x100827f0
push 0x5a0652
push 0xe8
call fcn.100d5c50
push 0x100827f0
push 0x5a0775
push 0xe8
call fcn.100d5c50
push 0x100827f0
push 0x5b6cf4
push 0xe8
call fcn.100d5c50
push 0x100827f0
push 0x7e05a8
push 0xe8
call fcn.100d5c50
add esp, 0x48
push 6
call fcn.10131c6d
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov edi, eax
add esp, 4
mov dword [ebp - 4], 0
mov eax, 0x90909090
mov dword [edi], eax
mov word [edi + 4], ax
lea eax, [ebp - 4]
push eax
push 0x40
push 6
push 0x74a128
call esi
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x10082939
mov eax, dword [edi]
mov ecx, 0x74a128
mov dword [ecx], eax
mov ax, word [edi + 4]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x1008293b
call ebx
mov eax, 0x10081e80
mov byte [ebp - 0x10], 0xe9
sub eax, 0x74a12d
mov dword [ebp - 4], 0
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x74a128
call esi
test eax, eax
je 0x1008298d
mov eax, dword [ebp - 0x10]
mov ecx, 0x74a128
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 0x1008298f
call ebx
push 6
call fcn.10131c6d
mov edi, eax
mov dword [ebp - 4], 0
add esp, 4
mov eax, 0x90909090
mov dword [edi], eax
mov word [edi + 4], ax
lea eax, [ebp - 4]
push eax
push 0x40
push 6
push 0x5cc8e4
call esi
test eax, eax
je 0x100829e8
mov eax, dword [edi]
mov ecx, 0x5cc8e4
mov dword [ecx], eax
mov ax, word [edi + 4]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x100829ea
call ebx
mov eax, 0x10081fe0
mov byte [ebp - 0x10], 0xe9
sub eax, 0x5cc8e9
mov dword [ebp - 4], 0
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x5cc8e4
call esi
test eax, eax
je 0x10082a3c
mov eax, dword [ebp - 0x10]
mov ecx, 0x5cc8e4
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 0x10082a3e
call ebx
mov edi, 0x56595e
mov ebx, 6
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push edi
call esi
lea eax, [ebp - 4]
mov byte [edi], 0x90
push eax
push dword [ebp - 4]
push 1
push edi
call esi
inc edi
sub ebx, 1
jne 0x10082a48
push 7
call fcn.10131c6d
mov edi, eax
mov dword [ebp - 4], ebx
mov eax, 0x90909090
add esp, 4
mov dword [edi], eax
mov word [edi + 4], ax
mov byte [edi + 6], al
lea eax, [ebp - 4]
push eax
push 0x40
push 7
push 0x566178
call esi
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x10082acc
mov eax, dword [edi]
mov ecx, 0x566178
mov dword [ecx], eax
mov ax, word [edi + 4]
mov word [ecx + 4], ax
mov al, byte [edi + 6]
mov byte [ecx + 6], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 7
push ecx
call esi
test eax, eax
jne 0x10082ace
call ebx
mov eax, 0x100820a0
mov byte [ebp - 0x10], 0xe9
sub eax, 0x56617d
mov dword [ebp - 4], 0
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x566178
call esi
test eax, eax
je 0x10082b20
mov eax, dword [ebp - 0x10]
mov ecx, 0x566178
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 0x10082b22
call ebx
push 6
call fcn.10131c6d
mov edi, eax
mov dword [ebp - 4], 0
add esp, 4
mov eax, 0x90909090
mov dword [edi], eax
mov word [edi + 4], ax
lea eax, [ebp - 4]
push eax
push 0x40
push 6
push 0x749dcc
call esi
test eax, eax
je 0x10082b7b
mov eax, dword [edi]
mov ecx, 0x749dcc
mov dword [ecx], eax
mov ax, word [edi + 4]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x10082b7d
call ebx
mov eax, 0x10081f30
mov byte [ebp - 0x10], 0xe9
sub eax, 0x749dd1
mov dword [ebp - 4], 0
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x749dcc
call esi
test eax, eax
je 0x10082bcf
mov eax, dword [ebp - 0x10]
mov ecx, 0x749dcc
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 0x10082bd1
call ebx
push 6
call fcn.10131c6d
mov edi, eax
mov dword [ebp - 4], 0
add esp, 4
mov eax, 0x90909090
mov dword [edi], eax
mov word [edi + 4], ax
lea eax, [ebp - 4]
push eax
push 0x40
push 6
push 0x56595e
call esi
test eax, eax
je 0x10082c2a
mov eax, dword [edi]
mov ecx, 0x56595e
mov dword [ecx], eax
mov ax, word [edi + 4]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x10082c2c
call ebx
mov eax, 0x10082770
mov byte [ebp - 0x10], 0xe9
sub eax, 0x565963
mov dword [ebp - 4], 0
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x56595e
call esi
test eax, eax
je 0x10082c7e
mov eax, dword [ebp - 0x10]
mov ecx, 0x56595e
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 0x10082c80
call ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret