Function at 0x4c9e5b
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x4fe500
call fcn.00475fe0
sub esp, 0x130
push ebx
push esi
push edi
mov dword [ebp - 0x28], ecx
and byte [ebp - 0x13c], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x13b]
mov dword [ebp - 4], 1
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [ebp - 0x20]
stosb byte es:[edi], al
call sub.MFC42.DLL_CString::CString_4
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 2
call sub.MFC42.DLL_CString::CString_4
push dword [ebp + 0xc]
mov edi, 0x104
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x13c]
push edi
mov ebx, 0x50229c
push eax
push ebx
push str.syspanel
mov byte [ebp - 4], 3
push dword [ebp + 8]
call esi
lea eax, [ebp - 0x13c]
lea ecx, [ebp - 0x20]
push eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.type
push dword [ebp + 8]
call esi
lea eax, [ebp - 0x13c]
lea ecx, [ebp - 0x34]
push eax
call sub.MFC42.DLL_CString::operator_2
push str.TRUE
push dword [ebp - 0x20]
call dword [sym.imp.MSVCRT.dll__mbsicmp]
pop ecx
test eax, eax
pop ecx
je 0x4ca2d4
push 0x1c
call sub.MFC42.DLL_operatornew
pop ecx
mov ecx, eax
mov dword [ebp - 0x30], ecx
test ecx, ecx
mov byte [ebp - 4], 4
je 0x4c9f3a
push 0xa
call sub.MFC42.DLL_CMapStringToString::CMapStringToString
mov dword [ebp - 0x10], eax
jmp 0x4c9f3e
and dword [ebp - 0x10], 0
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
mov byte [ebp - 4], 3
push edi
push eax
push ebx
push str.userpanel
push dword [ebp + 8]
call esi
test eax, eax
je 0x4c9f75
mov ecx, dword [ebp - 0x10]
push str.TRUE
push str.userpanel
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.userpanelver
push dword [ebp + 8]
call esi
test eax, eax
je 0x4c9faa
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.userpanelver
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.PanelIndex
push dword [ebp + 8]
call esi
test eax, eax
je 0x4c9fdf
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.PanelIndex
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.grade
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca014
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.grade
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.type
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca049
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.type
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.name
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca07e
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.name
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.panelid
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca0b3
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.panelid
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push 0x556dfc
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca0e8
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push 0x556dfc
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.domainid
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca11d
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.domainid
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.tipsinfo
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca152
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.tipsinfo
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.iconUrl
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca187
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.iconUrl
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.iconName
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca1bc
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.iconName
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
mov ebx, str.iconver
push ebx
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca1ee
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push ebx
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
mov ebx, str.valid
push edi
push eax
push str.TRUE
push ebx
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca224
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push ebx
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
mov ebx, str.bForbid
push edi
push eax
push str.FALSE
push ebx
push dword [ebp + 8]
call esi
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push ebx
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
mov ebx, 0x5506f0
push edi
push eax
mov edi, str.stream
push ebx
push edi
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca2be
lea eax, [ebp - 0x13c]
lea ecx, [ebp - 0x14]
push eax
call sub.MFC42.DLL_CString::CString_1
mov esi, 0x55071c
mov byte [ebp - 4], 5
push esi
push dword [ebp - 0x14]
call dword [sym.imp.MSVCRT.dll__mbscmp]
pop ecx
test eax, eax
pop ecx
jne 0x4ca2a1
push esi
jmp 0x4ca2a2
push ebx
mov ecx, dword [ebp - 0x10]
push edi
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 3
call sub.MFC42.DLL_CString::CString
mov eax, dword [ebp - 0x28]
push dword [ebp - 0x10]
lea ecx, [eax + 0xe4]
call fcn.004bd3df
jmp 0x4ca9a7
push str.TRUE
push dword [ebp - 0x20]
call dword [sym.imp.MSVCRT.dll__mbsicmp]
pop ecx
test eax, eax
pop ecx
jne 0x4ca92d
push 0x55071c
push dword [ebp - 0x34]
call dword [sym.imp.MSVCRT.dll__mbsicmp]
pop ecx
test eax, eax
pop ecx
jne 0x4ca92d
lea ecx, [ebp - 0x24]
call sub.MFC42.DLL_CString::CString_4
push 0x1c
mov byte [ebp - 4], 6
call sub.MFC42.DLL_operatornew
pop ecx
mov ecx, eax
mov dword [ebp - 0x1c], ecx
test ecx, ecx
mov byte [ebp - 4], 7
je 0x4ca331
push 0xa
call sub.MFC42.DLL_CMapStringToString::CMapStringToString
mov dword [ebp - 0x10], eax
jmp 0x4ca335
and dword [ebp - 0x10], 0
push dword [ebp + 0xc]
and dword [ebp - 0x18], 0
lea eax, [ebp - 0x13c]
mov byte [ebp - 4], 6
push edi
push eax
push ebx
push str.pushtime
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca50e
lea eax, [ebp - 0x13c]
lea ecx, [ebp - 0x24]
push eax
call sub.MFC42.DLL_CString::operator_2
push 0
call dword [sym.imp.MSVCRT.dll_time]
push dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
call dword [sym.imp.MSVCRT.dll_atoi]
cmp dword [ebp - 0x1c], eax
pop ecx
pop ecx
push str.TRUE
jbe 0x4ca42c
mov ecx, dword [ebp - 0x10]
push str.userpanel
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
mov ecx, dword [ebp - 0x10]
push 0x5506f0
push str.type
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
mov ecx, dword [ebp - 0x10]
push 0x5506f0
push str.grade
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
push 0
push str.syspanel
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push dword [ebp + 0xc]
push 0
push str.pushtime
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push dword [ebp + 0xc]
push 0
push str.PanelIndex
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push dword [ebp + 0xc]
push 0
push str.bFlash
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov dword [ebp - 0x18], 1
jmp 0x4ca50e
mov ecx, dword [ebp - 0x10]
push str.syspanel
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
mov ecx, dword [ebp - 0x10]
push 0x55071c
push str.type
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
mov ecx, dword [ebp - 0x10]
push 0x5559f0
push str.grade
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp - 0x24]
mov ecx, dword [ebp - 0x10]
push str.pushtime
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.PanelIndex
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca4be
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.PanelIndex
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push str.FALSE
push str.bFlash
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca4f7
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.bFlash
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
push 0
push str.userpanel
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
and dword [ebp - 0x18], 0
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.userpanelver
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca543
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.userpanelver
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.name
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca578
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.name
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.panelid
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca5ad
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.panelid
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
lea eax, [ebp - 0x13c]
lea ecx, [ebp - 0x30]
push eax
call sub.MFC42.DLL_CString::CString_1
push dword [ebp - 0x30]
mov byte [ebp - 4], 8
call dword [sym.imp.MSVCRT.dll_atoi]
pop ecx
mov dword [ebp - 0x2c], eax
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push 0x556dfc
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca602
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push 0x556dfc
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.domainid
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca637
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.domainid
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.tipsinfo
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca66c
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.tipsinfo
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.iconUrl
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca6a1
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.iconUrl
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
push str.iconName
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca6d6
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push str.iconName
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push ebx
mov ebx, str.iconver
push ebx
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca708
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push ebx
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
mov ebx, str.valid
push edi
push eax
push str.TRUE
push ebx
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca73e
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push ebx
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
lea eax, [ebp - 0x13c]
lea ecx, [ebp - 0x38]
push eax
call sub.MFC42.DLL_CString::CString_1
and dword [ebp - 0x14], 0
push str.TRUE
push dword [ebp - 0x38]
mov byte [ebp - 4], 9
call dword [sym.imp.MSVCRT.dll__mbsicoll]
pop ecx
test eax, eax
pop ecx
jne 0x4ca770
mov dword [ebp - 0x14], 1
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
mov ebx, str.bForbid
push edi
push eax
push str.FALSE
push ebx
push dword [ebp + 8]
call esi
test eax, eax
je 0x4ca7a6
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x13c]
push eax
push ebx
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
mov ebx, 0x5506f0
push edi
push eax
mov edi, str.stream
push ebx
push edi
push dword [ebp + 8]
call esi
xor esi, esi
cmp eax, esi
je 0x4ca812
lea eax, [ebp - 0x13c]
lea ecx, [ebp - 0x1c]
push eax
call sub.MFC42.DLL_CString::CString_1
mov esi, 0x55071c
mov byte [ebp - 4], 0xa
push esi
push dword [ebp - 0x1c]
call dword [sym.imp.MSVCRT.dll__mbscmp]
pop ecx
test eax, eax
pop ecx
jne 0x4ca7f3
push esi
jmp 0x4ca7f4
push ebx
mov ecx, dword [ebp - 0x10]
push edi
call sub.MFC42.DLL_CMapStringToString::operator__
mov ecx, eax
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 9
call sub.MFC42.DLL_CString::CString
xor esi, esi
cmp dword [ebp - 0x18], esi
je 0x4ca8fb
mov edi, dword [ebp - 0x28]
push 1
push dword [ebp - 0x10]
lea ecx, [edi + 0xe4]
push esi
call fcn.004caf45
mov dword [ebp - 0x18], esi
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0xc
call sub.MFC42.DLL_AfxGetAppModuleState
mov eax, dword [eax + 4]
lea edx, [ebp - 0x18]
push edx
push 0x5134e0
mov eax, dword [eax + 0xd4]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x1c]
test eax, eax
jne 0x4ca899
mov eax, dword [ebp - 0x10]
cmp eax, esi
je 0x4ca86e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 0x10], esi
mov eax, dword [ebp - 0x18]
lea edx, [ebp - 0x10]
push edx
push 0x5134f0
mov ecx, dword [eax]
push eax
call dword [ecx]
test eax, eax
jne 0x4ca899
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x14], esi
mov ecx, dword [eax]
je 0x4ca890
push esi
jmp 0x4ca892
push 1
push dword [ebp - 0x2c]
push eax
call dword [ecx + 0xc]
push 8
call sub.MFC42.DLL_operatornew
pop ecx
mov dword [ebp - 0x1c], eax
cmp eax, esi
mov byte [ebp - 4], 0xd
je 0x4ca8b4
and byte [eax + 4], 0
mov dword [eax], esi
jmp 0x4ca8b6
xor eax, eax
mov ecx, dword [ebp - 0x2c]
cmp dword [ebp - 0x14], esi
mov byte [ebp - 4], 0xc
mov dword [eax], ecx
je 0x4ca8ca
and byte [eax + 4], 0
jmp 0x4ca8ce
mov byte [eax + 4], 1
push eax
lea ecx, [edi + 0x24]
call fcn.004acdbd
mov eax, dword [ebp - 0x10]
mov byte [ebp - 4], 0xb
cmp eax, esi
je 0x4ca8e8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x18]
mov byte [ebp - 4], 9
cmp eax, esi
je 0x4ca90c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x4ca90c
mov eax, dword [ebp - 0x28]
push dword [ebp - 0x10]
lea ecx, [eax + 0xf8]
call fcn.004bd3df
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 8
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 6
call sub.MFC42.DLL_CString::CString
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x24]
jmp 0x4ca9a2
push dword [ebp + 0xc]
lea eax, [ebp - 0x13c]
push edi
push eax
push str.TRUE
push str.valid
push dword [ebp + 8]
call esi
lea ecx, [ebp - 0x14]
call sub.MFC42.DLL_CString::CString_4
lea eax, [ebp - 0x13c]
lea ecx, [ebp - 0x14]
push eax
mov byte [ebp - 4], 0xe
call sub.MFC42.DLL_CString::operator_2
push str.FALSE
push dword [ebp - 0x14]
call dword [sym.imp.MSVCRT.dll__mbsicmp]
pop ecx
test eax, eax
pop ecx
jne 0x4ca99b
push dword [ebp + 0xc]
push eax
push str.panelid
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
je 0x4ca99b
push eax
mov eax, dword [ebp - 0x28]
lea ecx, [eax + 0x10c]
call fcn.00460b1f
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x14]
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 1
call sub.MFC42.DLL_CString::CString
and byte [ebp - 4], 0
lea ecx, [ebp + 8]
call sub.MFC42.DLL_CString::CString
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call sub.MFC42.DLL_CString::CString
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 8