Function at 0x404e90
Capabilities:
Get graphical window text

Disassembly:
mov eax, 0x310c
call fcn.004ba380
push ebx
push ebp
push esi
mov esi, dword [esp + 0x311c]
push edi
mov ebx, ecx
push 0x20
push esi
mov dword [esp + 0x20], ebx
call dword [sym.imp.MSVCRT.dll_wcschr]
add esp, 8
mov ecx, 0x411
neg eax
sbb eax, eax
xor ebp, ebp
neg eax
mov dword [esp + 0x40], eax
xor eax, eax
lea edi, [esp + 0x46]
mov word [esp + 0x44], bp
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov edi, dword [sym.imp.MSVCRT.dll__snwprintf]
push esi
push 0x50f4e4
lea eax, [esp + 0x4c]
push 0x823
push eax
call edi
lea ecx, [esp + 0x54]
push ecx
call fcn.00478650
mov word [ebx + 0x3060], bp
add esp, 0x14
cmp word [esp + 0x44], 0
mov ebp, 1
mov dword [esp + 0x10], ebp
mov dword [esp + 0x24], 0
je 0x404f8b
cmp word [ebx + 0x1f00], 0
lea esi, [ebx + 0x1f00]
je 0x404f83
lea edx, [esp + 0x44]
push esi
push edx
call dword [sym.imp.MSVCRT.dll_wcscmp]
add esp, 8
test eax, eax
jne 0x404f49
mov dword [esp + 0x10], ebp
mov dword [esp + 0x24], ebp
jmp 0x404f83
mov ebx, dword [sym.imp.MSVCRT.dll_wcsstr]
lea eax, [esp + 0x44]
push esi
push eax
call ebx
add esp, 8
test eax, eax
je 0x404f68
mov dword [esp + 0x10], 0
jmp 0x404f7f
lea ecx, [esp + 0x44]
push ecx
push esi
call ebx
add esp, 8
test eax, eax
je 0x404f7f
mov dword [esp + 0x24], 1
mov ebx, dword [esp + 0x18]
cmp word [esp + 0x44], 0
jne 0x404fa3
pop edi
pop esi
mov word [ebx + 0x1f00], 0
pop ebp
xor eax, eax
pop ebx
add esp, 0x310c
ret 4
lea edx, [esp + 0x44]
push edx
push 0x50f4e4
push 0x823
push esi
call edi
add esp, 0x10
lea ebp, [ebx + 0x4c]
xor esi, esi
mov ecx, ebp
push esi
mov dword [esp + 0x40], ebp
call fcn.0049f040
mov ecx, ebp
call fcn.0049df80
push esi
call fcn.00439180
add esp, 4
mov ecx, ebp
push eax
call fcn.0049dfb0
lea eax, [esp + 0x44]
mov dword [esp + 0x1c], esi
push eax
call fcn.00490b30
mov dword [esp + 0x2c], eax
mov ecx, 0x411
xor eax, eax
lea edi, [esp + 0x20da]
mov word [esp + 0x20d8], si
add esp, 4
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x20d4]
push 0x823
lea edx, [esp + 0x48]
push ecx
push edx
mov ecx, 0x603870
stosw word es:[edi], ax
call fcn.0048b150
test eax, eax
je 0x40504c
lea eax, [esp + 0x44]
lea ecx, [esp + 0x44]
push eax
push ecx
mov ecx, ebx
call fcn.00404c20
mov esi, 1
mov dword [esp + 0x1c], esi
jmp 0x405068
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x405068
lea edx, [esp + 0x44]
mov ecx, ebx
push edx
call fcn.00404cb0
mov dword [esp + 0x1c], 1
mov eax, dword [esp + 0x28]
xor edi, edi
cmp eax, edi
mov dword [esp + 0x34], 8
mov dword [esp + 0x2c], edi
je 0x405090
lea eax, [esp + 0x44]
mov ecx, ebx
push eax
call fcn.00404d30
mov dword [esp + 0x2c], eax
jmp 0x405098
mov dword [esp + 0x34], 7
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x44]
push ecx
push edx
call fcn.00431570
mov ecx, eax
add ecx, 0x714
call fcn.0046cd20
test eax, eax
je 0x4053c3
mov ecx, ebp
call fcn.0049f0e0
mov dword [esp + 0x20], eax
call fcn.00431570
add eax, 0x718
cmp esi, edi
mov dword [esp + 0x10], 1
mov eax, dword [eax + 4]
mov dword [esp + 0x30], eax
je 0x4050e8
mov dword [esp + 0x10], edi
call fcn.00431570
mov ecx, dword [eax + 0x71c]
add eax, 0x718
mov eax, dword [esp + 0x30]
mov edi, dword [ecx]
cmp edi, eax
mov dword [esp + 0x14], edi
je 0x4053c3
mov ecx, dword [esp + 0x18]
lea ebx, [edi + 0x228]
push ebx
call fcn.00405400
mov esi, eax
mov eax, dword [esp + 0x10]
test eax, eax
mov dword [esp + 0x38], esi
je 0x40513f
mov edx, dword [esp + 0x3120]
push edx
push ebx
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
jne 0x40513f
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x40]
test eax, eax
jne 0x40532a
mov eax, dword [esp + 0x2c]
test eax, eax
jne 0x40532a
mov eax, dword [esp + 0x10]
test eax, eax
je 0x40532a
push ebx
call fcn.0043df10
add esp, 4
test eax, eax
je 0x40532a
mov eax, dword [esp + 0x3120]
mov esi, ebx
push eax
call dword [sym.imp.MSVCRT.dll_wcslen]
mov ebp, eax
mov eax, dword [esp + 0x28]
add esp, 4
test eax, eax
jne 0x405302
mov ecx, dword [esp + 0x3120]
mov edi, dword [sym.imp.MSVCRT.dll__wcsnicmp]
push ebp
push ecx
push ebx
call edi
add esp, 0xc
test eax, eax
je 0x405204
push 7
push 0x50f610
push ebx
call edi
add esp, 0xc
test eax, eax
jne 0x4051d5
mov edx, dword [esp + 0x3120]
lea esi, [ebx + 0xe]
push ebp
push edx
push esi
call edi
add esp, 0xc
test eax, eax
je 0x405204
push 0xb
push 0x50f5f8
push ebx
call edi
add esp, 0xc
test eax, eax
jne 0x4052fe
mov eax, dword [esp + 0x3120]
lea esi, [ebx + 0x16]
push ebp
push eax
push esi
call edi
add esp, 0xc
test eax, eax
jne 0x4052fe
mov eax, dword [0x6d010c]
test eax, eax
je 0x4052fe
mov ecx, 0x411
xor eax, eax
lea edi, [esp + 0x108e]
mov word [esp + 0x108c], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x108c]
push 0x823
push ecx
mov edx, dword [edi + 0x2f58]
push edx
call dword [sym.imp.USER32.dll_GetWindowTextW]
lea eax, [esp + 0x108c]
push esi
push eax
call dword [sym.imp.MSVCRT.dll_wcscmp]
add esp, 8
test eax, eax
je 0x40529f
lea ecx, [esi + ebp*2]
mov ebp, dword [esp + 0x3120]
push ecx
push ebp
push 0x50f5ec
lea edx, [esp + 0x1098]
push 0x823
push edx
call dword [sym.imp.MSVCRT.dll__snwprintf]
mov ecx, dword [edi + 0x2f58]
add esp, 0x14
lea eax, [esp + 0x108c]
push eax
push ecx
call dword [sym.imp.USER32.dll_SetWindowTextW]
jmp 0x4052a6
mov ebp, dword [esp + 0x3120]
push ebp
mov dword [edi + 0x2f4c], 0
call dword [sym.imp.MSVCRT.dll_wcslen]
push esi
mov edi, eax
call dword [sym.imp.MSVCRT.dll_wcslen]
mov esi, dword [esp + 0x20]
add esp, 8
mov edx, dword [esi + 0x2f58]
push eax
push edi
push 0xb1
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
push ebp
push 0x50f4e4
lea eax, [esi + 0x3060]
push 0x823
push eax
call dword [sym.imp.MSVCRT.dll__snwprintf]
add esp, 0x10
mov dword [esp + 0x1c], 0
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x1c]
push 0
push 0
push 0
lea ecx, [edi + 0x20]
push eax
push ecx
mov ecx, dword [esp + 0x50]
push ebx
push edx
call fcn.0049e020
mov ebp, dword [esp + 0x3c]
mov esi, dword [esp + 0x38]
jmp 0x405342
mov ecx, dword [esp + 0x20]
push 0
push 0
push 0
lea eax, [edi + 0x20]
push esi
push eax
push ebx
push ecx
mov ecx, ebp
call fcn.0049e020
push esi
call fcn.00439160
add esp, 4
test eax, eax
jne 0x405356
push esi
call dword [sym.imp.USER32.dll_DestroyIcon]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x34]
inc eax
mov dword [esp + 0x10], 0
cmp eax, ecx
mov dword [esp + 0x20], eax
jge 0x4053bf
mov ecx, dword [edi + 8]
mov edx, dword [0x52a484]
cmp ecx, edx
je 0x405390
mov eax, dword [ecx]
cmp eax, edx
je 0x40538a
mov ecx, eax
mov eax, dword [ecx]
cmp eax, edx
jne 0x405382
mov dword [esp + 0x14], ecx
jmp 0x4053b1
mov eax, dword [edi + 4]
cmp edi, dword [eax + 8]
jne 0x4053a8
mov ecx, eax
mov eax, dword [eax + 4]
mov dword [esp + 0x14], ecx
cmp ecx, dword [eax + 8]
je 0x405398
mov edi, ecx
cmp dword [edi + 8], eax
je 0x4053b5
mov dword [esp + 0x14], eax
mov edi, dword [esp + 0x14]
cmp edi, dword [esp + 0x30]
jne 0x40510a
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x4053d7
lea edx, [esp + 0x44]
mov ecx, ebx
push edx
call fcn.00404d30
push 0
mov ecx, ebp
call fcn.0049eff0
push 1
mov ecx, ebp
call fcn.0049f040
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x310c
ret 4