Function at 0x4220f0
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x536168
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push edi
mov eax, dword [0x575494]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea eax, [esi + 0x9c]
push str.AdvSetting_Text
call fcn.005080c0
mov eax, dword [esi + 0x9c]
xor ebx, ebx
cmp eax, ebx
jne 0x422138
mov eax, 0x54ee24
mov dword [ebp - 0x10], ebx
cmp dword [esi + 0x94], ebx
jle 0x42216c
cmp eax, ebx
je 0x42216c
cmp word [eax], bx
je 0x42216c
mov ecx, dword [esi + 0x90]
cmp ecx, ebx
jne 0x42215b
mov ecx, 0x54ee24
push ecx
push ebx
push str.PosiX
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x10], eax
mov ecx, dword [esi + 0x9c]
cmp ecx, ebx
jne 0x42217b
mov ecx, 0x54ee24
mov dword [ebp - 0x14], ebx
cmp dword [esi + 0x94], ebx
jle 0x4221af
cmp ecx, ebx
je 0x4221af
cmp word [ecx], bx
je 0x4221af
mov eax, dword [esi + 0x90]
cmp eax, ebx
jne 0x42219e
mov eax, 0x54ee24
push eax
push ebx
push str.PosiY
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x14], eax
mov ecx, dword [esi + 0x9c]
cmp ecx, ebx
jne 0x4221be
mov ecx, 0x54ee24
xor edi, edi
cmp dword [esi + 0x94], ebx
jle 0x4221f0
cmp ecx, ebx
je 0x4221f0
cmp word [ecx], bx
je 0x4221f0
mov eax, dword [esi + 0x90]
cmp eax, ebx
jne 0x4221e0
mov eax, 0x54ee24
push eax
push ebx
push str.Width
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov edi, eax
mov ecx, dword [esi + 0x9c]
cmp ecx, ebx
jne 0x4221ff
mov ecx, 0x54ee24
xor ebx, ebx
cmp dword [esi + 0x94], ebx
jle 0x422232
test ecx, ecx
je 0x422232
cmp word [ecx], bx
je 0x422232
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x422221
mov eax, 0x54ee24
push eax
push 0
push str.Height
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ebx, eax
mov ecx, dword [esi + 0x9c]
test ecx, ecx
jne 0x422241
mov ecx, 0x54ee24
xor eax, eax
cmp dword [esi + 0x94], eax
jle 0x422272
test ecx, ecx
je 0x422272
cmp word [ecx], ax
je 0x422272
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x422263
mov eax, 0x54ee24
push eax
push 0
push str.FontPoint
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp + 0x10], eax
push 0x7533
lea eax, [ebp - 0x20]
push eax
mov ecx, 0x5776a0
call fcn.00471480
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x42229b
mov eax, 0x54ee24
push eax
lea eax, [esi + 0x2c0]
call fcn.005080c0
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp + 0x15]
mov edx, dword [ebp - 0x14]
push eax
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x2a8], ecx
mov ecx, dword [ebp + 0x14]
push ecx
mov dword [esi + 0x2ac], edx
mov edx, dword [ebp + 0x10]
push edx
push eax
lea ecx, [esi + 0x298]
mov dword [esi + 0x2b4], ebx
mov ebx, dword [ebp + 8]
push ecx
mov dword [esi + 0x2b0], edi
mov dword [esi + 0x2bc], 0x18
mov dword [esi + 0x2b8], 1
call fcn.00473a60
push str.AdvSetting_FuncName
lea eax, [esi + 0x9c]
mov byte [esi + 0x2cc], 0
mov byte [esi + 0x2d4], 0
call fcn.005080c0
mov eax, dword [esi + 0x9c]
xor ebx, ebx
cmp eax, ebx
jne 0x422327
mov eax, 0x54ee24
mov dword [ebp - 0x14], ebx
cmp dword [esi + 0x94], ebx
jle 0x42235b
cmp eax, ebx
je 0x42235b
cmp word [eax], bx
je 0x42235b
mov ecx, dword [esi + 0x90]
cmp ecx, ebx
jne 0x42234a
mov ecx, 0x54ee24
push ecx
push ebx
push str.PosiX
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x14], eax
mov ecx, dword [esi + 0x9c]
cmp ecx, ebx
jne 0x42236a
mov ecx, 0x54ee24
mov dword [ebp - 0x10], ebx
cmp dword [esi + 0x94], ebx
jle 0x42239e
cmp ecx, ebx
je 0x42239e
cmp word [ecx], bx
je 0x42239e
mov eax, dword [esi + 0x90]
cmp eax, ebx
jne 0x42238d
mov eax, 0x54ee24
push eax
push ebx
push str.PosiY
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x10], eax
mov ecx, dword [esi + 0x9c]
cmp ecx, ebx
jne 0x4223ad
mov ecx, 0x54ee24
xor edi, edi
cmp dword [esi + 0x94], ebx
jle 0x4223e0
test ecx, ecx
je 0x4223e0
cmp word [ecx], bx
je 0x4223e0
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x4223cf
mov eax, 0x54ee24
push eax
push 0
push str.Width
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov edi, eax
mov ecx, dword [esi + 0x9c]
test ecx, ecx
jne 0x4223ef
mov ecx, 0x54ee24
xor ebx, ebx
cmp dword [esi + 0x94], ebx
jle 0x422422
test ecx, ecx
je 0x422422
cmp word [ecx], bx
je 0x422422
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x422411
mov eax, 0x54ee24
push eax
push 0
push str.Height
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ebx, eax
mov ecx, dword [esi + 0x9c]
test ecx, ecx
jne 0x422431
mov ecx, 0x54ee24
xor eax, eax
cmp dword [esi + 0x94], eax
jle 0x422462
test ecx, ecx
je 0x422462
cmp word [ecx], ax
je 0x422462
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x422453
mov eax, 0x54ee24
push eax
push 0
push str.FontPoint
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp + 0x10], eax
push 0x54ee24
lea eax, [esi + 0x350]
call fcn.005080c0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp + 0x15]
mov eax, dword [ebp - 0x10]
push ecx
mov ecx, dword [ebp + 0xc]
mov dword [esi + 0x338], edx
mov edx, dword [ebp + 0x14]
push edx
mov dword [esi + 0x33c], eax
mov eax, dword [ebp + 0x10]
push eax
push ecx
lea edx, [esi + 0x328]
mov dword [esi + 0x344], ebx
mov ebx, dword [ebp + 8]
push edx
mov dword [esi + 0x340], edi
mov dword [esi + 0x34c], 0x40814
mov dword [esi + 0x348], 1
call fcn.00473a60
push str.AdvSetting_DataList
lea eax, [esi + 0x9c]
mov byte [esi + 0x35c], 0
mov byte [esi + 0x364], 0
call fcn.005080c0
mov eax, dword [esi + 0x9c]
test eax, eax
jne 0x4224f3
mov eax, 0x54ee24
xor edi, edi
mov dword [ebp - 0x14], edi
cmp dword [esi + 0x94], edi
jle 0x42252d
cmp eax, edi
je 0x42252d
cmp word [eax], di
je 0x42252d
mov ecx, dword [esi + 0x90]
cmp ecx, edi
jne 0x422518
mov ecx, 0x54ee24
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push ecx
push edi
push str.PosiX
push eax
call ebx
mov dword [ebp - 0x14], eax
jmp 0x422533
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ecx, dword [esi + 0x9c]
cmp ecx, edi
jne 0x422542
mov ecx, 0x54ee24
mov dword [ebp - 0x10], edi
cmp dword [esi + 0x94], edi
jle 0x422572
cmp ecx, edi
je 0x422572
cmp word [ecx], di
je 0x422572
mov eax, dword [esi + 0x90]
cmp eax, edi
jne 0x422565
mov eax, 0x54ee24
push eax
push edi
push str.PosiY
push ecx
call ebx
mov dword [ebp - 0x10], eax
mov ecx, dword [esi + 0x9c]
cmp ecx, edi
jne 0x422581
mov ecx, 0x54ee24
cmp dword [esi + 0x94], edi
jle 0x4225ae
test ecx, ecx
je 0x4225ae
cmp word [ecx], di
je 0x4225ae
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x4225a1
mov eax, 0x54ee24
push eax
push 0
push str.Width
push ecx
call ebx
mov edi, eax
mov ecx, dword [esi + 0x9c]
test ecx, ecx
jne 0x4225bd
mov ecx, 0x54ee24
xor ebx, ebx
cmp dword [esi + 0x94], ebx
jle 0x4225f0
test ecx, ecx
je 0x4225f0
cmp word [ecx], bx
je 0x4225f0
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x4225df
mov eax, 0x54ee24
push eax
push 0
push str.Height
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ebx, eax
mov ecx, dword [esi + 0x9c]
test ecx, ecx
jne 0x4225ff
mov ecx, 0x54ee24
xor eax, eax
cmp dword [esi + 0x94], eax
jle 0x422630
test ecx, ecx
je 0x422630
cmp word [ecx], ax
je 0x422630
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x422621
mov eax, 0x54ee24
push eax
push 0
push str.FontPoint
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp + 0x10], eax
push 0x54ee24
lea eax, [esi + 0x3e0]
call fcn.005080c0
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp + 0x15]
mov ecx, dword [ebp - 0x10]
push edx
mov edx, dword [ebp + 0xc]
mov dword [esi + 0x3c8], eax
mov eax, dword [ebp + 0x14]
push eax
mov dword [esi + 0x3cc], ecx
mov ecx, dword [ebp + 0x10]
push ecx
mov dword [esi + 0x3d0], edi
mov edi, dword [ebp + 8]
push edx
lea eax, [esi + 0x3b8]
mov dword [esi + 0x3d4], ebx
push eax
mov ebx, edi
mov dword [esi + 0x3dc], 0x810
mov dword [esi + 0x3d8], 1
call fcn.00473a60
xor ebx, ebx
mov byte [esi + 0x3ec], bl
mov byte [esi + 0x3f4], bl
cmp edi, ebx
je 0x4226c2
push 0xffffffffffffffec
push edi
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, 0x400000
je 0x4226c2
or dword [esi + 0x3dc], 0x20000
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x20]
cmp eax, ebx
je 0x4226d9
push eax
call fcn.0051ebab
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop ebx
mov esp, ebp
pop ebp
ret 0x10