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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1011165d
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x44
mov eax, dword [0x10135018]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push dword [0x10136190]
call fcn.1004dba0
push str.OgocX__Lua__CharacterSystem__CharacterCreateCape.lua
mov ecx, 0x1013618c
call fcn.1003b560
mov esi, dword [0x10136190]
lea ecx, [ebp - 0x2c]
push 9
xorps xmm0, xmm0
mov dword [ebp - 0x1c], 0
push str.CapeStack
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x18], 0
call fcn.1000cba0
push ecx
lea eax, [ebp - 0x2c]
mov dword [ebp - 4], 0
push eax
push esi
lea ecx, [ebp - 0x34]
call fcn.100132f0
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x18]
cmp ecx, 0x10
jb 0x10013041
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10013037
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100132dc
push ecx
push edx
call fcn.10081a67
add esp, 8
cmp dword [0x1013e768], 0x10
lea ecx, [ebp - 0x24]
mov esi, dword [ebp - 0x34]
mov eax, 0x1013e754
cmovae eax, dword [0x1013e754]
push ecx
push eax
push esi
mov dword [ebp - 0x24], 0x10127ca0
mov dword [ebp - 0x20], 0x10013b90
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.10086360
add esp, 0xc
push 0xfffffffffffffffe
push esi
call fcn.10084050
lea ecx, [ebp - 0x34]
call fcn.10013cc0
sub esp, 8
lea ecx, [ebp - 0x34]
call fcn.10013f70
sub esp, 8
lea ecx, [ebp - 0x34]
call fcn.10014220
sub esp, 8
lea ecx, [ebp - 0x34]
call fcn.100144d0
push dword [0x10136190]
call fcn.1003c370
mov ecx, dword [0x10136190]
call fcn.10050000
push 2
xorps xmm0, xmm0
mov dword [ebp - 0x1c], 0
push 0x10127b80
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x2c], xmm0
call fcn.1000cba0
lea eax, [ebp - 0x2c]
mov dword [ebp - 4], 1
push eax
push dword [0x10136190]
lea ecx, [ebp - 0x50]
call fcn.10007c80
sub esp, 8
mov byte [ebp - 4], 2
mov ecx, eax
call fcn.100138f0
mov ecx, dword [ebp - 0x38]
cmp ecx, 0x10
jb 0x10013147
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001313d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100132e1
push ecx
push edx
call fcn.10081a67
add esp, 8
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
cmp ecx, 0x10
jb 0x1001318d
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10013183
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100132e1
push ecx
push edx
call fcn.10081a67
add esp, 8
push 0x100127d0
push 0x57232e
push 0xe9
call fcn.100671e0
add esp, 0xc
push 0x10012880
push 0x5757d4
push 0xe9
call fcn.100671e0
add esp, 0xc
push 0x100128f0
push 0x574667
push 0xe9
call fcn.100671e0
add esp, 0xc
push 0x10012960
push 0x5750fb
push 0xe9
call fcn.100671e0
add esp, 0xc
push 0x10012a40
push 0x5fa844
push 0xe9
call fcn.100671e0
add esp, 0xc
push 0x10012ba0
push 0x5658b6
push 0xe9
call fcn.100671e0
add esp, 0xc
push 0x10012c70
push 0x8362a2
push 0xe9
call fcn.100671e0
add esp, 0xc
push 0x10012cc0
push 0x83640e
push 0xe9
call fcn.100671e0
add esp, 0xc
push 0x10012d10
push 0x57605b
push 0xe9
call fcn.100671e0
add esp, 0xc
push 0x10012d50
push 0x576144
push 0xe9
call fcn.100671e0
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 0x30]
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 - 0x30]
push eax
push dword [ebp - 0x30]
push 6
push 0x51ec76
call esi
push 0x10012dc0
push 0x51ec76
push 0xe9
call fcn.100671e0
add esp, 0xc
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1008173f
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.100e4ebd
call fcn.100e4ebd
int3