Function at 0x10070e80
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x8c
mov eax, dword [0x10129040]
xor eax, ebp
mov dword [ebp - 4], eax
push 0x1011dce4
push str.DataCustomEventEntry.txt
call fcn.100f1dfa
add esp, 8
test eax, eax
je 0x100715b2
push ebx
push esi
push edi
push eax
call fcn.100f206f
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
add esp, 4
mov edi, 1
mov dword [ebp - 0x8c], 6
xor ebx, ebx
push edi
lea eax, [ebp - 0x84]
push str.DS_dLevelMin_Normal
push eax
call fcn.10071720
add esp, 0xc
lea eax, [ebp - 0x84]
push str.DataCustomEventEntry.txt
push 0
push eax
push str.DevilSquare
call esi
push edi
mov dword [ebx + 0x11531eec], eax
lea eax, [ebp - 0x84]
push str.DS_dLevelMax_Normal
push eax
call fcn.10071720
add esp, 0xc
lea eax, [ebp - 0x84]
push str.DataCustomEventEntry.txt
push 0
push eax
push str.DevilSquare
call esi
push edi
mov dword [ebx + 0x11531ef0], eax
lea eax, [ebp - 0x84]
push str.DS_dLevelMin_MGDLRF
push eax
call fcn.10071720
add esp, 0xc
lea eax, [ebp - 0x84]
push str.DataCustomEventEntry.txt
push 0
push eax
push str.DevilSquare
call esi
push edi
mov dword [ebx + 0x11531f1c], eax
lea eax, [ebp - 0x84]
push str.DS_dLevelMax_MGDLRF
push eax
call fcn.10071720
add esp, 0xc
lea eax, [ebp - 0x84]
push str.DataCustomEventEntry.txt
push 0
push eax
push str.DevilSquare
call esi
inc edi
mov dword [ebx + 0x11531f20], eax
sub dword [ebp - 0x8c], 1
lea ebx, [ebx + 8]
jne 0x10070ed0
lea eax, [ebp - 0x88]
push eax
push 0x40
push 0x13f
push 0x877c0b
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov eax, dword [0x11531eec]
mov dword [0x877c0b], eax
mov eax, dword [0x11531ef0]
mov dword [0x877c18], eax
mov eax, dword [0x11531ef4]
mov dword [0x877c25], eax
mov eax, dword [0x11531ef8]
mov dword [0x877c32], eax
mov eax, dword [0x11531efc]
mov dword [0x877c3f], eax
mov eax, dword [0x11531f00]
mov dword [0x877c4c], eax
mov eax, dword [0x11531f04]
mov dword [0x877c59], eax
mov eax, dword [0x11531f08]
mov dword [0x877c66], eax
mov eax, dword [0x11531f0c]
mov dword [0x877c73], eax
mov eax, dword [0x11531f10]
mov dword [0x877c80], eax
mov eax, dword [0x11531f14]
mov dword [0x877c8d], eax
mov eax, dword [0x11531f18]
mov dword [0x877c9a], eax
mov eax, dword [0x11531f1c]
mov dword [0x877cc1], eax
mov eax, dword [0x11531f20]
mov dword [0x877cce], eax
mov eax, dword [0x11531f24]
mov dword [0x877cdb], eax
mov eax, dword [0x11531f28]
mov dword [0x877ce8], eax
mov eax, dword [0x11531f2c]
mov dword [0x877cf5], eax
mov eax, dword [0x11531f30]
mov dword [0x877d02], eax
mov eax, dword [0x11531f34]
mov dword [0x877d0f], eax
mov eax, dword [0x11531f38]
mov dword [0x877d1c], eax
mov eax, dword [0x11531f3c]
mov dword [0x877d29], eax
mov eax, dword [0x11531f40]
mov dword [0x877d36], eax
mov eax, dword [0x11531f44]
push 0x10071680
mov dword [0x877d43], eax
mov eax, dword [0x11531f48]
push 0x878750
push 0xe9
mov dword [0x877d50], eax
call fcn.100eb560
push 0x1011dce4
push str.DataCustomEventEntry.txt
call fcn.100f1dfa
add esp, 0x14
test eax, eax
je 0x100715bc
push eax
call fcn.100f206f
add esp, 4
mov dword [ebp - 0x8c], 7
mov edi, 1
xor ebx, ebx
push edi
lea eax, [ebp - 0x84]
push str.BC_dLevelMin_Normal
push eax
call fcn.10071720
add esp, 0xc
lea eax, [ebp - 0x84]
push str.DataCustomEventEntry.txt
push 0
push eax
push str.BloodCastle
call esi
push edi
mov dword [ebx + 0x11531e7c], eax
lea eax, [ebp - 0x84]
push str.BC_dLevelMax_Normal
push eax
call fcn.10071720
add esp, 0xc
lea eax, [ebp - 0x84]
push str.DataCustomEventEntry.txt
push 0
push eax
push str.BloodCastle
call esi
push edi
mov dword [ebx + 0x11531e80], eax
lea eax, [ebp - 0x84]
push str.BC_dLevelMin_MGDLRF
push eax
call fcn.10071720
add esp, 0xc
lea eax, [ebp - 0x84]
push str.DataCustomEventEntry.txt
push 0
push eax
push str.BloodCastle
call esi
push edi
mov dword [ebx + 0x11531eb4], eax
lea eax, [ebp - 0x84]
push str.BC_dLevelMax_MGDLRF
push eax
call fcn.10071720
add esp, 0xc
lea eax, [ebp - 0x84]
push str.DataCustomEventEntry.txt
push 0
push eax
push str.BloodCastle
call esi
inc edi
mov dword [ebx + 0x11531eb8], eax
sub dword [ebp - 0x8c], 1
lea ebx, [ebx + 8]
jne 0x100710f2
lea eax, [ebp - 0x88]
push eax
push 0x40
push 0x17d
push 0x8740fb
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov eax, dword [0x11531e7c]
mov dword [0x8740fb], eax
mov eax, dword [0x11531e80]
mov dword [0x874108], eax
mov eax, dword [0x11531e84]
mov dword [0x874115], eax
mov eax, dword [0x11531e88]
mov dword [0x874122], eax
mov eax, dword [0x11531e8c]
mov dword [0x87412f], eax
mov eax, dword [0x11531e90]
mov dword [0x87413c], eax
mov eax, dword [0x11531e94]
mov dword [0x874149], eax
mov eax, dword [0x11531e98]
mov dword [0x874156], eax
mov eax, dword [0x11531e9c]
mov dword [0x874163], eax
mov eax, dword [0x11531ea0]
mov dword [0x874170], eax
mov eax, dword [0x11531ea4]
mov dword [0x87417d], eax
mov eax, dword [0x11531ea8]
mov dword [0x87418a], eax
mov eax, dword [0x11531eac]
mov dword [0x874197], eax
mov eax, dword [0x11531eb0]
mov dword [0x8741a4], eax
mov eax, dword [0x11531eb4]
mov dword [0x8741cb], eax
mov eax, dword [0x11531eb8]
mov dword [0x8741d8], eax
mov eax, dword [0x11531ebc]
mov dword [0x8741e5], eax
mov eax, dword [0x11531ec0]
mov dword [0x8741f2], eax
mov eax, dword [0x11531ec4]
mov dword [0x8741ff], eax
mov eax, dword [0x11531ec8]
mov dword [0x87420c], eax
mov eax, dword [0x11531ecc]
mov dword [0x874219], eax
mov eax, dword [0x11531ed0]
mov dword [0x874226], eax
mov eax, dword [0x11531ed4]
mov dword [0x874233], eax
mov eax, dword [0x11531ed8]
mov dword [0x874240], eax
mov eax, dword [0x11531edc]
mov dword [0x87424d], eax
mov eax, dword [0x11531ee0]
mov dword [0x87425a], eax
mov eax, dword [0x11531ee4]
push 0x100715e0
mov dword [0x874267], eax
mov eax, dword [0x11531ee8]
push 0x874670
push 0xe9
mov dword [0x874274], eax
call fcn.100eb560
push 0x1011dce4
push str.DataCustomEventEntry.txt
call fcn.100f1dfa
add esp, 0x14
test eax, eax
je 0x100715c6
push eax
call fcn.100f206f
add esp, 4
mov dword [ebp - 0x8c], 0x106ff6e0
mov edi, 1
mov dword [ebp - 0x88], 6
xor ebx, ebx
nop word [eax + eax]
push edi
lea eax, [ebp - 0x84]
push str.CC_dLevelMin_Normal
push eax
call fcn.10071720
add esp, 0xc
lea eax, [ebp - 0x84]
push str.DataCustomEventEntry.txt
push 0
push eax
push str.ChaosCastle
call esi
push edi
mov dword [ebx + 0x106ff72c], eax
lea eax, [ebp - 0x84]
push str.CC_dLevelMax_Normal
push eax
call fcn.10071720
add esp, 0xc
lea eax, [ebp - 0x84]
push str.DataCustomEventEntry.txt
push 0
push eax
push str.ChaosCastle
call esi
push edi
mov dword [ebx + 0x106ff730], eax
lea eax, [ebp - 0x84]
push str.CC_dLevelMin_MGDLRF
push eax
call fcn.10071720
add esp, 0xc
lea eax, [ebp - 0x84]
push str.DataCustomEventEntry.txt
push 0
push eax
push str.ChaosCastle
call esi
push edi
mov dword [ebx + 0x106ff6fc], eax
lea eax, [ebp - 0x84]
push str.CC_dLevelMax_MGDLRF
push eax
call fcn.10071720
add esp, 0xc
lea eax, [ebp - 0x84]
push str.DataCustomEventEntry.txt
push 0
push eax
push str.ChaosCastle
call esi
push edi
mov dword [ebx + 0x106ff700], eax
lea eax, [ebp - 0x84]
push str.CC_dZen
push eax
call fcn.10071720
add esp, 0xc
lea eax, [ebp - 0x84]
push str.DataCustomEventEntry.txt
push 0
push eax
push str.ChaosCastle
call esi
mov ecx, dword [ebp - 0x8c]
lea ebx, [ebx + 8]
inc edi
mov dword [ecx], eax
add ecx, 4
sub dword [ebp - 0x88], 1
mov dword [ebp - 0x8c], ecx
jne 0x10071350
push str.DataCustomEventEntry.txt
push 0
push str.CC7Zen
push str.ChaosCastle
call esi
cmp dword [0x10303900], 0
mov dword [0x106ff6f8], eax
je 0x100715a1
mov ebx, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 0x88]
push eax
push 0x40
push 1
push 0x8742ee
call ebx
lea eax, [ebp - 0x88]
mov byte [0x8742ee], 7
push eax
push dword [ebp - 0x88]
push 1
push 0x8742ee
call ebx
lea eax, [ebp - 0x88]
push eax
push 0x40
push 1
push 0x8743ff
call ebx
lea eax, [ebp - 0x88]
mov byte [0x8743ff], 7
push eax
push dword [ebp - 0x88]
push 1
push 0x8743ff
call ebx
lea eax, [ebp - 0x88]
push eax
push 0x40
push 1
push 0x87454f
call ebx
lea eax, [ebp - 0x88]
mov byte [0x87454f], 7
push eax
push dword [ebp - 0x88]
push 1
push 0x87454f
call ebx
lea eax, [ebp - 0x88]
push eax
push 0x40
push 1
push 0x877dce
call ebx
lea eax, [ebp - 0x88]
mov byte [0x877dce], 6
push eax
push dword [ebp - 0x88]
push 1
push 0x877dce
call ebx
lea eax, [ebp - 0x88]
push eax
push 0x40
push 1
push 0x877edf
call ebx
lea eax, [ebp - 0x88]
mov byte [0x877edf], 6
push eax
push dword [ebp - 0x88]
push 1
push 0x877edf
call ebx
lea eax, [ebp - 0x88]
push eax
push 0x40
push 1
push 0x878032
call ebx
lea eax, [ebp - 0x88]
mov byte [0x878032], 6
push eax
push dword [ebp - 0x88]
push 1
push 0x878032
call ebx
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100ee369
mov esp, ebp
pop ebp
ret
push str.EventEntry.txt_not_found_
call fcn.100eb860
push str.EventEntry.txt_not_found_
call fcn.100eb860
push str.EventEntry.txt_not_found_
call fcn.100eb860
int3