Function at 0x108ef60
Capabilities:
Get graphical window text

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
sub rsp, 0x60
xor r12d, r12d
test dl, 4
mov esi, edx
mov rdi, rcx
mov r13d, 1
je 0x108f0be
bt edx, 0x1c
jb 0x108f0be
mov eax, dword [0x010e536c]
bt edx, 0xa
cmovb eax, r13d
cmp eax, r12d
mov dword [0x010e536c], eax
jne 0x108f040
mov eax, dword [0x010e5364]
bt edx, 9
cmovb eax, r13d
mov dword [0x010e5364], eax
call fcn.010a2d58
mov ecx, dword [0x010e5364]
cmp eax, r12d
lea ebp, [r13 + 0x1c]
lea rdx, [0x0108bf18]
cmove ecx, r13d
mov dword [0x010e5364], ecx
mov ecx, ebp
call fcn.01091f4c
lea rcx, [0x0108bf50]
xor edx, edx
call fcn.010a2a38
mov ecx, ebp
cmp eax, r12d
mov ebx, eax
je 0x108f019
lea rdx, [0x0108bf90]
call fcn.01091f4c
jmp 0x108f02c
lea rdx, [0x0108bfe0]
call fcn.01091f4c
call fcn.010a1e74
mov ebx, eax
cmp ebx, r12d
mov eax, dword [0x010e536c]
jne 0x108f05e
mov dword [0x010e5368], r13d
jmp 0x108f05e
mov ecx, 8
mov dword [0x010e5298], r12d
mov dword [0x010e529c], ecx
mov dword [0x010e52a0], ecx
mov dword [0x010e52a4], ecx
cmp eax, r12d
jne 0x108f075
cmp dword [0x010e5364], r12d
jne 0x108f075
cmp dword [0x010e5368], r12d
je 0x108f0be
lea r9, [0x01084430]
xor r8d, r8d
mov edx, r13d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov rcx, rax
mov qword [0x010e4ca8], rax
call qword [sym.imp.KERNEL32.dll_ResetEvent]
lea r8, [0x01090c08]
xor r9d, r9d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], r12d
call fcn.010a7078
mov qword [0x010e5348], rax
mov qword [0x010e4d78], rdi
call fcn.0108fbf0
cmp eax, 4
jl 0x108f157
lea rcx, [0x010824d0]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
cmp rax, r12
mov qword [0x010e52e8], rax
jne 0x108f108
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, [0x010824e0]
mov r8d, eax
xor ecx, ecx
call fcn.01091f4c
jmp 0x108f3c7
lea rdx, [0x01082528]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x010e52e8]
lea rdx, [0x01082548]
mov qword [0x010e52d8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp rax, r12
mov qword [0x010e52e0], rax
je 0x108f148
cmp qword [0x010e52d8], r12
jne 0x108f157
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, [0x01082570]
jmp 0x108f0f9
mov ecx, 0x220
call fcn.010a687c
cmp rax, r12
je 0x108f180
mov qword [rax], r12
mov qword [rax + 8], r12
mov dword [rax + 0x218], 5
mov qword [0x010e5308], rax
jmp 0x108f187
mov qword [0x010e5308], r12
mov ecx, 0x138
call fcn.010a687c
cmp rax, r12
je 0x108f1a0
mov rcx, rax
call fcn.0109dd90
jmp 0x108f1a3
mov rax, r12
cmp qword [0x010e5308], r12
mov qword [0x010e5310], rax
je 0x108f3b9
cmp rax, r12
je 0x108f3b9
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x40], r12
mov eax, 0x80000000
mov dword [rsp + 0x38], r12d
mov dword [rsp + 0x30], eax
lea r8, [0x010e4d80]
lea rdx, [0x010e4cb0]
mov r9d, 0xcf0000
xor ecx, ecx
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_CreateWindowExW]
cmp rax, r12
mov rbp, rax
je 0x108f3c7
cmp dword [0x010e52f4], r12d
je 0x108f2c6
mov ecx, 0xd8
call fcn.010a687c
cmp rax, r12
mov rdi, rax
je 0x108f29e
lea rax, [0x0108da38]
lea rcx, [rdi + 0x58]
mov qword [rdi], rax
lea rax, [0x0108da70]
mov qword [rdi + 8], rax
call fcn.010a5424
mov qword [rdi + 0x68], r12
mov qword [rdi + 0x60], rax
lea rcx, [rdi + 0x88]
mov qword [rdi + 0x70], r12
mov qword [rdi + 0x78], r12
call fcn.01099cd0
mov qword [rdi + 0x98], r12
mov qword [rdi + 0x90], rax
lea rcx, [rdi + 0xa0]
mov qword [rdi + 0xc8], rbp
mov dword [rdi + 0xd0], r12d
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov qword [0x010e5320], rdi
jmp 0x108f2a8
mov rdi, r12
mov qword [0x010e5320], r12
cmp rdi, r12
jne 0x108f2bd
lea rdx, [0x01082608]
xor ecx, ecx
call fcn.01091f4c
jmp 0x108f2c6
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
mov rbx, qword [0x010e5308]
mov rcx, rbp
mov qword [rbx], rbp
call qword [sym.imp.USER32.dll_IsWindow]
cmp eax, r12d
je 0x108f332
mov rcx, qword [rbx]
call qword [sym.imp.USER32.dll_GetWindowTextLengthW]
lea edi, [rax + 1]
mov eax, 2
mov ecx, edi
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.010a691c
cmp rax, r12
mov qword [rbx + 8], rax
je 0x108f31f
mov rcx, qword [rbx]
mov r8d, edi
mov rdx, rax
call qword [sym.imp.USER32.dll_GetWindowTextW]
mov rcx, qword [rbx]
lea rdx, [rbx + 0x10]
mov r8d, 0x104
call qword [sym.imp.USER32.dll_GetClassNameW]
mov rbx, qword [0x010e5310]
cmp qword [rbx + 0x20], r12
jne 0x108f360
mov rcx, rbp
call qword [sym.imp.USER32.dll_IsWindow]
cmp eax, r12d
je 0x108f359
mov rcx, rbx
mov qword [rbx + 0x20], rbp
call fcn.0109f6b4
mov rbx, qword [0x010e5310]
mov r8, r13
mov edx, 0x8006
mov rcx, rbx
call fcn.0109e074
cmp dword [0x010e5380], r12d
je 0x108f385
mov rcx, qword [0x010e5310]
call fcn.0109fccc
test r13b, sil
je 0x108f396
mov rcx, qword [0x010e5308]
call fcn.010a17a4
mov rcx, rbp
call fcn.01091454
and esi, 0x1000000
mov rcx, rbp
neg esi
sbb edx, edx
and edx, 5
call qword [sym.imp.USER32.dll_ShowWindow]
mov eax, r13d
jmp 0x108f3c9
lea rdx, [0x01082608]
xor ecx, ecx
call fcn.01091f4c
xor eax, eax
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r13
pop r12
pop rdi
ret