Function at 0x1000deb0
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 0x10120485
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x3c
mov eax, dword [0x10141040]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
cmp byte [0x1015017c], 0
je 0x1000e29c
push 2
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
push 0x10133208
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x1c], 0
movups xmmword [ebp - 0x30], xmm0
call fcn.10008540
lea eax, [ebp - 0x30]
mov dword [ebp - 4], 0
push eax
push dword [0x10142094]
lea ecx, [ebp - 0x4c]
call fcn.10008db0
push 0x1000de80
push str.SetPetSize
mov ecx, eax
mov byte [ebp - 4], 1
call fcn.1000e670
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x34]
cmp ecx, 0xf
jbe 0x1000df84
mov edx, dword [ebp - 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000df7a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000e2b9
push ecx
push edx
call fcn.1007a851
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
cmp ecx, 0xf
jbe 0x1000dfd1
mov edx, dword [ebp - 0x30]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000dfc7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000e2b9
push ecx
push edx
call fcn.1007a851
add esp, 8
push 2
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
push 0x10133208
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x1c], 0
movups xmmword [ebp - 0x30], xmm0
call fcn.10008540
lea eax, [ebp - 0x30]
mov dword [ebp - 4], 2
push eax
push dword [0x10142094]
lea ecx, [ebp - 0x4c]
call fcn.10008db0
push 0x1000dc60
push str.SetMaxCharacter
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.1000e920
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x34]
cmp ecx, 0xf
jbe 0x1000e05b
mov edx, dword [ebp - 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000e051
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000e2be
push ecx
push edx
call fcn.1007a851
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
cmp ecx, 0xf
jbe 0x1000e0a8
mov edx, dword [ebp - 0x30]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000e09e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000e2be
push ecx
push edx
call fcn.1007a851
add esp, 8
push 2
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
push 0x10133208
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x1c], 0
movups xmmword [ebp - 0x30], xmm0
call fcn.10008540
lea eax, [ebp - 0x30]
mov dword [ebp - 4], 4
push eax
push dword [0x10142094]
lea ecx, [ebp - 0x4c]
call fcn.10008db0
push 0x1000dc50
push str.CheckCreateCharacterWindow
mov ecx, eax
mov byte [ebp - 4], 5
call fcn.1000c270
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x34]
cmp ecx, 0xf
jbe 0x1000e132
mov edx, dword [ebp - 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000e128
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000e2c3
push ecx
push edx
call fcn.1007a851
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
cmp ecx, 0xf
jbe 0x1000e17f
mov edx, dword [ebp - 0x30]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000e175
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000e2c3
push ecx
push edx
call fcn.1007a851
add esp, 8
push dword [0x10142094]
mov ecx, 0x10142088
call fcn.100471b0
push dword [0x10142094]
mov ecx, 0x10142089
call fcn.1004fa30
push dword [0x10142094]
call fcn.10053940
push dword [0x10142094]
mov ecx, 0x1014208b
call fcn.1004baa0
push dword [0x10142094]
call fcn.10054420
push str.Data__Files__Lua__CharacterSystem__CharacterList.lua
mov ecx, 0x10142090
call fcn.10041150
push 0x1000e2d0
push 0x4d6c3e
push 0xe8
call fcn.10077930
add esp, 0xc
push fcn.1000e2f0
push 0x663e8c
push 0xe8
call fcn.10077930
add esp, 0xc
push 0x1000e610
push 0x4d9e23
push 0xe8
call fcn.10077930
add esp, 0xc
push 0x1000e640
push 0x4d75cb
push 0xe8
call fcn.10077930
add esp, 0xc
push 0x1000e5d0
push 0x663e9d
push 0xe8
call fcn.10077930
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 0x18]
add esp, 0xc
push eax
push 0x40
push 4
push 0x4d6c73
call esi
lea eax, [ebp - 0x18]
mov dword [0x4d6c73], 0
push eax
push dword [ebp - 0x18]
push 4
push 0x4d6c73
call esi
lea eax, [ebp - 0x18]
push eax
push 0x40
push 1
push 0x402106
call esi
lea eax, [ebp - 0x18]
mov byte [0x402106], 0
push eax
push dword [ebp - 0x18]
push 1
push 0x402106
call esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1007a529
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.100f494d
call fcn.100f494d
call fcn.100f494d
int3