Function at 0x140081a20
Capabilities:
Get graphical window text

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x600]
sub rsp, 0x700
mov qword [rbp - 0x38], 0xfffffffffffffffe
mov qword [rsp + 0x748], rbx
mov rdi, rdx
mov r15, rcx
xor esi, esi
mov r14d, esi
mov dword [rbp + 0x650], esi
mov dword [rbp + 0x658], esi
mov dword [rsp + 0x30], esi
lea rdx, [rsp + 0x30]
mov rcx, rdi
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
cmp dword [rsp + 0x30], esi
jne 0x140081a85
xor eax, eax
jmp 0x140082ed1
mov rcx, rdi
call fcn.1400847f0
test eax, eax
je 0x140081ab5
mov ecx, 0xff
call fcn.140064b80
test al, al
jne 0x140081ab5
call fcn.14008afe0
test al, al
jne 0x140081ab5
mov dword [r15 + 0x70c], 1
jmp 0x140081abc
mov dword [r15 + 0x70c], esi
call fcn.140004e20
mov rdx, rax
mov ecx, esi
test rax, rax
setne cl
test ecx, ecx
jne 0x140081adb
mov ecx, 0x80004005
call fcn.140007d40
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x28], rax
call fcn.140004e20
mov rdx, rax
mov ecx, esi
test rax, rax
setne cl
test ecx, ecx
jne 0x140081b0c
mov ecx, 0x80004005
call fcn.140007d40
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x38], rax
or r12, 0xffffffffffffffff
cmp dword [r15 + 0x70c], 0
je 0x140081c3b
mov r8, rdi
lea rdx, [rbp - 0x50]
mov rcx, r15
call fcn.1400868b0
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x28]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x140081b99
cmp dword [rbx + 0x10], 0
jl 0x140081b8a
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140081b8a
call fcn.140007d60
mov rsi, rax
lock add dword [rbx + 0x10], r12d
jg 0x140081b7f
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rsi + 0x18]
mov qword [rsp + 0x28], rax
jmp 0x140081b99
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x28]
call fcn.140008830
nop
mov rdx, qword [rbp - 0x50]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140081bb1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r8, rdi
lea rdx, [rbp - 0x48]
mov rcx, r15
call fcn.140086aa0
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x38]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x140081c1a
cmp dword [rbx + 0x10], 0
jl 0x140081c0b
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140081c0b
call fcn.140007d60
mov rsi, rax
lock add dword [rbx + 0x10], 0xffffffff
jg 0x140081c00
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rsi + 0x18]
mov qword [rsp + 0x38], rax
jmp 0x140081c1a
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x38]
call fcn.140008830
nop
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140081c32
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor esi, esi
mov r14d, dword [rbp + 0x650]
mov r8d, 0x104
lea rdx, [rbp - 0x30]
mov rcx, rdi
call qword [sym.imp.USER32.dll_GetClassNameW]
lea rdx, [rbp - 0x30]
lea r8, str.SynShapedFrameWindowClass
mov rcx, rsi
nop dword [rax]
movzx eax, word [rdx + rcx*2]
cmp ax, word [r8 + rcx*2]
jne 0x140081c84
movzx eax, word [rdx + rcx*2 + 2]
cmp ax, word [r8 + rcx*2 + 2]
jne 0x140081c84
add rcx, 2
cmp rcx, 0x1a
jne 0x140081c60
jmp 0x140081cb4
lea rdx, [rbp - 0x30]
lea r8, str.SynTrackCursorWindowClass
mov rcx, rsi
movzx eax, word [rdx + rcx*2]
cmp ax, word [r8 + rcx*2]
jne 0x140081cbd
movzx eax, word [rdx + rcx*2 + 2]
cmp ax, word [r8 + rcx*2 + 2]
jne 0x140081cbd
add rcx, 2
cmp rcx, 0x1a
jne 0x140081c92
or r15d, 0xffffffff
jmp 0x140082e91
call fcn.140004e20
mov rdx, rax
mov ecx, esi
test rax, rax
setne cl
test ecx, ecx
jne 0x140081cdc
mov ecx, 0x80004005
call fcn.140007d40
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x20], rax
mov r8d, 0x104
lea rdx, [rbp + 0x3f0]
mov ecx, dword [rsp + 0x30]
call fcn.140101fc0
test eax, eax
je 0x140081d30
lea rcx, [rbp + 0x3f0]
mov rax, r12
inc rax
cmp word [rcx + rax*2], 0
jne 0x140081d12
mov r8d, eax
lea rdx, [rbp + 0x3f0]
lea rcx, [rsp + 0x20]
call fcn.140008830
call fcn.140004e20
mov rdx, rax
mov ecx, esi
test rax, rax
setne cl
test ecx, ecx
jne 0x140081d4f
mov ecx, 0x80004005
call fcn.140007d40
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x50], rax
mov r8d, 0x104
lea rdx, [rbp + 0x1e0]
mov rcx, rdi
call qword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
je 0x140081da3
lea rcx, [rbp + 0x1e0]
mov rax, r12
inc rax
cmp word [rcx + rax*2], 0
jne 0x140081d85
mov r8d, eax
lea rdx, [rbp + 0x1e0]
lea rcx, [rsp + 0x50]
call fcn.140008830
mov r13, qword [rsp + 0x28]
cmp dword [r13 - 0x10], 0
jne 0x140081e0e
mov rax, qword [rsp + 0x20]
cmp dword [rax - 0x10], 0
jne 0x140081e0e
mov rax, qword [rsp + 0x50]
cmp dword [rax - 0x10], 0
jne 0x140081e0e
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, rax
mov r8d, 0x104
lea rdx, [rbp + 0x1e0]
call qword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
je 0x140081e0e
lea rcx, [rbp + 0x1e0]
mov rax, r12
nop
inc rax
cmp word [rcx + rax*2], 0
jne 0x140081df0
mov r8d, eax
lea rdx, [rbp + 0x1e0]
lea rcx, [rsp + 0x50]
call fcn.140008830
mov rax, qword [rsp + 0x38]
mov r12d, dword [rax - 0x10]
test r12d, r12d
je 0x1400820f3
mov eax, dword [r13 - 0x10]
test eax, eax
je 0x1400820f3
sub r12d, eax
lea r8d, [r12 - 0xf]
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x38]
call fcn.140018630
nop
mov rdi, qword [r15 + 0x60]
cmp rdi, qword [r15 + 0x68]
je 0x1400820be
mov rax, qword [rbp + 0x640]
nop dword [rax + rax]
mov r15, qword [rdi]
test r15, r15
je 0x140082099
mov rbx, qword [r15 + 0x90]
cmp rbx, qword [r15 + 0x98]
je 0x140082099
mov r8d, dword [r13 - 0x10]
lea rdx, [rbp - 0x40]
mov rcx, rbx
call fcn.140018510
nop
or r14d, 1
mov dword [rbp + 0x650], r14d
mov rdx, qword [rsp + 0x28]
mov rcx, qword [rax]
call fcn.140111cac
test eax, eax
jne 0x140081efc
lea r8d, [r12 - 0xf]
lea rdx, [rbp - 0x58]
mov rcx, rbx
call fcn.140018630
nop
or r14d, 2
mov dword [rbp + 0x650], r14d
mov ecx, esi
mov rdx, qword [rbp - 0x60]
test rdx, rdx
setne cl
test ecx, ecx
je 0x1400820a8
mov rcx, qword [rax]
call fcn.140111cac
test eax, eax
jne 0x140081efc
test dword [r15 + 0xec], 0x100
je 0x140081efc
mov sil, 1
jmp 0x140081eff
xor sil, sil
test r14b, 2
je 0x140081f2f
and r14d, 0xfffffffd
mov dword [rbp + 0x650], r14d
mov rdx, qword [rbp - 0x58]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140081f28
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r14d, dword [rbp + 0x650]
test r14b, 1
je 0x140081f5f
and r14d, 0xfffffffe
mov dword [rbp + 0x650], r14d
mov rdx, qword [rbp - 0x40]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140081f58
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r14d, dword [rbp + 0x650]
test sil, sil
jne 0x140081f7f
add rbx, 8
cmp rbx, qword [r15 + 0x98]
mov esi, 0
jne 0x140081e80
jmp 0x140082092
mov eax, dword [r15 + 8]
mov dword [rbp + 0x658], eax
lea rcx, [r15 + 0xa8]
mov rdx, rbx
call fcn.140007bb0
lea r14, [0x140150af4]
mov rdx, r14
cmp dword [r13 - 0x10], 0
cmovne rdx, qword [rsp + 0x28]
lea rcx, [r15 + 0x88]
call fcn.140007c40
mov rax, qword [rsp + 0x20]
mov rdx, r14
cmp dword [rax - 0x10], 0
cmovne rdx, rax
lea rcx, [r15 + 0xd8]
call fcn.140007c40
call fcn.140004e20
xor esi, esi
mov ecx, esi
test rax, rax
setne cl
test ecx, ecx
je 0x1400820b3
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
lea rbx, [rax + 0x18]
mov qword [rbp - 0x80], rbx
lea rcx, [rbp - 0x30]
lea rax, [rbp - 0x30]
test rax, 0xffffffffffff0000
jne 0x140082033
movzx esi, cx
xor edx, edx
mov ecx, esi
call fcn.140007c90
test rax, rax
je 0x140082060
mov r8d, esi
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.140008550
mov rbx, qword [rbp - 0x80]
jmp 0x140082060
lea rcx, [rbp - 0x30]
or rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x140082040
mov r8d, eax
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x80]
call fcn.140008830
mov rbx, qword [rbp - 0x80]
jmp 0x140082062
xor esi, esi
mov rdx, r14
cmp dword [rbx - 0x10], 0
cmovne rdx, rbx
lea rcx, [r15 + 0x28]
call fcn.140007c40
nop
lea rdx, [rbx - 0x18]
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14008208b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r14d, dword [rbp + 0x650]
mov rax, qword [rbp + 0x640]
add rdi, 8
cmp rdi, qword [rax + 0x68]
je 0x1400820be
jmp 0x140081e60
mov ecx, 0x80004005
call fcn.140007d40
nop
mov ecx, 0x80004005
call fcn.140007d40
nop
mov rdx, qword [rbp - 0x60]
add rdx, 0xffffffffffffffe8
or r12, 0xffffffffffffffff
lock add dword [rdx + 0x10], r12d
jg 0x1400820da
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r15d, dword [rbp + 0x658]
test r15d, r15d
jne 0x140082e59
mov r14d, dword [rbp + 0x650]
jmp 0x1400820fe
mov r15d, dword [rbp + 0x658]
or r12, 0xffffffffffffffff
cmp dword [r13 - 0x10], 0
mov r13, qword [rbp + 0x640]
je 0x1400822d6
mov rdi, qword [r13 + 0x60]
cmp rdi, qword [r13 + 0x68]
je 0x1400822d6
nop
mov rsi, qword [rdi]
test rsi, rsi
je 0x1400822ac
mov rbx, qword [rsi + 0x70]
cmp rbx, qword [rsi + 0x78]
je 0x1400822ac
mov rdx, qword [rsp + 0x28]
mov rcx, qword [rbx]
call fcn.140111cac
test eax, eax
jne 0x140082190
mov eax, dword [rsi + 0xec]
test al, 0x20
je 0x140082190
test al, 2
je 0x140082171
xor ecx, ecx
call fcn.1401023d0
cmp eax, 0xb
jl 0x140082171
cmp dword [r13 + 0x70c], 0
jne 0x140082196
jmp 0x140082190
test byte [rsi + 0xec], 4
je 0x140082196
xor ecx, ecx
call fcn.1401023d0
cmp eax, 0xb
jl 0x140082196
cmp dword [r13 + 0x70c], 0
je 0x140082196
add rbx, 8
jmp 0x140082130
mov r15d, dword [rsi + 8]
mov dword [rbp + 0x658], r15d
lea rcx, [rsi + 0x88]
mov rdx, rbx
call fcn.140007bb0
mov rax, qword [rsp + 0x20]
lea rcx, [rsi + 0xd8]
cmp dword [rax - 0x10], 0
lea rdx, [0x140150af4]
je 0x1400821cc
mov rdx, rax
mov rax, r12
nop
inc rax
cmp word [rdx + rax*2], 0
jne 0x1400821d0
mov r8d, eax
call fcn.140008830
call fcn.140004e20
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x1400822bb
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x68], rbx
lea rcx, [rbp - 0x30]
lea rax, [rbp - 0x30]
test rax, 0xffffffffffff0000
jne 0x14008223e
movzx r14d, cx
xor edx, edx
mov ecx, r14d
call fcn.140007c90
test rax, rax
je 0x140082265
mov r8d, r14d
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.140008550
jmp 0x140082260
lea rcx, [rbp - 0x30]
mov rax, r12
inc rax
cmp word [rcx + rax*2], 0
jne 0x140082245
mov r8d, eax
lea rdx, [rbp - 0x30]
lea rcx, [rsp + 0x68]
call fcn.140008830
mov rbx, qword [rsp + 0x68]
lea rcx, [rsi + 0x28]
cmp dword [rbx - 0x10], 0
lea rdx, [0x140150af4]
je 0x140082279
mov rdx, rbx
mov rax, r12
nop dword [rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x140082280
mov r8d, eax
call fcn.140008830
nop
lea rdx, [rbx - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
jg 0x1400822ac
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
add rdi, 8
cmp rdi, qword [r13 + 0x68]
je 0x1400822c6
jmp 0x140082120
mov ecx, 0x80004005
call fcn.140007d40
int3
test r15d, r15d
jne 0x140082e59
mov r14d, dword [rbp + 0x650]
mov r15, qword [rsp + 0x50]
cmp dword [r15 - 0x10], 0
je 0x14008277b
mov rdi, qword [r13 + 0x60]
cmp rdi, qword [r13 + 0x68]
je 0x1400824ab
mov rsi, qword [rdi]
test rsi, rsi
je 0x14008247c
mov rbx, qword [rsi + 0x30]
cmp rbx, qword [rsi + 0x38]
je 0x14008247c
lea rdx, [rbp + 0x1e0]
mov rcx, qword [rbx]
call fcn.140111cac
test eax, eax
jne 0x140082366
mov eax, dword [rsi + 0xec]
test al, 0x10
je 0x140082366
test al, 2
je 0x140082347
xor ecx, ecx
call fcn.1401023d0
cmp eax, 0xb
jl 0x140082347
cmp dword [r13 + 0x70c], 0
jne 0x14008236c
jmp 0x140082366
test byte [rsi + 0xec], 4
je 0x14008236c
xor ecx, ecx
call fcn.1401023d0
cmp eax, 0xb
jl 0x14008236c
cmp dword [r13 + 0x70c], 0
je 0x14008236c
add rbx, 8
jmp 0x140082304
mov eax, dword [rsi + 8]
mov dword [rbp + 0x658], eax
lea rcx, [rsi + 0x48]
mov rdx, rbx
call fcn.140007bb0
mov rax, qword [rsp + 0x20]
lea rcx, [rsi + 0xd8]
cmp dword [rax - 0x10], 0
lea rdx, [0x140150af4]
je 0x14008239d
mov rdx, rax
mov rax, r12
inc rax
cmp word [rdx + rax*2], 0
jne 0x1400823a0
mov r8d, eax
call fcn.140008830
call fcn.140004e20
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x14008248b
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x78], rbx
lea rcx, [rbp - 0x30]
lea rax, [rbp - 0x30]
test rax, 0xffffffffffff0000
jne 0x14008240e
movzx r14d, cx
xor edx, edx
mov ecx, r14d
call fcn.140007c90
test rax, rax
je 0x140082435
mov r8d, r14d
mov rdx, rax
lea rcx, [rsp + 0x78]
call fcn.140008550
jmp 0x140082430
lea rcx, [rbp - 0x30]
mov rax, r12
inc rax
cmp word [rcx + rax*2], 0
jne 0x140082415
mov r8d, eax
lea rdx, [rbp - 0x30]
lea rcx, [rsp + 0x78]
call fcn.140008830
mov rbx, qword [rsp + 0x78]
lea rcx, [rsi + 0x28]
cmp dword [rbx - 0x10], 0
lea rdx, [0x140150af4]
je 0x140082449
mov rdx, rbx
mov rax, r12
nop dword [rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x140082450
mov r8d, eax
call fcn.140008830
nop
lea rdx, [rbx - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
jg 0x14008247c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
add rdi, 8
cmp rdi, qword [r13 + 0x68]
je 0x140082496
jmp 0x1400822f4
mov ecx, 0x80004005
call fcn.140007d40
int3
mov eax, dword [rbp + 0x658]
test eax, eax
jne 0x140082e56
mov r14d, dword [rbp + 0x650]
cmp dword [r15 - 0x10], 0
je 0x14008277b
mov rsi, qword [r13 + 0x60]
cmp rsi, qword [r13 + 0x68]
je 0x14008277b
mov r14, qword [rsi]
test r14, r14
je 0x14008273d
mov rdi, qword [r14 + 0x50]
cmp rdi, qword [r14 + 0x58]
je 0x14008273d
test byte [r14 + 0xec], 8
je 0x140082603
call fcn.140004e20
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x14008275e
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x48], rbx
lea rcx, [rbp + 0x1e0]
lea rax, [rbp + 0x1e0]
test rax, 0xffffffffffff0000
jne 0x14008254e
movzx r15d, cx
xor edx, edx
mov ecx, r15d
call fcn.140007c90
test rax, rax
je 0x140082583
mov r8d, r15d
mov rdx, rax
lea rcx, [rsp + 0x48]
call fcn.140008550
jmp 0x14008257e
lea rcx, [rbp + 0x1e0]
mov rax, r12
nop dword [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x140082560
mov r8d, eax
lea rdx, [rbp + 0x1e0]
lea rcx, [rsp + 0x48]
call fcn.140008830
mov rbx, qword [rsp + 0x48]
mov rdx, qword [rdi]
test rdx, rdx
je 0x1400825ea
cmp dword [rbx - 0x10], 0
jl 0x1400825ea
mov rcx, rbx
call fcn.14010e42c
test rax, rax
je 0x1400825ea
sub rax, rbx
sar rax, 1
test eax, eax
jle 0x1400825ea
test byte [r14 + 0xec], 2
je 0x1400825ca
xor ecx, ecx
call fcn.1401023d0
cmp eax, 0xb
jl 0x1400825ca
cmp dword [r13 + 0x70c], 0
jne 0x14008260c
jmp 0x1400825ea
test byte [r14 + 0xec], 4
je 0x14008260c
xor ecx, ecx
call fcn.1401023d0
cmp eax, 0xb
jl 0x14008260c
cmp dword [r13 + 0x70c], 0
je 0x14008260c
lea rdx, [rbx - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
jg 0x140082603
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
add rdi, 8
jmp 0x1400824d4
mov r15d, dword [r14 + 8]
mov dword [rbp + 0x658], r15d
lea rcx, [r14 + 0x68]
mov rdx, rdi
call fcn.140007bb0
mov rdx, qword [rsp + 0x20]
lea rcx, [r14 + 0xd8]
cmp dword [rdx - 0x10], 0
jne 0x14008263c
lea rdx, [0x140150af4]
mov rax, r12
nop
inc rax
cmp word [rdx + rax*2], 0
jne 0x140082640
mov r8d, eax
call fcn.140008830
call fcn.140004e20
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x140082753
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x60], rbx
lea rcx, [rbp - 0x30]
lea rax, [rbp - 0x30]
test rax, 0xffffffffffff0000
jne 0x1400826ac
movzx edi, cx
xor edx, edx
mov ecx, edi
call fcn.140007c90
test rax, rax
je 0x1400826d3
mov r8d, edi
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140008550
jmp 0x1400826ce
lea rcx, [rbp - 0x30]
mov rax, r12
inc rax
cmp word [rcx + rax*2], 0
jne 0x1400826b3
mov r8d, eax
lea rdx, [rbp - 0x30]
lea rcx, [rsp + 0x60]
call fcn.140008830
mov rbx, qword [rsp + 0x60]
lea rcx, [r14 + 0x28]
cmp dword [rbx - 0x10], 0
lea rdx, [0x140150af4]
je 0x1400826e7
mov rdx, rbx
mov rax, r12
nop word [rax + rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x1400826f0
mov r8d, eax
call fcn.140008830
nop
lea rdx, [rbx - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
jg 0x14008271d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
jg 0x140082744
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140082744
mov r15d, dword [rbp + 0x658]
add rsi, 8
cmp rsi, qword [r13 + 0x68]
je 0x140082769
jmp 0x1400824c4
mov ecx, 0x80004005
call fcn.140007d40
nop
mov ecx, 0x80004005
call fcn.140007d40
int3
test r15d, r15d
jne 0x140082e59
mov r14d, dword [rbp + 0x650]
jmp 0x140082782
mov r15d, dword [rbp + 0x658]
xor ebx, ebx
mov r12d, ebx
mov rsi, qword [r13 + 0x60]
cmp rsi, qword [r13 + 0x68]
je 0x1400829fd
test r12d, r12d
jne 0x1400829ed
mov r15, qword [rsi]
test r15, r15
je 0x1400829d3
mov rdi, qword [r15 + 0x10]
cmp rdi, qword [r15 + 0x18]
je 0x1400829d3
mov rax, qword [rdi]
lea r8, [rbp - 0x30]
sub r8, rax
movzx edx, word [rax]
movzx ecx, word [rax + r8]
sub edx, ecx
jne 0x1400827d6
add rax, 2
test ecx, ecx
jne 0x1400827c2
test edx, edx
jne 0x140082829
test byte [r15 + 0xec], 2
je 0x1400827fc
xor ecx, ecx
call fcn.1401023d0
cmp eax, 0xb
jl 0x1400827fc
cmp dword [r13 + 0x70c], 0
je 0x140082829
jmp 0x14008281c
test byte [r15 + 0xec], 4
je 0x14008281c
xor ecx, ecx
call fcn.1401023d0
cmp eax, 0xb
jl 0x14008281c
cmp dword [r13 + 0x70c], 0
jne 0x140082829
test dword [r15 + 0xec], 0x100
je 0x140082832
add rdi, 8
jmp 0x1400827ae
test byte [r15 + 0xec], 1
je 0x14008289d
mov rax, qword [rsp + 0x20]
cmp dword [rax - 0x10], 0
je 0x14008288a
mov rbx, qword [r15 + 0xc0]
cmp rbx, qword [r15 + 0xc8]
je 0x140082888
nop word [rax + rax]
lea rdx, [rbp + 0x3f0]
mov rcx, qword [rbx]
call fcn.140111cac
test eax, eax
je 0x140082882
add rbx, 8
cmp rbx, qword [r15 + 0xc8]
jne 0x140082860
jmp 0x140082888
mov r12d, 1
xor ebx, ebx
test byte [r15 + 0xec], 1
je 0x14008289d
test r12d, r12d
je 0x1400829d3
mov eax, dword [r15 + 8]
mov dword [rbp + 0x658], eax
lea rcx, [r15 + 0x28]
mov rdx, rdi
call fcn.140007bb0
mov rax, qword [r15 + 0xc8]
cmp qword [r15 + 0xc0], rax
je 0x1400828e8
mov rax, qword [r15 + 0xc0]
mov rcx, qword [rax]
sub rcx, 0x18
call fcn.140007d60
add rax, 0x18
mov qword [rbp - 0x68], rax
lea rdx, [rbp - 0x68]
or r14d, 4
jmp 0x14008295e
call fcn.140004e20
mov ecx, ebx
test rax, rax
setne cl
test ecx, ecx
je 0x1400829e2
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x70], rax
lea rax, [0x140150af4]
test rax, 0xffffffffffff0000
jne 0x140082941
movzx ebx, ax
xor edx, edx
mov ecx, ebx
call fcn.140007c90
test rax, rax
je 0x140082953
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.140008550
jmp 0x140082953
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.140008830
jmp 0x140082955
xor ebx, ebx
lea rdx, [rsp + 0x70]
or r14d, 8
mov dword [rbp + 0x650], r14d
lea rcx, [r15 + 0xd8]
call fcn.140007bb0
nop
test r14b, 8
je 0x1400829a3
and r14d, 0xfffffff7
mov dword [rbp + 0x650], r14d
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14008299c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r14d, dword [rbp + 0x650]
test r14b, 4
je 0x1400829d3
and r14d, 0xfffffffb
mov dword [rbp + 0x650], r14d
mov rdx, qword [rbp - 0x68]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x1400829cc
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r14d, dword [rbp + 0x650]
add rsi, 8
cmp rsi, qword [r13 + 0x68]
je 0x1400829ed
jmp 0x140082795
mov ecx, 0x80004005
call fcn.140007d40
int3
mov r15d, dword [rbp + 0x658]
test r15d, r15d
jne 0x140082e59
mov rbx, qword [rsp + 0x20]
mov qword [rbp - 0x78], rbx
cmp dword [rbx - 0x10], 0
je 0x140082bfc
mov rdi, qword [r13 + 0x60]
cmp rdi, qword [r13 + 0x68]
je 0x140082bfc
nop
mov rsi, qword [rdi]
test rsi, rsi
je 0x140082bd5
mov rbx, qword [rsi + 0xc0]
cmp rbx, qword [rsi + 0xc8]
je 0x140082bd5
test dword [rsi + 0xec], 0x100
jne 0x140082aa4
lea rdx, [rbp + 0x3f0]
mov rcx, qword [rbx]
call fcn.140111cac
test eax, eax
jne 0x140082aa4
mov eax, dword [rsi + 0xec]
test al, 1
jne 0x140082aa4
test al, 2
je 0x140082a85
xor ecx, ecx
call fcn.1401023d0
cmp eax, 0xb
jl 0x140082a85
cmp dword [r13 + 0x70c], 0
jne 0x140082aaa
jmp 0x140082aa4
test byte [rsi + 0xec], 4
je 0x140082aaa
xor ecx, ecx
call fcn.1401023d0
cmp eax, 0xb
jl 0x140082aaa
cmp dword [r13 + 0x70c], 0
je 0x140082aaa
add rbx, 8
jmp 0x140082a33
mov r15d, dword [rsi + 8]
mov dword [rbp + 0x658], r15d
lea rcx, [rsi + 0xd8]
mov rdx, rbx
call fcn.140007bb0
mov rax, qword [rsi + 0x18]
cmp qword [rsi + 0x10], rax
je 0x140082af0
mov rax, qword [rsi + 0x10]
mov rcx, qword [rax]
sub rcx, 0x18
call fcn.140007d60
add rax, 0x18
mov qword [rbp - 0x70], rax
lea rdx, [rbp - 0x70]
or r14d, 0x10
jmp 0x140082b63
call fcn.140004e20
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x140082be4
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x58], rax
lea rax, [0x140150af4]
test rax, 0xffffffffffff0000
jne 0x140082b49
movzx ebx, ax
xor edx, edx
mov ecx, ebx
call fcn.140007c90
test rax, rax
je 0x140082b5a
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x58]
call fcn.140008550
jmp 0x140082b5a
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x58]
call fcn.140008830
nop
lea rdx, [rsp + 0x58]
or r14d, 0x20
mov dword [rbp + 0x650], r14d
lea rcx, [rsi + 0x28]
call fcn.140007bb0
nop
test r14b, 0x20
je 0x140082ba5
and r14d, 0xffffffdf
mov dword [rbp + 0x650], r14d
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140082b9e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r14d, dword [rbp + 0x650]
test r14b, 0x10
je 0x140082bd5
and r14d, 0xffffffef
mov dword [rbp + 0x650], r14d
mov rdx, qword [rbp - 0x70]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140082bce
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r14d, dword [rbp + 0x650]
add rdi, 8
cmp rdi, qword [r13 + 0x68]
je 0x140082bef
jmp 0x140082a20
mov ecx, 0x80004005
call fcn.140007d40
int3
test r15d, r15d
jne 0x140082e59
mov rbx, qword [rbp - 0x78]
mov rdi, qword [r13 + 0x60]
cmp rdi, qword [r13 + 0x68]
je 0x140082e59
nop word [rax + rax]
mov r15, qword [rdi]
test byte [r15 + 0xec], 0x80
je 0x140082e0e
xor ecx, ecx
call fcn.1401023d0
cmp eax, 0xb
jl 0x140082e0e
cmp dword [r13 + 0x70c], 0
je 0x140082e0e
mov eax, dword [r15 + 8]
mov dword [rbp + 0x658], eax
lea rcx, [r15 + 0xd8]
cmp dword [rbx - 0x10], 0
lea rdx, [0x140150af4]
je 0x140082c62
mov rdx, qword [rsp + 0x20]
or r14, 0xffffffffffffffff
mov rax, r14
nop dword [rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x140082c70
mov r8d, eax
call fcn.140008830
call fcn.140004e20
xor r12d, r12d
mov ecx, r12d
test rax, rax
setne cl
test ecx, ecx
je 0x140082e42
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x40], rbx
lea rcx, [rbp - 0x30]
lea rax, [rbp - 0x30]
test rax, 0xffffffffffff0000
jne 0x140082cec
movzx esi, cx
xor edx, edx
mov ecx, esi
call fcn.140007c90
test rax, rax
je 0x140082dcb
mov r8d, esi
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140008550
mov rbx, qword [rsp + 0x40]
jmp 0x140082dcb
lea rax, [rbp - 0x30]
mov rsi, r14
inc rsi
cmp word [rax + rsi*2], 0
jne 0x140082cf3
test esi, esi
jne 0x140082d53
lea rdx, [rbx - 0x18]
mov rsi, qword [rdx]
cmp dword [rdx + 8], 0
je 0x140082dcb
cmp dword [rdx + 0x10], 0
jge 0x140082d2f
cmp dword [rbx - 0xc], 0
jl 0x140082e21
mov dword [rbx - 0x10], r12d
mov word [rbx], r12w
jmp 0x140082dcb
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140082d3f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x40], rbx
jmp 0x140082dcb
mov r12d, dword [rbx - 0x10]
lea r14, [rbp - 0x30]
sub r14, rbx
sar r14, 1
test esi, esi
js 0x140082e37
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, esi
or eax, ecx
jge 0x140082d8b
mov edx, esi
lea rcx, [rsp + 0x40]
call fcn.140008630
mov rbx, qword [rsp + 0x40]
movsxd rax, esi
movsxd rdx, dword [rbx - 0xc]
mov rcx, rbx
add rdx, rdx
cmp r14, r12
lea r12, [rax + rax]
mov r9, r12
ja 0x140082daf
lea r8, [rbx + r14*2]
call fcn.14010bcc0
jmp 0x140082db8
lea r8, [rbp - 0x30]
call fcn.14010bc38
cmp esi, dword [rbx - 0xc]
jg 0x140082e2c
mov dword [rbx - 0x10], esi
xor eax, eax
mov word [rbx + r12], ax
or r14, 0xffffffffffffffff
lea rcx, [r15 + 0x28]
cmp dword [rbx - 0x10], 0
lea rdx, [0x140150af4]
je 0x140082ddf
mov rdx, rbx
mov rax, r14
inc rax
cmp word [rdx + rax*2], 0
jne 0x140082de2
mov r8d, eax
call fcn.140008830
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
dec eax
jg 0x140082e0e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
add rdi, 8
cmp rdi, qword [r13 + 0x68]
je 0x140082e4d
mov rbx, qword [rbp - 0x78]
jmp 0x140082c10
mov ecx, 0x80070057
call fcn.140007d40
int3
mov ecx, 0x80070057
call fcn.140007d40
int3
mov ecx, 0x80070057
call fcn.140007d40
nop
mov ecx, 0x80004005
call fcn.140007d40
int3
mov r15d, dword [rbp + 0x658]
jmp 0x140082e59
mov r15d, eax
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
or r12, 0xffffffffffffffff
lock add dword [rdx + 0x10], r12d
jg 0x140082e77
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x20]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140082e91
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
jg 0x140082eb0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x28]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r12d
dec r12d
jg 0x140082ece
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
mov eax, r15d
mov rbx, qword [rsp + 0x748]
add rsp, 0x700
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret