Function at 0x4e8877
Capabilities:
Get graphical window text
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov esi, 0x562678
mov edi, 0x53651c
mov ebx, 0x562670
push dword [ebp + 8]
call fcn.004f9c59
mov dword [0x56265c], eax
cmp dword [0x56265c], 0
jne 0x4e88af
push dword [ebp + 8]
call fcn.004e8640
jmp 0x4e9169
mov eax, dword [0x56265c]
mov edx, dword [eax + 0x744]
mov dword [0x562684], edx
cmp dword [0x562684], 0
je 0x4e88d6
call sub.USER32.dll_GetFocus
cmp eax, dword [0x562684]
je 0x4e88e2
push 0
call fcn.00415bea
jmp 0x4e9169
push 0
push 0
push 0xb0
push dword [0x562684]
call sub.USER32.dll_SendMessageA
mov dword [0x562680], eax
movzx edx, word [0x562680]
mov dword [0x56266c], edx
mov eax, edx
mov dword [0x562668], eax
test eax, eax
jge 0x4e891b
xor ecx, ecx
mov dword [0x562668], ecx
cmp edx, dword [0x562668]
jge 0x4e892d
mov eax, dword [0x562668]
mov dword [0x56266c], eax
push 0
push 0
push 0xe
push dword [0x562684]
call sub.USER32.dll_SendMessageA
mov dword [ebx], eax
cmp dword [ebx], 0
jle 0x4e894e
cmp dword [0x536518], 0
je 0x4e895b
push dword [ebp + 8]
call fcn.004e8640
jmp 0x4e9169
push 0x555aeb
push 0x3e6
push 0xd
push dword [0x562684]
call sub.USER32.dll_SendMessageA
mov dword [ebx], eax
cmp dword [ebx], 0
jg 0x4e8985
push 0
call fcn.00415bea
jmp 0x4e9169
mov edx, dword [ebx]
mov byte [edx + 0x555aeb], 0
push 0x555aeb
call fcn.004e85a5
test eax, eax
je 0x4e89e8
push 0x5365b3
push 0
push 0xc
push dword [0x562684]
call sub.USER32.dll_SendMessageA
push dword [0x562684]
call sub.USER32.dll_UpdateWindow
push dword [ebp + 8]
call fcn.004e8640
jmp 0x4e9169
mov ecx, dword [0x56266c]
mov al, byte [ecx + 0x555aeb]
test al, al
je 0x4e89f2
mov edx, dword [0x56266c]
cmp al, 0x20
je 0x4e89f2
inc dword [0x56266c]
mov ecx, dword [0x56266c]
cmp ecx, dword [ebx]
jl 0x4e89c8
mov eax, dword [0x56266c]
mov byte [eax + 0x555aeb], 0
mov edx, dword [0x562668]
cmp byte [edx + 0x555aeb], 0x20
jne 0x4e8a4b
dec dword [0x562668]
cmp dword [0x562668], 0
jl 0x4e8a2b
mov ecx, dword [0x562668]
cmp byte [ecx + 0x555aeb], 0x20
jne 0x4e8a4b
push 0
call fcn.00415bea
jmp 0x4e9169
mov eax, dword [0x562668]
cmp byte [eax + 0x555aeb], 0x20
je 0x4e8a54
dec dword [0x562668]
cmp dword [0x562668], 0
jg 0x4e8a37
mov edx, dword [0x562668]
cmp byte [edx + 0x555aeb], 0x20
jne 0x4e8a69
inc dword [0x562668]
mov ecx, 0x555aeb
add ecx, dword [0x562668]
push ecx
call fcn.0048f0a1
test al, al
je 0x4e8abc
mov eax, dword [0x562668]
cmp byte [eax + 0x555aeb], 0x25
je 0x4e8abc
inc dword [0x562668]
mov edx, dword [0x562668]
cmp byte [edx + 0x555aeb], 0
je 0x4e8ab0
mov ecx, dword [0x562668]
cmp byte [ecx + 0x555aeb], 0x20
jne 0x4e8abc
push 0
call fcn.00415bea
jmp 0x4e9169
mov eax, 0x555aeb
add eax, dword [0x562668]
push eax
call fcn.005183dc
pop ecx
cmp eax, 0x5a
jbe 0x4e8adf
push 0
call fcn.00415bea
jmp 0x4e9169
cmp byte [edi], 0
je 0x4e8b05
push edi
call fcn.005183dc
pop ecx
push eax
push edi
mov edx, 0x555aeb
add edx, dword [0x562668]
push edx
call fcn.00518638
add esp, 0xc
test eax, eax
je 0x4e8b48
mov ecx, dword [0x56266c]
sub ecx, dword [0x562668]
push ecx
mov eax, 0x555aeb
add eax, dword [0x562668]
push eax
push edi
call fcn.005185e8
add esp, 0xc
mov edx, dword [0x56266c]
sub edx, dword [0x562668]
mov byte [edi + edx], 0
cmp byte [edi], 0
jne 0x4e8b48
push 0
call fcn.00415bea
jmp 0x4e9169
mov ecx, dword [0x562668]
mov byte [ecx + 0x555aeb], 0
mov eax, dword [0x56266c]
cmp eax, dword [ebx]
jge 0x4e8b6b
mov edx, dword [0x56266c]
mov byte [edx + 0x555aeb], 0x20
mov al, byte [edi]
cmp al, 0x24
je 0x4e8b86
cmp al, 0x25
je 0x4e8b86
cmp byte [edi], 0x23
jne 0x4e8be3
cmp byte [edi + 1], 0
je 0x4e8b86
cmp byte [edi + 1], 0x20
jne 0x4e8be3
push esi
push edi
mov esi, 0x555704
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
push 0
push 0
push 0
push 0x555704
push dword [ebp + 8]
call fcn.0045b230
test eax, eax
je 0x4e8bd7
cmp byte [0x555704], 0
je 0x4e8bd7
mov dword [esi], 0x555704
jmp 0x4e906a
push 0
call fcn.00415bea
jmp 0x4e9169
cmp byte [edi], 0x23
jne 0x4e8cc7
cmp byte [edi + 1], 0
je 0x4e8cc7
mov eax, dword [0x536584]
mov dword [0x562698], eax
mov edx, dword [0x562698]
mov dword [0x562694], edx
push dword [0x562694]
push 0x5365b7
push 0x562688
call sub.USER32.dll_wsprintfA
add esp, 0xc
push 0x529888
push 0x3e7
push 0x555704
push 0x5365c6
push 0x562688
push str.channels
call sub.KERNEL32.dll_GetPrivateProfileStringA
cmp byte [0x555704], 0
je 0x4e8cb4
push 0x20
push 0x555704
call fcn.0051833c
add esp, 8
mov dword [esi], eax
cmp dword [esi], 0
je 0x4e8c6b
mov ecx, dword [esi]
mov byte [ecx], 0
push edi
call fcn.005183dc
pop ecx
push eax
push 0x555704
push edi
call fcn.00518638
add esp, 0xc
test eax, eax
jne 0x4e8c9b
mov eax, dword [0x562694]
inc eax
mov dword [0x536584], eax
mov dword [esi], 0x555704
jmp 0x4e906a
inc dword [0x562694]
mov edx, dword [0x562694]
cmp edx, dword [0x536584]
je 0x4e8cc7
jmp 0x4e8c0c
xor eax, eax
mov dword [0x562694], eax
cmp eax, dword [0x536584]
jne 0x4e8c0c
mov edx, dword [0x56265c]
cmp dword [edx + 0x748], 0
je 0x4e8d0a
mov ecx, dword [0x56265c]
cmp byte [ecx + 0x638], 1
je 0x4e8f70
mov eax, dword [0x56265c]
cmp byte [eax + 0x638], 9
jne 0x4e8d0a
mov edx, dword [0x56265c]
cmp byte [edx + 0x639], 2
je 0x4e8f70
mov ecx, dword [0x56265c]
cmp byte [ecx + 0x638], 2
jne 0x4e8dcb
mov eax, dword [0x56265c]
cmp byte [eax + 0x639], 2
jne 0x4e8dcb
cmp dword [0x536514], 0
je 0x4e8dcb
mov ebx, dword [0x536514]
test ebx, ebx
je 0x4e8d5a
cmp dword [ebx + 0x18], 1
jne 0x4e8d53
xor eax, eax
mov dword [ebx + 0x18], eax
jmp 0x4e8d5a
mov ebx, dword [ebx + 0x30]
test ebx, ebx
jne 0x4e8d46
test ebx, ebx
jne 0x4e8d67
mov edx, dword [0x536514]
mov ebx, dword [edx + 0x34]
mov dword [ebx + 0x18], 1
test ebx, ebx
je 0x4e8dcb
push edi
call fcn.005183dc
pop ecx
push eax
push dword [ebx]
push edi
call fcn.00518638
add esp, 0xc
test eax, eax
jne 0x4e8dbc
mov eax, dword [ebx]
push esi
mov esi, 0x555704
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
mov dword [esi], 0x555704
jmp 0x4e906a
cmp ebx, dword [0x536514]
je 0x4e8dcb
mov ebx, dword [ebx + 0x34]
test ebx, ebx
jne 0x4e8d72
mov ebx, dword [0x56265c]
cmp byte [ebx + 0x638], 2
jne 0x4e8e6f
cmp byte [ebx + 0x639], 2
je 0x4e8e6f
cmp byte [ebx + 0x639], 1
jne 0x4e8dfb
add ebx, 4
mov dword [esi], ebx
jmp 0x4e8e1e
push 0x20
add ebx, 4
push ebx
call fcn.0051833c
add esp, 8
mov dword [esi], eax
cmp dword [esi], 0
jne 0x4e8e1c
mov eax, dword [0x56265c]
add eax, 4
mov dword [esi], eax
jmp 0x4e8e1e
inc dword [esi]
mov edx, dword [esi]
cmp byte [edx], 0
je 0x4e8e6f
push edi
call fcn.005183dc
pop ecx
push eax
push dword [esi]
push edi
call fcn.00518638
add esp, 0xc
test eax, eax
jne 0x4e8e6f
mov ecx, dword [esi]
push esi
mov esi, 0x555704
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
mov dword [esi], 0x555704
jmp 0x4e906a
mov eax, dword [0x56265c]
cmp byte [eax + 0x638], 0
je 0x4e8e90
mov edx, dword [0x56265c]
cmp byte [edx + 0x638], 2
jne 0x4e8f63
mov ecx, dword [0x536588]
mov dword [0x5626a0], ecx
cmp dword [0x5626a0], 0
je 0x4e8eb4
push dword [0x5626a0]
call fcn.004b3829
test eax, eax
jne 0x4e8ebe
mov eax, dword [0x5338f0]
mov dword [0x5626a0], eax
mov edx, dword [0x5626a0]
mov dword [0x56269c], edx
jmp 0x4e8f55
push edi
call fcn.005183dc
pop ecx
push eax
push ebx
push edi
call fcn.00518638
add esp, 0xc
test eax, eax
jne 0x4e8f27
mov ebx, dword [0x56269c]
mov eax, dword [ebx + 0x2ac]
mov dword [0x536588], eax
push esi
mov esi, 0x555704
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
mov dword [esi], 0x555704
jmp 0x4e906a
mov eax, dword [0x56269c]
mov eax, dword [eax + 0x2ac]
mov dword [0x56269c], eax
test eax, eax
jne 0x4e8f47
mov edx, dword [0x5338f0]
mov dword [0x56269c], edx
mov ecx, dword [0x56269c]
cmp ecx, dword [0x5626a0]
je 0x4e8f63
mov ebx, dword [0x56269c]
test ebx, ebx
jne 0x4e8ecf
push dword [ebp + 8]
call fcn.004e8640
jmp 0x4e9169
xor eax, eax
mov dword [0x562674], eax
cmp dword [0x536580], 0xffffffff
jne 0x4e8f8c
mov dword [0x56267c], 1
jmp 0x4e8f94
xor edx, edx
mov dword [0x56267c], edx
push 0
push 0
push 0x18b
mov ecx, dword [0x56265c]
push dword [ecx + 0x748]
call sub.USER32.dll_SendMessageA
mov dword [0x562660], eax
cmp dword [0x562660], 0xffffffff
je 0x4e9145
cmp dword [0x562660], 0
jle 0x4e9145
xor eax, eax
mov dword [ebx], eax
jmp 0x4e9137
push 0x555704
push dword [ebx]
push 0x189
mov edx, dword [0x56265c]
push dword [edx + 0x748]
call sub.USER32.dll_SendMessageA
mov dword [0x562664], eax
mov eax, dword [0x562664]
cmp eax, 0xffffffff
je 0x4e9135
test eax, eax
jle 0x4e9135
push 0xf
push 0x555704
call fcn.004e51c7
mov dword [esi], 0x555704
jmp 0x4e9024
inc dword [esi]
push dword [esi]
call fcn.0048f0a1
test al, al
jne 0x4e9022
mov edx, dword [esi]
cmp byte [edx], 0
je 0x4e9135
cmp dword [0x56267c], 0
je 0x4e9121
push edi
call fcn.005183dc
pop ecx
push eax
push dword [esi]
push edi
call fcn.00518638
add esp, 0xc
test eax, eax
jne 0x4e9135
mov ecx, dword [ebx]
mov dword [0x536580], ecx
push dword [esi]
call fcn.005183dc
pop ecx
add eax, dword [0x562668]
mov dword [0x562668], eax
mov eax, dword [0x56266c]
cmp byte [eax + 0x555aeb], 0
je 0x4e90a4
mov edx, 0x555aeb
add edx, dword [0x56266c]
push edx
push 0x555704
call fcn.00518300
add esp, 8
push dword [esi]
push 0x555aeb
call fcn.00518300
add esp, 8
push 0
push 0
push 0xb
push dword [0x562684]
call sub.USER32.dll_SendMessageA
push 0x555aeb
push 0
push 0xc
push dword [0x562684]
call sub.USER32.dll_SendMessageA
push 0
push 1
push 0xb
push dword [0x562684]
call sub.USER32.dll_SendMessageA
mov eax, dword [0x562668]
push eax
push eax
push 0xb1
push dword [0x562684]
call sub.USER32.dll_SendMessageA
push 0
push 0
push 0xb7
push dword [0x562684]
call sub.USER32.dll_SendMessageA
push dword [0x562684]
call sub.USER32.dll_UpdateWindow
jmp 0x4e9169
mov edx, dword [0x536580]
cmp edx, dword [ebx]
jne 0x4e9135
mov dword [0x56267c], 1
inc dword [ebx]
mov ecx, dword [ebx]
cmp ecx, dword [0x562660]
jl 0x4e8fd6
mov dword [0x536580], 0xffffffff
inc dword [0x562674]
cmp dword [0x562674], 2
jl 0x4e8f77
push 0
call fcn.00415bea
pop edi
pop esi
pop ebx
pop ebp
ret 4