Function at 0x100041778
Capabilities:
Get graphical window text

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x9b0
mov qword [rsp + 0xe0], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rax, qword [0x1000730b0]
xor rax, rsp
mov qword [rsp + 0x9a0], rax
mov r14, rcx
xor ebp, ebp
mov r15b, bpl
mov rax, qword [rcx + 0x18]
mov rcx, qword [rax + 0x20]
mov edx, SHStripMneumonicW
mov rcx, qword [rcx + 8]
call qword [sym.imp.USER32.dll_GetDlgItem]
mov qword [rsp + 0x50], rax
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + 0x20]
mov edx, SHStripMneumonicW
mov rcx, qword [rcx + 8]
call qword [sym.imp.USER32.dll_GetDlgItem]
mov qword [rsp + 0x48], rax
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + 0x20]
mov edx, reloc.SHLWAPI.dll_SHStripMneumonicW
mov rcx, qword [rcx + 8]
call qword [sym.imp.USER32.dll_GetDlgItem]
mov qword [rsp + 0x78], rax
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + 0x20]
mov edx, 0xe2
mov rcx, qword [rcx + 8]
call qword [sym.imp.USER32.dll_GetDlgItem]
mov rbx, rax
mov qword [rsp + 0x70], rax
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + 0x20]
mov edx, 0xe3
mov rcx, qword [rcx + 8]
call qword [sym.imp.USER32.dll_GetDlgItem]
mov rdi, rax
mov qword [rsp + 0x40], rax
lea esi, [rbp + 0x54]
mov r8d, esi
lea rdx, [rsp + 0xf0]
mov rcx, rbx
call qword [sym.imp.USER32.dll_GetWindowTextW]
mov rdx, rsi
lea rax, [rsp + 0xf0]
cmp word [rax], bp
je 0x100041880
add rax, 2
sub rdx, 1
jne 0x100041871
cmp rdx, rbp
je 0x100041e89
mov rax, rsi
sub rax, rdx
mov qword [rsp + 0xe8], rax
cmp rax, rbp
jbe 0x100041e89
mov ecx, 0x28
call fcn.100001f90
mov ecx, 4
lea rdx, [fcn.100014bec]
cmp rax, rbp
je 0x1000418dd
mov dword [rax], ecx
lea rsi, [rax + 8]
mov qword [rsp + 0x20], rdx
lea r9, [0x100014770]
mov r8d, ecx
lea edx, [rcx + 4]
mov rcx, rsi
call fcn.10000e0a0
jmp 0x1000418e0
mov rsi, rbp
mov r13, rbp
mov qword [rsp + 0x68], rbp
mov r12, rbp
mov qword [rsp + 0x58], rbp
mov rbx, rbp
mov qword [rsp + 0x60], rbx
or ebp, 0xffffffff
xor r9d, r9d
xor r8d, r8d
mov edx, 0x147
mov rdi, qword [rsp + 0x50]
mov rcx, rdi
call qword [sym.imp.USER32.dll_SendMessageW]
movsxd r8, eax
xor r9d, r9d
mov edx, 0x150
mov rcx, rdi
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [rax + 0x10]
mov rdx, qword [rcx]
mov rcx, rsi
call fcn.100024e08
mov rdx, rsi
mov rcx, qword [0x100073278]
call fcn.100052a58
xor r9d, r9d
xor r8d, r8d
mov edx, 0x147
mov rdi, qword [rsp + 0x48]
mov rcx, rdi
call qword [sym.imp.USER32.dll_SendMessageW]
movsxd r8, eax
xor r9d, r9d
mov edx, 0x150
mov rcx, rdi
call qword [sym.imp.USER32.dll_SendMessageW]
lea rcx, [rsi + 8]
mov rdx, qword [rax]
call fcn.100024e08
xor r9d, r9d
xor r8d, r8d
mov edx, 0x147
mov rdi, qword [rsp + 0x78]
mov rcx, rdi
call qword [sym.imp.USER32.dll_SendMessageW]
movsxd r8, eax
xor r9d, r9d
mov edx, 0x150
mov rcx, rdi
call qword [sym.imp.USER32.dll_SendMessageW]
lea rcx, [rsi + 0x10]
mov rdx, qword [rax]
call fcn.100024e08
lea edi, [rbp + 0x55]
mov r8d, edi
lea rdx, [rsp + 0xf0]
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.USER32.dll_GetWindowTextW]
mov rdx, rdi
lea rcx, [rsp + 0xf0]
call fcn.100043bc4
xor edi, edi
cmp eax, edi
je 0x100041cda
lea edx, [rbp + 0x55]
lea r9d, [rbp + 0x11]
lea r8d, [rbp + 5]
lea rcx, [rsp + 0xf0]
call fcn.100003a78
mov ebp, eax
mov dword [rsp + 0x48], eax
cmp eax, edi
jne 0x100041cda
xor eax, eax
or r12, 0xffffffffffffffff
mov rcx, r12
lea rdi, [rsp + 0xf0]
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rdx, [rsp + 0xf0]
lea rcx, [rsi + 0x18]
call fcn.100022360
lea rdx, str.convert
lea rcx, [rsp + 0x50]
call fcn.100022450
nop
mov rcx, qword [r14 + 0x20]
call fcn.10000e11c
mov rcx, rax
lea r9d, [r12 + 5]
mov r8, rsi
lea rdx, [rsp + 0x50]
call fcn.100040524
mov rbx, rax
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, r12d
xor edi, edi
cmp eax, edi
jg 0x100041a93
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
cmp rbx, rdi
je 0x100041cc7
xor ecx, ecx
call qword [sym.imp.KERNEL32.DLL_GetModuleHandleW]
lea rcx, [0x100063990]
mov qword [rsp + 0xa8], rcx
mov dword [rsp + 0xb0], 1
mov dword [rsp + 0xb4], 0x10
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xd0], rax
mov dword [rsp + 0xd8], edi
mov rax, qword [rbx]
sub rax, 0x18
cmp dword [rax + 0x10], 1
jle 0x100041b00
mov edx, dword [rax + 8]
mov rcx, rbx
call fcn.10002229c
mov rdi, qword [rbx]
xor ebp, ebp
cmp rdi, rbp
je 0x100041c03
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + 0x10]
mov rax, qword [rcx + 8]
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x78], rax
mov rdx, rbp
cmp word [rdi], bp
je 0x100041b56
mov rcx, rdi
cmp word [rcx], 0x2e
jne 0x100041b4a
movzx eax, word [0x1000747d0]
mov word [rcx], ax
inc rdx
lea rcx, [rdi + rdx*2]
cmp word [rcx], bp
jne 0x100041b3a
lea rcx, [rsp + 0x78]
call fcn.100004848
mov byte [rsp + 0x30], 1
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x68]
mov rdx, rdi
lea rcx, [rsp + 0xa8]
call fcn.100026278
mov ebp, eax
lea rcx, [rsp + 0x78]
call fcn.100004970
mov r11, qword [rbx]
xor edi, edi
cmp r11, rdi
jne 0x100041bad
mov ecx, edi
jmp 0x100041bc4
xor eax, eax
mov rcx, r12
mov rdi, r11
repne scasw ax, word [rdi]
not rcx
dec rcx
xor edi, edi
cmp ecx, edi
jl 0x100041bf8
cmp ecx, dword [r11 - 0xc]
jg 0x100041bf8
mov dword [r11 - 0x10], ecx
movsxd rcx, ecx
mov rax, qword [rbx]
mov word [rax + rcx*2], di
cmp ebp, 1
jne 0x100041c05
mov rdx, qword [rsp + 0x58]
mov r14, qword [rsp + 0x40]
mov rcx, r14
call qword [sym.imp.USER32.dll_SetWindowTextW]
mov r15b, bpl
jmp 0x100041c7a
mov ecx, 0x80070057
call fcn.10003dc70
int3
xor edi, edi
cmp dword [0x1000747b4], edi
je 0x100041c75
mov al, byte [0x1000747b8]
cmp al, 2
jae 0x100041c1c
cmp al, dil
jne 0x100041c67
movabs rdx, 0x4000000000010000
test qword [0x1000747a0], rdx
je 0x100041c6e
mov rcx, qword [0x1000747a8]
mov rax, rcx
and rax, rdx
cmp rax, rcx
jne 0x100041c60
mov r8, qword [rsp + 0x60]
lea rdx, [0x100064c68]
mov rcx, qword [0x100073280]
call fcn.100040808
mov r14, qword [rsp + 0x40]
jmp 0x100041c7a
mov r14, qword [rsp + 0x40]
jmp 0x100041c7a
mov r14, qword [rsp + 0x40]
jmp 0x100041c7a
mov r14, qword [rsp + 0x40]
jmp 0x100041c7a
mov r14, qword [rsp + 0x40]
mov rdx, qword [rbx]
sub rdx, 0x18
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, r12d
cmp eax, edi
jg 0x100041c99
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rcx, rbx
call sub.msvcrt.dll_free
nop
lea rcx, [rsp + 0xa8]
call fcn.1000269b8
mov r13, qword [rsp + 0x68]
mov r12, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
mov ebp, dword [rsp + 0x48]
jmp 0x100041d51
mov r13, qword [rsp + 0x68]
mov r12, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
mov ebp, dword [rsp + 0x48]
cmp dword [0x1000747b4], edi
je 0x100041d4c
mov al, byte [0x1000747b8]
cmp al, 2
jae 0x100041cf1
cmp al, dil
jne 0x100041d3e
movabs rdx, 0x4000000000010000
test qword [0x1000747a0], rdx
je 0x100041d45
mov rcx, qword [0x1000747a8]
mov rax, rcx
and rax, rdx
cmp rax, rcx
jne 0x100041d37
lea r8, str.Failed_to_get_expression_from_TemplateManager
lea rdx, [0x100064c68]
mov rcx, qword [0x100073280]
call fcn.100040808
mov r14, qword [rsp + 0x40]
jmp 0x100041d51
mov r14, qword [rsp + 0x40]
jmp 0x100041d51
mov r14, qword [rsp + 0x40]
jmp 0x100041d51
mov r14, qword [rsp + 0x40]
jmp 0x100041d51
mov r14, qword [rsp + 0x40]
cmp rsi, rdi
je 0x100041d79
lea r9, [fcn.100014bec]
mov r8d, dword [rsi - 8]
mov edx, 8
mov rcx, rsi
call fcn.1000249ec
lea rcx, [rsi - 8]
call sub.msvcrt.dll_free
xor edi, edi
cmp r15b, dil
jne 0x100041e47
mov dword [rsp + 0x88], 0x20
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0x98], rdi
mov dword [rsp + 0xa0], 5
cmp rbx, rdi
je 0x100041dbe
mov rdx, rbx
mov rcx, r14
call qword [sym.imp.USER32.dll_SetWindowTextW]
jmp 0x100041e5d
lea rdx, [0x100062c88]
mov rcx, r14
call qword [sym.imp.USER32.dll_SetWindowTextW]
cmp ebp, 0x77
jne 0x100041df6
xor ecx, ecx
call qword [sym.imp.KERNEL32.DLL_GetModuleHandleW]
mov rcx, rax
mov r9d, 0x400
lea r8, [rsp + 0x1a0]
mov edx, ebp
call qword [sym.imp.USER32.dll_LoadStringW]
jmp 0x100041e1a
xor ecx, ecx
call qword [sym.imp.KERNEL32.DLL_GetModuleHandleW]
mov rcx, rax
mov r9d, 0x400
lea r8, [rsp + 0x1a0]
mov edx, 0x334
call qword [sym.imp.USER32.dll_LoadStringW]
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x98], rax
lea r9, [rsp + 0x88]
xor r8d, r8d
mov edx, 0x1503
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.USER32.dll_SendMessageW]
jmp 0x100041e5d
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1504
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.USER32.dll_SendMessageW]
cmp r13, rdi
je 0x100041e6b
mov rcx, r13
call qword [sym.imp.msvcrt.dll_free]
cmp r12, rdi
je 0x100041e79
mov rcx, r12
call qword [sym.imp.msvcrt.dll_free]
cmp rbx, rdi
je 0x100041e9c
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_free]
jmp 0x100041e9c
lea rdx, [0x100062c88]
mov rcx, rdi
call qword [sym.imp.USER32.dll_SetWindowTextW]
mov r15b, 1
mov al, r15b
mov rcx, qword [rsp + 0x9a0]
xor rcx, rsp
call fcn.100001c30
lea r11, [rsp + 0x9b0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret