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

Disassembly:
push ebp
mov ebp, esp
push ecx
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push str.._Settings.ini
push 0
push str.DisableStaticEffect
push str.AntiLag
call edi
push str.._Settings.ini
push 0
push str.DisableDynamicEffect
push str.AntiLag
mov dword [0x1081ee14], eax
call edi
push str.._Settings.ini
push 0
push str.DisableSkillEffect
push str.AntiLag
mov dword [0x1081ee10], eax
call edi
push str.._Settings.ini
push 0
push str.DisableGlowEffect
push str.AntiLag
mov dword [0x1081ee0c], eax
call edi
push str.._Settings.ini
push 0
push str.DisableWings
push str.AntiLag
mov dword [0x1081ee38], eax
call edi
push str.._Settings.ini
push 0
push str.ReduceMemory
push str.AntiLag
mov dword [0x1081ee08], eax
call edi
push str.._Settings.ini
push 1
push str.Anisotropy
push str.Graphics
mov dword [0x1081ee1c], eax
call edi
push str.._Settings.ini
push 1
push str.MaxAnisotropy
push str.Graphics
mov dword [0x1081ee2c], eax
call edi
push str.._Settings.ini
push 1
push str.Linear
push str.Graphics
mov dword [0x1081ee28], eax
call edi
push str.._Settings.ini
push 0
push str.TronEffects
push str.Graphics
mov dword [0x1081ee24], eax
call edi
push str.._Settings.ini
push 0
push str.MiniMap
push str.Graphics
call edi
push str.._Settings.ini
push 1
push 0x10100300
push str.Graphics
mov dword [0x1081ee60], eax
call edi
push str.._Settings.ini
push 0
push str.ServerTime
push str.Other
mov dword [0x1081ee20], eax
call edi
mov dword [0x1081ee5c], eax
push str.._Settings.ini
push 0
push str.DisablePing
push str.Other
call edi
push str.._Settings.ini
push 0
push str.CustomInterface
push str.Other
mov dword [0x1081ee58], eax
call edi
push str.._Settings.ini
push 0
push str.CloseMessageBox
push str.Other
mov dword [0x1081eee0], eax
call edi
push str.._Settings.ini
push 0
push str.DisableAutoCtrl
push str.Other
mov dword [0x1081ee18], eax
call edi
push str.._Settings.ini
push 1
push str.HealthBarPlayer
push str.Options
mov dword [0x1081ee64], eax
call edi
push str.._Settings.ini
push 1
push str.HealthBarMonster
push str.Options
mov dword [0x106e2b04], eax
call edi
push str.._Settings.ini
push 0
push str.WideScreenMode
push str.Other
mov dword [0x1081ee3c], eax
call edi
cmp dword [0x102df84c], 1
mov dword [0x1081ee34], eax
jne 0x1009683a
mov eax, dword [0x1081eee0]
mov dword [0x102df7c0], eax
push 0x78
push 0
push 0x1081ee68
mov dword [0x1081eee4], 0
call fcn.100d29e0
add esp, 0xc
push str.._Settings.ini
push 0
push str.FontEnable
push str.Font
call edi
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
push str.._Settings.ini
push 0x14
push 0x1081ee68
push str.Gulim
push str.FontName1
push str.Font
setne byte [0x10549c6c]
call esi
push str.._Settings.ini
push 0x14
push 0x1081ee7c
push 0x100fe43c
push str.FontName2
push str.Font
call esi
push str.._Settings.ini
push 0x14
push 0x1081ee90
push 0x100fe43c
push str.FontName3
push str.Font
call esi
push str.._Settings.ini
push 0x14
push 0x1081eea4
push 0x100fe43c
push str.FontName4
push str.Font
call esi
push str.._Settings.ini
push 0x14
push 0x1081eeb8
push 0x100fe43c
push str.FontName5
push str.Font
call esi
push str.._Settings.ini
push 0x14
push 0x1081eecc
push str.Arial
push str.FontNameMini
push str.Font
call esi
push str.._Settings.ini
push 0xd
push str.FontSize1
push str.Font
call edi
push str.._Settings.ini
push 0xd
push str.FontSize2
push str.Font
mov dword [0x1081ee40], eax
call edi
push str.._Settings.ini
push 0xd
push str.FontSize3
push str.Font
mov dword [0x1081ee44], eax
call edi
push str.._Settings.ini
push 0xd
push str.FontSize4
push str.Font
mov dword [0x1081ee48], eax
call edi
mov dword [0x1081ee4c], eax
push str.._Settings.ini
push 0xd
push str.FontSize5
push str.Font
call edi
push str.._Settings.ini
push 0xb
push str.FontSizeMini
push str.Font
mov dword [0x1081ee50], eax
call edi
push 0x1081eecc
push 0
push 3
push 0
push 0
push 1
push 0
push 0
push 0
push 0x2bc
push 0
push 0
push 0
push eax
mov dword [0x1081ee54], eax
call dword [sym.imp.GDI32.dll_CreateFontA]
cmp byte [0x10549c6c], 0
mov dword [0x1081ee30], eax
mov eax, dword [0x1081ee40]
mov dword [0x81c0380], eax
je 0x10096b50
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 4]
push eax
push 0x40
push 6
push 0x4060d0
call esi
mov eax, 0x4060d0
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 0x4060d0
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 6
push 0x4d2882
call esi
mov eax, 0x4d2882
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 0x4d2882
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 6
push 0x4d28eb
call esi
mov eax, 0x4d28eb
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 0x4d28eb
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 6
push 0x4d2957
call esi
mov eax, 0x4d2957
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 0x4d2957
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 6
push 0x4d29c1
call esi
mov eax, 0x4d29c1
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 0x4d29c1
call esi
push fcn.10096410
push 0x4060d0
push 0xe8
call fcn.100ce9c0
push fcn.10096480
push 0x4d2882
push 0xe8
call fcn.100ce9c0
push fcn.100964f0
push 0x4d28eb
push 0xe8
call fcn.100ce9c0
push 0x10096560
push 0x4d2957
push 0xe8
call fcn.100ce9c0
push 0x100965d0
push 0x4d29c1
push 0xe8
call fcn.100ce9c0
add esp, 0x3c
pop edi
pop esi
mov esp, ebp
pop ebp
ret