Function at 0x401136
Capabilities:
Get graphical window text

Disassembly:
jmp 0x4160b9
mov eax, 0x4658e8
call fcn.0043da24
sub esp, 0x250
push ebx
push esi
push edi
xor esi, esi
xor eax, eax
lea edi, [ebp - 0x18]
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x44], esi
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
lea edi, [ebp - 0x40]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov ax, word [0x47ed6c]
mov ecx, 0x81
mov word [ebp - 0x25c], ax
xor eax, eax
lea edi, [ebp - 0x25a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
call fcn.0040254a
cmp eax, esi
je 0x416270
mov ecx, dword [eax]
push eax
call dword [ecx + 0x84]
mov ebx, eax
cmp ebx, esi
je 0x416270
mov edi, dword [ebp + 0xc]
lea eax, [ebp - 0x1c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebx]
push edi
mov ecx, ebx
call dword [eax + 4]
lea eax, [ebp - 0x25c]
push 0x104
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowTextW]
push edi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], edi
call dword [sym.imp.USER32.dll_GetDC]
mov dword [ebp - 0x24], eax
mov eax, dword [ebx]
lea ecx, [ebp - 0x25c]
push ecx
mov ecx, ebx
mov dword [ebp - 4], esi
call dword [eax + 0x18]
lea esi, [ebp - 0x1c]
lea edi, [ebp - 0x34]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x1c]
sub esp, 0x10
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
add eax, 0x3e8
lea esi, [ebp - 0x34]
mov edi, esp
mov dword [ebp - 0x2c], eax
movsd dword es:[edi], dword [esi]
mov eax, dword [ebx]
mov ecx, ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [eax + 8]
mov eax, dword [ebx]
push 0x65
push 0
push 2
push dword [ebp - 0x24]
lea ecx, [ebp - 0x54]
push ecx
mov ecx, ebx
call dword [eax + 0x24]
mov esi, eax
lea edi, [ebp - 0x34]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x14]
sub esi, dword [ebp - 0x34]
sub edi, dword [ebp - 0x1c]
lea eax, [ebp - 0x44]
push eax
add esi, 0x10
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetWindowRect]
cmp esi, edi
jle 0x41625e
lea eax, [ebp - 0x1c]
push eax
push dword [ebp + 0xc]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x14]
sub eax, dword [ebp - 0x44]
cmp eax, ecx
jge 0x4161f9
sub edi, esi
add dword [ebp - 0x1c], edi
jmp 0x416211
jne 0x41620c
mov eax, esi
sub eax, edi
cdq
sub eax, edx
sar eax, 1
sub dword [ebp - 0x1c], eax
add dword [ebp - 0x14], eax
jmp 0x416211
sub esi, edi
add dword [ebp - 0x14], esi
mov esi, dword [sym.imp.USER32.dll_ScreenToClient]
lea eax, [ebp - 0x1c]
push eax
push dword [ebp + 8]
call esi
test eax, eax
je 0x41622d
lea eax, [ebp - 0x14]
push eax
push dword [ebp + 8]
call esi
mov eax, dword [ebp - 0x10]
push 0x4000
sub eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
push dword [ebp - 0x18]
push dword [ebp - 0x1c]
push 0
push dword [ebp + 0xc]
call dword [sym.imp.USER32.dll_SetWindowPos]
lea eax, [ebp - 0x1c]
push eax
push dword [ebp + 0xc]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.004018bb
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret 8