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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101108e5
mov eax, dword fs:[0]
push eax
sub esp, 0x3c
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 [0x1031a58c]
call fcn.100183f0
mov ecx, dword [0x1031a58c]
call fcn.100512e0
push dword [0x1031a58c]
call fcn.10044620
push 2
mov dword [ebp - 0x2c], 0
lea ecx, [ebp - 0x2c]
push 0x101219e0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.100101d0
lea eax, [ebp - 0x2c]
mov dword [ebp - 4], 0
push eax
push dword [0x1031a58c]
lea ecx, [ebp - 0x48]
call fcn.1000d660
sub esp, 8
mov byte [ebp - 4], 1
mov ecx, eax
call fcn.10035a40
mov byte [ebp - 4], 0
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x100352b1
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100352a7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003599f
push edx
push ecx
call fcn.100820e9
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 0x100352fe
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100352f4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003599f
push edx
push ecx
call fcn.100820e9
add esp, 8
push 2
mov dword [ebp - 0x2c], 0
lea ecx, [ebp - 0x2c]
push 0x101219e0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.100101d0
lea eax, [ebp - 0x2c]
mov dword [ebp - 4], 2
push eax
push dword [0x1031a58c]
lea ecx, [ebp - 0x48]
call fcn.1000d660
sub esp, 8
mov byte [ebp - 4], 3
mov ecx, eax
call fcn.10035c80
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x10035385
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003537b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100359a4
push edx
push ecx
call fcn.100820e9
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 0x100353d2
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100353c8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100359a4
push edx
push ecx
call fcn.100820e9
add esp, 8
push 2
mov dword [ebp - 0x2c], 0
lea ecx, [ebp - 0x2c]
push 0x101219e0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.100101d0
lea eax, [ebp - 0x2c]
mov dword [ebp - 4], 4
push eax
push dword [0x1031a58c]
lea ecx, [ebp - 0x48]
call fcn.1000d660
push 0x10033910
push str.CheckModelById
mov ecx, eax
mov byte [ebp - 4], 5
call fcn.10010550
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x10035460
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10035456
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100359a9
push edx
push ecx
call fcn.100820e9
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 0x100354ad
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100354a3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100359a9
push edx
push ecx
call fcn.100820e9
add esp, 8
push str.Data__Local__General__Lua__CharacterSystem__CharacterHelper.lua
mov ecx, 0x1031a588
call fcn.10040410
push 0x10121b68
push str.LoadHelpers
push 0x1031a588
call fcn.100405d0
push 0x10032b80
push 0x4d7348
push 0xe8
call fcn.1007ca60
push 0x10032b80
push 0x4d7a98
push 0xe8
call fcn.1007ca60
push 0x10032b80
push 0x4d9a65
push 0xe8
call fcn.1007ca60
push 0x10032ce0
push 0x4d6ea5
push 0xe8
call fcn.1007ca60
push 0x10032ce0
push 0x4d7787
push 0xe8
call fcn.1007ca60
add esp, 0x48
push 0x10032ce0
push 0x4d9568
push 0xe8
call fcn.1007ca60
push 0x10033d10
push 0x8363d9
push 0xe9
call fcn.1007ca60
push 0x10033e50
push 0x835e80
push 0xe9
call fcn.1007ca60
push 0x10033eb0
push 0x4d72eb
push 0xe9
call fcn.1007ca60
push 0x10033f00
push 0x534c65
push 0xe8
call fcn.1007ca60
push 0x10033fd0
push 0x54eac8
push 0xe9
call fcn.1007ca60
add esp, 0x48
push 0x10034080
push 0x54ed55
push 0xe9
call fcn.1007ca60
push 0x100340d0
push 0x54ec8f
push 0xe9
call fcn.1007ca60
push 0x10034120
push 0x54ed43
push 0xe9
call fcn.1007ca60
push 0x10034170
push 0x54f8ea
push 0xe9
call fcn.1007ca60
push 0x100341c0
push 0x54fc7d
push 0xe9
call fcn.1007ca60
push 0x10034210
push 0x550706
push 0xe9
call fcn.1007ca60
add esp, 0x48
push 0x10034260
push 0x54fe28
push 0xe9
call fcn.1007ca60
push 0x100342d0
push 0x54fcd8
push 0xe9
call fcn.1007ca60
push 0x10034320
push 0x5506c2
push 0xe9
call fcn.1007ca60
push 0x10034370
push 0x5a383a
push 0xe9
call fcn.1007ca60
push 0x10034410
push 0x5517a4
push 0xe9
call fcn.1007ca60
push 0x10034470
push 0x551916
push 0xe9
call fcn.1007ca60
add esp, 0x48
push 0x100344c0
push 0x551b3f
push 0xe9
call fcn.1007ca60
push 0x10034530
push 0x551b09
push 0xe9
call fcn.1007ca60
push 0x100345c0
push 0x55273e
push 0xe9
call fcn.1007ca60
push 0x10034630
push 0x552995
push 0xe9
call fcn.1007ca60
push 0x10034680
push 0x5528de
push 0xe9
call fcn.1007ca60
push 0x10034700
push 0x552777
push 0xe9
call fcn.1007ca60
add esp, 0x48
push 0x10034750
push 0x564c9c
push 0xe9
call fcn.1007ca60
push 0x100347b0
push 0x564ba2
push 0xe9
call fcn.1007ca60
push 0x10034800
push 0x564c1c
push 0xe9
call fcn.1007ca60
push 0x10034850
push 0x564e6e
push 0xe9
call fcn.1007ca60
push 0x100348a0
push 0x56f688
push 0xe9
call fcn.1007ca60
push 0x10034910
push 0x57e108
push 0xe9
call fcn.1007ca60
add esp, 0x48
push 0x10034960
push 0x5b53ff
push 0xe9
call fcn.1007ca60
push 0x10034a00
push 0x59b656
push 0xe9
call fcn.1007ca60
push 0x10034aa0
push 0x5a3817
push 0xe9
call fcn.1007ca60
push 0x10034b40
push 0x63edc8
push 0xe9
call fcn.1007ca60
push 0x10034b90
push 0x640a89
push 0xe9
call fcn.1007ca60
push 0x10034be0
push 0x640dcf
push 0xe9
call fcn.1007ca60
add esp, 0x48
cmp byte [0x1013c43d], 0
jne 0x1003584d
push 0x10034c30
push 0x813f5a
push 0xe9
call fcn.1007ca60
push 0x10034cd0
push 0x5b5411
push 0xe9
call fcn.1007ca60
add esp, 0x18
push 0x10034d70
push 0x54fd0e
push 0xe9
call fcn.1007ca60
push 0x10034e20
push 0x644520
push 0xe9
call fcn.1007ca60
push 0x10034ef0
push 0x648daf
push 0xe9
call fcn.1007ca60
push 0x10034f40
push 0x648dd3
push 0xe9
call fcn.1007ca60
push 0x10034fe0
push 0x5ae1e0
push 0xe9
call fcn.1007ca60
push 0x10035030
push 0x5ae201
push 0xe9
call fcn.1007ca60
add esp, 0x48
push 0x100350d0
push 0x54ed07
push 0xe9
call fcn.1007ca60
push 0x100350f0
push 0x5af273
push 0xe9
call fcn.1007ca60
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 0x14]
add esp, 0x18
push eax
push 0x40
push 6
push 0x8140cf
call esi
mov eax, 0x8140cf
mov ecx, 0x90909090
mov dword [eax], ecx
mov word [eax + 4], cx
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 0x14]
push 6
push 0x8140cf
call esi
push 0x10035140
push 0x8140cf
push 0xe9
call fcn.1007ca60
add esp, 0xc
lea eax, [ebp - 0x14]
push eax
push 0x40
push 6
push 0x59c7e5
call esi
mov eax, 0x59c7e5
mov ecx, 0x90909090
mov dword [eax], ecx
mov word [eax + 4], cx
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 0x14]
push 6
push 0x59c7e5
call esi
push 0x10035190
push 0x59c7e5
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
call fcn.100e403e
int3