Function at 0x1400a0970
Capabilities:
Enumerate gui resources
Get graphical window text

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
lea rbp, [rsp - 0x11be0]
mov eax, 0x11ce0
call fcn.1400d8050
sub rsp, rax
mov r10, qword [rbp + 0x11c10]
mov r11, rdx
movzx edx, word [rdx]
mov rsi, rcx
mov ecx, 0xffdf
lea eax, [rdx - 0x41]
test cx, ax
jne 0x1400a0a43
cmp word [r11 + 2], 0
jne 0x1400a0a43
cmp word [r8], 0
jne 0x1400a0a43
cmp word [r9], 0
jne 0x1400a0a43
cmp word [r10], 0
jne 0x1400a0a43
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rbx, rax
test rax, rax
je 0x1400a0a29
cmp byte [rsi + 0xbf], 0
jne 0x1400a0a29
mov rcx, rax
call qword [sym.imp.USER32.dll_IsWindowVisible]
xor edi, edi
test eax, eax
je 0x1400a0a26
lea r9d, [rdi + 4]
mov dword [rbp + 0x11c30], edi
lea r8, [rbp + 0x11c30]
mov rcx, rbx
lea edx, [rdi + 0xe]
call qword [sym.imp.dwmapi.dll_DwmGetWindowAttribute]
test eax, eax
js 0x1400a0a29
cmp dword [rbp + 0x11c30], edi
je 0x1400a0a29
mov rbx, rdi
cmp byte [rbp + 0x11c20], 0
je 0x1400a0a3b
test rbx, rbx
je 0x1400a0a3b
mov qword [rsi + 0x38], rbx
mov rax, rbx
jmp 0x1400a0cf5
test dx, dx
jne 0x1400a0a67
cmp word [r8], dx
jne 0x1400a0a67
cmp word [r9], dx
jne 0x1400a0a67
cmp word [r10], dx
jne 0x1400a0a67
mov rcx, rsi
call fcn.1400a0fe0
jmp 0x1400a0cf5
xor edi, edi
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x20], r9
lea rax, [0x1400f9b70]
mov r9, r8
mov dword [rsp + 0x30], edi
xorps xmm0, xmm0
mov qword [rbp + 0xf48], rax
mov r8, r11
mov byte [rbp + 0x1781], dil
lea rdx, [rsi + 0x80]
mov dword [rbp + 0x1784], edi
lea rcx, [rsp + 0x30]
mov qword [rbp + 0x1788], rdi
movdqa xmmword [rbp + 0x1790], xmm0
mov dword [rbp + 0x17a0], edi
mov qword [rbp + 0x17a8], rdi
mov qword [rbp + 0x17b8], rdi
mov qword [rbp + 0x17c0], rdi
call fcn.1400a1ee0
test eax, eax
je 0x1400a0cf3
test byte [rsp + 0x30], 2
movzx eax, byte [rbp + 0x11c18]
mov byte [rbp + 0x1781], al
mov qword [rbp + 0x1798], rdi
mov dword [rbp + 0x17a0], edi
je 0x1400a0fa0
mov rbx, qword [rbp + 0xf68]
cmp rbx, 0xffff
je 0x1400a0b86
mov rcx, rbx
call qword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x1400a0cf3
mov rbx, qword [rbp + 0xf68]
cmp byte [rsi + 0xbf], dil
jne 0x1400a0b86
mov rcx, rbx
call qword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x1400a0b6a
lea r9d, [rdi + 4]
mov dword [rbp + 0x11c30], edi
lea r8, [rbp + 0x11c30]
mov rcx, rbx
lea edx, [rdi + 0xe]
call qword [sym.imp.dwmapi.dll_DwmGetWindowAttribute]
test eax, eax
js 0x1400a0b86
cmp dword [rbp + 0x11c30], edi
je 0x1400a0b86
mov rcx, qword [rbp + 0xf68]
mov edx, 0xfffffff0
call qword [sym.imp.USER32.dll_GetWindowLongW]
bt eax, 0x1e
jae 0x1400a0cf3
mov rbx, qword [rbp + 0xf68]
cmp qword [rbp + 0x17c0], rbx
je 0x1400a0c6b
mov qword [rbp + 0x17c0], rbx
test rbx, rbx
je 0x1400a0cf3
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x1400a0c6b
test al, 1
jne 0x1400a0bc6
mov rax, qword [rbp + 0xf48]
cmp word [rax], di
je 0x1400a0beb
mov rcx, qword [rbp + 0xf68]
lea rdx, [rbp + 0x17cc]
mov r8d, 0x7fff
call qword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
jne 0x1400a0beb
mov word [rbp + 0x17cc], di
test byte [rsp + 0x30], 4
je 0x1400a0c06
mov rcx, qword [rbp + 0x17c0]
lea rdx, [rbp + 0x17c8]
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
test byte [rsp + 0x30], 0x20
je 0x1400a0c4a
mov rcx, qword [rbp + 0x17c0]
lea rdx, [rbp + 0x11c30]
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
test eax, eax
je 0x1400a0c4a
movzx r9d, byte [rbp + 0x1780]
lea rdx, [rbp + 0x119cc]
mov ecx, dword [rbp + 0x11c30]
call fcn.140031ab0
test eax, eax
jne 0x1400a0c4a
mov word [rbp + 0x119cc], di
test byte [rsp + 0x30], 8
je 0x1400a0c6b
mov rcx, qword [rbp + 0x17c0]
lea rdx, [rbp + 0x117ca]
mov r8d, 0x101
call qword [sym.imp.USER32.dll_GetClassNameW]
cmp qword [rbp + 0x17c0], rdi
je 0x1400a0cf3
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x1400a0cf3
test al, 1
je 0x1400a0d3d
cmp word [rsp + 0x40], di
je 0x1400a0d3d
mov rdx, qword [rsp + 0x38]
mov ecx, dword [rdx + 0xc]
sub ecx, 1
je 0x1400a0d21
sub ecx, 1
je 0x1400a0d0e
cmp ecx, 2
je 0x1400a0cdd
lea rax, [rbp + 0x17cc]
lea r9, [rsp + 0x40]
sub r9, rax
nop dword [rax]
movzx r8d, word [rax]
movzx ecx, word [rax + r9]
sub r8d, ecx
jne 0x1400a0cd6
add rax, 2
test ecx, ecx
jne 0x1400a0cc0
test r8d, r8d
je 0x1400a0d42
jmp 0x1400a0cf3
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x17cc]
call fcn.140032e40
test rax, rax
jne 0x1400a0d3d
xor eax, eax
lea r11, [rsp + 0x11ce0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x17cc]
call fcn.1400baa58
jmp 0x1400a0cee
mov r8, qword [rbp + 0xf40]
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x17cc]
call fcn.1400cb048
test eax, eax
jne 0x1400a0cf3
mov rdx, qword [rsp + 0x38]
test byte [rsp + 0x30], 8
je 0x1400a0d9f
cmp dword [rdx + 0xc], 4
jne 0x1400a0d6e
lea rdx, [rbp + 0x740]
lea rcx, [rbp + 0x117ca]
call fcn.140032e40
test rax, rax
je 0x1400a0cf3
mov rdx, qword [rsp + 0x38]
jmp 0x1400a0d9f
lea rax, [rbp + 0x117ca]
lea r9, [rbp + 0x740]
sub r9, rax
nop
movzx r8d, word [rax]
movzx ecx, word [rax + r9]
sub r8d, ecx
jne 0x1400a0d96
add rax, 2
test ecx, ecx
jne 0x1400a0d80
test r8d, r8d
jne 0x1400a0cf3
test byte [rsp + 0x30], 4
je 0x1400a0db8
mov eax, dword [rbp + 0xf70]
cmp dword [rbp + 0x17c8], eax
jne 0x1400a0cf3
test byte [rsp + 0x30], 0x20
je 0x1400a0df4
cmp dword [rdx + 0xc], 4
lea rcx, [rbp + 0x119cc]
lea rdx, [rbp + 0xf80]
jne 0x1400a0de2
call fcn.140032e40
test rax, rax
jne 0x1400a0def
jmp 0x1400a0cf3
call fcn.1400bea20
test eax, eax
jne 0x1400a0cf3
mov rdx, qword [rsp + 0x38]
test byte [rsp + 0x30], 0x10
je 0x1400a0e28
mov rcx, qword [rbp + 0xf78]
test rcx, rcx
je 0x1400a0cf3
mov r8, rdx
mov rdx, qword [rbp + 0x17c0]
call fcn.1400a3410
test rax, rax
je 0x1400a0cf3
mov rdx, qword [rsp + 0x38]
test byte [rsp + 0x30], 2
je 0x1400a0e43
mov rax, qword [rbp + 0xf68]
cmp qword [rbp + 0x17c0], rax
jne 0x1400a0cf3
mov r8, qword [rbp + 0xf48]
cmp word [r8], di
je 0x1400a0ee9
mov ecx, dword [rdx + 0xc]
sub ecx, 1
je 0x1400a0ec7
sub ecx, 1
je 0x1400a0eaa
cmp ecx, 2
je 0x1400a0e8d
lea rax, [rbp + 0x17cc]
sub r8, rax
movzx edx, word [rax]
movzx ecx, word [rax + r8]
sub edx, ecx
jne 0x1400a0e84
add rax, 2
test ecx, ecx
jne 0x1400a0e70
test edx, edx
jne 0x1400a0ee9
jmp 0x1400a0cf3
mov rdx, qword [rbp + 0xf48]
lea rcx, [rbp + 0x17cc]
call fcn.140032e40
test rax, rax
je 0x1400a0ee9
jmp 0x1400a0cf3
mov rdx, qword [rbp + 0xf48]
lea rcx, [rbp + 0x17cc]
call fcn.1400baa58
test rax, rax
je 0x1400a0ee9
jmp 0x1400a0cf3
mov r8, qword [rbp + 0xf50]
lea rcx, [rbp + 0x17cc]
mov rdx, qword [rbp + 0xf48]
call fcn.1400cb048
test eax, eax
je 0x1400a0cf3
mov ecx, edi
cmp dword [rbp + 0x17a0], ecx
jle 0x1400a0f1e
mov rdx, qword [rbp + 0x1798]
nop word [rax + rax]
mov rax, qword [rdx]
cmp qword [rbp + 0x17c0], rax
je 0x1400a0cf3
inc ecx
add rdx, 8
cmp ecx, dword [rbp + 0x17a0]
jl 0x1400a0f00
mov rax, qword [rbp + 0xf58]
cmp word [rax], di
jne 0x1400a0f36
mov rax, qword [rbp + 0xf60]
cmp word [rax], di
je 0x1400a0f63
mov rcx, qword [rbp + 0x17c0]
lea r8, [rsp + 0x30]
lea rdx, [0x1400a1170]
mov qword [rbp + 0x1790], rdi
call qword [sym.imp.USER32.dll_EnumChildWindows]
cmp qword [rbp + 0x1790], rdi
je 0x1400a0cf3
inc dword [rbp + 0x1784]
mov rcx, qword [rbp + 0x17b8]
mov rax, qword [rbp + 0x17c0]
mov qword [rbp + 0x1788], rax
test rcx, rcx
je 0x1400a0f92
mov rdx, rax
call fcn.14003ee40
mov rax, qword [rbp + 0x1788]
cmp qword [rbp + 0x17c0], rdi
jne 0x1400a0fb9
jmp 0x1400a0cf3
lea rdx, [rsp + 0x30]
lea rcx, [0x1400a10d0]
call qword [sym.imp.USER32.dll_EnumWindows]
mov rax, qword [rbp + 0x1788]
cmp byte [rbp + 0x11c20], dil
je 0x1400a0cf5
test rax, rax
je 0x1400a0cf5
mov qword [rsi + 0x38], rax
jmp 0x1400a0cf5