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

Disassembly:
push ebp
mov ebp, esp
push ecx
mov eax, dword [0x10018228]
cmp dword [eax + 0xab573c], 4
jne 0x1000187f
cmp dword [eax + 0xab5738], 4
jne 0x1000187f
push esi
mov esi, dword [0x10018254]
lea eax, [ebp - 4]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
add esi, 0x1c
cmp byte [0x10018218], 0
push eax
push 0x40
push 1
mov dword [ebp - 4], 0
push esi
mov byte [0x10018218], 1
je 0x1000133b
mov byte [0x10018218], 0
call edi
movzx eax, byte [str._vt]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0x3c639c
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015b70]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0x3c63a1
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015b74]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0x3cb872
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015b78]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 6
add esi, 0x34dda2
mov dword [ebp - 4], 0
push esi
call edi
mov eax, dword [0x10015b7c]
push 0
push dword [ebp - 4]
mov dword [esi], eax
movzx eax, word [0x10015b80]
push 6
push esi
mov word [esi + 4], ax
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 6
add esi, 0x34ddaa
push esi
mov dword [ebp - 4], 0
call edi
mov eax, dword [0x10015b84]
push 0
push dword [ebp - 4]
mov dword [esi], eax
movzx eax, word [0x10015b88]
push 6
push esi
mov word [esi + 4], ax
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 2
add esi, 0x35fa4a
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, word [0x10015b8c]
push 0
push dword [ebp - 4]
mov word [esi], ax
push 2
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0x2851b2
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015b90]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 5
add esi, 0x74c9f1
mov dword [ebp - 4], 0
push esi
call edi
mov eax, dword [0x10015b94]
push 0
push dword [ebp - 4]
mov dword [esi], eax
movzx eax, byte [0x10015b98]
push 5
push esi
mov byte [esi + 4], al
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 3
add esi, 0x3564b8
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, word [0x10015b9c]
push 0
push dword [ebp - 4]
mov word [esi], ax
movzx eax, byte [0x10015b9e]
push 3
push esi
mov byte [esi + 2], al
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 2
add esi, 0x282a5c
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, word [0x10015ba0]
push 0
push dword [ebp - 4]
mov word [esi], ax
push 2
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0x399a98
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015b78]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 2
add esi, 0x3a159b
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, word [0x10015ba4]
push 0
push dword [ebp - 4]
mov word [esi], ax
push 2
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0x361176
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015b90]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0x36143c
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015ba8]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
lea eax, [ebp - 4]
push eax
push 0x40
mov esi, dword [0x1001824c]
push 1
add esi, 0x43ee96
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015bac]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0x43ee99
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015bb0]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0x43eea9
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015bac]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0x43eeac
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015bb0]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0x38e9f1
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015bb4]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 2
add esi, 0x4b7d3
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, word [0x10015bb8]
push 0
push dword [ebp - 4]
mov word [esi], ax
push 2
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0x3a14db
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015b90]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 6
add esi, 0x2026dc
mov dword [ebp - 4], 0
push esi
call edi
mov eax, dword [0x10015bbc]
push 0
push dword [ebp - 4]
mov dword [esi], eax
movzx eax, word [0x10015bc0]
push 6
push esi
mov word [esi + 4], ax
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0xc838d
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015bb0]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0x28e1de
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015b90]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
add esi, 0x34f2a8
push eax
push 0x40
push 2
push esi
mov dword [ebp - 4], 0
call edi
movzx eax, word [0x10015bc4]
push 0
push dword [ebp - 4]
mov word [esi], ax
push 2
push esi
call edi
mov esi, dword [0x1001824c]
lea eax, [ebp - 4]
push eax
push 0x40
push 1
add esi, 0x34f2e9
mov dword [ebp - 4], 0
push esi
call edi
movzx eax, byte [0x10015bc8]
push 0
push dword [ebp - 4]
mov byte [esi], al
push 1
push esi
call edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret