Function at 0x407455
Capabilities:
Get graphical window text

Disassembly:
sub esp, 0x4c
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x44], eax
push ebx
push ebp
mov eax, ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], eax
push esi
push edi
test eax, eax
je 0x4075c5
push 0x3e9
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov ebp, eax
test ebp, ebp
je 0x4075c5
push ebp
call dword [sym.imp.USER32.dll_GetWindowTextLengthW]
mov esi, eax
lea edx, [esi*2 + 2]
call fcn.00407c2c
mov dword [esp + 0x18], eax
test eax, eax
je 0x4075c5
lea ecx, [esi + 1]
push ecx
push eax
push ebp
call dword [sym.imp.USER32.dll_GetWindowTextW]
lea edx, [esp + 0x44]
mov ecx, ebp
call fcn.004079cf
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0x31
push ebp
call ebx
mov dword [esp + 0x20], eax
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x44]
mov dword [esp + 0x44], esi
push eax
push 0xb0
push ebp
mov dword [esp + 0x4c], esi
call ebx
mov eax, dword [0x44b498]
test eax, eax
je 0x407511
push eax
push 0xfffffffffffffffc
push ebp
call dword [sym.imp.USER32.dll_SetWindowLongW]
mov esi, dword [sym.imp.USER32.dll_GetWindowLongW]
push 0xffffffffffffffec
push ebp
call esi
push 0xfffffffffffffff0
push ebp
mov ebx, eax
call esi
mov edi, eax
test ebx, ebx
mov eax, 0x201
cmove ebx, eax
mov eax, 0x40230904
test edi, edi
cmove edi, eax
lea eax, [esp + 0x2c]
push eax
push ebp
call dword [sym.imp.USER32.dll_GetWindowRect]
mov esi, dword [sym.imp.USER32.dll_ScreenToClient]
lea eax, [esp + 0x2c]
push eax
push dword [esp + 0x18]
call esi
lea eax, [esp + 0x34]
push eax
push dword [esp + 0x18]
call esi
push ebp
call dword [sym.imp.USER32.dll_GetDlgCtrlID]
mov ecx, dword [esp + 0x38]
xor esi, esi
sub ecx, dword [esp + 0x30]
push esi
push dword [0x44b494]
mov dword [esp + 0x2c], eax
push eax
push dword [esp + 0x20]
mov eax, edi
and edi, 0xffefffff
push ecx
mov ecx, dword [esp + 0x48]
or eax, 0x100000
sub ecx, dword [esp + 0x40]
cmp dword [esp + 0x30], esi
push ecx
push dword [esp + 0x48]
cmove edi, eax
push dword [esp + 0x48]
push edi
push esi
push str.Edit
push ebx
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov edi, eax
test edi, edi
jne 0x4075da
mov ecx, dword [esp + 0x18]
call fcn.00407c42
xor eax, eax
mov ecx, dword [esp + 0x54]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00422fb4
add esp, 0x4c
ret
push esi
mov esi, dword [sym.imp.USER32.dll_SetWindowTextW]
push ebp
call esi
lea edx, [esp + 0x44]
mov ecx, edi
call fcn.0040798b
mov ebx, dword [esp + 0x18]
push ebx
push edi
call esi
mov ecx, ebx
call fcn.00407c42
mov eax, dword [esp + 0x20]
xor esi, esi
test eax, eax
je 0x407613
push esi
push eax
push 0x30
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x44b490], 0
je 0x407629
push esi
push str.DarkMode_Explorer
push edi
call dword [sym.imp.UxTheme.dll_SetWindowTheme]
mov eax, dword [esp + 0x24]
mov ebx, dword [sym.imp.USER32.dll_SetWindowLongW]
add eax, 0x7d0
push eax
push 0xfffffffffffffff4
push ebp
call ebx
push 0x57
push esi
push esi
push esi
push esi
push esi
mov esi, dword [sym.imp.USER32.dll_SetWindowPos]
push edi
call esi
push 0x37
xor eax, eax
push eax
push eax
push eax
push eax
push eax
push edi
call esi
push 0x9f
xor eax, eax
push eax
push eax
push eax
push eax
push eax
push ebp
call esi
mov ecx, ebp
call fcn.00407a1c
push ebp
call dword [sym.imp.USER32.dll_DestroyWindow]
push edi
call dword [sym.imp.USER32.dll_UpdateWindow]
xor esi, esi
push esi
push esi
push 0xc5
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [esp + 0x28], ebp
jne 0x40769b
push edi
call dword [sym.imp.USER32.dll_SetFocus]
push dword [esp + 0x3c]
push dword [esp + 0x44]
push 0xb1
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x4060d9
push 0xfffffffffffffffc
push edi
call ebx
mov dword [0x44b498], eax
xor eax, eax
inc eax
jmp 0x4075c7