Function at 0x10055b8
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x100768c
call sub.MSVCRT40.dll__EH_prolog
sub esp, 0x1a4
push esi
mov esi, ecx
push edi
lea ecx, [ebp - 0x14]
call sub.MFC40.DLL_CString::CString
xor edi, edi
push 0x77
lea ecx, [ebp - 0x14]
mov dword [ebp - 4], edi
call sub.MFC40.DLL_CString::LoadStringA
push edi
push pe_nt_image_headers32
push 4
push edi
push edi
push 0x40000000
push dword [esi + 0x4f4]
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp eax, edi
jne 0x100566f
lea ecx, [ebp - 0x10]
call sub.MFC40.DLL_CString::CString
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 1
call sub.MFC40.DLL_CString::CString
push 0x96
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 2
call sub.MFC40.DLL_CString::LoadStringA
push 0x97
lea ecx, [ebp - 0x18]
call sub.MFC40.DLL_CString::LoadStringA
push 0x10010
push dword [ebp - 0x10]
push dword [ebp - 0x18]
push edi
call dword [sym.imp.USER32.dll_MessageBoxA]
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 1
call fcn.01006c42
and byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call fcn.01006c42
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.01006c42
jmp 0x10057d5
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [esi + 0x4f4]
mov ebx, 0x1002814
push edi
mov edi, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x100280c
push ebx
call edi
lea eax, [ebp - 0xb0]
push 0x32
push eax
push 0x1002e60
call dword [sym.imp.ole32.dll_StringFromGUID2]
xor eax, eax
lea ecx, [ebp - 0x4c]
push eax
push eax
push 0x32
push ecx
lea ecx, [ebp - 0xb0]
push 0xffffffffffffffff
push ecx
push eax
push eax
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
push dword [esi + 0x4f4]
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x4c]
push eax
push ebx
call edi
mov ecx, dword [ebp - 0x14]
mov eax, dword [esi + 0x1d8]
mov bl, byte [eax]
mov dl, bl
cmp bl, byte [ecx]
jne 0x10056fc
test dl, dl
je 0x10056f8
mov bl, byte [eax + 1]
mov dl, bl
cmp bl, byte [ecx + 1]
jne 0x10056fc
inc eax
inc eax
inc ecx
inc ecx
test dl, dl
jne 0x10056da
xor eax, eax
jmp 0x1005701
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1005750
lea eax, [esi + 0x1d8]
lea ecx, [ebp - 0x10]
push eax
call sub.MFC40.DLL_CString::CString_2
push dword [esi + 0x4f4]
lea eax, [ebp - 0x4c]
mov byte [ebp - 4], 3
push 0x1002808
push 0x10027fc
push eax
call edi
push dword [esi + 0x4f4]
lea eax, [ebp - 0x4c]
push dword [ebp - 0x10]
push 0x1001ae4
push eax
call edi
and byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call fcn.01006c42
jmp 0x10057bb
push dword [esi + 0x4f4]
lea eax, [ebp - 0x1b0]
mov ebx, 0x1001af4
push 0x100
push eax
push ebx
lea eax, [ebp - 0x4c]
push 0x1001ae4
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x1b0]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [ebx]
jne 0x100579f
test cl, cl
je 0x100579b
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [ebx + 1]
jne 0x100579f
inc eax
inc eax
inc ebx
inc ebx
test cl, cl
jne 0x100577d
xor eax, eax
jmp 0x10057a4
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x10057bb
push dword [esi + 0x4f4]
lea eax, [ebp - 0x4c]
push 0
push 0x1001ae4
push eax
call edi
lea eax, [ebp - 0x4c]
mov ecx, esi
push eax
push 0
call fcn.01005c0e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.01006c42
pop ebx
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
leave
ret