Function at 0x18015f900
Capabilities:
Get graphical window text

Disassembly:
push rbp
push rbx
push rsi
push rdi
lea rbp, [rsp - 0x37]
sub rsp, 0xa8
mov rax, qword [0x1803fc9f0]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov rbx, qword [rbp + 0x7f]
mov rax, rdx
mov qword [rbp - 0x31], rcx
mov edx, 5
mov rcx, rax
mov qword [rbp - 0x39], r9
mov rdi, r8
mov qword [rbp - 0x41], r8
call qword [sym.imp.USER32.dll_GetWindow]
mov rsi, rax
test rax, rax
je 0x18015fe19
nop
mov rcx, rsi
call qword [sym.imp.USER32.dll_IsWindowEnabled]
test eax, eax
je 0x18015fdff
mov rcx, rsi
call qword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x18015fdff
mov r9, qword [rbp - 0x39]
mov r8, rdi
mov rcx, qword [rbp - 0x31]
mov rdx, rsi
mov qword [rsp + 0x20], rbx
call fcn.18015f900
mov edx, 0xfffffff0
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetWindowLongA]
mov r8d, 0x40
lea rdx, [rbp - 0x21]
mov edi, eax
mov rcx, rsi
and edi, 0xf
call qword [sym.imp.USER32.dll_GetClassNameA]
lea rdx, [0x180031cd8]
lea rcx, [rbp - 0x21]
call fcn.1802d57c0
test eax, eax
jne 0x18015fa52
lea r8d, [rax + 0x40]
mov rcx, rsi
lea rdx, [rbp - 0x21]
call qword [sym.imp.USER32.dll_GetWindowTextA]
lea rcx, [rbp - 0x21]
or rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x18015f9e1
mov rdi, qword [rbp - 0x41]
cmp rax, 2
jbe 0x18015fdff
cmp byte [rdi], 0
je 0x18015fa13
mov r8, qword [rbp - 0x39]
lea rdx, [0x180031a9c]
dec r8
mov rcx, rdi
call fcn.1802d8100
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], 0
jne 0x18015fa17
mov rdx, qword [rbp - 0x39]
lea rcx, [rdx - 1]
cmp rax, rcx
jae 0x18015fe19
mov r8d, edx
mov rcx, rsi
sub r8d, eax
lea rdx, [rdi + rax]
call qword [sym.imp.USER32.dll_GetWindowTextA]
mov rax, qword [rbp - 0x39]
mov byte [rax + rdi - 1], 0
jmp 0x18015fdff
lea rdx, [0x180031b9c]
lea rcx, [rbp - 0x21]
call fcn.1802d57c0
test eax, eax
jne 0x18015fc34
cmp edi, 9
je 0x18015fb5a
cmp edi, 4
je 0x18015fb5a
cmp edi, 7
jne 0x18015fdfb
lea r8d, [rax + 0x40]
mov rcx, rsi
lea rdx, [rbp - 0x21]
call qword [sym.imp.USER32.dll_GetWindowTextA]
lea r8d, [rdi + 9]
lea rdx, [0x180031d10]
lea rcx, [rbp - 0x21]
call fcn.1802d82e0
test eax, eax
jne 0x18015fdfb
lea rdx, [0x180031d24]
lea rcx, [rbp - 0x21]
call fcn.1802b1c80
test rax, rax
je 0x18015fad2
mov dword [rbx], 1
jmp 0x18015fdfb
lea rdx, [0x180031d38]
lea rcx, [rbp - 0x21]
call fcn.1802b1c80
test rax, rax
je 0x18015faf2
mov dword [rbx], 3
jmp 0x18015fdfb
lea rdx, [0x180031d44]
lea rcx, [rbp - 0x21]
call fcn.1802b1c80
test rax, rax
je 0x18015fb12
mov dword [rbx], 4
jmp 0x18015fdfb
lea rdx, [0x180031d4c]
lea rcx, [rbp - 0x21]
call fcn.1802b1c80
test rax, rax
je 0x18015fb32
mov dword [rbx], 5
jmp 0x18015fdfb
lea rdx, [0x180031d54]
lea rcx, [rbp - 0x21]
call fcn.1802b1c80
mov rdi, qword [rbp - 0x41]
test rax, rax
je 0x18015fdff
mov dword [rbx], 6
jmp 0x18015fdff
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf0
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageA]
cmp rax, 1
jne 0x18015fdfb
lea r8d, [rax + 0x3f]
mov rcx, rsi
lea rdx, [rbp - 0x21]
call qword [sym.imp.USER32.dll_GetWindowTextA]
lea rdx, [rbp - 0x21]
mov cl, 0x26
call fcn.1802b1af0
mov r8d, 5
lea rdx, [0x180031c1c]
lea rcx, [rbp - 0x21]
call fcn.1802d82e0
test eax, eax
jne 0x18015fbb9
mov dword [rbx], 1
jmp 0x18015fdfb
mov r8d, 8
lea rdx, [0x180031ce0]
lea rcx, [rbp - 0x21]
call fcn.1802d82e0
test eax, eax
jne 0x18015fbde
mov dword [rbx], 3
jmp 0x18015fdfb
mov r8d, 5
lea rdx, [0x180031cec]
lea rcx, [rbp - 0x21]
call fcn.1802d82e0
test eax, eax
jne 0x18015fc03
mov dword [rbx], 4
jmp 0x18015fdfb
mov r8d, 4
lea rdx, [0x180031cf4]
lea rcx, [rbp - 0x21]
call fcn.1802d82e0
test eax, eax
jne 0x18015fc28
mov dword [rbx], 5
jmp 0x18015fdfb
lea rdx, [0x180031cfc]
jmp 0x18015fcff
lea rdx, [0x180031d60]
lea rcx, [rbp - 0x21]
call fcn.1802d57c0
test eax, eax
jne 0x18015fd25
cmp edi, 3
jne 0x18015fdfb
lea r8d, [rax + 0x40]
mov rcx, rsi
lea rdx, [rbp - 0x21]
call qword [sym.imp.USER32.dll_GetWindowTextA]
lea r8d, [rdi + 2]
lea rdx, [0x180031d6c]
lea rcx, [rbp - 0x21]
call fcn.1802d82e0
test eax, eax
jne 0x18015fc89
mov dword [rbx], 1
jmp 0x18015fdfb
mov r8d, 8
lea rdx, [0x180031d78]
lea rcx, [rbp - 0x21]
call fcn.1802d82e0
test eax, eax
jne 0x18015fcae
mov dword [rbx], 3
jmp 0x18015fdfb
mov r8d, 5
lea rdx, [0x180031d84]
lea rcx, [rbp - 0x21]
call fcn.1802d82e0
test eax, eax
jne 0x18015fcd3
mov dword [rbx], 4
jmp 0x18015fdfb
mov r8d, 4
lea rdx, [0x180031d8c]
lea rcx, [rbp - 0x21]
call fcn.1802d82e0
test eax, eax
jne 0x18015fcf8
mov dword [rbx], 5
jmp 0x18015fdfb
lea rdx, [0x180031d94]
mov r8d, 5
lea rcx, [rbp - 0x21]
call fcn.1802d82e0
mov rdi, qword [rbp - 0x41]
test eax, eax
jne 0x18015fdff
mov dword [rbx], 6
jmp 0x18015fdff
lea rdx, [0x180031bbc]
lea rcx, [rbp - 0x21]
call fcn.1802d57c0
test eax, eax
jne 0x18015fdfb
lea r8d, [rax + 0x40]
mov rcx, rsi
lea rdx, [rbp - 0x21]
call qword [sym.imp.USER32.dll_GetWindowTextA]
mov r8d, recv
lea rdx, [0x180031da8]
lea rcx, [rbp - 0x21]
call fcn.1802d82e0
test eax, eax
jne 0x18015fdfb
lea rdx, [0x180031db4]
lea rcx, [rbp - 0x21]
call fcn.1802b1c80
test rax, rax
je 0x18015fd89
mov dword [rbx], 1
jmp 0x18015fdfb
lea rdx, [0x180031dc0]
lea rcx, [rbp - 0x21]
call fcn.1802b1c80
test rax, rax
je 0x18015fda6
mov dword [rbx], 3
jmp 0x18015fdfb
lea rdx, [0x180031dcc]
lea rcx, [rbp - 0x21]
call fcn.1802b1c80
test rax, rax
je 0x18015fdc3
mov dword [rbx], 4
jmp 0x18015fdfb
lea rdx, [0x180031dd4]
lea rcx, [rbp - 0x21]
call fcn.1802b1c80
test rax, rax
je 0x18015fde0
mov dword [rbx], 5
jmp 0x18015fdfb
lea rdx, [0x180031ddc]
lea rcx, [rbp - 0x21]
call fcn.1802b1c80
test rax, rax
je 0x18015fdfb
mov dword [rbx], 6
mov rdi, qword [rbp - 0x41]
mov edx, 2
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetWindow]
mov rsi, rax
test rax, rax
jne 0x18015f950
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.1802b85a0
add rsp, 0xa8
pop rdi
pop rsi
pop rbx
pop rbp
ret