Function at 0x1400a2520
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 - 0x10400]
mov eax, 0x10500
call fcn.1400d9ac0
sub rsp, rax
mov r11, rdx
mov rsi, rcx
movzx edx, word [rdx]
lea eax, [rdx - 0x41]
mov ecx, 0xffdf
mov r10, qword [rbp + 0x10430]
test cx, ax
jne 0x1400a25f8
cmp word [r11 + 2], 0
jne 0x1400a25f8
cmp word [r8], 0
jne 0x1400a25f8
cmp word [r9], 0
jne 0x1400a25f8
cmp word [r10], 0
jne 0x1400a25f8
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rbx, rax
test rax, rax
je 0x1400a25d9
cmp byte [rsi + 0xbf], 0
jne 0x1400a25d9
mov rcx, rax
call qword [sym.imp.USER32.dll_IsWindowVisible]
xor edi, edi
test eax, eax
je 0x1400a25d6
mov dword [rbp + 0x10450], edi
lea r9d, [rdi + 4]
lea r8, [rbp + 0x10450]
lea edx, [rdi + 0xe]
mov rcx, rbx
call qword [sym.imp.dwmapi.dll_DwmGetWindowAttribute]
test eax, eax
js 0x1400a25d9
cmp dword [rbp + 0x10450], edi
je 0x1400a25d9
mov rbx, rdi
cmp byte [rbp + 0x10440], 0
je 0x1400a285d
test rbx, rbx
je 0x1400a285d
mov qword [rsi + 0x38], rbx
jmp 0x1400a285d
test dx, dx
jne 0x1400a261c
cmp word [r8], dx
jne 0x1400a261c
cmp word [r9], dx
jne 0x1400a261c
cmp word [r10], dx
jne 0x1400a261c
mov rcx, rsi
call fcn.1400a2af0
jmp 0x1400a2860
xor edi, edi
mov dword [rsp + 0x30], edi
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x48], rdi
lea rax, [0x1400fbbd0]
mov qword [rsp + 0x68], rax
mov byte [rbp - 0x57], dil
mov dword [rbp - 0x54], edi
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], rdi
mov dword [rbp - 0x38], edi
mov qword [rbp - 0x30], rdi
movdqa xmmword [rbp - 0x20], xmm0
lea rdx, [rsi + 0x80]
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, r11
lea rcx, [rsp + 0x30]
call fcn.1400a3990
test eax, eax
je 0x1400a2850
movzx eax, byte [rbp + 0x10438]
mov byte [rbp - 0x57], al
mov qword [rbp - 0x40], rdi
mov dword [rbp - 0x38], edi
test byte [rsp + 0x30], 2
je 0x1400a2ab1
mov rbx, qword [rbp - 0x78]
cmp rbx, 0xffff
je 0x1400a2716
mov rcx, rbx
call qword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x1400a2850
mov rbx, qword [rbp - 0x78]
cmp byte [rsi + 0xbf], dil
jne 0x1400a2716
mov rcx, rbx
call qword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x1400a26fd
mov dword [rbp + 0x10450], edi
lea r9d, [rdi + 4]
lea r8, [rbp + 0x10450]
lea edx, [rdi + 0xe]
mov rcx, rbx
call qword [sym.imp.dwmapi.dll_DwmGetWindowAttribute]
test eax, eax
js 0x1400a2716
cmp dword [rbp + 0x10450], edi
je 0x1400a2716
mov edx, 0xfffffff0
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.USER32.dll_GetWindowLongW]
bt eax, 0x1e
jae 0x1400a2850
mov rbx, qword [rbp - 0x78]
cmp qword [rbp - 0x18], rbx
je 0x1400a27d9
mov qword [rbp - 0x18], rbx
test rbx, rbx
je 0x1400a2850
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x1400a27d9
test al, 1
jne 0x1400a274c
mov rax, qword [rsp + 0x68]
cmp word [rax], 0
je 0x1400a2768
mov r8d, 0x7fff
lea rdx, [rbp - 0xc]
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
jne 0x1400a2768
mov word [rbp - 0xc], di
test byte [rsp + 0x30], 4
je 0x1400a277d
lea rdx, [rbp - 0x10]
mov rcx, qword [rbp - 0x18]
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
test byte [rsp + 0x30], 0x20
je 0x1400a27bb
lea rdx, [rbp + 0x10450]
mov rcx, qword [rbp - 0x18]
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
test eax, eax
je 0x1400a27bb
movzx r9d, byte [rbp - 0x58]
lea rdx, [rbp + 0x101f4]
mov ecx, dword [rbp + 0x10450]
call fcn.140031a84
test eax, eax
jne 0x1400a27bb
mov word [rbp + 0x101f4], di
test byte [rsp + 0x30], 8
je 0x1400a27d9
mov r8d, 0x101
lea rdx, [rbp + 0xfff2]
mov rcx, qword [rbp - 0x18]
call qword [sym.imp.USER32.dll_GetClassNameW]
cmp qword [rbp - 0x18], 0
je 0x1400a2850
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x1400a2850
test al, 1
je 0x1400a289c
mov r9, qword [rsp + 0x50]
cmp word [r9], 0
je 0x1400a289c
mov rdx, qword [rsp + 0x38]
mov ecx, dword [rdx + 0xc]
sub ecx, 1
je 0x1400a2887
sub ecx, 1
je 0x1400a2879
cmp ecx, 2
je 0x1400a283f
lea rax, [rbp - 0xc]
sub r9, rax
movzx r8d, word [rax]
movzx ecx, word [rax + r9]
sub r8d, ecx
jne 0x1400a2838
add rax, 2
test ecx, ecx
jne 0x1400a2822
test r8d, r8d
je 0x1400a28a1
jmp 0x1400a2850
mov rdx, r9
lea rcx, [rbp - 0xc]
call fcn.140032e70
test rax, rax
jne 0x1400a289c
mov rbx, rdi
mov rcx, qword [rsp + 0x40]
call fcn.1400c0480
mov rax, rbx
lea r11, [rsp + 0x10500]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret
mov rdx, r9
lea rcx, [rbp - 0xc]
call fcn.1400bc350
jmp 0x1400a284b
mov r8, qword [rsp + 0x60]
mov rdx, r9
lea rcx, [rbp - 0xc]
call fcn.1400cc9c4
test eax, eax
jne 0x1400a2850
mov rdx, qword [rsp + 0x38]
test byte [rsp + 0x30], 8
je 0x1400a28ff
cmp dword [rdx + 0xc], 4
jne 0x1400a28cb
mov rdx, qword [rsp + 0x58]
lea rcx, [rbp + 0xfff2]
call fcn.140032e70
test rax, rax
je 0x1400a2850
mov rdx, qword [rsp + 0x38]
jmp 0x1400a28ff
lea rax, [rbp + 0xfff2]
mov r9, qword [rsp + 0x58]
sub r9, rax
nop word [rax + rax]
movzx r8d, word [rax]
movzx ecx, word [rax + r9]
sub r8d, ecx
jne 0x1400a28f6
add rax, 2
test ecx, ecx
jne 0x1400a28e0
test r8d, r8d
jne 0x1400a2850
test byte [rsp + 0x30], 4
je 0x1400a2912
mov eax, dword [rbp - 0x70]
cmp dword [rbp - 0x10], eax
jne 0x1400a2850
test byte [rsp + 0x30], 0x20
je 0x1400a294b
lea rcx, [rbp + 0x101f4]
cmp dword [rdx + 0xc], 4
mov rdx, qword [rbp - 0x60]
jne 0x1400a2939
call fcn.140032e70
test rax, rax
jne 0x1400a2946
jmp 0x1400a2850
call fcn.1400c0304
test eax, eax
jne 0x1400a2850
mov rdx, qword [rsp + 0x38]
test byte [rsp + 0x30], 0x10
je 0x1400a2979
mov rcx, qword [rbp - 0x68]
test rcx, rcx
je 0x1400a2850
mov r8, rdx
mov rdx, qword [rbp - 0x18]
call fcn.1400a4e70
test rax, rax
je 0x1400a2850
mov rdx, qword [rsp + 0x38]
test byte [rsp + 0x30], 2
je 0x1400a298e
mov rax, qword [rbp - 0x78]
cmp qword [rbp - 0x18], rax
jne 0x1400a2850
mov r8, qword [rsp + 0x68]
cmp word [r8], 0
je 0x1400a2a28
mov ecx, dword [rdx + 0xc]
sub ecx, 1
je 0x1400a2a0d
sub ecx, 1
je 0x1400a29f5
cmp ecx, 2
je 0x1400a29dd
lea rax, [rbp - 0xc]
sub r8, rax
nop word [rax + rax]
movzx edx, word [rax]
movzx ecx, word [rax + r8]
sub edx, ecx
jne 0x1400a29d4
add rax, 2
test ecx, ecx
jne 0x1400a29c0
test edx, edx
jne 0x1400a2a28
jmp 0x1400a2850
mov rdx, qword [rsp + 0x68]
lea rcx, [rbp - 0xc]
call fcn.140032e70
test rax, rax
je 0x1400a2a28
jmp 0x1400a2850
mov rdx, qword [rsp + 0x68]
lea rcx, [rbp - 0xc]
call fcn.1400bc350
test rax, rax
je 0x1400a2a28
jmp 0x1400a2850
mov r8, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
lea rcx, [rbp - 0xc]
call fcn.1400cc9c4
test eax, eax
je 0x1400a2850
mov ecx, edi
cmp dword [rbp - 0x38], ecx
jle 0x1400a2a4b
mov rdx, qword [rbp - 0x40]
mov rax, qword [rdx]
cmp qword [rbp - 0x18], rax
je 0x1400a2850
inc ecx
add rdx, 8
cmp ecx, dword [rbp - 0x38]
jl 0x1400a2a33
mov rax, qword [rsp + 0x78]
cmp word [rax], 0
jne 0x1400a2a60
mov rax, qword [rbp - 0x80]
cmp word [rax], 0
je 0x1400a2a85
mov qword [rbp - 0x48], rdi
lea r8, [rsp + 0x30]
lea rdx, [0x1400a2c80]
mov rcx, qword [rbp - 0x18]
call qword [sym.imp.USER32.dll_EnumChildWindows]
cmp qword [rbp - 0x48], 0
je 0x1400a2850
mov rbx, qword [rbp - 0x18]
mov qword [rbp - 0x50], rbx
inc dword [rbp - 0x54]
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x1400a2aa5
mov rdx, rbx
call fcn.14003f810
mov rbx, qword [rbp - 0x50]
cmp qword [rbp - 0x18], 0
jne 0x1400a2ac7
jmp 0x1400a2850
lea rdx, [rsp + 0x30]
lea rcx, [0x1400a2be0]
call qword [sym.imp.USER32.dll_EnumWindows]
mov rbx, qword [rbp - 0x50]
cmp byte [rbp + 0x10440], 0
je 0x1400a2853
test rbx, rbx
je 0x1400a2853
mov qword [rsi + 0x38], rbx
jmp 0x1400a2853