Function at 0x421fe0
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x53ae88
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 0x422028
mov eax, 0x54ee24
mov dword [ebp - 0x10], ebx
cmp dword [esi + 0x94], ebx
jle 0x42205c
cmp eax, ebx
je 0x42205c
cmp word [eax], bx
je 0x42205c
mov ecx, dword [esi + 0x90]
cmp ecx, ebx
jne 0x42204b
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 0x42206b
mov ecx, 0x54ee24
mov dword [ebp - 0x14], ebx
cmp dword [esi + 0x94], ebx
jle 0x42209f
cmp ecx, ebx
je 0x42209f
cmp word [ecx], bx
je 0x42209f
mov eax, dword [esi + 0x90]
cmp eax, ebx
jne 0x42208e
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 0x4220ae
mov ecx, 0x54ee24
xor edi, edi
cmp dword [esi + 0x94], ebx
jle 0x4220e0
cmp ecx, ebx
je 0x4220e0
cmp word [ecx], bx
je 0x4220e0
mov eax, dword [esi + 0x90]
cmp eax, ebx
jne 0x4220d0
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 0x4220ef
mov ecx, 0x54ee24
xor ebx, ebx
cmp dword [esi + 0x94], ebx
jle 0x422122
test ecx, ecx
je 0x422122
cmp word [ecx], bx
je 0x422122
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x422111
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 0x422131
mov ecx, 0x54ee24
xor eax, eax
cmp dword [esi + 0x94], eax
jle 0x422162
test ecx, ecx
je 0x422162
cmp word [ecx], ax
je 0x422162
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x422153
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.00471380
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x42218b
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.00473690
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 0x422217
mov eax, 0x54ee24
mov dword [ebp - 0x14], ebx
cmp dword [esi + 0x94], ebx
jle 0x42224b
cmp eax, ebx
je 0x42224b
cmp word [eax], bx
je 0x42224b
mov ecx, dword [esi + 0x90]
cmp ecx, ebx
jne 0x42223a
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 0x42225a
mov ecx, 0x54ee24
mov dword [ebp - 0x10], ebx
cmp dword [esi + 0x94], ebx
jle 0x42228e
cmp ecx, ebx
je 0x42228e
cmp word [ecx], bx
je 0x42228e
mov eax, dword [esi + 0x90]
cmp eax, ebx
jne 0x42227d
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 0x42229d
mov ecx, 0x54ee24
xor edi, edi
cmp dword [esi + 0x94], ebx
jle 0x4222d0
test ecx, ecx
je 0x4222d0
cmp word [ecx], bx
je 0x4222d0
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x4222bf
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 0x4222df
mov ecx, 0x54ee24
xor ebx, ebx
cmp dword [esi + 0x94], ebx
jle 0x422312
test ecx, ecx
je 0x422312
cmp word [ecx], bx
je 0x422312
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x422301
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 0x422321
mov ecx, 0x54ee24
xor eax, eax
cmp dword [esi + 0x94], eax
jle 0x422352
test ecx, ecx
je 0x422352
cmp word [ecx], ax
je 0x422352
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x422343
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.00473690
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 0x4223e3
mov eax, 0x54ee24
xor edi, edi
mov dword [ebp - 0x14], edi
cmp dword [esi + 0x94], edi
jle 0x42241d
cmp eax, edi
je 0x42241d
cmp word [eax], di
je 0x42241d
mov ecx, dword [esi + 0x90]
cmp ecx, edi
jne 0x422408
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 0x422423
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ecx, dword [esi + 0x9c]
cmp ecx, edi
jne 0x422432
mov ecx, 0x54ee24
mov dword [ebp - 0x10], edi
cmp dword [esi + 0x94], edi
jle 0x422462
cmp ecx, edi
je 0x422462
cmp word [ecx], di
je 0x422462
mov eax, dword [esi + 0x90]
cmp eax, edi
jne 0x422455
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 0x422471
mov ecx, 0x54ee24
cmp dword [esi + 0x94], edi
jle 0x42249e
test ecx, ecx
je 0x42249e
cmp word [ecx], di
je 0x42249e
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x422491
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 0x4224ad
mov ecx, 0x54ee24
xor ebx, ebx
cmp dword [esi + 0x94], ebx
jle 0x4224e0
test ecx, ecx
je 0x4224e0
cmp word [ecx], bx
je 0x4224e0
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x4224cf
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 0x4224ef
mov ecx, 0x54ee24
xor eax, eax
cmp dword [esi + 0x94], eax
jle 0x422520
test ecx, ecx
je 0x422520
cmp word [ecx], ax
je 0x422520
mov eax, dword [esi + 0x90]
test eax, eax
jne 0x422511
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.00473690
xor ebx, ebx
mov byte [esi + 0x3ec], bl
mov byte [esi + 0x3f4], bl
cmp edi, ebx
je 0x4225b2
push 0xffffffffffffffec
push edi
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, 0x400000
je 0x4225b2
or dword [esi + 0x3dc], 0x20000
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x20]
cmp eax, ebx
je 0x4225c9
push eax
call fcn.0051eadb
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