Function at 0x4e5060
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
mov eax, dword [0x62e040]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, dword [0x636b70]
push edi
mov edi, ecx
test esi, esi
je 0x4e5092
push 0
push str.explorer
push dword [edi + 8]
mov ecx, esi
call dword [0x5a38f4]
call esi
push 0x4e42e0
push edi
push 0x401
push dword [edi + 8]
call dword [sym.imp.USER32.dll_SendMessageW]
push 1
push 1
push 0x426
push dword [edi + 8]
call dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0x41f
push dword [edi + 8]
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x20], str.Symbol
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
or eax, 0x11
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0xfa
mov dword [ebp - 0x18], 1
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 1
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
or eax, 0x11
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x20], 0x5d0d08
mov dword [ebp - 0x1c], 0x50
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 1
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 2
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
or eax, 0x11
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x20], 0x6124ec
mov dword [ebp - 0x1c], 0x50
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 2
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 3
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
or eax, 0x11
mov dword [ebp - 0x20], str.Frame
mov dword [ebp - 0x1c], 0x50
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 3
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 0xe
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
or eax, 0x11
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x20], str.Architecture
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 4
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 4
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x20], str.Stack_address
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 5
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x20], str.Frame_address
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 6
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x20], str.Stack_parameter_1
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 7
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x20], str.Stack_parameter_2
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 8
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x20], str.Stack_parameter_3
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 9
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x20], str.Stack_parameter_4
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 0xa
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x20], str.Control_address
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 0xb
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x20], str.Return_address
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 0xc
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x20], str.File_name
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0xfa
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 0xd
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x20], str.Line_number
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 0xf
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x20], str.Frame_distance
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 0x10
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x20], str.Start_address
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 0x11
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x20], str.Start_address__symbolic_
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 0x12
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x20], str.Process_name
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0xfa
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
mov dword [ebp - 0x28], 0x13
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], eax
and eax, 0xfffffffe
or eax, 0x10
mov dword [ebp - 0x20], str.Thread_name
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x405
push dword [edi + 8]
mov dword [ebp - 0x1c], 0xfa
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 1
push 0x41f
push dword [edi + 8]
call dword [sym.imp.USER32.dll_SendMessageW]
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x36
push eax
mov dword [ebp - 0x30], str.ThreadStacksTreeListColumns
call sym.SystemInformer.exe_PhGetStringRefSetting
push 0
mov esi, eax
xor edx, edx
push esi
push ecx
mov ecx, dword [edi + 8]
call fcn.00418d20
lea ecx, [esi - 8]
or eax, 0xffffffff
lock xadd dword [ecx + 4], eax
dec eax
jne 0x4e5732
call fcn.004fc020
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.005802ef
mov esp, ebp
pop ebp
ret