Function at 0x458996
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4b0
mov eax, dword [0x4a02f0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov esi, ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
mov ecx, 0x56aad8
call fcn.00453e0a
xor ebx, ebx
cmp esi, ebx
je 0x4589d0
lea ecx, [esi + 0x30]
mov dword [ebp - 0x488], ecx
jmp 0x4589d6
mov dword [ebp - 0x488], ebx
lea ecx, [ebp - 0x488]
push ecx
lea ecx, [eax + 4]
call fcn.00453a22
push 7
pop ecx
xor eax, eax
mov dword [ebp - 0x464], ebx
lea edi, [ebp - 0x460]
mov dword [ebp - 0x494], 0xaf
mov dword [ebp - 0x488], 0x30
rep stosd dword es:[edi], eax
call fcn.0045afd2
mov ecx, eax
call fcn.0045a8cd
lea ecx, [ebp - 0x464]
push ecx
push 1
push dword [eax]
call dword [sym.imp.COMCTL32.dll_ImageList_GetImageInfo]
test eax, eax
je 0x458a51
mov eax, dword [ebp - 0x44c]
sub eax, dword [ebp - 0x454]
mov dword [ebp - 0x494], eax
mov eax, dword [ebp - 0x448]
sub eax, dword [ebp - 0x450]
mov dword [ebp - 0x488], eax
push 7
pop ecx
xor eax, eax
mov dword [ebp - 0x484], ebx
lea edi, [ebp - 0x480]
mov dword [ebp - 0x49c], 0xaf
mov dword [ebp - 0x498], 0x30
rep stosd dword es:[edi], eax
call fcn.0045afd2
mov ecx, eax
call fcn.0045a90e
lea ecx, [ebp - 0x484]
push ecx
push 1
push dword [eax]
call dword [sym.imp.COMCTL32.dll_ImageList_GetImageInfo]
test eax, eax
je 0x458abd
mov eax, dword [ebp - 0x46c]
sub eax, dword [ebp - 0x474]
mov dword [ebp - 0x49c], eax
mov eax, dword [ebp - 0x468]
sub eax, dword [ebp - 0x470]
mov dword [ebp - 0x498], eax
mov eax, dword [esi + 4]
push eax
mov dword [ebp - 0x48c], eax
call dword [sym.imp.USER32.dll_GetDC]
mov dword [ebp - 0x490], eax
call fcn.0045afd2
push dword [eax + 0x3c]
push dword [ebp - 0x490]
call dword [sym.imp.GDI32.dll_SelectObject]
xor eax, eax
push 0x206
mov word [ebp - 0x414], ax
lea eax, [ebp - 0x412]
push ebx
push eax
call fcn.0046e0e0
add esp, 0xc
push 0x104
lea eax, [ebp - 0x414]
push eax
push dword [esi + 0x3c]
mov dword [ebp - 0x4ac], ebx
mov dword [ebp - 0x4a8], ebx
call dword [sym.imp.USER32.dll_GetWindowTextW]
lea eax, [ebp - 0x414]
lea ecx, [eax + 2]
mov dx, word [eax]
add eax, 2
cmp dx, bx
jne 0x458b2f
sub eax, ecx
lea ecx, [ebp - 0x4ac]
push ecx
sar eax, 1
push eax
lea eax, [ebp - 0x414]
push eax
push dword [ebp - 0x490]
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32W]
mov eax, dword [ebp - 0x4a8]
push 4
add eax, 3
push eax
mov eax, dword [ebp - 0x4ac]
add eax, 5
push eax
push 0x57
push dword [0x4a02a8]
push ebx
push dword [esi + 0x3c]
call dword [sym.imp.USER32.dll_SetWindowPos]
lea eax, [ebp - 0x434]
push eax
push dword [esi + 0x3c]
mov dword [ebp - 0x434], ebx
mov dword [ebp - 0x430], ebx
mov dword [ebp - 0x42c], ebx
mov dword [ebp - 0x428], ebx
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [ebp - 0x42c]
sub eax, dword [ebp - 0x434]
add eax, dword [0x4a02a8]
mov dword [ebp - 0x4b0], eax
call fcn.0045afd2
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
push 1
push dword [eax + 0x3c]
push 0x30
push dword [esi + 0x30c]
call edi
push 5
push 0x154
push 0xdc
push 0x136
push 0x1e
push ebx
push dword [esi + 0x30c]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [ebp - 0x4b0]
mov dword [ebp - 0x424], eax
add eax, 0x64
mov dword [ebp - 0x420], 0x57
mov dword [ebp - 0x41c], eax
mov dword [ebp - 0x418], 0x75
cmp byte [esi + 0x3d4], bl
je 0x458c56
mov dword [ebp - 0x424], 0xbe
mov dword [ebp - 0x420], 0x136
mov dword [ebp - 0x41c], 0x122
mov dword [ebp - 0x418], 0x154
jmp 0x458c63
push ebx
push dword [esi + 0x30c]
call dword [sym.imp.USER32.dll_ShowWindow]
lea eax, [ebp - 0x424]
push eax
lea ecx, [esi + 0x64]
call fcn.00452d42
call fcn.0045afd2
push dword [eax + 0x3c]
push dword [ebp - 0x490]
call dword [sym.imp.GDI32.dll_SelectObject]
xor eax, eax
push 0x206
mov word [ebp - 0x20c], ax
lea eax, [ebp - 0x20a]
push ebx
push eax
call fcn.0046e0e0
add esp, 0xc
push 0x104
lea eax, [ebp - 0x20c]
push eax
push dword [esi + 0x2e0]
mov dword [ebp - 0x4a4], ebx
mov dword [ebp - 0x4a0], ebx
call dword [sym.imp.USER32.dll_GetWindowTextW]
lea eax, [ebp - 0x20c]
lea ecx, [eax + 2]
mov dx, word [eax]
add eax, 2
cmp dx, bx
jne 0x458cd1
sub eax, ecx
lea ecx, [ebp - 0x4a4]
push ecx
sar eax, 1
push eax
lea eax, [ebp - 0x20c]
push eax
push dword [ebp - 0x490]
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32W]
mov eax, dword [ebp - 0x4a0]
push 5
add eax, 3
push eax
mov eax, dword [ebp - 0x4a4]
add eax, 5
push eax
push 0x6b
push dword [0x4a02a8]
push ebx
push dword [esi + 0x2e0]
call dword [sym.imp.USER32.dll_SetWindowPos]
call fcn.0045afd2
push 1
push dword [eax + 0x3c]
push 0x30
push dword [esi + 0x3c]
call edi
call fcn.0045afd2
push 1
push dword [eax + 0x3c]
push 0x30
push dword [esi + 0x2e0]
call edi
call fcn.0045afd2
push 1
push dword [eax + 0x40]
push 0x30
push dword [esi + 0x338]
call edi
call fcn.0045afd2
push 1
push dword [eax + 0x44]
push 0x30
push dword [esi + 0x388]
call edi
lea eax, [ebp - 0x444]
push eax
push dword [esi + 4]
mov dword [ebp - 0x444], ebx
mov dword [ebp - 0x440], ebx
mov dword [ebp - 0x43c], ebx
mov dword [ebp - 0x438], ebx
call dword [sym.imp.USER32.dll_GetClientRect]
mov dword [esi + 0x358], 1
call fcn.0045afd2
mov ecx, eax
call fcn.0045a8cd
push dword [eax]
lea ecx, [esi + 0x334]
call fcn.004551b1
mov dword [esi + 0x360], ebx
mov dword [esi + 0x364], 2
mov dword [esi + 0x368], 1
mov dword [esi + 0x36c], ebx
call fcn.0045afd2
mov ecx, eax
call fcn.0045a98a
mov dword [esi + 0x380], eax
mov dword [esi + 0x3a8], 1
call fcn.0045afd2
mov ecx, eax
call fcn.0045a90e
push dword [eax]
lea ecx, [esi + 0x384]
call fcn.004551b1
mov dword [esi + 0x3b0], ebx
mov dword [esi + 0x3b4], 2
mov dword [esi + 0x3b8], 1
mov dword [esi + 0x3bc], ebx
call fcn.0045afd2
mov ecx, eax
call fcn.0045a98e
mov edi, dword [sym.imp.USER32.dll_SetWindowPos]
push 4
push dword [ebp - 0x488]
mov dword [esi + 0x3d0], eax
push dword [ebp - 0x494]
push 0x9b
push dword [0x4a02a8]
push ebx
push dword [esi + 0x338]
call edi
push 4
push dword [ebp - 0x498]
push dword [ebp - 0x49c]
push 0xde
push dword [0x4a02a8]
push ebx
push dword [esi + 0x388]
call edi
lea ecx, [ebp - 0x490]
call fcn.00452a81
mov ecx, dword [ebp - 4]
pop edi
xor eax, eax
pop esi
xor ecx, ebp
inc eax
pop ebx
call fcn.0046e0cd
leave
ret 8