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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1010dc15
mov eax, dword fs:[0]
push eax
sub esp, 0x3c
mov eax, dword [0x10132018]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
cmp byte [0x10139bdc], 0
je 0x1000d4df
push 2
mov dword [ebp - 0x2c], 0
lea ecx, [ebp - 0x2c]
push 0x10124fe0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.1000cb50
lea eax, [ebp - 0x2c]
mov dword [ebp - 4], 0
push eax
push dword [0x1013305c]
lea ecx, [ebp - 0x48]
call fcn.10007f20
push 0x1000d0d0
push str.SetPetSize
mov ecx, eax
mov byte [ebp - 4], 1
call fcn.1000d8b0
mov byte [ebp - 4], 0
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x1000d1c4
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000d1ba
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000d4f9
push edx
push ecx
call fcn.100830b7
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp edx, 0x10
jb 0x1000d211
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000d207
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000d4f9
push edx
push ecx
call fcn.100830b7
add esp, 8
push 2
mov dword [ebp - 0x2c], 0
lea ecx, [ebp - 0x2c]
push 0x10124fe0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.1000cb50
lea eax, [ebp - 0x2c]
mov dword [ebp - 4], 2
push eax
push dword [0x1013305c]
lea ecx, [ebp - 0x48]
call fcn.10007f20
push 0x1000ceb0
push str.SetMaxCharacter
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.1000db20
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x1000d29f
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000d295
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000d4fe
push edx
push ecx
call fcn.100830b7
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp edx, 0x10
jb 0x1000d2ec
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000d2e2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000d4fe
push edx
push ecx
call fcn.100830b7
add esp, 8
push 2
mov dword [ebp - 0x2c], 0
lea ecx, [ebp - 0x2c]
push 0x10124fe0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.1000cb50
lea eax, [ebp - 0x2c]
mov dword [ebp - 4], 4
push eax
push dword [0x1013305c]
lea ecx, [ebp - 0x48]
call fcn.10007f20
push 0x1000cea0
push str.CheckCreateCharacterWindow
mov ecx, eax
mov byte [ebp - 4], 5
call fcn.1000aec0
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x1000d37a
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000d370
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000d503
push edx
push ecx
call fcn.100830b7
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp edx, 0x10
jb 0x1000d3c7
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000d3bd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000d503
push edx
push ecx
call fcn.100830b7
add esp, 8
push dword [0x1013305c]
mov ecx, 0x10133050
call fcn.10043310
push dword [0x1013305c]
call fcn.1004b8a0
push dword [0x1013305c]
call fcn.1004f1d0
push dword [0x1013305c]
mov ecx, 0x10133053
call fcn.10047b90
push dword [0x1013305c]
call fcn.1004fb40
push str.Soul__Lua__CharacterSystem__CharacterList.lua
mov ecx, 0x10133058
call fcn.1003d690
push 0x1000d510
push 0x4d6c3e
push 0xe8
call fcn.10069bf0
add esp, 0xc
push fcn.1000d530
push 0x663e8c
push 0xe8
call fcn.10069bf0
add esp, 0xc
push 0x1000d850
push 0x4d9e23
push 0xe8
call fcn.10069bf0
add esp, 0xc
push 0x1000d880
push 0x4d75cb
push 0xe8
call fcn.10069bf0
add esp, 0xc
push 0x1000d810
push 0x663e9d
push 0xe8
call fcn.10069bf0
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 0x14]
add esp, 0xc
push eax
push 0x40
push 4
push 0x4d6c73
call esi
lea eax, [ebp - 0x14]
mov dword [0x4d6c73], 0
push eax
push dword [ebp - 0x14]
push 4
push 0x4d6c73
call esi
lea eax, [ebp - 0x14]
push eax
push 0x40
push 1
push 0x402106
call esi
lea eax, [ebp - 0x14]
mov byte [0x402106], 0
push eax
push dword [ebp - 0x14]
push 1
push 0x402106
call esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10082d8f
mov esp, ebp
pop ebp
ret
call fcn.100e2859
call fcn.100e2859
call fcn.100e2859
int3