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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xc
push ebx
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [esp + 0x10]
push eax
push 0x40
push 4
push 0xc8d4c0
call edi
lea eax, [esp + 0x10]
mov dword [0xc8d4c0], 5
push eax
push 0x20
push 1
push 0x748c2b
call edi
mov bl, byte [0x748c2b]
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x14]
push 1
push 0x748c2b
call edi
lea eax, [esp + 0x10]
push eax
cmp bl, 0xe8
jne 0x1000d62a
push 0x40
push 5
push 0x748c2b
call edi
mov eax, 0x748c2b
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x14]
push 5
push 0x748c2b
jmp 0x1000d681
push 0x20
push 1
push 0x748c7b
call edi
mov bl, byte [0x748c7b]
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x14]
push 1
push 0x748c7b
call edi
cmp bl, 0xe8
jne 0x1000d683
lea eax, [esp + 0x10]
push eax
push 0x40
push 5
push 0x748c7b
call edi
mov eax, 0x748c7b
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x14]
push 5
push 0x748c7b
call edi
lea eax, [esp + 0x10]
push eax
push 0x20
push 1
push 0x5909aa
call edi
mov bl, byte [0x5909aa]
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x14]
push 1
push 0x5909aa
call edi
cmp bl, 0xbe
jne 0x1000d6ca
lea eax, [esp + 0x10]
push eax
push 0x40
push 4
push 0x5909ab
call edi
mov dword [0x5909ab], 1
lea eax, [esp + 0x10]
push eax
push 0x20
push 1
push 0x590a1d
call edi
mov bl, byte [0x590a1d]
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x14]
push 1
push 0x590a1d
call edi
cmp bl, 0xbe
jne 0x1000d728
lea eax, [esp + 0x10]
push eax
push 0x40
push 1
push 0x590a1d
call edi
lea eax, [esp + 0x10]
mov byte [0x590a1d], 0xe9
push eax
push 0x40
push 4
push 0x590a1e
call edi
mov dword [0x590a1e], 0x8d
lea eax, [esp + 0x10]
push eax
push 0x20
push 1
push 0x5737e0
call edi
mov bl, byte [0x5737e0]
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x14]
push 1
push 0x5737e0
call edi
cmp bl, 0x74
jne 0x1000d76c
lea eax, [esp + 0x10]
push eax
push 0x40
push 1
push 0x5737e0
call edi
mov byte [0x5737e0], 0x75
lea eax, [esp + 0x10]
push eax
push 0x20
push 1
push 0x590af0
call edi
mov bl, byte [0x590af0]
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x14]
push 1
push 0x590af0
call edi
cmp bl, 0xa1
jne 0x1000d7ca
lea eax, [esp + 0x10]
push eax
push 0x40
push 1
push 0x590af0
call edi
lea eax, [esp + 0x10]
mov byte [0x590af0], 0xe9
push eax
push 0x40
push 4
push 0x590af1
call edi
mov dword [0x590af1], 0x140
lea eax, [esp + 0x10]
push eax
push 0x20
push 1
push 0x748e52
call edi
mov bl, byte [0x748e52]
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x14]
push 1
push 0x748e52
call edi
cmp bl, 0x74
jne 0x1000d800
mov word [0x748e52], 0x1275
lea eax, [esp + 0x10]
push eax
push 0x20
push 1
push 0x619440
call edi
mov bl, byte [0x619440]
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x14]
push 1
push 0x619440
call edi
cmp bl, 0xe9
jne 0x1000d85d
mov eax, dword [0x619441]
mov esi, 0x1000d990
add eax, 0x619445
sub esi, 0x619445
mov dword [0x10041fd8], eax
lea eax, [esp + 0x10]
push eax
push 0x40
push 4
push 0x619441
call edi
mov dword [0x619441], esi
lea eax, [esp + 0x10]
push eax
push 0x20
push 1
push 0x748d1a
call edi
mov bl, byte [0x748d1a]
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x14]
push 1
push 0x748d1a
call edi
cmp bl, 0xe9
jne 0x1000d8bc
mov eax, dword [0x748d1b]
mov esi, 0x1000d9c0
add eax, 0x748d1f
sub esi, 0x748d1f
mov dword [0x10041fd4], eax
lea eax, [esp + 0x10]
push eax
push 0x40
push 4
push 0x748d1b
call edi
mov dword [0x748d1b], esi
jmp 0x1000d919
lea eax, [esp + 0x10]
push eax
push 0x20
push 1
push 0x748d6a
call edi
mov bl, byte [0x748d6a]
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x14]
push 1
push 0x748d6a
call edi
cmp bl, 0xe9
jne 0x1000d919
mov eax, dword [0x748d6b]
mov esi, 0x1000d9c0
add eax, 0x748d6f
sub esi, 0x748d6f
mov dword [0x10041fd4], eax
lea eax, [esp + 0x10]
push eax
push 0x40
push 4
push 0x748d6b
call edi
mov dword [0x748d6b], esi
lea eax, [esp + 0x10]
push eax
push 0x20
push 1
push 0x573683
call edi
mov bl, byte [0x573683]
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x14]
push 1
push 0x573683
call edi
cmp bl, 0x8a
jne 0x1000d97e
lea eax, [esp + 0x10]
push eax
push 0x40
push 1
push 0x573683
call edi
lea eax, [esp + 0x10]
mov byte [0x573683], 0xe9
push eax
push 0x40
push 4
mov esi, 0x1000da20
push 0x573684
sub esi, 0x573688
call edi
mov dword [0x573684], esi
pop edi
pop esi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret