Function at 0x4d9aae
Capabilities:
Read .ini file

Disassembly:
push ebx
push esi
push edi
push ebp
mov ebx, 0x569f83
mov esi, 0x55829c
mov edi, 0x580248
mov ebp, str.mirc.ini
push 0x7f02
push 0
call sub.USER32.dll_LoadCursorA
push eax
call sub.USER32.dll_SetCursor
mov dword [0x58024c], eax
push ebp
push 0x3e7
push ebx
lea eax, [esi + 0x53]
push eax
lea edx, [esi + 0x4b]
push edx
lea ecx, [esi + 0x44]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
cmp byte [ebx], 0
je 0x4d9b64
push ebp
push ebx
lea eax, [esi + 0x5f]
push eax
lea edx, [esi + 0x57]
push edx
call fcn.00498684
push ebp
push ebx
lea ecx, [esi + 0x6b]
push ecx
lea eax, [esi + 0x63]
push eax
call fcn.00498684
push ebp
push ebx
lea edx, [esi + 0x77]
push edx
lea ecx, [esi + 0x6f]
push ecx
call fcn.00498684
push ebp
push ebx
lea eax, [esi + 0x83]
push eax
lea edx, [esi + 0x7b]
push edx
call fcn.00498684
push ebp
push ebx
lea ecx, [esi + 0x8f]
push ecx
lea eax, [esi + 0x87]
push eax
call fcn.00498684
push ebp
push 0
lea edx, [esi + 0x9a]
push edx
lea ecx, [esi + 0x93]
push ecx
call fcn.00498684
call fcn.004d9782
push ebp
push 0x3e7
push ebx
lea eax, [esi + 0xae]
push eax
lea edx, [esi + 0xaa]
push edx
lea ecx, [esi + 0xa2]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
cmp byte [ebx], 0
jne 0x4d9ba2
push esi
push edi
add esi, 0xb2
mov edi, ebx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
pop esi
push ebx
call fcn.0041cb6c
push 0
push ebx
call fcn.004d9813
push ebp
push 0x3e7
push ebx
lea edx, [esi + 0xca]
push edx
lea ecx, [esi + 0xc6]
push ecx
lea eax, [esi + 0xbe]
push eax
call sub.KERNEL32.dll_GetPrivateProfileStringA
cmp byte [ebx], 0
jne 0x4d9be9
push esi
push edi
add esi, 0xce
mov edi, ebx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
pop esi
push ebx
call fcn.0041cb6c
push 1
push ebx
call fcn.004d9813
push ebp
push 0x3e7
push ebx
lea edx, [esi + 0xe6]
push edx
lea ecx, [esi + 0xe2]
push ecx
lea eax, [esi + 0xda]
push eax
call sub.KERNEL32.dll_GetPrivateProfileStringA
cmp byte [ebx], 0
jne 0x4d9c30
push esi
push edi
add esi, 0xea
mov edi, ebx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
pop esi
push ebx
call fcn.0041cb6c
push 2
push ebx
call fcn.004d9813
push ebp
push 0x3e7
push ebx
lea edx, [esi + 0x102]
push edx
lea ecx, [esi + 0xfe]
push ecx
lea eax, [esi + 0xf6]
push eax
call sub.KERNEL32.dll_GetPrivateProfileStringA
cmp byte [ebx], 0
jne 0x4d9c77
push esi
push edi
add esi, 0x106
mov edi, ebx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
pop esi
push ebx
call fcn.0041cb6c
push 3
push ebx
call fcn.004d9813
push ebp
push 0x3e7
push ebx
lea edx, [esi + 0x11e]
push edx
lea ecx, [esi + 0x11a]
push ecx
lea eax, [esi + 0x112]
push eax
call sub.KERNEL32.dll_GetPrivateProfileStringA
cmp byte [ebx], 0
jne 0x4d9cbe
push esi
push edi
add esi, 0x122
mov edi, ebx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
pop esi
push ebx
call fcn.0041cb6c
push 4
push ebx
call fcn.004d9813
xor edx, edx
mov dword [0x580250], edx
mov ecx, dword [0x558294]
mov dword [edi], ecx
jmp 0x4d9d12
mov edx, dword [0x580250]
cmp edx, dword [0x558298]
jne 0x4d9cf8
mov dword [eax + 0x134], 1
jmp 0x4d9d02
mov eax, dword [edi]
xor ecx, ecx
mov dword [eax + 0x134], ecx
mov eax, dword [edi]
mov edx, dword [eax + 0x15c]
mov dword [edi], edx
inc dword [0x580250]
mov eax, dword [edi]
test eax, eax
jne 0x4d9cde
push dword [0x58024c]
call sub.USER32.dll_SetCursor
pop ebp
pop edi
pop esi
pop ebx
ret