Function at 0x458edc
Capabilities:
Get graphical window text

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], rbp
push rdi
sub rsp, 0x90
mov rdi, rcx
mov rcx, qword [rcx + 8]
mov ebx, edx
lea rdx, [rsp + 0x40]
call qword [sym.imp.USER32.dll_GetClientRect]
lea rdx, [rsp + 0x40]
mov r8d, ebx
mov rcx, rdi
call fcn.00406938
mov rcx, qword [rdi + 0x5b8]
call qword [sym.imp.USER32.dll_IsWindow]
mov ebp, 1
test eax, eax
je 0x45911d
mov rcx, qword [rdi + 0x5b8]
and dword [rsp + 0x30], 0
and dword [rsp + 0x34], 0
and dword [rsp + 0x38], 0
and dword [rsp + 0x3c], 0
lea rdx, [rsp + 0x30]
call qword [sym.imp.USER32.dll_GetClientRect]
mov r11d, dword [rsp + 0x38]
lea ecx, [rbp + 9]
add r11d, 0xfffffff0
and dword [rsp + 0xa0], 0
lea rdx, [rdi + 0x708]
mov dword [rsp + 0x7c], r11d
mov eax, dword [rsp + rcx*4 + 0x54]
lea r8, [rsp + 0xb0]
sub eax, dword [rdx]
mov dword [rsp + 0xb0], eax
lea rax, [rsp + 0xa0]
cmovns rax, r8
sub rdx, 4
mov eax, dword [rax]
mov dword [rsp + rcx*4 + 0x50], eax
sub rcx, rbp
jns 0x458f72
mov rcx, qword [rdi + 0x5b8]
lea r9, [rsp + 0x50]
mov edx, 0x404
mov r8d, reloc.WS2_32.dll_listen
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [rdi + 0x5b8]
lea r9, [rsp + 0x30]
xor r8d, r8d
mov edx, 0x40a
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9d, dword [rsp + 0x68]
mov edx, dword [rsp + 0x64]
mov eax, dword [rsp + 0x3c]
mov r8d, dword [rsp + 0x34]
mov rcx, qword [rdi + 0x5f8]
mov dword [rsp + 0x38], r9d
sub eax, r8d
sub r9d, edx
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x30], edx
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_MoveWindow]
mov r9d, dword [rsp + 0x6c]
mov edx, dword [rsp + 0x68]
mov eax, dword [rsp + 0x3c]
mov r8d, dword [rsp + 0x34]
mov rcx, qword [rdi + 0x600]
mov dword [rsp + 0x38], r9d
sub eax, r8d
sub r9d, edx
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x30], edx
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_MoveWindow]
mov r9d, dword [rsp + 0x70]
mov edx, dword [rsp + 0x6c]
mov eax, dword [rsp + 0x3c]
mov r8d, dword [rsp + 0x34]
mov rcx, qword [rdi + 0x608]
mov dword [rsp + 0x38], r9d
sub eax, r8d
sub r9d, edx
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x30], edx
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_MoveWindow]
mov r9d, dword [rsp + 0x74]
mov edx, dword [rsp + 0x70]
mov eax, dword [rsp + 0x3c]
mov r8d, dword [rsp + 0x34]
mov rcx, qword [rdi + 0x5e0]
mov dword [rsp + 0x38], r9d
sub eax, r8d
sub r9d, edx
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x30], edx
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_MoveWindow]
mov r9d, dword [rsp + 0x78]
mov edx, dword [rsp + 0x74]
mov eax, dword [rsp + 0x3c]
mov r8d, dword [rsp + 0x34]
mov rcx, qword [rdi + 0x5f0]
mov dword [rsp + 0x38], r9d
sub eax, r8d
sub r9d, edx
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x30], edx
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_MoveWindow]
mov r9d, dword [rsp + 0x7c]
mov edx, dword [rsp + 0x78]
mov eax, dword [rsp + 0x3c]
mov r8d, dword [rsp + 0x34]
mov rcx, qword [rdi + 0x5e8]
sub eax, r8d
mov dword [rsp + 0x38], r9d
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x30], edx
sub r9d, edx
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_MoveWindow]
movdqu xmm0, xmmword [rsp + 0x40]
movdqu xmmword [rdi + 0x218], xmm0
test byte [rdi + 0x24c], bpl
je 0x459166
mov edx, dword [rdi + 0x220]
sub edx, dword [rdi + 0x238]
sub edx, dword [rdi + 0x230]
sub edx, dword [rdi + 0x218]
test edx, edx
jle 0x4591ac
mov ecx, dword [rdi + 0x244]
mov r8d, 0x2710
call qword [sym.imp.KERNEL32.dll_MulDiv]
mov edx, eax
jmp 0x459196
mov eax, dword [rdi + 0x24c]
shr eax, 2
test bpl, al
je 0x4591ac
mov edx, dword [rdi + 0x220]
sub edx, dword [rdi + 0x238]
sub edx, dword [rdi + 0x230]
sub edx, dword [rdi + 0x218]
test edx, edx
jle 0x4591ac
sub edx, dword [rdi + 0x244]
lea rcx, [rdi + 0x208]
xor r8d, r8d
mov byte [rdi + 0x248], 0
call fcn.0046266c
lea rcx, [rdi + 0x208]
call fcn.00461874
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret