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

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push edi
push 0x100722e0
push 0x968180
push 0xe9
call fcn.100cf0b0
push 0x10008d40
push 0x4fcb58
push 0xe9
mov dword [0x102c124c], 0
mov dword [0x102c1250], 0
mov dword [0x102c1254], 0
mov dword [0x102c125c], 0
mov dword [0x102c1258], 0
call fcn.100cf0b0
push 0x10008d60
push 0x4fd0b9
push 0xe9
call fcn.100cf0b0
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
add esp, 0x24
cmp dword [0x101f478c], 1
mov dword [0x102ca364], 0
mov dword [0x102ca368], 0
mov byte [0x102ca36c], 0
jne 0x1004572d
push 0x100ae060
push 0x853950
push 0xe9
call fcn.100cf0b0
push 0x100ae450
push 0x8533a0
push 0xe9
call fcn.100cf0b0
add esp, 0x18
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x85375b
call edi
mov eax, 0x85375b
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 5
push 0x85375b
call edi
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x85374b
call edi
mov eax, 0x85374b
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 5
push 0x85374b
call edi
push 0x100455a0
push 0x8350e9
push 0xe8
call fcn.100cf0b0
add esp, 0xc
cmp dword [0x101f4794], 1
jne 0x10045778
push 0x1000ce00
push 0x5bafab
push 0xe8
call fcn.100cf0b0
push 0x1000cd60
push 0x7c5db0
push 0xe8
call fcn.100cf0b0
add esp, 0x18
cmp dword [0x101f4790], 1
jne 0x100457a7
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x81c03fa
call edi
lea eax, [ebp - 4]
mov byte [0x81c03fa], 1
push eax
push dword [ebp - 4]
push 1
push 0x81c03fa
call edi
mov dword [0x102ef434], 0x42f6e9df
mov eax, 0x51eb851f
imul dword [0xe61e58]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
movd xmm0, eax
mov eax, 0x1b4e81b5
cvtdq2ps xmm0, xmm0
movss dword [0x102ef438], xmm0
imul dword [0xe61e5c]
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [0x101f47a4], 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [0x102ef43c], xmm0
jne 0x1004588b
mov byte [0x102c12c0], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 0x10036ea0
sub eax, 0x1388
mov byte [0x102c12c8], 0
push 0x7d2bc0
push 0xe9
mov dword [0x102c12c4], eax
call fcn.100cf0b0
push fcn.10037b00
push 0x80b8e0
push 0xe9
call fcn.100cf0b0
push 0x10037b10
push 0x7d26b5
push 0xe9
call fcn.100cf0b0
push 0x10037cb0
push 0x7d2751
push 0xe9
call fcn.100cf0b0
push 0x10037e50
push 0x7d27fc
push 0xe9
call fcn.100cf0b0
add esp, 0x3c
mov eax, dword [0x101f47ac]
sub eax, 1
je 0x10045a42
sub eax, 1
je 0x1004596f
sub eax, 1
jne 0x10045b38
push 0x100bc750
push 0x848cb6
push 0xe8
mov dword [0x102ca2f0], eax
call fcn.100cf0b0
push 0x100bc830
push 0x8491ae
push 0xe8
call fcn.100cf0b0
push 0x100bcb10
push 0x8491b6
push 0xe8
call fcn.100cf0b0
push 0x100bd350
push 0x8491be
push 0xe8
call fcn.100cf0b0
push 0x100be680
push 0x849087
push 0xe8
call fcn.100cf0b0
push 0x100be600
push 0x848f07
push 0xe8
call fcn.100cf0b0
add esp, 0x48
push 0x100be580
push 0x848e5d
push 0xe8
call fcn.100cf0b0
push 0x100be5c0
push 0x848eb2
push 0xe8
call fcn.100cf0b0
push 0x100be640
push 0x848f4b
push 0xe8
call fcn.100cf0b0
add esp, 0x24
jmp 0x10045b38
push 0x1000ed30
push 0x848cb6
push 0xe8
call fcn.100cf0b0
push 0x1000edf0
push 0x8491ae
push 0xe8
call fcn.100cf0b0
push 0x1000efa0
push 0x8491b6
push 0xe8
call fcn.100cf0b0
push 0x1000f430
push 0x8491be
push 0xe8
call fcn.100cf0b0
push 0x10010960
push 0x849087
push 0xe8
call fcn.100cf0b0
push 0x10010930
push 0x848f07
push 0xe8
call fcn.100cf0b0
add esp, 0x48
push 0x100108d0
push 0x848e5d
push 0xe8
call fcn.100cf0b0
push 0x10010900
push 0x848eb2
push 0xe8
call fcn.100cf0b0
push 0x10010960
push 0x848f4b
push 0xe8
call fcn.100cf0b0
push 0x10010970
push 0x8490f5
push 0xe8
call fcn.100cf0b0
add esp, 0x30
jmp 0x10045b38
push 0x10052980
push 0x848cb6
push 0xe8
call fcn.100cf0b0
push 0x10052a40
push 0x8491ae
push 0xe8
call fcn.100cf0b0
push 0x10052d00
push 0x8491b6
push 0xe8
call fcn.100cf0b0
push 0x100530f0
push 0x8491be
push 0xe8
call fcn.100cf0b0
push 0x100556d0
push 0x849087
push 0xe8
call fcn.100cf0b0
push 0x10055670
push 0x848f07
push 0xe8
call fcn.100cf0b0
add esp, 0x48
push 0x10055610
push 0x848e5d
push 0xe8
call fcn.100cf0b0
push 0x10055640
push 0x848eb2
push 0xe8
call fcn.100cf0b0
push 0x100556a0
push 0x848f4b
push 0xe8
call fcn.100cf0b0
push 0x10055700
push 0x8490f5
push 0xe8
call fcn.100cf0b0
push 0x10055760
push 0x772960
push 0xe8
call fcn.100cf0b0
push 0x10055780
push 0x7729b3
push 0xe8
call fcn.100cf0b0
add esp, 0x48
mov eax, dword [0x101f47b8]
sub eax, 1
je 0x10045b4e
sub eax, 1
jne 0x10045b53
call fcn.100db5e0
jmp 0x10045b53
call fcn.10038ef0
mov eax, dword [0x101f47e8]
push esi
sub eax, 1
je 0x10045c03
sub eax, 1
je 0x10045b7a
sub eax, 2
jne 0x10045c70
call fcn.1003f4e0
jmp 0x10045c70
push 0x1006dc80
push 0x4d7eb1
push 0xe8
call fcn.100cf0b0
push 0x1006daa0
push 0x4d76fb
push 0xe8
call fcn.100cf0b0
push 0x1006daa0
push 0x4d79c3
push 0xe8
call fcn.100cf0b0
mov esi, dword [0x101f47ec]
lea eax, [ebp - 4]
add esp, 0x24
mov dword [ebp - 4], 0
push eax
push 0x40
push 4
push 0x4d75f0
call edi
test eax, eax
je 0x10045bfb
mov eax, 0x4d75f0
mov dword [eax], esi
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 4
push 0x4d75f0
call edi
test eax, eax
jne 0x10045c70
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x10045c70
push 0x10015160
push 0x4d76fb
push 0xe8
call fcn.100cf0b0
push 0x10015160
push 0x4d79c3
push 0xe8
call fcn.100cf0b0
mov esi, dword [0x101f47ec]
lea eax, [ebp - 4]
add esp, 0x18
push eax
push 0x40
push 4
push 0x4d75f0
call edi
lea eax, [ebp - 4]
mov dword [0x4d75f0], esi
push eax
push dword [ebp - 4]
push 4
push 0x4d75f0
call edi
push 0x10015230
push 0x5edda9
push 0xe8
call fcn.100cf0b0
add esp, 0xc
mov eax, dword [0x101f47f0]
pop esi
sub eax, 1
je 0x10045c98
sub eax, 1
je 0x10045c91
sub eax, 2
jne 0x10045c9d
call fcn.1003f4e0
call fcn.10040c90
jmp 0x10045c9d
call fcn.1006d420
jmp 0x10045c9d
call fcn.100156c0
mov eax, dword [0x101f47c0]
cmp eax, 1
jne 0x10045dff
push 0x10038af0
push 0x789099
push 0xe9
call fcn.100cf0b0
push 0x10038aa0
push 0x7890e2
push 0xe9
call fcn.100cf0b0
push 0x100385e0
push 0x78b0cf
push 0xe8
call fcn.100cf0b0
push 0x10038390
push 0x78b09a
push 0xe8
call fcn.100cf0b0
push 0x100380e0
push 0x787620
push 0xe8
call fcn.100cf0b0
push fcn.10037b00
push 0x787628
push 0xe8
call fcn.100cf0b0
add esp, 0x48
push 0x100382e0
push 0x787748
push 0xe8
call fcn.100cf0b0
push 0x7867b3
push 0x7867a5
push 0xe9
call fcn.100cf0b0
add esp, 0x18
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x787c7d
call edi
mov eax, 0x787c7d
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 5
push 0x787c7d
call edi
push 0x10038000
push 0x7864b3
push 0xe8
call fcn.100cf0b0
push 0x10038000
push 0x78641e
push 0xe8
call fcn.100cf0b0
push 0x10038000
push 0x7863a8
push 0xe8
call fcn.100cf0b0
push 0x10038000
push 0x786347
push 0xe8
call fcn.100cf0b0
push 0x10038000
push 0x7862e2
push 0xe8
call fcn.100cf0b0
push 0x10010960
push 0x78628e
push 0xe8
call fcn.100cf0b0
mov eax, dword [0x101f47c0]
add esp, 0x48
cmp eax, 2
jne 0x10045f85
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x785b44
call edi
mov eax, 0x785b44
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 5
push 0x785b44
call edi
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x787630
call edi
mov eax, 0x787630
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 5
push 0x787630
call edi
push 0x10031770
push 0x78adcc
push 0xe8
call fcn.100cf0b0
push 0x10031770
push 0x78ae15
push 0xe8
call fcn.100cf0b0
push 0x10031770
push 0x78ae5e
push 0xe8
call fcn.100cf0b0
push 0x10030580
push 0x78b09a
push 0xe8
call fcn.100cf0b0
push 0x100307d0
push 0x78b0cf
push 0xe8
call fcn.100cf0b0
push 0x100312b0
push 0x787620
push 0xe8
call fcn.100cf0b0
add esp, 0x48
push 0x10030970
push 0x787628
push 0xe8
call fcn.100cf0b0
push 0x10031720
push 0x787748
push 0xe8
call fcn.100cf0b0
push 0x10031610
push 0x7864b3
push 0xe8
call fcn.100cf0b0
push 0x10031610
push 0x78641e
push 0xe8
call fcn.100cf0b0
push 0x10031610
push 0x7863a8
push 0xe8
call fcn.100cf0b0
push 0x10031610
push 0x786347
push 0xe8
call fcn.100cf0b0
add esp, 0x48
push 0x10031610
push 0x7862e2
push 0xe8
call fcn.100cf0b0
push 0x10031610
push 0x78628e
push 0xe8
call fcn.100cf0b0
add esp, 0x18
cmp dword [0x101f4808], 2
jne 0x10045fb9
push 0x100dd420
push 0x7e020c
push 0xe8
call fcn.100cf0b0
push 0x100dd420
push 0x7e0298
push 0xe8
call fcn.100cf0b0
add esp, 0x18
call fcn.1003b4c0
call fcn.100db390
lea eax, [ebp - 4]
push eax
push 0x40
push 6
push 0x556cc6
call edi
mov eax, 0x556cc6
mov ecx, 0x90909090
mov dword [eax], ecx
mov word [eax + 4], cx
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 6
push 0x556cc6
call edi
push 0x100bc730
push 0x556cc6
push 0xe9
call fcn.100cf0b0
add esp, 0xc
mov ecx, 0x101f430c
push str.Data__KGData__Lua__CharacterSystem__SkillCroma.lua
call fcn.100b56a0
push dword [0x101f4310]
call fcn.10099fb0
call fcn.100b8210
cmp byte [0x101f489c], 1
jne 0x1004605c
push 0x100b3640
push 0x842ac7
push 0xe8
call fcn.100cf0b0
push 0x100b3640
push 0x842b8d
push 0xe8
call fcn.100cf0b0
add esp, 0x18
cmp dword [0x101f4780], 1
jne 0x100460d0
mov dword [0x105499b4], 0
call fcn.1006cfd0
cmp dword [0x101f4780], 1
jne 0x100460d0
push 0x1006bce0
push 0x40b5a9
push 0xe8
call fcn.100cf0b0
push 0x1006b730
push 0x40b400
push 0xe8
call fcn.100cf0b0
push 0x1006b730
push 0x40b44f
push 0xe8
call fcn.100cf0b0
push 0x1006cf60
push 0x483711
push 0xe8
call fcn.100cf0b0
add esp, 0x30
cmp byte [0x101f48a0], 1
jne 0x100461fc
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x40c98c
call edi
lea eax, [ebp - 4]
mov dword [0x40c98c], 2
push eax
push dword [ebp - 4]
push 4
push 0x40c98c
call edi
push 0x100b5370
push 0x4d7602
push 0xe8
call fcn.100cf0b0
push 0x100b5190
push 0x40b331
push 0xe8
call fcn.100cf0b0
push 0x100b4fd0
push 0x40ada2
push 0xe8
call fcn.100cf0b0
push 0x100b5090
push 0x40b2e2
push 0xe8
call fcn.100cf0b0
push 0x100b5290
push 0x40c3af
push 0xe8
call fcn.100cf0b0
push 0x100b5290
push 0x40c40b
push 0xe8
call fcn.100cf0b0
add esp, 0x48
push 0x100b5290
push 0x40c45f
push 0xe8
call fcn.100cf0b0
push 0x100b5250
push 0x40b422
push 0xe8
call fcn.100cf0b0
push 0x100b5250
push 0x40b47c
push 0xe8
call fcn.100cf0b0
push 0x100b51b0
push 0x40b3f1
push 0xe8
call fcn.100cf0b0
push 0x100b5230
push 0x40b515
push 0xe8
call fcn.100cf0b0
push 0x100b5350
push 0x40ab50
push 0xe8
call fcn.100cf0b0
add esp, 0x48
call fcn.100b05d0
pop edi
mov esp, ebp
pop ebp
ret