Function at 0x411180
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x443ab6
mov eax, dword fs:[0]
push eax
sub esp, 0x298
mov eax, dword [0x453140]
xor eax, esp
mov dword [esp + 0x290], eax
push ebx
push esi
push edi
mov eax, dword [0x453140]
xor eax, esp
push eax
lea eax, [esp + 0x2a8]
mov dword fs:[0], eax
mov edi, dword [ebp + 8]
mov esi, dword [sym.imp.USER32.dll_GetPropW]
push str.RD_INIT_MIN
mov ebx, ecx
push edi
mov dword [esp + 0x28], ebx
mov dword [esp + 0x34], edi
call esi
test eax, eax
jne 0x411231
push str.RD_HAS_MIN
push edi
call esi
test eax, eax
jne 0x411231
push edi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x411231
push edi
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x411231
push edi
call dword [sym.imp.USER32.dll_GetParent]
test eax, eax
je 0x411259
push 1
push str.RD_INIT_MIN
push edi
call dword [sym.imp.USER32.dll_SetPropW]
mov eax, dword [ebp + 0xc]
push eax
push edi
call dword [sym.imp.USER32.dll_ShowWindow]
push str.RD_INIT_MIN
push edi
call dword [sym.imp.USER32.dll_RemovePropW]
xor al, al
mov ecx, dword [esp + 0x2a8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x290]
xor ecx, esp
call fcn.004320c7
mov esp, ebp
pop ebp
ret 8
push 2
push 0
call dword [sym.imp.USER32.dll_GetTopWindow]
push eax
call dword [sym.imp.USER32.dll_GetAncestor]
cmp eax, edi
je 0x411285
push edi
call dword [sym.imp.USER32.dll_BringWindowToTop]
push 0x100
push 0
push 0
push edi
call dword [sym.imp.USER32.dll_RedrawWindow]
mov ecx, dword [0x448474]
mov dx, word [0x448478]
push 0x202
lea eax, [esp + 0x9e]
push 0
push eax
mov dword [esp + 0xa0], ecx
mov word [esp + 0xa4], dx
call fcn.00431940
add esp, 0xc
push 0x104
lea ecx, [esp + 0x98]
push ecx
push edi
call dword [sym.imp.USER32.dll_GetWindowTextW]
push 0x1c4
call fcn.00431acd
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
test esi, esi
mov dword [esp + 0x2b0], 0
je 0x4113b6
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x6c], esp
push 0x447624
call fcn.00401da0
push 0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x88], esp
push 0x447624
mov byte [esp + 0x2f0], 1
call fcn.00401da0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x8c], esp
push 0x447624
mov byte [esp + 0x30c], 2
call fcn.00401da0
push 0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x90], esp
push 0x447624
mov byte [esp + 0x32c], 3
call fcn.00401da0
sub esp, 0x1c
lea edx, [esp + 0x128]
mov ecx, esp
mov dword [esp + 0xc4], esp
push edx
mov byte [esp + 0x348], 4
call fcn.00401da0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xd4], esp
push str.__win__
mov byte [esp + 0x364], 5
call fcn.00401da0
push ebx
mov ecx, esi
mov byte [esp + 0x364], 0
call fcn.004241d0
mov esi, eax
jmp 0x4113b8
xor esi, esi
lea eax, [esp + 0x3c]
push eax
push edi
mov dword [esp + 0x2b8], 0xffffffff
mov dword [esi + 8], edi
mov dword [esp + 0x1c], edi
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [esp + 0x44]
mov ecx, eax
sub ecx, dword [esp + 0x3c]
test ecx, ecx
jle 0x411405
mov ecx, dword [esp + 0x48]
mov edx, ecx
sub edx, dword [esp + 0x40]
test edx, edx
jle 0x411405
test ecx, ecx
jl 0x411405
test eax, eax
jl 0x411405
push edi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x411416
push edi
call fcn.00402160
add esp, 4
test eax, eax
je 0x411416
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
lea ebx, [esi + 0xc]
push ebx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
lea ecx, [esp + 0x54]
push ecx
push 0xffffffffffffffff
call fcn.00429850
add esp, 8
push edi
call dword [sym.imp.USER32.dll_IsZoomed]
test eax, eax
je 0x41144d
lea edx, [esp + 0x54]
push edx
push ebx
call fcn.00402f30
add esp, 8
mov ecx, dword [esi + 0x10]
cmp ecx, dword [esi + 0x18]
jl 0x41145b
lea eax, [ecx + 0x64]
mov dword [esi + 0x18], eax
mov eax, dword [ebx]
cmp eax, dword [esi + 0x14]
jl 0x41146c
lea edx, [eax + 0x64]
cmp eax, edx
mov dword [esi + 0x14], edx
jge 0x411471
cmp ecx, dword [esi + 0x18]
jl 0x41147b
push ebx
push edi
call fcn.004035c0
add esp, 8
lea edi, [esi + 0x1a0]
push edi
push ebx
call fcn.00402f70
lea eax, [esi + 0x168]
push eax
push edi
call fcn.00402f90
lea ecx, [esi + 0x188]
push ecx
push edi
call fcn.00402f90
mov edx, dword [esp + 0x38]
add esp, 0x18
cmp byte [edx + 0x14], 0
je 0x41156a
push 0x10
lea ebx, [esi + 0x144]
lea edi, [esi + 0x50]
push 0x10
mov ecx, ebx
mov dword [edi], 0
call fcn.00420630
mov ecx, ebx
call fcn.00420320
mov eax, dword [esp + 0x14]
mov ecx, dword [esi + 4]
push edi
push eax
push ecx
call dword [sym.imp.dwmapi.dll_DwmRegisterThumbnail]
fld dword [esi + 0x1ac]
fsub dword [esi + 0x1a4]
sub esp, 0x10
lea edx, [esp + 0x78]
mov dword [esp + 0x74], 9
fstp dword [esp + 0x24]
mov dword [esp + 0x9d], 0
fld dword [esp + 0x24]
mov dword [esp + 0x99], 1
fstp dword [esp + 0xc]
mov byte [esp + 0x98], 0xff
fld dword [esi + 0x1a8]
fsub dword [esi + 0x1a0]
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fstp dword [esp + 8]
fldz
fst dword [esp + 4]
fstp dword [esp]
push edx
call fcn.00402fb0
mov ecx, dword [edi]
add esp, 0x14
lea eax, [esp + 0x64]
push eax
push ecx
call dword [sym.imp.dwmapi.dll_DwmUpdateThumbnailProperties]
mov ebx, dword [esp + 0x20]
jmp 0x411728
mov edx, dword [esp + 0x14]
push ebx
lea edi, [esi + 0x144]
push edx
mov ecx, edi
call fcn.0041ff90
mov ecx, dword [esi + 0x148]
call fcn.00402090
mov ecx, dword [esi + 0x148]
shr eax, 1
push eax
call fcn.00402060
shr eax, 1
push eax
mov ecx, edi
call fcn.00420630
mov ecx, dword [esp + 0x2c]
push 0
sub esp, 0x1c
mov eax, esp
mov dword [esp + 0x44], esp
push ecx
push eax
call fcn.00428420
lea edx, [esp + 0x8c]
add esp, 8
push edx
call fcn.0040c4d0
add esp, 0x24
mov ebx, dword [esp + 0x20]
mov eax, dword [ebx + 0x44]
mov eax, dword [eax]
lea edi, [ebx + 0x40]
mov dword [esp + 0x1c], eax
mov eax, edi
mov dword [esp + 0x2b0], 6
mov dword [esp + 0x18], eax
lea ebx, [ebx]
test eax, eax
mov ecx, dword [edi + 4]
mov dword [esp + 0x38], ecx
je 0x4115ff
cmp eax, edi
je 0x411604
call fcn.00431cf0
mov edx, dword [esp + 0x38]
cmp dword [esp + 0x1c], edx
je 0x4116c8
lea ecx, [esp + 0x18]
call fcn.00403de0
mov eax, dword [eax]
cmp byte [eax + 0x6c], 0
jne 0x41169a
lea ecx, [esp + 0x18]
call fcn.00403de0
mov ecx, dword [eax]
cmp byte [ecx + 0x24], 0
jne 0x41169a
lea ecx, [esp + 0x18]
call fcn.00403de0
mov edx, dword [eax]
cmp dword [edx + 8], 0
jne 0x41169a
push 0
push 1
lea ecx, [esp + 0x20]
call fcn.00403de0
mov eax, dword [eax]
sub esp, 0x1c
add eax, 0xcc
mov ecx, esp
mov dword [esp + 0x48], esp
push eax
call fcn.00407120
sub esp, 0x1c
lea edx, [esp + 0xa4]
mov ecx, esp
mov dword [esp + 0x70], esp
push edx
mov byte [esp + 0x2f4], 7
call fcn.00407120
mov byte [esp + 0x2f0], 6
call fcn.0040cc00
add esp, 0x40
test al, al
jne 0x4116ac
lea ecx, [esp + 0x18]
call fcn.0042ae70
mov eax, dword [esp + 0x18]
jmp 0x4115f0
lea ecx, [esp + 0x18]
call fcn.00403de0
mov eax, dword [eax]
push 0xffffffffffffffff
add eax, 0x74
push 0
push eax
lea ecx, [esp + 0x70]
call fcn.00401bd0
push 0
push 1
sub esp, 0x1c
lea eax, [esp + 0x88]
mov ecx, esp
mov dword [esp + 0x48], esp
push eax
call fcn.00407120
lea ecx, [esp + 0x48]
push ecx
call fcn.00428550
add esp, 0x28
push eax
lea ecx, [esi + 0x154]
mov byte [esp + 0x2b4], 8
call fcn.00420e00
lea ecx, [esp + 0x24]
mov byte [esp + 0x2b0], 6
call fcn.0041ff50
lea ecx, [esp + 0x64]
mov dword [esp + 0x2b0], 0xffffffff
call fcn.00401b20
mov ecx, esi
call fcn.004226f0
push 0
mov ecx, esi
call fcn.00421050
mov byte [esi + 0x19f], 1
cmp byte [esi + 0x6c], 0
mov dword [esp + 0x14], esi
jne 0x411752
push 0
mov ecx, esi
call fcn.00421050
cmp dword [ebx + 0x48], 0
mov eax, dword [ebx + 0x44]
lea edi, [ebx + 0x40]
mov ecx, edi
mov dword [esp + 0x28], eax
jbe 0x411790
mov eax, dword [eax + 4]
cmp eax, dword [ecx + 4]
mov dword [esp + 0x28], eax
jne 0x411779
call fcn.00431cf0
mov eax, dword [esp + 0x28]
lea edx, [esp + 0x14]
push edx
push eax
mov eax, edi
push eax
lea eax, [esp + 0x30]
push eax
mov ecx, edi
call fcn.0040d8e0
jmp 0x4117c0
mov ebx, eax
mov edx, dword [ebx + 4]
lea ecx, [esp + 0x14]
push ecx
push edx
push ebx
mov ecx, edi
call fcn.00403ea0
push 1
mov ecx, edi
mov dword [esp + 0x18], eax
call fcn.004078e0
mov eax, dword [esp + 0x14]
mov dword [ebx + 4], eax
mov ecx, dword [eax + 4]
mov ebx, dword [esp + 0x20]
mov dword [ecx], eax
cmp byte [esi + 0x6c], 0
jne 0x4117cf
push 0
mov ecx, ebx
call fcn.00404400
cmp byte [ebx + 0x301], 0
jne 0x411826
mov eax, dword [ebx + 0xb0]
cmp eax, 2
jne 0x4117ef
push 1
push eax
mov ecx, ebx
call fcn.00404ba0
jmp 0x411826
test eax, eax
je 0x411826
mov edx, dword [esi + 4]
mov edi, dword [sym.imp.USER32.dll_SetWindowPos]
push 0x603
push 0
push 0
push 0
push 0
push 0xfffffffffffffffe
push edx
call edi
mov eax, dword [ebx + 0xcc]
push 0x603
push 0
push 0
push 0
push 0
push 0xfffffffffffffffe
push eax
call edi
push 1
mov ecx, ebx
call fcn.0040cdb0
cmp byte [esi + 0x70], 0
je 0x41183c
mov ecx, ebx
call fcn.004072f0
mov ecx, esi
call fcn.00424910
push 0
mov ecx, ebx
call fcn.00404400
cmp byte [ebx + 0xa3], 0
push 1
mov ecx, esi
je 0x411897
fld dword [esi + 0x178]
fstp dword [esi + 0x1a0]
fld dword [esi + 0x17c]
fstp dword [esi + 0x1a4]
fld dword [esi + 0x180]
fstp dword [esi + 0x1a8]
fld dword [esi + 0x184]
fstp dword [esi + 0x1ac]
mov byte [esi + 0x19f], 0
call fcn.004213f0
jmp 0x41189c
call fcn.004210a0
push 0
push 0
mov ecx, ebx
call fcn.0040f660
mov ecx, dword [ebp + 0xc]
mov edx, dword [esp + 0x2c]
push ecx
push edx
call fcn.00402240
add esp, 8
mov al, 1
jmp 0x411233