Function at 0x14003157c
Capabilities:
Get graphical window text

Disassembly:
push rbx
push rbp
push rsi
push rdi
mov eax, 0x10b8
call fcn.1400d8110
sub rsp, rax
mov rax, qword [0x1401006f0]
xor rax, rsp
mov qword [rsp + 0x10a0], rax
xor eax, eax
mov rsi, r9
mov rbp, rcx
mov qword [rsp + 0x48], rcx
mov rcx, qword [rcx]
mov r9, r8
mov qword [rsp + 0x38], rdx
lea r8d, [rax + 4]
mov edx, 0x110a
mov rdi, rax
call qword [sym.imp.USER32.dll_SendMessageW]
mov rbx, rax
mov qword [rsp + 0x50], rax
xor eax, eax
cmp rbx, rax
je 0x1400317f8
mov rcx, qword [rbp]
mov word [rsp + 0xa0], ax
lea rax, [rsp + 0xa0]
lea r9, [rsp + 0x60]
xor r8d, r8d
mov edx, 0x113e
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x60], 0xd
mov qword [rsp + 0x68], rbx
mov dword [rsp + 0x80], 0x800
call qword [sym.imp.USER32.dll_SendMessageW]
mov rax, qword [rsp + 0x90]
movsxd rbp, dword [rsi]
xor r11d, r11d
mov qword [rsp + 0x40], rax
cmp rax, r11
je 0x140031662
mov rcx, qword [rax + 0x10]
lea rdx, [rsp + 0xa0]
call qword [sym.imp.SHELL32.dll_SHGetPathFromIDListW]
xor r11d, r11d
cmp eax, r11d
setne al
cmp al, r11b
je 0x14003170d
mov rax, qword [rsp + 0x40]
mov r10, qword [rsp + 0x38]
neg rax
mov edx, r11d
sbb eax, eax
movzx r8d, r11w
movzx r9d, r11w
and eax, ebp
movsxd rcx, eax
lea rax, [r10 + rbp*2]
lea rcx, [rsp + rcx*2 + 0xa0]
mov qword [rsp + 0x58], rcx
movzx ecx, word [rcx]
mov qword [rsp + 0x40], rax
movzx eax, word [rax]
mov dword [rsp + 0x34], edx
mov word [rsp + 0x30], cx
mov word [rsp + 0x32], ax
cmp cx, r11w
jne 0x1400316c5
cmp ax, r11w
je 0x140031706
cmp r8w, 0x5c
jne 0x1400316bf
cmp r9w, r8w
jmp 0x1400316c3
cmp ax, 0x5c
je 0x140031706
movzx ecx, ax
call fcn.140088488
movzx ecx, word [rsp + 0x30]
mov ebx, eax
call fcn.140088488
cmp eax, ebx
jne 0x140031708
mov edx, dword [rsp + 0x34]
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x40]
mov r8w, word [rsp + 0x30]
mov r9w, word [rsp + 0x32]
inc edx
add rcx, 2
add rax, 2
xor r11d, r11d
jmp 0x140031688
add ebp, edx
mov rbx, qword [rsp + 0x50]
cmp ebp, dword [rsi]
jle 0x140031817
mov dword [rsi], ebp
mov rdi, rbx
mov rbp, qword [rsp + 0x48]
mov rcx, qword [rbp]
mov r9, rbx
mov edx, 0x110a
mov r8d, 1
call qword [sym.imp.USER32.dll_SendMessageW]
mov rbx, rax
mov qword [rsp + 0x50], rax
xor eax, eax
cmp rbx, rax
jne 0x1400315dd
cmp rdi, rax
je 0x1400317f8
mov rcx, qword [rbp]
lea r8d, [rax + 2]
mov r9, rdi
mov edx, 0x1102
call qword [sym.imp.USER32.dll_SendMessageW]
mov bl, byte [rsp + 0x1100]
mov rcx, qword [rbp]
mov al, bl
mov r9, rdi
mov edx, 0x110b
neg al
sbb r8, r8
and r8d, 4
add r8, 5
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [rbp]
mov r9, rdi
xor r8d, r8d
mov edx, 0x1114
call qword [sym.imp.USER32.dll_SendMessageW]
movsxd r11, dword [rsi]
mov rax, qword [rsp + 0x38]
movzx ecx, word [rax + r11*2]
call fcn.140061180
test al, al
je 0x1400317da
mov rbx, qword [rsp + 0x38]
inc dword [rsi]
movsxd rax, dword [rsi]
movzx ecx, word [rbx + rax*2]
call fcn.140061180
test al, al
jne 0x1400317c1
mov bl, byte [rsp + 0x1100]
mov rdx, qword [rsp + 0x38]
mov r9, rsi
mov r8, rdi
mov rcx, rbp
mov byte [rsp + 0x20], bl
call fcn.14003157c
test rax, rax
cmovne rdi, rax
mov rax, rdi
mov rcx, qword [rsp + 0x10a0]
xor rcx, rsp
call fcn.1400c6350
add rsp, 0x10b8
pop rdi
pop rsi
pop rbp
pop rbx
ret
test byte [rsp + 0x70], 0x20
je 0x14003171a
mov rbp, qword [rsp + 0x48]
mov r9, rbx
mov edx, 0x1102
mov rcx, qword [rbp]
mov r8d, 1
call qword [sym.imp.USER32.dll_SendMessageW]
jmp 0x14003171f