Function at 0x402e90
Capabilities:
Get graphical window text

Disassembly:
mov eax, 0x314c
call fcn.004d2930
push ebx
push esi
mov esi, ecx
push edi
xor ebx, ebx
mov ecx, 0x411
xor eax, eax
lea edi, [esp + 0x82]
mov word [esp + 0x80], bx
push 0x823
rep stosd dword es:[edi], eax
mov ecx, dword [esi + 0x32d0]
mov dword [esi + 0x122c], 1
stosw word es:[edi], ax
lea eax, [esp + 0x84]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowTextW]
cmp word [esp + 0x80], bx
je 0x403160
mov ecx, 0x1d
xor eax, eax
lea edi, [esp + 0xc]
push ebp
rep stosd dword es:[edi], eax
mov ecx, esi
mov dword [esp + 0x10], 0x74
mov dword [esp + 0x14], 0x40000000
call fcn.00403720
test eax, eax
push 0x50b180
je 0x402f74
mov edx, dword [esi + 0x32d0]
mov edi, dword [sym.imp.USER32.dll_SetWindowTextW]
push edx
call edi
mov eax, dword [esi + 0x32d0]
mov ebp, dword [sym.imp.USER32.dll_SendMessageW]
push ebx
push 1
push 0x459
push eax
call ebp
mov edx, dword [esi + 0x32d0]
lea ecx, [esp + 0x84]
push ecx
push edx
call edi
mov eax, dword [esi + 0x3338]
mov edx, dword [esi + 0x32d0]
lea ecx, [esp + 0x10]
mov dword [esp + 0x24], eax
push ecx
push 4
push 0x444
push edx
jmp 0x40314c
mov eax, dword [esi + 0x32d0]
mov edi, dword [sym.imp.USER32.dll_SetWindowTextW]
push eax
call edi
mov ecx, dword [esi + 0x32d0]
mov ebp, dword [sym.imp.USER32.dll_SendMessageW]
push ebx
push 2
push 0x459
push ecx
call ebp
mov eax, dword [esi + 0x32d0]
lea edx, [esp + 0x84]
push edx
push eax
call edi
mov ecx, 0x411
xor eax, eax
lea edi, [esp + 0x10ce]
mov word [esp + 0x10cc], bx
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x10cc]
push 0x823
lea edx, [esp + 0x88]
push ecx
push edx
stosw word es:[edi], ax
call fcn.00462b80
add esp, 0xc
test eax, eax
je 0x40312f
mov edx, dword [esi + 0x32d0]
mov eax, dword [esi + 0x3340]
lea ecx, [esp + 0x10]
mov dword [esp + 0x24], eax
push ecx
push 4
push 0x444
push edx
call ebp
lea eax, [esp + 0x10cc]
push eax
call dword [sym.imp.MSVCRT.dll_wcslen]
mov ebp, eax
mov ecx, 0x411
xor eax, eax
lea edi, [esp + 0x211a]
mov word [esp + 0x2118], 0
add esp, 4
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x2114]
push 0x823
lea edx, [esp + 0x10d0]
push ecx
push edx
mov ecx, esi
stosw word es:[edi], ax
call fcn.00407e20
test eax, eax
je 0x4030a8
mov edi, dword [sym.imp.MSVCRT.dll_wcslen]
lea eax, [esp + 0x2114]
push eax
call edi
add esp, 4
test eax, eax
jbe 0x4030ae
lea ecx, [esp + 0x2114]
lea edx, [esp + 0x84]
push ecx
push edx
call dword [sym.imp.MSVCRT.dll_wcsstr]
add esp, 8
test eax, eax
je 0x4030e2
lea ecx, [esp + 0x84]
lea edx, [esp + 0x2114]
sub eax, ecx
push edx
sar eax, 1
mov ebx, eax
call edi
add esp, 4
jmp 0x4030de
mov edi, dword [sym.imp.MSVCRT.dll_wcslen]
lea eax, [esp + 0x10cc]
lea ecx, [esp + 0x84]
push eax
push ecx
call dword [sym.imp.MSVCRT.dll_wcsstr]
mov ebx, eax
lea edx, [esp + 0x8c]
lea eax, [esp + 0x10d4]
sub ebx, edx
push eax
sar ebx, 1
call edi
add esp, 0xc
mov ebp, eax
add ebp, ebx
push ebp
push ebx
mov ecx, esi
call fcn.004057e0
mov ecx, 0x1d
xor eax, eax
lea edi, [esp + 0x10]
lea edx, [esp + 0x10]
rep stosd dword es:[edi], eax
mov eax, dword [esi + 0x32d0]
mov ecx, dword [esi + 0x333c]
push edx
push 1
push 0x444
push eax
mov dword [esp + 0x20], 0x74
mov dword [esp + 0x24], 0x40000000
mov dword [esp + 0x34], ecx
call dword [sym.imp.USER32.dll_SendMessageW]
xor ebx, ebx
jmp 0x40314e
mov ecx, dword [esi + 0x3338]
mov eax, dword [esi + 0x32d0]
lea edx, [esp + 0x10]
mov dword [esp + 0x24], ecx
push edx
push 4
push 0x444
push eax
call ebp
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, esi
call fcn.004057e0
mov dword [esi + 0x122c], ebx
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x314c
ret