Function at 0x1400a1630
Capabilities:
Get graphical window text

Disassembly:
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x220
mov r10, qword [rsp + 0x270]
mov r12, r8
mov rsi, rcx
cmp word [r10], 0
je 0x1400a1674
mov rax, qword [rcx + 0x1018]
mov byte [rsp + 0x270], 1
cmp word [rax], 0
je 0x1400a167c
mov byte [rsp + 0x270], 0
mov r15, 0xffffffffffffffff
mov qword [rcx + 0x1018], r10
mov rax, r15
nop dword [rax]
inc rax
cmp word [r10 + rax*2], 0
jne 0x1400a1690
mov qword [rcx + 0x1020], rax
xor edi, edi
mov rax, qword [rsp + 0x278]
mov r14d, edi
mov qword [rcx + 0x1030], rax
mov eax, dword [rcx]
mov qword [rcx + 8], rdx
lea rdx, str.ahk_
mov dword [rcx], edi
mov qword [rcx + 0x1028], r9
mov rcx, r12
mov qword [rsp + 0x250], rbx
mov dword [rsp + 0x278], eax
call fcn.14009a680
mov rbp, rax
test rax, rax
je 0x1400a1a22
nop
cmp rbp, r12
jbe 0x1400a1709
movzx eax, word [rbp - 2]
cmp ax, 0x20
je 0x1400a1709
cmp ax, 9
jne 0x1400a19f6
mov r8d, 2
lea rdx, [0x140108b1c]
lea rcx, [rbp + 8]
call fcn.1400be350
test eax, eax
jne 0x1400a175f
or dword [rsi], 2
lea rcx, [rbp + 0xc]
call fcn.14009ab90
mov qword [rsi + 0x1038], rax
cmp rax, 0xffff
je 0x1400a1996
mov rcx, rax
call qword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x1400a1996
mov qword [rsi + 0x1038], rdi
jmp 0x1400a1b35
mov r8d, 3
lea rdx, [0x140108b28]
lea rcx, [rbp + 8]
call fcn.1400be350
test eax, eax
jne 0x1400a1790
or dword [rsi], 4
lea rcx, [rbp + 0xe]
call fcn.14009ab90
mov dword [rsi + 0x1040], eax
jmp 0x1400a1996
mov r8d, 5
lea rdx, str.group
lea rcx, [rbp + 8]
call fcn.1400be350
test eax, eax
jne 0x1400a189a
or dword [rsi], 0x10
lea rdx, [rbp + 0x12]
movzx eax, word [rdx]
cmp ax, 0x20
je 0x1400a17c4
cmp ax, 9
jne 0x1400a17ca
add rdx, 2
jmp 0x1400a17b5
mov r8d, 0xfd
lea rcx, [rsp + 0x20]
call fcn.1400cd014
movzx r9d, word [rsp + 0x20]
lea r8, [rsp + 0x20]
mov word [rsp + 0x21a], di
test r9w, r9w
je 0x1400a187b
movzx edx, r9w
nop dword [rax + rax]
lea rcx, [0x1400ffab4]
mov eax, SafeArrayAllocDescriptor
nop dword [rax]
cmp dx, ax
je 0x1400a1832
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x1400a1810
movzx edx, word [r8 + 2]
add r8, 2
test dx, dx
jne 0x1400a1800
jmp 0x1400a1841
test r8, r8
je 0x1400a1841
mov word [r8], di
movzx r9d, word [rsp + 0x20]
test r9w, r9w
je 0x1400a187b
mov rbx, qword [0x140124590]
test rbx, rbx
je 0x1400a187b
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rbx + 8]
lea rdx, [rsp + 0x20]
call fcn.1400be170
test eax, eax
je 0x1400a1889
mov rbx, qword [rbx + 0x20]
test rbx, rbx
jne 0x1400a1860
mov qword [rsi + 0x1048], rdi
xor eax, eax
jmp 0x1400a1b35
mov qword [rsi + 0x1048], rbx
test rbx, rbx
je 0x1400a1882
jmp 0x1400a1996
mov r8d, 3
lea rdx, [0x140100500]
lea rcx, [rbp + 8]
call fcn.1400be350
test eax, eax
jne 0x1400a18c2
or dword [rsi], 0x20
lea rdx, [rbp + 0xe]
mov eax, 0x1050
jmp 0x1400a18ec
mov r8d, 5
lea rdx, str.class
lea rcx, [rbp + 8]
call fcn.1400be350
test eax, eax
jne 0x1400a19f6
or dword [rsi], 8
lea rdx, [rbp + 0x12]
mov eax, 0x810
lea rbx, [rax + rsi]
movzx eax, word [rdx]
cmp ax, 0x20
je 0x1400a18ff
cmp ax, 9
jne 0x1400a1905
add rdx, 2
jmp 0x1400a18f0
mov r8d, 0x3ff
mov rcx, rbx
call fcn.1400cd014
lea rdx, str.ahk_
mov word [rbx + 0x7fe], di
mov rcx, rbx
call fcn.14009a680
test rax, rax
je 0x1400a1965
nop
cmp rax, rbx
je 0x1400a1962
movzx ecx, word [rax - 2]
cmp cx, 0x20
je 0x1400a195c
cmp cx, 9
je 0x1400a195c
lea rcx, [rax + 8]
lea rdx, str.ahk_
call fcn.14009a680
test rax, rax
jne 0x1400a1930
jmp 0x1400a1965
mov word [rax - 2], di
jmp 0x1400a1965
mov word [rax], di
lea rcx, [rsi + 0x1050]
cmp rbx, rcx
jne 0x1400a1996
mov rax, qword [rsi + 8]
cmp dword [rax + 0xc], 4
je 0x1400a198e
mov edx, 0x5c
call fcn.1400b97d8
test rax, rax
jne 0x1400a198e
mov al, 1
jmp 0x1400a1990
xor al, al
mov byte [rsi + 0x1850], al
test r14d, r14d
jne 0x1400a19f9
mov rcx, r12
call 0x140017bf0
cmp rbp, rax
jbe 0x1400a19f9
or dword [rsi], 1
lea rcx, [rsi + 0x10]
mov eax, 0x400
mov rbx, rbp
sub rbx, r12
mov rdx, r12
sar rbx, 1
cmp rbx, rax
cmova rbx, rax
lea r8, [rbx - 1]
call fcn.1400cd014
xor eax, eax
mov word [rsi + rbx*2 + 0xe], ax
mov rax, r15
nop word [rax + rax]
inc rax
cmp word [rsi + rax*2 + 0x10], 0
jne 0x1400a19e0
mov qword [rsi + 0x1010], rax
xor edi, edi
jmp 0x1400a19f9
dec r14d
mov eax, 8
lea rdx, str.ahk_
inc r14d
lea rcx, [rax + rbp]
call fcn.14009a680
mov rbp, rax
test rax, rax
jne 0x1400a16f0
test r14d, r14d
jne 0x1400a1a54
mov r8d, 0x3ff
mov dword [rsi], 1
mov rdx, r12
lea rcx, [rsi + 0x10]
call fcn.1400cd014
mov word [rsi + 0x80e], di
inc r15
cmp word [rsi + r15*2 + 0x10], 0
jne 0x1400a1a41
mov qword [rsi + 0x1010], r15
mov eax, dword [rsi]
cmp eax, dword [rsp + 0x278]
jne 0x1400a1a6d
cmp byte [rsp + 0x270], 0
je 0x1400a1b30
mov rcx, qword [rsi + 0x1890]
test rcx, rcx
je 0x1400a1b30
test eax, eax
je 0x1400a1b30
test al, 1
jne 0x1400a1a96
mov rax, qword [rsi + 0x1018]
cmp word [rax], 0
je 0x1400a1ab4
mov r8d, 0x7fff
lea rdx, [rsi + 0x189c]
call qword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
jne 0x1400a1ab4
mov word [rsi + 0x189c], di
test byte [rsi], 4
je 0x1400a1acd
mov rcx, qword [rsi + 0x1890]
lea rdx, [rsi + 0x1898]
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
test byte [rsi], 0x20
je 0x1400a1b11
mov rcx, qword [rsi + 0x1890]
lea rdx, [rsp + 0x270]
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
test eax, eax
je 0x1400a1b11
movzx r9d, byte [rsi + 0x1850]
lea rdx, [rsi + 0x11a9c]
mov ecx, dword [rsp + 0x270]
call fcn.140031b50
test eax, eax
jne 0x1400a1b11
mov word [rsi + 0x11a9c], di
test byte [rsi], 8
je 0x1400a1b30
mov rcx, qword [rsi + 0x1890]
lea rdx, [rsi + 0x1189a]
mov r8d, 0x101
call qword [sym.imp.USER32.dll_GetClassNameW]
mov eax, 1
mov rbx, qword [rsp + 0x250]
lea r11, [rsp + 0x220]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret