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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1010f70d
mov eax, dword fs:[0]
push eax
sub esp, 0x44
mov eax, dword [0x1012e010]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push dword [0x10130518]
call fcn.1004f130
push str.Data__Local__General__Lua__CharacterSystem__CharacterCreateCape.lua
mov ecx, 0x10130514
call fcn.10040410
mov esi, dword [0x10130518]
lea ecx, [ebp - 0x28]
push 9
mov dword [ebp - 0x28], 0
push str.CapeStack
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.100101d0
push ecx
lea eax, [ebp - 0x28]
mov dword [ebp - 4], 0
push eax
push esi
lea ecx, [ebp - 0x30]
call fcn.10019200
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x10018f51
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10018f47
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100191ed
push edx
push ecx
call fcn.100820e9
add esp, 8
cmp dword [0x1013e098], 0x10
lea ecx, [ebp - 0x20]
mov esi, dword [ebp - 0x30]
mov eax, 0x1013e084
cmovae eax, dword [0x1013e084]
push ecx
push eax
push esi
mov dword [ebp - 0x20], 0x10121b14
mov dword [ebp - 0x1c], 0x1001be50
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
call fcn.10086880
add esp, 0xc
push 0xfffffffffffffffe
push esi
call fcn.10084650
lea ecx, [ebp - 0x30]
call fcn.1001bf80
sub esp, 8
lea ecx, [ebp - 0x30]
call fcn.1001c1f0
sub esp, 8
lea ecx, [ebp - 0x30]
call fcn.1001c460
sub esp, 8
lea ecx, [ebp - 0x30]
call fcn.1001c6d0
push dword [0x10130518]
call fcn.100183f0
mov ecx, dword [0x10130518]
call fcn.100512e0
push 2
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x28]
push 0x101219e0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.100101d0
lea eax, [ebp - 0x28]
mov dword [ebp - 4], 1
push eax
push dword [0x10130518]
lea ecx, [ebp - 0x4c]
call fcn.1000d660
sub esp, 8
mov byte [ebp - 4], 2
mov ecx, eax
call fcn.1001bc00
mov edx, dword [ebp - 0x34]
cmp edx, 0x10
jb 0x1001905b
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10019051
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100191f2
push edx
push ecx
call fcn.100820e9
add esp, 8
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
cmp edx, 0x10
jb 0x100190a1
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10019097
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100191f2
push edx
push ecx
call fcn.100820e9
add esp, 8
push 0x10018700
push 0x57232e
push 0xe9
call fcn.1007ca60
add esp, 0xc
push 0x100187a0
push 0x5757d4
push 0xe9
call fcn.1007ca60
add esp, 0xc
push 0x10018810
push 0x574667
push 0xe9
call fcn.1007ca60
add esp, 0xc
push 0x10018880
push 0x5750fb
push 0xe9
call fcn.1007ca60
add esp, 0xc
push 0x10018960
push 0x5fa844
push 0xe9
call fcn.1007ca60
add esp, 0xc
push 0x10018ab0
push 0x5658b6
push 0xe9
call fcn.1007ca60
add esp, 0xc
push 0x10018b80
push 0x8362a2
push 0xe9
call fcn.1007ca60
add esp, 0xc
push 0x10018bd0
push 0x83640e
push 0xe9
call fcn.1007ca60
add esp, 0xc
push 0x10018c20
push 0x57605b
push 0xe9
call fcn.1007ca60
add esp, 0xc
push 0x10018c60
push 0x576144
push 0xe9
call fcn.1007ca60
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 0x2c]
add esp, 0xc
push eax
push 0x40
push 6
push 0x51ec76
call esi
mov eax, 0x51ec76
mov ecx, 0x90909090
mov dword [eax], ecx
mov word [eax + 4], cx
lea eax, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
push 6
push 0x51ec76
call esi
push 0x10018cd0
push 0x51ec76
push 0xe9
call fcn.1007ca60
add esp, 0xc
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10081d3c
mov esp, ebp
pop ebp
ret
call fcn.100e403e
call fcn.100e403e
int3