Function at 0x50e9d1
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffc0
push ebx
push esi
push edi
push dword [ebp + 8]
call fcn.0051dd0a
mov edi, eax
test edi, edi
jne 0x50e9f4
push 0
call fcn.0042c4bf
jmp 0x50f4d0
mov ebx, dword [edi + 0xb6c]
push ebx
call fcn.00412773
test eax, eax
jne 0x50ea10
push 0
call fcn.0042c4bf
jmp 0x50f4d0
call sub.USER32.dll_GetFocus
mov dword [ebp - 0x24], eax
mov eax, dword [edi + 0x818]
cmp eax, dword [ebp - 0x24]
je 0x50ea3a
mov edx, dword [edi + 0x81c]
cmp edx, dword [ebp - 0x24]
je 0x50ea3a
push 0
call fcn.0042c4bf
jmp 0x50f4d0
lea ecx, [ebp - 8]
push ecx
lea eax, [ebp - 4]
push eax
push dword [edi + 0x84c]
push dword [ebp - 0x24]
call fcn.00478d41
mov edx, dword [ebp - 4]
mov dword [ebp - 8], edx
cmp dword [ebp - 4], 0
jge 0x50ea61
xor ecx, ecx
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 4]
jge 0x50ea6f
mov edx, dword [ebp - 4]
mov dword [ebp - 8], edx
lea ecx, [ebp - 0xc]
push ecx
push dword [edi + 0x84c]
push dword [ebp - 0x24]
call fcn.00478b7f
cmp dword [ebp - 0xc], 0
jle 0x50ea90
cmp dword [ebx + 0x1c04], 0
je 0x50ea9d
push dword [ebp + 8]
call fcn.0050e668
jmp 0x50f4d0
push 0x578211
push 0x3e6
push 0xd
push dword [ebp - 0x24]
call sub.USER32.dll_SendMessageA
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jg 0x50eac6
push 0
call fcn.0042c4bf
jmp 0x50f4d0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x578211], 0
push 0x578211
call fcn.0050e5e8
test eax, eax
je 0x50eb04
push 0x56c5a6
push 0
push 0xc
push dword [ebp - 0x24]
call sub.USER32.dll_SendMessageA
push dword [ebp - 0x24]
call sub.USER32.dll_UpdateWindow
push dword [ebp + 8]
call fcn.0050e668
jmp 0x50f4d0
mov edx, dword [ebp - 8]
lea eax, [edx + 0x578211]
mov edx, dword [ebp - 8]
cmp edx, dword [ebp - 0xc]
jge 0x50eb2c
mov dl, byte [eax]
test dl, dl
je 0x50eb2c
cmp dl, 0x20
je 0x50eb2c
inc dword [ebp - 8]
inc eax
mov ecx, dword [ebp - 8]
cmp ecx, dword [ebp - 0xc]
jl 0x50eb15
mov eax, dword [ebp - 8]
mov byte [eax + 0x578211], 0
mov eax, dword [ebp - 4]
cmp byte [eax + 0x578211], 0x20
jne 0x50eb63
dec dword [ebp - 4]
cmp dword [ebp - 4], 0
jl 0x50eb57
mov edx, dword [ebp - 4]
cmp byte [edx + 0x578211], 0x20
jne 0x50eb63
push 0
call fcn.0042c4bf
jmp 0x50f4d0
mov ecx, dword [ebp - 4]
lea eax, [ecx + 0x578211]
cmp dword [ebp - 4], 0
jle 0x50eb81
cmp byte [eax], 0x20
je 0x50eb81
dec dword [ebp - 4]
dec eax
cmp dword [ebp - 4], 0
jg 0x50eb72
mov edx, dword [ebp - 4]
cmp byte [edx + 0x578211], 0x20
jne 0x50eb90
inc dword [ebp - 4]
xor ecx, ecx
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 8]
lea eax, [edx + 0x578211]
cmp edx, dword [ebp - 4]
jl 0x50ebd2
mov cl, byte [eax]
cmp cl, 0x28
jne 0x50ebad
inc dword [ebp - 0x14]
cmp cl, 0x29
jne 0x50ebb5
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0
jne 0x50ebcb
cmp cl, 0x2c
jne 0x50ebcb
cmp edx, dword [ebp - 8]
je 0x50ebd2
inc edx
mov dword [ebp - 4], edx
jmp 0x50ebd2
dec edx
dec eax
cmp edx, dword [ebp - 4]
jge 0x50eba3
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 8]
je 0x50ebe9
mov ecx, dword [ebp - 4]
cmp byte [ecx + 0x578211], 0x3d
jne 0x50ebe9
inc dword [ebp - 4]
mov byte [ebp - 0x1d], 0
push dword [edi + 0xb6c]
mov eax, 0x578211
add eax, dword [ebp - 4]
push eax
call fcn.004ed8ea
test al, al
je 0x50ec50
mov edx, dword [ebp - 4]
cmp byte [edx + 0x578211], 0x24
je 0x50ec50
mov ecx, dword [ebp - 4]
cmp byte [ecx + 0x578211], 0x25
je 0x50ec50
mov eax, dword [ebp - 4]
mov dl, byte [eax + 0x578211]
mov byte [ebp - 0x1d], dl
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
cmp byte [ecx + 0x578211], 0
je 0x50ec44
mov eax, dword [ebp - 4]
cmp byte [eax + 0x578211], 0x20
jne 0x50ec50
push 0
call fcn.0042c4bf
jmp 0x50f4d0
mov edx, 0x578211
add edx, dword [ebp - 4]
push edx
call fcn.0054c2d0
pop ecx
cmp eax, 0x5a
jbe 0x50ec70
push 0
call fcn.0042c4bf
jmp 0x50f4d0
cmp byte [ebx + 0x1c08], 0
je 0x50eca7
lea ecx, [ebx + 0x1c08]
push ecx
call fcn.0054c2d0
pop ecx
push eax
lea eax, [ebx + 0x1c08]
push eax
mov edx, 0x578211
add edx, dword [ebp - 4]
push edx
call fcn.0054c52c
add esp, 0xc
test eax, eax
je 0x50ed41
cmp byte [ebx + 0x1c08], 0
je 0x50ecff
push 0x56c5aa
lea ecx, [ebx + 0x1c08]
push ecx
call fcn.0054c58c
add esp, 8
test eax, eax
je 0x50ecff
push 0x56c5ae
mov eax, 0x578211
add eax, dword [ebp - 4]
push eax
call fcn.0054c58c
add esp, 8
test eax, eax
jne 0x50ecff
push 1
push 0
mov edx, 0x578211
add edx, dword [ebp - 4]
push edx
lea ecx, [ebx + 0x1c08]
push ecx
call fcn.0051d2f8
test eax, eax
jne 0x50ed41
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 4]
push eax
mov edx, 0x578211
add edx, dword [ebp - 4]
push edx
lea ecx, [ebx + 0x1c08]
push ecx
call fcn.0054c4dc
add esp, 0xc
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 4]
mov byte [ebx + eax + 0x1c08], 0
cmp byte [ebx + 0x1c08], 0
jne 0x50ed41
push 0
call fcn.0042c4bf
jmp 0x50f4d0
mov edx, dword [ebp - 4]
mov byte [edx + 0x578211], 0
mov ecx, dword [ebp - 8]
cmp ecx, dword [ebp - 0xc]
jge 0x50ed5d
mov eax, dword [ebp - 8]
mov byte [eax + 0x578211], 0x20
cmp byte [ebx + 0x1c08], 0x24
je 0x50ed8a
cmp byte [ebx + 0x1c08], 0x25
je 0x50ed8a
cmp byte [ebx + 0x1c08], 0x23
jne 0x50edf4
cmp byte [ebx + 0x1c09], 0
je 0x50ed8a
cmp byte [ebx + 0x1c09], 0x20
jne 0x50edf4
add ebx, 0x1c08
push edi
mov edi, ebx
mov esi, 0x577e2a
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
push dword [edi + 0xb6c]
push 0
push 0
push 0
push 0
push 0x577e2a
push dword [ebp + 8]
call fcn.0047a2c4
test eax, eax
je 0x50ede8
cmp byte [0x577e2a], 0
je 0x50ede8
mov esi, 0x577e2a
jmp 0x50f401
push 0
call fcn.0042c4bf
jmp 0x50f4d0
cmp byte [ebx + 0x1c08], 0x23
jne 0x50eff3
cmp byte [ebx + 0x1c09], 0
je 0x50eff3
xor eax, eax
mov dword [ebp - 0x28], eax
xor edx, edx
mov dword [ebp - 0x3c], edx
push dword [ebp - 0x3c]
push 0x56c5b2
lea ecx, [ebp - 0x38]
push ecx
call sub.USER32.dll_wsprintfA
add esp, 0xc
push 0x57be38
push 0x3e7
push 0x5836b2
push 0x56c5c3
lea eax, [ebp - 0x38]
push eax
push str.chanfolder
call fcn.004acae5
cmp byte [0x5836b2], 0
je 0x50ee98
push 0x577e2a
push 1
push 0x5836b2
call fcn.00434189
push 0x577e2a
call fcn.0050d0ae
cmp byte [0x577e2a], 0
je 0x50ee93
push 0
push 0x577e2a
push dword [ebp - 0x28]
call fcn.004c6a50
mov esi, eax
test esi, esi
je 0x50ee98
mov dword [ebp - 0x28], esi
inc dword [ebp - 0x3c]
jmp 0x50ee18
mov eax, dword [0x56cee0]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
je 0x50eee3
mov edx, dword [ebp - 0x2c]
cmp dword [edx + 0x6bc], 1
jne 0x50eed1
cmp edi, dword [ebp - 0x2c]
je 0x50eed1
push 0
mov ecx, dword [ebp - 0x2c]
add ecx, 8
push ecx
push dword [ebp - 0x28]
call fcn.004c6a50
mov esi, eax
test esi, esi
je 0x50eee3
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax + 0xd18]
mov dword [ebp - 0x2c], edx
cmp dword [ebp - 0x2c], 0
jne 0x50eea6
push 0
push 0
push dword [ebp - 0x28]
call fcn.0050afb3
mov dword [ebp - 0x28], eax
cmp dword [edi + 0x6bc], 1
jne 0x50ef1d
push 0
lea ecx, [edi + 8]
push ecx
push 0
call fcn.004c6a50
mov esi, eax
test esi, esi
je 0x50ef1d
push esi
push dword [ebp - 0x28]
push dword [ebp - 0x28]
call fcn.004c6d36
mov dword [ebp - 0x28], eax
xor eax, eax
mov dword [ebp - 0x3c], eax
mov esi, dword [ebp - 0x28]
test esi, esi
je 0x50ef3e
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebx + 0x1c00]
je 0x50ef3e
inc dword [ebp - 0x3c]
mov esi, dword [esi + 0x40]
test esi, esi
jne 0x50ef29
test esi, esi
jne 0x50ef4a
mov esi, dword [ebp - 0x28]
xor eax, eax
mov dword [ebp - 0x3c], eax
test esi, esi
je 0x50efe1
lea edx, [ebx + 0x1c08]
push edx
call fcn.0054c2d0
pop ecx
push eax
push dword [esi]
lea ecx, [ebx + 0x1c08]
push ecx
call fcn.0054c52c
add esp, 0xc
test eax, eax
jne 0x50efba
mov eax, dword [esi]
push esi
mov edi, eax
mov esi, 0x577e2a
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 esi, 0x577e2a
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebx + 0x1c00], eax
lea edx, [ebp - 0x28]
push edx
call fcn.004c6e81
jmp 0x50f401
mov esi, dword [esi + 0x40]
test esi, esi
jne 0x50efcb
mov esi, dword [ebp - 0x28]
xor eax, eax
mov dword [ebp - 0x3c], eax
jmp 0x50efce
inc dword [ebp - 0x3c]
mov edx, dword [ebp - 0x3c]
cmp edx, dword [ebx + 0x1c00]
je 0x50efe1
test esi, esi
jne 0x50ef52
mov ecx, dword [ebp - 0x3c]
mov dword [ebx + 0x1c00], ecx
lea eax, [ebp - 0x28]
push eax
call fcn.004c6e81
cmp dword [edi + 0x820], 0
je 0x50f01f
cmp dword [edi + 0x6bc], 1
je 0x50f2e2
cmp dword [edi + 0x6bc], 9
jne 0x50f01f
cmp dword [edi + 0x6c0], 2
je 0x50f2e2
cmp dword [edi + 0x6bc], 2
jne 0x50f116
cmp dword [edi + 0x6c0], 2
jne 0x50f116
cmp dword [ebx + 0x1bfc], 0
je 0x50f116
mov esi, dword [ebx + 0x1bfc]
test esi, esi
je 0x50f064
cmp dword [esi + 0x1c], 1
jne 0x50f05d
xor eax, eax
mov dword [esi + 0x1c], eax
jmp 0x50f064
mov esi, dword [esi + 0x40]
test esi, esi
jne 0x50f050
test esi, esi
jne 0x50f071
mov edx, dword [ebx + 0x1bfc]
mov esi, dword [edx + 0x44]
mov dword [esi + 0x1c], 1
test esi, esi
je 0x50f116
push 0x56c5c7
lea eax, [ebx + 0x1c08]
push eax
call fcn.0054c58c
add esp, 8
test eax, eax
je 0x50f0ae
push 1
push 0
push dword [esi]
lea edx, [ebx + 0x1c08]
push edx
call fcn.0051d2f8
test eax, eax
jne 0x50f0d1
lea ecx, [ebx + 0x1c08]
push ecx
call fcn.0054c2d0
pop ecx
push eax
push dword [esi]
lea eax, [ebx + 0x1c08]
push eax
call fcn.0054c52c
add esp, 0xc
test eax, eax
jne 0x50f103
mov edx, dword [esi]
push esi
mov edi, edx
mov esi, 0x577e2a
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 esi, 0x577e2a
jmp 0x50f401
cmp esi, dword [ebx + 0x1bfc]
je 0x50f116
mov esi, dword [esi + 0x44]
test esi, esi
jne 0x50f080
cmp dword [edi + 0x6bc], 2
jne 0x50f1e1
cmp dword [edi + 0x6c0], 2
je 0x50f1e1
cmp dword [edi + 0x6c0], 1
jne 0x50f13e
lea esi, [edi + 8]
jmp 0x50f158
push 0x20
lea eax, [edi + 8]
push eax
call fcn.0054c230
add esp, 8
mov esi, eax
test esi, esi
jne 0x50f157
lea esi, [edi + 8]
jmp 0x50f158
inc esi
cmp byte [esi], 0
je 0x50f18a
push 0x56c5cb
lea eax, [ebx + 0x1c08]
push eax
call fcn.0054c58c
add esp, 8
test eax, eax
je 0x50f18a
push 1
push 0
push esi
lea edx, [ebx + 0x1c08]
push edx
call fcn.0051d2f8
test eax, eax
jne 0x50f1b1
cmp byte [esi], 0
je 0x50f1e1
lea ecx, [ebx + 0x1c08]
push ecx
call fcn.0054c2d0
pop ecx
push eax
push esi
lea eax, [ebx + 0x1c08]
push eax
call fcn.0054c52c
add esp, 0xc
test eax, eax
jne 0x50f1e1
push esi
mov edi, esi
mov esi, 0x577e2a
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 esi, 0x577e2a
jmp 0x50f401
cmp dword [edi + 0x6bc], 0
je 0x50f1f7
cmp dword [edi + 0x6bc], 2
jne 0x50f2d5
mov eax, dword [ebx + 0x1c70]
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
je 0x50f213
push ebx
push dword [ebp - 0x40]
call fcn.00413327
test eax, eax
jne 0x50f21c
mov edx, dword [ebx + 0x1c74]
mov dword [ebp - 0x40], edx
mov esi, dword [ebp - 0x40]
test esi, esi
je 0x50f2d5
push 0x56c5cf
lea edi, [ebx + 0x1c08]
push edi
call fcn.0054c58c
add esp, 8
test eax, eax
je 0x50f24e
push 1
push 0
push esi
push edi
call fcn.0051d2f8
test eax, eax
jne 0x50f264
push edi
call fcn.0054c2d0
pop ecx
push eax
push esi
push edi
call fcn.0054c52c
add esp, 0xc
test eax, eax
jne 0x50f2b8
mov eax, dword [esi + 0x2b0]
mov dword [ebx + 0x1c70], eax
push esi
mov edi, esi
mov esi, 0x577e2a
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
push 0x21
push 0x577e2a
call fcn.0054c230
add esp, 8
mov esi, eax
test esi, esi
je 0x50f2ae
mov byte [esi], 0
mov esi, 0x577e2a
jmp 0x50f401
mov esi, dword [esi + 0x2b0]
test esi, esi
jne 0x50f2c8
mov esi, dword [ebx + 0x1c74]
cmp esi, dword [ebp - 0x40]
je 0x50f2d5
test esi, esi
jne 0x50f227
push dword [ebp + 8]
call fcn.0050e668
jmp 0x50f4d0
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebx + 0x1c6c], 0xffffffff
jne 0x50f2f9
mov dword [ebp - 0x1c], 1
jmp 0x50f2fe
xor edx, edx
mov dword [ebp - 0x1c], edx
push 0
push 0
push 0x18b
push dword [edi + 0x820]
call sub.USER32.dll_SendMessageA
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0xffffffff
je 0x50f4b2
cmp dword [ebp - 0x18], 0
jle 0x50f4b2
xor ecx, ecx
mov dword [ebp - 0xc], ecx
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x18]
jge 0x50f4b2
push 0x577e2a
push dword [ebp - 0xc]
push 0x189
push dword [edi + 0x820]
call sub.USER32.dll_SendMessageA
cmp eax, 0xffffffff
je 0x50f4a3
test eax, eax
jle 0x50f4a3
push 0xf
push 0x577e2a
call fcn.0050cc40
mov esi, 0x577e2a
cmp byte [ebp - 0x1d], 0
je 0x50f387
mov al, byte [ebp - 0x1d]
cmp al, byte [esi]
je 0x50f387
inc dword [ebp - 0xc]
jmp 0x50f32e
inc esi
push ebx
push esi
call fcn.004ed8ea
test al, al
jne 0x50f386
cmp byte [esi], 0
je 0x50f4a3
cmp dword [ebp - 0x1c], 0
je 0x50f491
push 0x56c5d3
lea edx, [ebx + 0x1c08]
push edx
call fcn.0054c58c
add esp, 8
test eax, eax
je 0x50f3d2
push 1
push 0
push esi
lea ecx, [ebx + 0x1c08]
push ecx
call fcn.0051d2f8
test eax, eax
jne 0x50f3f8
lea eax, [ebx + 0x1c08]
push eax
call fcn.0054c2d0
pop ecx
push eax
push esi
lea edx, [ebx + 0x1c08]
push edx
call fcn.0054c52c
add esp, 0xc
test eax, eax
jne 0x50f4a3
mov ecx, dword [ebp - 0xc]
mov dword [ebx + 0x1c6c], ecx
push esi
call fcn.0054c2d0
pop ecx
add eax, dword [ebp - 4]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 8]
cmp byte [eax + 0x578211], 0
je 0x50f430
mov edx, 0x578211
add edx, dword [ebp - 8]
push edx
push 0x577e2a
call fcn.0054c1f4
add esp, 8
push esi
push 0x578211
call fcn.0054c1f4
add esp, 8
push 0
push 0
push 0xb
push dword [ebp - 0x24]
call sub.USER32.dll_SendMessageA
push 0x578211
push 0
push 0xc
push dword [ebp - 0x24]
call sub.USER32.dll_SendMessageA
push 0
push 1
push 0xb
push dword [ebp - 0x24]
call sub.USER32.dll_SendMessageA
push dword [ebp - 4]
push dword [ebp - 4]
push 1
push dword [ebp - 0x24]
call fcn.00478c58
push 1
push 0
push dword [ebp - 0x24]
call sub.USER32.dll_InvalidateRect
push dword [ebp - 0x24]
call sub.USER32.dll_UpdateWindow
jmp 0x50f4d0
mov ecx, dword [ebx + 0x1c6c]
cmp ecx, dword [ebp - 0xc]
jne 0x50f4a3
mov dword [ebp - 0x1c], 1
inc dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x18]
jl 0x50f33a
mov dword [ebx + 0x1c6c], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x50f2e7
push 0
call fcn.0042c4bf
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4