Function at 0x1400993d0
Capabilities:
Get graphical window text

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x7c0]
sub rsp, 0x8c0
mov rbx, rdx
mov qword [rsp + 0x48], rdx
lea rdx, [0x1400fffd8]
mov rcx, r9
mov rsi, r9
mov r14, r8
call fcn.1400ca93c
lea r12, [0x140000000]
test eax, eax
movzx eax, byte [r14 + 8]
sete dil
add eax, 0xfffffff3
cmp eax, 5
ja case.default.0x14009943c
cdqe
mov ecx, dword [r12 + rax*4 + 0x9b288]
add rcx, r12
jmp rcx
mov rcx, qword [r14]
xor r9d, r9d
xor r8d, r8d
test byte [r14 + 9], 0x80
je 0x14009945b
mov edx, 0x472
call qword [sym.imp.USER32.dll_SendMessageW]
jmp 0x140099467
mov edx, 0x468
call qword [sym.imp.USER32.dll_SendMessageW]
cwde
mov rcx, rbx
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
movsxd rdx, eax
call fcn.140001090
mov eax, 1
jmp 0x14009b26d
mov rcx, qword [r14]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x400
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, r14
mov rdx, rax
call fcn.14009dcd0
jmp 0x140099467
test dil, dil
jne 0x140099475
mov rcx, qword [r14]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x408
call qword [sym.imp.USER32.dll_SendMessageW]
jmp 0x140099467
mov rcx, qword [r14]
lea r9, [rsp + 0x50]
xor r8d, r8d
mov edx, 0x1001
call qword [sym.imp.USER32.dll_SendMessageW]
lea r13, [0x1400e346c]
test eax, eax
jne 0x140099522
movzx ecx, word [rsp + 0x5a]
movzx edx, word [rsp + 0x58]
movzx eax, word [rsp + 0x5c]
movzx edi, word [rsp + 0x56]
movzx r9d, word [rsp + 0x52]
movzx r8d, word [rsp + 0x50]
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x28], edx
lea rdx, [0x140101818]
lea rcx, [rbp - 0x40]
mov dword [rsp + 0x20], edi
call fcn.1400cafec
lea r14, [rbp - 0x40]
jmp 0x140099525
mov r14, r13
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x14009954d
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, r14
mov byte [rsp + 0x20], 1
call fcn.1400b1500
mov r12d, eax
jmp 0x14009b26a
xor esi, esi
mov r9b, 1
test r14, r14
jne 0x140099562
xor r9b, r9b
mov r15d, esi
mov r14, r13
jmp 0x140099584
cmp qword [rbx + 8], r14
jne 0x140099571
mov r15, qword [rbx + 0x10]
shr r15, 1
jmp 0x140099584
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r14
repne scasw ax, word [rdi]
not rcx
lea r15, [rcx - 1]
lea rax, [r15 + 1]
lea r12, [rax + rax]
cmp dl, 2
jne 0x1400995a4
mov rdx, r15
mov rcx, r14
call fcn.140006090
mov r12d, eax
jmp 0x14009b26a
mov r8, qword [0x140114480]
cmp r12, r8
jbe 0x1400995d4
cmp r12, qword [rbx + 0x18]
jbe 0x1400995d4
mov r8, r13
lea rdx, [0x1400fff00]
lea rcx, [0x14011b1d0]
call fcn.140040760
mov r12d, eax
jmp 0x14009b26a
cmp rax, 2
jae 0x1400995fa
test r9b, r9b
mov rcx, rbx
setne sil
xor r8d, r8d
lea edx, [rsi + 3]
call fcn.1400b1bb0
mov r12d, 1
jmp 0x14009b26a
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x140099617
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r8, qword [0x140114480]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp r12, r9
jbe 0x14009978d
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14009964e
cmp al, 2
je 0x14009968c
mov rdi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x140099781
mov edi, 0x80
cmp r12, rdi
ja 0x14009968c
cmp r12, 8
ja 0x140099665
mov edi, 8
jmp 0x140099672
mov r13d, reloc.OLEAUT32.dll_SafeArrayGetDim
cmp r12, r13
cmovbe rdi, r13
mov rcx, rdi
call fcn.1400aa420
test rax, rax
je 0x140099d9b
mov byte [rbx + 0x20], 1
jmp 0x140099781
cmp r12, 0x20
jae 0x14009969c
mov edi, SafeArrayAllocDescriptor
jmp 0x140099748
mov edi, 0x208
cmp r12, rdi
jb 0x140099748
cmp r12, 0x50000
jae 0x140099702
pxor xmm0, xmm0
cvtsi2sd xmm0, r12
test r12, r12
jns 0x1400996c9
addsd xmm0, qword [0x140101ea8]
mulsd xmm0, qword [0x140101ee0]
movsd xmm1, qword [0x140101ed8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x1400996f8
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x1400996f8
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x140099748
cmp r12, 0x320000
jae 0x140099715
lea rdi, [r12 + 0x8000]
jmp 0x140099748
cmp r12, 0xc80000
jae 0x140099740
movabs rax, 0x47ae147ae147ae15
mov rdi, r12
mul r12
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, r12
jmp 0x140099748
lea rdi, [r12 + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x140099768
test r9, r9
je 0x140099768
mov rcx, qword [rbx + 8]
mov r12b, 1
call fcn.1400cb13c
jmp 0x14009976b
xor r12b, r12b
test rdi, rdi
js 0x1400997bd
mov rcx, rdi
call fcn.1400ca9c4
test rax, rax
je 0x1400997bd
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
mov rcx, qword [rbx + 8]
cmp rcx, r14
je 0x1400997a2
lea r8, [r15 + r15]
mov rdx, r14
call fcn.1400cb300
lea rcx, [r15 + r15]
mov rax, qword [rbx + 8]
mov r12d, 1
mov word [rcx + rax], si
mov qword [rbx + 0x10], rcx
jmp 0x14009b26a
test r12b, r12b
je 0x1400997d3
lea rax, [0x14011b184]
mov qword [rbx + 0x18], rsi
mov qword [rbx + 8], rax
jmp 0x1400997da
mov rax, qword [rbx + 8]
mov word [rax], si
lea rdx, [0x1400e6570]
lea rcx, [0x14011b1d0]
mov r8, r13
mov qword [rbx + 0x10], rsi
call fcn.140040760
mov r12d, eax
jmp 0x14009b26a
mov rcx, qword [r14]
mov edx, 0xfffffff0
call qword [sym.imp.USER32.dll_GetWindowLongW]
mov rcx, qword [r14]
xor r8d, r8d
lea r9, [rsp + 0x50]
test al, 2
je 0x140099a3c
mov edx, 0x1005
call qword [sym.imp.USER32.dll_SendMessageW]
movzx edx, word [rsp + 0x5c]
movzx ecx, word [rsp + 0x58]
movzx eax, word [rsp + 0x5a]
movzx edi, word [rsp + 0x56]
movzx r9d, word [rsp + 0x52]
movzx r8d, word [rsp + 0x50]
mov dword [rsp + 0x38], edx
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], ecx
lea rdx, [0x140101818]
lea rcx, [rbp - 0x40]
mov dword [rsp + 0x20], edi
call fcn.1400cafec
mov edx, 0x2d
mov word [rbp - 0x30], dx
lea rcx, [rbp - 0x2e]
lea rdx, [rsp + 0x60]
call fcn.1400acf00
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x1400998a7
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
lea rdx, [rbp - 0x40]
lea r8d, [r9 + 0x11]
mov byte [rsp + 0x20], 1
call fcn.1400b1500
mov esi, eax
jmp 0x14009b26d
cmp dl, 2
jne 0x1400998c1
lea rcx, [rbp - 0x40]
mov edx, reloc.OLEAUT32.dll_SafeArrayGetElemsize
call fcn.140006090
mov esi, eax
jmp 0x14009b26d
mov rcx, qword [0x140114480]
cmp rcx, 0x24
jae 0x1400998f6
cmp qword [rbx + 0x18], 0x24
jae 0x1400998f6
lea r8, [0x1400e346c]
lea rdx, [0x1400fff00]
lea rcx, [0x14011b1d0]
call fcn.140040760
mov esi, eax
jmp 0x14009b26d
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x140099913
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov rcx, qword [0x140114480]
mov rax, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rax, 0x24
jae 0x140099a02
movzx r8d, byte [rbx + 0x20]
movzx edx, r8b
cmp r8b, 1
jbe 0x1400999d6
cmp dl, 2
je 0x140099950
mov rsi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x1400999f6
mov edi, 0x208
cmp rcx, rdi
mov esi, edi
cmovb rsi, rcx
cmp r8b, 2
jne 0x140099977
test rax, rax
je 0x140099977
mov rcx, qword [rbx + 8]
mov dil, 1
call fcn.1400cb13c
jmp 0x14009997a
xor dil, dil
test rsi, rsi
js 0x140099992
mov rcx, rsi
call fcn.1400ca9c4
test rax, rax
je 0x140099992
mov byte [rbx + 0x20], 2
jmp 0x1400999f6
xor esi, esi
test dil, dil
je 0x1400999aa
lea rax, [0x14011b184]
mov qword [rbx + 0x18], rsi
mov qword [rbx + 8], rax
jmp 0x1400999b1
mov rax, qword [rbx + 8]
mov word [rax], si
lea r8, [0x1400e346c]
lea rdx, [0x1400e6570]
lea rcx, [0x14011b1d0]
mov qword [rbx + 0x10], rsi
call fcn.140040760
mov esi, eax
jmp 0x14009b26d
mov edi, 0x80
mov ecx, edi
mov esi, edi
call fcn.1400aa420
test rax, rax
jne 0x1400999f2
xor esi, esi
mov eax, esi
jmp 0x14009b26d
mov byte [rbx + 0x20], 1
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rsi
mov rcx, qword [rbx + 8]
lea rax, [rbp - 0x40]
cmp rcx, rax
je 0x140099a1e
lea rdx, [rbp - 0x40]
mov r8d, SafeArrayAllocDescriptor
call fcn.1400cb300
mov rax, qword [rbx + 8]
xor esi, esi
mov word [rax + 0x22], si
mov esi, 1
mov qword [rbx + 0x10], SafeArrayAllocDescriptor
mov eax, esi
jmp 0x14009b26d
mov edx, 0x1001
call qword [sym.imp.USER32.dll_SendMessageW]
movzx edx, word [rsp + 0x5c]
movzx ecx, word [rsp + 0x58]
movzx eax, word [rsp + 0x5a]
movzx edi, word [rsp + 0x56]
movzx r9d, word [rsp + 0x52]
movzx r8d, word [rsp + 0x50]
mov dword [rsp + 0x38], edx
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], ecx
lea rdx, [0x140101818]
lea rcx, [rbp - 0x40]
mov dword [rsp + 0x20], edi
call fcn.1400cafec
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x140099aaf
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
lea rdx, [rbp - 0x40]
lea r8d, [r9 + 8]
mov byte [rsp + 0x20], 1
call fcn.1400b1500
mov esi, eax
jmp 0x14009b26d
cmp dl, 2
jne 0x140099ac9
lea rcx, [rbp - 0x40]
mov edx, 8
call fcn.140006090
mov esi, eax
jmp 0x14009b26d
mov rcx, qword [0x140114480]
cmp rcx, 0x12
jae 0x140099afe
cmp qword [rbx + 0x18], 0x12
jae 0x140099afe
lea r8, [0x1400e346c]
lea rdx, [0x1400fff00]
lea rcx, [0x14011b1d0]
call fcn.140040760
mov esi, eax
jmp 0x14009b26d
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x140099b1b
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov rcx, qword [0x140114480]
mov rax, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rax, 0x12
jae 0x140099c08
movzx r8d, byte [rbx + 0x20]
movzx edx, r8b
cmp r8b, 1
jbe 0x140099bde
cmp dl, 2
je 0x140099b58
mov rdi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x140099bfc
mov edi, SafeArrayAllocDescriptor
cmp rcx, rdi
cmovb rdi, rcx
cmp r8b, 2
jne 0x140099b7d
test rax, rax
je 0x140099b7d
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400cb13c
jmp 0x140099b80
xor sil, sil
test rdi, rdi
js 0x140099b98
mov rcx, rdi
call fcn.1400ca9c4
test rax, rax
je 0x140099b98
mov byte [rbx + 0x20], 2
jmp 0x140099bfc
test sil, sil
je 0x140099bb0
lea rax, [0x14011b184]
xor esi, esi
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rsi
jmp 0x140099bb9
mov rax, qword [rbx + 8]
xor esi, esi
mov word [rax], si
lea r8, [0x1400e346c]
lea rdx, [0x1400e6570]
lea rcx, [0x14011b1d0]
mov qword [rbx + 0x10], rsi
call fcn.140040760
mov esi, eax
jmp 0x14009b26d
mov edi, 0x80
mov ecx, edi
call fcn.1400aa420
test rax, rax
jne 0x140099bf8
xor esi, esi
mov eax, esi
jmp 0x14009b26d
mov byte [rbx + 0x20], 1
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
mov rcx, qword [rbx + 8]
lea rax, [rbp - 0x40]
mov r13d, reloc.OLEAUT32.dll_SafeArrayGetDim
cmp rcx, rax
je 0x140099c27
lea rdx, [rbp - 0x40]
mov r8d, r13d
call fcn.1400cb300
mov rax, qword [rbx + 8]
xor esi, esi
mov word [rax + 0x10], si
mov esi, 1
mov qword [rbx + 0x10], r13
mov eax, esi
jmp 0x14009b26d
mov rcx, qword [r14]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x402
call qword [sym.imp.USER32.dll_SendMessageW]
lea rdx, [rbp - 0x40]
mov rcx, rax
call fcn.14009da40
movzx r11d, byte [rbx + 0x23]
test r11b, r11b
jne 0x140099c8c
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp - 0x40]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b1500
mov r12d, eax
jmp 0x14009b26a
lea rax, [rbp - 0x40]
cmp qword [rbx + 8], rax
jne 0x140099c9f
mov r12, qword [rbx + 0x10]
shr r12, 1
jmp 0x140099cb3
or rcx, 0xffffffffffffffff
lea rdi, [rbp - 0x40]
xor eax, eax
repne scasw ax, word [rdi]
not rcx
lea r12, [rcx - 1]
lea rax, [r12 + 1]
lea rsi, [rax + rax]
cmp r11b, 2
jne 0x140099cd6
lea rcx, [rbp - 0x40]
mov rdx, r12
call fcn.140006090
mov r12d, eax
jmp 0x14009b26a
mov rcx, qword [0x140114480]
cmp rsi, rcx
jbe 0x140099cf4
cmp rsi, qword [rbx + 0x18]
jbe 0x140099cf4
lea r8, [0x1400e346c]
jmp 0x1400995b9
cmp rax, 2
jae 0x140099d14
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400b1bb0
mov r12d, 1
jmp 0x14009b26a
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x140099d31
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov rcx, qword [0x140114480]
mov r8, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r8
jbe 0x140099eab
movzx r9d, byte [rbx + 0x20]
movzx eax, r9b
cmp r9b, 1
jbe 0x140099d68
cmp al, 2
je 0x140099dac
mov rdi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x140099e9f
mov edi, 0x80
cmp rsi, rdi
ja 0x140099dac
cmp rsi, 8
ja 0x140099d7f
mov edi, 8
jmp 0x140099d8c
mov r13d, reloc.OLEAUT32.dll_SafeArrayGetDim
cmp rsi, r13
cmovbe rdi, r13
mov rcx, rdi
call fcn.1400aa420
test rax, rax
jne 0x140099da3
xor esi, esi
mov r12d, esi
jmp 0x14009b26a
mov byte [rbx + 0x20], 1
jmp 0x140099e9f
cmp rsi, 0x20
jae 0x140099dbc
mov edi, SafeArrayAllocDescriptor
jmp 0x140099e66
mov edi, 0x208
cmp rsi, rdi
jb 0x140099e66
cmp rsi, 0x50000
jae 0x140099e22
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x140099de9
addsd xmm0, qword [0x140101ea8]
mulsd xmm0, qword [0x140101ee0]
movsd xmm1, qword [0x140101ed8]
xor edx, edx
comisd xmm0, xmm1
jbe 0x140099e18
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x140099e18
movabs rax, 0x8000000000000000
mov rdx, rax
cvttsd2si rdi, xmm0
add rdi, rdx
jmp 0x140099e66
cmp rsi, 0x320000
jae 0x140099e34
lea rdi, [rsi + 0x8000]
jmp 0x140099e66
cmp rsi, 0xc80000
jae 0x140099e5f
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x140099e66
lea rdi, [rsi + 0x20000]
cmp rdi, rcx
cmova rdi, rcx
cmp r9b, 2
jne 0x140099e86
test r8, r8
je 0x140099e86
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400cb13c
jmp 0x140099e89
xor sil, sil
test rdi, rdi
js 0x140099ed0
mov rcx, rdi
call fcn.1400ca9c4
test rax, rax
je 0x140099ed0
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
mov rcx, qword [rbx + 8]
lea rax, [rbp - 0x40]
cmp rcx, rax
je 0x140099ec5
lea rdx, [rbp - 0x40]
lea r8, [r12 + r12]
call fcn.1400cb300
lea rcx, [r12 + r12]
xor esi, esi
jmp 0x1400997a6
test sil, sil
je 0x140099ee8
lea rax, [0x14011b184]
xor esi, esi
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rsi
jmp 0x140099ef1
mov rax, qword [rbx + 8]
xor esi, esi
mov word [rax], si
lea r8, [0x1400e346c]
lea rdx, [0x1400e6570]
lea rcx, [0x14011b1d0]
mov qword [rbx + 0x10], rsi
call fcn.140040760
mov r12d, eax
jmp 0x14009b26a
lea rdx, [0x1400e6dd0]
mov rcx, rsi
call fcn.1400ca93c
test eax, eax
je case.0x140099f4b.12
movzx eax, byte [r14 + 8]
dec eax
cmp eax, 0x16
ja case.0x140099f4b.12
cdqe
mov ecx, dword [r12 + rax*4 + 0x9b2a0]
add rcx, r12
jmp rcx
mov rcx, qword [r14]
xor r9d, r9d
xor r8d, r8d
mov edx, pe_nt_image_headers64
call qword [sym.imp.USER32.dll_SendMessageW]
test rax, rax
je 0x14009a411
dec rax
je 0x14009a1b2
dec rax
jne 0x14009af22
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140099fa8
mov rcx, qword [rbx + 0x10]
lea rdx, [0x1400e61b8]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b1500
mov r12d, eax
jmp 0x14009b26a
lea r14, [0x1400e61b8]
cmp qword [rbx + 8], r14
jne 0x140099fbe
mov r12, qword [rbx + 0x10]
shr r12, 1
jmp 0x140099fc4
mov r12d, 2
lea rdx, [r12 + 1]
lea rsi, [rdx + rdx]
cmp al, 2
jne 0x140099fe4
mov rdx, r12
mov rcx, r14
call fcn.140006090
mov r12d, eax
jmp 0x14009b26a
mov rcx, qword [0x140114480]
cmp rsi, rcx
jbe 0x140099ffa
cmp rsi, qword [rbx + 0x18]
ja 0x140099ce8
cmp rdx, 2
jb 0x140099cfa
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14009a021
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov rcx, qword [0x140114480]
mov r8, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r8
jbe 0x14009a19d
movzx r9d, byte [rbx + 0x20]
movzx eax, r9b
cmp r9b, 1
jbe 0x14009a058
cmp al, 2
je 0x14009a096
mov rdi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x14009a191
mov edi, 0x80
cmp rsi, rdi
ja 0x14009a096
cmp rsi, 8
ja 0x14009a06f
mov edi, 8
jmp 0x14009a07c
mov r13d, reloc.OLEAUT32.dll_SafeArrayGetDim
cmp rsi, r13
cmovbe rdi, r13
mov rcx, rdi
call fcn.1400aa420
test rax, rax
je 0x140099d99
mov byte [rbx + 0x20], 1
jmp 0x14009a191
cmp rsi, 0x20
jae 0x14009a0a6
mov edi, SafeArrayAllocDescriptor
jmp 0x14009a150
mov edi, 0x208
cmp rsi, rdi
jb 0x14009a150
cmp rsi, 0x50000
jae 0x14009a10c
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14009a0d3
addsd xmm0, qword [0x140101ea8]
mulsd xmm0, qword [0x140101ee0]
movsd xmm1, qword [0x140101ed8]
xor edx, edx
comisd xmm0, xmm1
jbe 0x14009a102
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14009a102
movabs rax, 0x8000000000000000
mov rdx, rax
cvttsd2si rdi, xmm0
add rdi, rdx
jmp 0x14009a150
cmp rsi, 0x320000
jae 0x14009a11e
lea rdi, [rsi + 0x8000]
jmp 0x14009a150
cmp rsi, 0xc80000
jae 0x14009a149
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14009a150
lea rdi, [rsi + 0x20000]
cmp rdi, rcx
cmova rdi, rcx
cmp r9b, 2
jne 0x14009a170
test r8, r8
je 0x14009a170
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400cb13c
jmp 0x14009a173
xor sil, sil
test rdi, rdi
js 0x140099ed0
mov rcx, rdi
call fcn.1400ca9c4
test rax, rax
je 0x140099ed0
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
mov rcx, qword [rbx + 8]
cmp rcx, r14
je 0x140099ec5
mov rdx, r14
jmp 0x140099ebc
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14009a1de
mov rcx, qword [rbx + 0x10]
lea rdx, [0x1400e619c]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b1500
mov r12d, eax
jmp 0x14009b26a
lea r15, [0x1400e619c]
mov r12d, 1
cmp qword [rbx + 8], r15
jne 0x14009a1fa
mov r14, qword [rbx + 0x10]
shr r14, 1
jmp 0x14009a1fd
mov r14, r12
lea rcx, [r14 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
jne 0x14009a21c
mov rdx, r14
mov rcx, r15
call fcn.140006090
mov r12d, eax
jmp 0x14009b26a
mov r8, qword [0x140114480]
cmp rsi, r8
jbe 0x14009a232
cmp rsi, qword [rbx + 0x18]
ja 0x140099ce8
cmp rcx, 2
jae 0x14009a24c
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400b1bb0
jmp 0x14009b26a
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14009a269
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r8, qword [0x140114480]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14009a3e5
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, r12b
jbe 0x14009a29f
cmp al, 2
je 0x14009a2dd
mov rdi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x14009a3d9
mov edi, 0x80
cmp rsi, rdi
ja 0x14009a2dd
cmp rsi, 8
ja 0x14009a2b6
mov edi, 8
jmp 0x14009a2c3
mov r13d, reloc.OLEAUT32.dll_SafeArrayGetDim
cmp rsi, r13
cmovbe rdi, r13
mov rcx, rdi
call fcn.1400aa420
test rax, rax
je 0x140099d99
mov byte [rbx + 0x20], r12b
jmp 0x14009a3d9
cmp rsi, 0x20
jae 0x14009a2ed
mov edi, SafeArrayAllocDescriptor
jmp 0x14009a397
mov edi, 0x208
cmp rsi, rdi
jb 0x14009a397
cmp rsi, 0x50000
jae 0x14009a353
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14009a31a
addsd xmm0, qword [0x140101ea8]
mulsd xmm0, qword [0x140101ee0]
movsd xmm1, qword [0x140101ed8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14009a349
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14009a349
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14009a397
cmp rsi, 0x320000
jae 0x14009a365
lea rdi, [rsi + 0x8000]
jmp 0x14009a397
cmp rsi, 0xc80000
jae 0x14009a390
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14009a397
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14009a3b8
test r9, r9
je 0x14009a3b8
mov rcx, qword [rbx + 8]
movzx esi, r12b
call fcn.1400cb13c
jmp 0x14009a3bb
xor sil, sil
test rdi, rdi
js 0x140099ed0
mov rcx, rdi
call fcn.1400ca9c4
test rax, rax
je 0x140099ed0
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 0x18], rdi
mov qword [rbx + 8], rax
mov rcx, qword [rbx + 8]
cmp rcx, r15
je 0x14009a3fa
lea r8, [r14 + r14]
mov rdx, r15
call fcn.1400cb300
mov rax, qword [rbx + 8]
lea rcx, [r14 + r14]
xor esi, esi
mov word [rcx + rax], si
mov qword [rbx + 0x10], rcx
jmp 0x14009b26a
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14009a43d
mov rcx, qword [rbx + 0x10]
lea rdx, [0x1400e350c]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b1500
mov r12d, eax
jmp 0x14009b26a
lea r15, [0x1400e350c]
mov r12d, 1
cmp qword [rbx + 8], r15
jne 0x14009a459
mov r14, qword [rbx + 0x10]
shr r14, 1
jmp 0x14009a45c
mov r14, r12
lea rcx, [r14 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
je 0x14009a209
mov r8, qword [0x140114480]
cmp rsi, r8
jbe 0x14009a482
cmp rsi, qword [rbx + 0x18]
ja 0x140099ce8
cmp rcx, 2
jb 0x14009a238
jmp 0x14009a24c
test byte [r14 + 9], 2
je case.0x140099f4b.12
mov rcx, qword [r14]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x147
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, rbx
cmp rax, 0xffffffffffffffff
je 0x14009a5d6
inc eax
jmp 0x14009946a
mov rcx, qword [r14]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x147
call qword [sym.imp.USER32.dll_SendMessageW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x14009a51e
mov rcx, qword [r14]
lea rdx, [rbp - 0x40]
mov r8d, 0x400
call qword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
je case.0x140099f4b.12
mov rcx, qword [r14]
lea r9, [rbp - 0x40]
or r8, rdi
mov edx, 0x158
call qword [sym.imp.USER32.dll_SendMessageW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je case.0x140099f4b.12
test byte [r14 + 9], 2
je 0x14009a52d
lea eax, [rdi + 1]
jmp 0x140099467
mov rcx, qword [r14]
xor r9d, r9d
mov r8, rdi
mov edx, 0x149
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, rbx
cmp rax, 0xffffffffffffffff
je 0x14009a5d6
xor r9d, r9d
mov r8, rax
xor edx, edx
mov byte [rsp + 0x20], 1
call fcn.1400b1500
cmp eax, 1
jne 0x14009af22
mov r12d, 1
xor r8d, r8d
mov rcx, rbx
mov edx, r12d
call fcn.140001820
mov rcx, qword [r14]
mov r8, rdi
mov r9, rax
mov edx, 0x148
call qword [sym.imp.USER32.dll_SendMessageW]
cmp rax, 0xffffffffffffffff
jne 0x14009a5e0
cmp byte [rbx + 0x23], 0
jne 0x14009a5a3
mov rax, qword [rbx + 0x10]
jmp 0x14009a5a6
mov rax, rbx
cmp byte [rax + 0x23], 2
jne 0x14009a5cf
cmp qword [0x14011be40], 0
je 0x14009a5cf
lea rcx, [0x14011be28]
call fcn.140006210
mov rcx, rbx
call fcn.14001c010
jmp 0x14009b26d
and byte [rax + 0x21], 0x86
mov rcx, rbx
call fcn.14001c010
jmp 0x14009b26d
mov rdx, rax
jmp 0x14009b233
mov rcx, qword [r14]
mov edx, 0xfffffff0
call qword [sym.imp.USER32.dll_GetWindowLongW]
mov rcx, qword [r14]
xor r9d, r9d
xor r8d, r8d
test eax, 0x808
je 0x14009a81b
mov edx, 0x190
call qword [sym.imp.USER32.dll_SendMessageW]
mov rdi, rax
cmp rax, 1
jl 0x14009a5d3
lea rcx, [rax*4]
call fcn.1400ca9c4
mov r12, rax
mov qword [rsp + 0x40], rax
test rax, rax
je 0x14009a5d3
mov rcx, qword [r14]
mov r9, rax
mov r8, rdi
mov edx, 0x191
call qword [sym.imp.USER32.dll_SendMessageW]
mov rdi, rax
mov qword [rbp + 0x810], rax
cmp rax, 1
jge 0x14009a671
mov rcx, r12
call fcn.1400cb13c
mov rcx, rbx
call fcn.14001c010
jmp 0x14009b26d
xor esi, esi
test byte [r14 + 9], 2
lea r15, [rax - 1]
mov r13d, esi
je 0x14009a6d1
test rax, rax
jle 0x14009a70a
mov rbx, rax
nop dword [rax]
mov ecx, dword [r12 + r13*4]
lea rdx, [rbp - 0x40]
mov r8d, 0xa
inc ecx
call fcn.1400ca690
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rbp - 0x40]
inc r13
repne scasw ax, word [rdi]
not rcx
dec rcx
add r15, rcx
cmp r13, rbx
jl 0x14009a690
mov rbx, qword [rsp + 0x48]
mov rdi, qword [rbp + 0x810]
jmp 0x14009a70a
test rax, rax
jle 0x14009a70a
nop word [rax + rax]
movsxd r8, dword [r12 + r13*4]
mov rcx, qword [r14]
xor r9d, r9d
mov edx, 0x18a
call qword [sym.imp.USER32.dll_SendMessageW]
cmp rax, 0xffffffffffffffff
je 0x14009a65c
inc r13
add r15, rax
cmp r13, rdi
jl 0x14009a6e0
xor r9d, r9d
mov r8, r15
xor edx, edx
mov rcx, rbx
mov byte [rsp + 0x20], 1
call fcn.1400b1500
cmp eax, 1
jne 0x14009af22
mov r12d, 1
xor r8d, r8d
mov rcx, rbx
mov edx, r12d
call fcn.140001820
test byte [r14 + 9], 2
mov r13, rax
je 0x14009a7a7
test rdi, rdi
jle 0x14009a809
mov r14, qword [rbp + 0x810]
mov rbx, qword [rsp + 0x40]
mov r12, qword [rbp + 0x800]
test rsi, rsi
je 0x14009a776
movzx ecx, word [r12 + 0x6e]
add r13, 2
mov word [r13 - 2], cx
mov ecx, dword [rbx + rsi*4]
mov r8d, 0xa
mov rdx, r13
inc ecx
call fcn.1400ca690
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r13
inc rsi
repne scasw ax, word [rdi]
not rcx
lea r13, [r13 + rcx*2 - 2]
cmp rsi, r14
jl 0x14009a762
jmp 0x14009a7fe
lea r15, [rdi - 1]
test rdi, rdi
jle 0x14009a809
mov rbx, qword [rsp + 0x40]
mov r12, qword [rbp + 0x800]
nop dword [rax]
test rsi, rsi
je 0x14009a7d4
movzx eax, word [r12 + 0x6e]
add r13, 2
mov word [r13 - 2], ax
movsxd r8, dword [rbx + rsi*4]
mov rcx, qword [r14]
mov r9, r13
mov edx, 0x189
call qword [sym.imp.USER32.dll_SendMessageW]
test rax, rax
jle 0x14009a7f6
add r15, rax
lea r13, [r13 + rax*2]
inc rsi
cmp rsi, rdi
jl 0x14009a7c0
mov rbx, qword [rsp + 0x48]
mov r12d, 1
mov rcx, qword [rsp + 0x40]
call fcn.1400cb13c
mov rdx, r15
jmp 0x14009b233
mov edx, 0x188
call qword [sym.imp.USER32.dll_SendMessageW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x14009a5d3
test byte [r14 + 9], 2
je 0x14009a841
inc eax
jmp 0x140099467
mov rcx, qword [r14]
xor r9d, r9d
mov r8, rax
mov edx, 0x18a
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, rbx
cmp rax, 0xffffffffffffffff
je 0x14009a5d6
xor r9d, r9d
mov r8, rax
xor edx, edx
mov byte [rsp + 0x20], 1
call fcn.1400b1500
cmp eax, 1
jne 0x14009af22
mov r12d, 1
xor r8d, r8d
mov rcx, rbx
mov edx, r12d
call fcn.140001820
mov rcx, qword [r14]
mov r8, rdi
mov r9, rax
mov edx, 0x189
call qword [sym.imp.USER32.dll_SendMessageW]
mov r15, rax
cmp rax, 0xffffffffffffffff
jne 0x14009a813
cmp byte [rbx + 0x23], 0
jne 0x14009a5a3
mov rax, qword [rbx + 0x10]
jmp 0x14009a5a6
mov rcx, qword [r14]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x130b
call qword [sym.imp.USER32.dll_SendMessageW]
movsxd rcx, eax
cmp rcx, 0xffffffffffffffff
je 0x14009a5d3
test byte [r14 + 9], 2
je 0x14009a8f5
lea eax, [rcx + 1]
jmp 0x140099467
mov r8, rcx
mov rcx, qword [r14]
lea rax, [rbp - 0x40]
lea r9, [rbp - 0x70]
mov r12d, 1
mov edx, 0x133c
mov qword [rbp - 0x60], rax
mov dword [rbp - 0x58], 0x3ff
mov dword [rbp - 0x70], r12d
call qword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
je 0x14009a5d3
movzx edx, byte [rbx + 0x23]
mov r15, qword [rbp - 0x60]
test dl, dl
jne 0x14009a957
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, r15
mov byte [rsp + 0x20], r12b
call fcn.1400b1500
mov r12d, eax
jmp 0x14009b26a
xor esi, esi
movzx r8d, r12b
lea r13, [0x1400e346c]
test r15, r15
jne 0x14009a97a
xor r8b, r8b
mov edi, esi
mov qword [rbp + 0x810], rsi
mov r15, r13
jmp 0x14009a9a3
cmp qword [rbx + 8], r15
jne 0x14009a989
mov rdi, qword [rbx + 0x10]
shr rdi, 1
jmp 0x14009a99c
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r15
repne scasw ax, word [rdi]
not rcx
lea rdi, [rcx - 1]
mov qword [rbp + 0x810], rdi
lea rax, [rdi + 1]
lea r14, [rax + rax]
cmp dl, 2
jne 0x14009a9c3
mov rdx, rdi
mov rcx, r15
call fcn.140006090
mov r12d, eax
jmp 0x14009b26a
mov r9, qword [0x140114480]
cmp r14, r9
jbe 0x14009a9f3
cmp r14, qword [rbx + 0x18]
jbe 0x14009a9f3
lea rdx, [0x1400fff00]
lea rcx, [0x14011b1d0]
mov r8, r13
call fcn.140040760
mov r12d, eax
jmp 0x14009b26a
cmp rax, 2
jae 0x14009aa13
test r8b, r8b
mov rcx, rbx
setne sil
xor r8d, r8d
lea edx, [rsi + 3]
call fcn.1400b1bb0
jmp 0x14009b26a
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14009aa30
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r9, qword [0x140114480]
mov r8, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp r14, r8
jbe 0x14009abab
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, r12b
jbe 0x14009aa66
cmp al, 2
je 0x14009aaa4
mov rdi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x14009ab98
mov edi, 0x80
cmp r14, rdi
ja 0x14009aaa4
cmp r14, 8
ja 0x14009aa7d
mov edi, 8
jmp 0x14009aa8a
mov r13d, reloc.OLEAUT32.dll_SafeArrayGetDim
cmp r14, r13
cmovbe rdi, r13
mov rcx, rdi
call fcn.1400aa420
test rax, rax
je 0x140099d9b
mov byte [rbx + 0x20], r12b
jmp 0x14009ab98
cmp r14, 0x20
jae 0x14009aab4
mov edi, SafeArrayAllocDescriptor
jmp 0x14009ab5e
mov edi, 0x208
cmp r14, rdi
jb 0x14009ab5e
cmp r14, 0x50000
jae 0x14009ab1a
pxor xmm0, xmm0
cvtsi2sd xmm0, r14
test r14, r14
jns 0x14009aae1
addsd xmm0, qword [0x140101ea8]
mulsd xmm0, qword [0x140101ee0]
movsd xmm1, qword [0x140101ed8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14009ab10
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14009ab10
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14009ab5e
cmp r14, 0x320000
jae 0x14009ab2c
lea rdi, [r14 + 0x8000]
jmp 0x14009ab5e
cmp r14, 0xc80000
jae 0x14009ab57
movabs rax, 0x47ae147ae147ae15
mov rdi, r14
mul r14
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, r14
jmp 0x14009ab5e
lea rdi, [r14 + 0x20000]
cmp rdi, r9
cmova rdi, r9
cmp r10b, 2
jne 0x14009ab7f
test r8, r8
je 0x14009ab7f
mov rcx, qword [rbx + 8]
movzx r14d, r12b
call fcn.1400cb13c
jmp 0x14009ab82
xor r14b, r14b
test rdi, rdi
js 0x14009abd5
mov rcx, rdi
call fcn.1400ca9c4
test rax, rax
je 0x14009abd5
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 0x18], rdi
mov rdi, qword [rbp + 0x810]
mov qword [rbx + 8], rax
mov rcx, qword [rbx + 8]
cmp rcx, r15
je 0x14009abc0
lea r8, [rdi + rdi]
mov rdx, r15
call fcn.1400cb300
mov rax, qword [rbx + 8]
lea rcx, [rdi + rdi]
mov word [rcx + rax], si
mov qword [rbx + 0x10], rcx
jmp 0x14009b26a
test r14b, r14b
je 0x14009abeb
lea rax, [0x14011b184]
mov qword [rbx + 0x18], rsi
mov qword [rbx + 8], rax
jmp 0x14009abf2
mov rax, qword [rbx + 8]
mov word [rax], si
lea rdx, [0x1400e6570]
lea rcx, [0x14011b1d0]
mov r8, r13
mov qword [rbx + 0x10], rsi
call fcn.140040760
mov r12d, eax
jmp 0x14009b26a
test dil, dil
jne 0x140099475
mov rcx, qword [r14]
call fcn.140085b10
mov rcx, rbx
test rax, rax
je 0x14009a5d6
mov rdx, rax
call fcn.1400b1880
jmp 0x14009b26d
test dil, dil
jne 0x140099475
mov rcx, qword [r14]
call qword [sym.imp.USER32.dll_GetWindowTextLengthW]
movzx ecx, byte [rbx + 0x23]
xor esi, esi
mov dword [rsp + 0x40], eax
movsxd r15, eax
test cl, cl
jne 0x14009ac7c
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
mov r8, r15
xor edx, edx
mov byte [rsp + 0x20], 1
call fcn.1400b1500
jmp 0x14009af1b
mov dl, 1
mov byte [rbp + 0x810], dl
movzx edi, dl
cmp r15, 0xffffffffffffffff
jne 0x14009ac95
xor dil, dil
mov r15, rsi
jmp 0x14009ac9d
xor dl, dl
mov byte [rbp + 0x810], dl
lea rax, [r15 + 1]
lea r12, [rax + rax]
cmp cl, 2
jne 0x14009acde
test dl, dl
je 0x14009acc2
lea rcx, [0x1400e346c]
mov rdx, r15
call fcn.140006090
jmp 0x14009af1b
lea rcx, [0x14011be28]
mov rdx, rax
call fcn.140006150
mov edx, esi
test rax, rax
setne dl
jmp 0x14009af1d
mov r8, qword [0x140114480]
cmp r12, r8
jbe 0x14009acfc
cmp r12, qword [rbx + 0x18]
jbe 0x14009acfc
lea rdx, [0x1400fff00]
jmp 0x14009af08
cmp rax, 2
jae 0x14009ad1d
mov edx, esi
test dil, dil
mov rcx, rbx
setne dl
xor r8d, r8d
add edx, 3
call fcn.1400b1bb0
jmp 0x14009af38
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14009ad3a
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r8, qword [0x140114480]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp r12, r9
jbe 0x14009aeb0
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14009ad71
cmp al, 2
je 0x14009adaf
mov rdi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x14009aea4
mov edi, 0x80
cmp r12, rdi
ja 0x14009adaf
cmp r12, 8
ja 0x14009ad88
mov edi, 8
jmp 0x14009ad95
mov r13d, reloc.OLEAUT32.dll_SafeArrayGetDim
cmp r12, r13
cmovbe rdi, r13
mov rcx, rdi
call fcn.1400aa420
test rax, rax
je 0x14009af22
mov byte [rbx + 0x20], 1
jmp 0x14009aea4
cmp r12, 0x20
jae 0x14009adbf
mov edi, SafeArrayAllocDescriptor
jmp 0x14009ae6b
mov edi, 0x208
cmp r12, rdi
jb 0x14009ae6b
cmp r12, 0x50000
jae 0x14009ae25
pxor xmm0, xmm0
cvtsi2sd xmm0, r12
test r12, r12
jns 0x14009adec
addsd xmm0, qword [0x140101ea8]
mulsd xmm0, qword [0x140101ee0]
movsd xmm1, qword [0x140101ed8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14009ae1b
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14009ae1b
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14009ae6b
cmp r12, 0x320000
jae 0x14009ae38
lea rdi, [r12 + 0x8000]
jmp 0x14009ae6b
cmp r12, 0xc80000
jae 0x14009ae63
movabs rax, 0x47ae147ae147ae15
mov rdi, r12
mul r12
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, r12
jmp 0x14009ae6b
lea rdi, [r12 + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14009ae8b
test r9, r9
je 0x14009ae8b
mov rcx, qword [rbx + 8]
mov r12b, 1
call fcn.1400cb13c
jmp 0x14009ae8e
xor r12b, r12b
test rdi, rdi
js 0x14009aee0
mov rcx, rdi
call fcn.1400ca9c4
test rax, rax
je 0x14009aee0
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
cmp byte [rbp + 0x810], sil
je 0x14009af29
mov rcx, qword [rbx + 8]
lea r13, [0x1400e346c]
cmp rcx, r13
je 0x14009aed5
lea r8, [r15 + r15]
mov rdx, r13
call fcn.1400cb300
mov rax, qword [rbx + 8]
mov word [rax + r15*2], si
jmp 0x14009af30
test r12b, r12b
je 0x14009aef6
lea rax, [0x14011b184]
mov qword [rbx + 0x18], rsi
mov qword [rbx + 8], rax
jmp 0x14009aefd
mov rax, qword [rbx + 8]
mov word [rax], si
mov qword [rbx + 0x10], rsi
lea rdx, [0x1400e6570]
lea r8, [0x1400e346c]
lea rcx, [0x14011b1d0]
call fcn.140040760
mov edx, eax
cmp edx, 1
je 0x14009af38
xor eax, eax
jmp 0x14009b26d
mov rax, qword [rbx + 8]
mov word [rax], si
lea rax, [r15 + r15]
mov qword [rbx + 0x10], rax
mov edi, dword [rsp + 0x40]
mov r12d, 1
xor r8d, r8d
mov edx, r12d
mov rcx, rbx
call fcn.140001820
mov rcx, qword [r14]
lea r8d, [rdi + 1]
mov rdx, rax
call qword [sym.imp.USER32.dll_GetWindowTextW]
movsxd r13, eax
cmp byte [rbx + 0x23], sil
jne 0x14009af6f
mov rdi, qword [rbx + 0x10]
jmp 0x14009af72
mov rdi, rbx
cmp byte [rdi + 0x23], r12b
jne 0x14009af8c
test byte [rdi + 0x21], 8
je 0x14009af86
mov rcx, rdi
call fcn.140001130
add rdi, 0x10
jmp 0x14009af93
lea rdi, [0x14011c000]
lea rax, [r13 + r13]
mov qword [rdi], rax
test r13, r13
jne 0x14009afb6
xor r8d, r8d
mov edx, r12d
mov rcx, rbx
call fcn.140001820
mov word [rax], si
jmp 0x14009b23b
cmp byte [r14 + 8], 0xc
jne 0x14009b23b
xor r8d, r8d
mov edx, r12d
mov rcx, rbx
or r15d, 0xffffffff
call fcn.140001820
or rcx, 0xffffffffffffffff
mov rdx, rax
mov qword [rsp + 0x40], rax
xor eax, eax
mov rdi, rdx
mov r14, rsi
mov r13, rsi
repne scasw ax, word [rdi]
mov qword [rsp + 0x70], rsi
not rcx
dec rcx
mov rax, rcx
mov qword [rsp + 0x78], rcx
cmp word [rdx], si
je 0x14009b212
cmp rax, 0x1388
jb 0x14009b1aa
mov dword [rbp + 0x810], esi
mov rdi, rdx
mov qword [rsp + 0x48], rdx
nop word [rax + rax]
lea rdx, [0x1400edd38]
mov rcx, rdi
call fcn.1400cb654
mov rcx, rax
mov qword [rbp - 0x78], rax
test rax, rax
je 0x14009b112
mov r10d, dword [rbp + 0x810]
mov rdi, rax
mov rax, qword [rsp + 0x48]
sub rdi, rax
inc r10d
dec r15d
sar rdi, 1
mov dword [rbp + 0x810], r10d
lea rdx, [rdi + r13]
mov qword [rbp - 0x80], rdx
inc rdx
cmp rdx, qword [rsp + 0x70]
jb 0x14009b0d3
movsxd r9, dword [rsp + 0x78]
mov rax, rcx
movsxd rcx, edx
sub rax, qword [rsp + 0x40]
mov r8d, r15d
mov edx, r10d
sar rax, 1
cdqe
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
or rcx, 0xffffffffffffffff
call fcn.1400adf10
mov rcx, r14
lea rdx, [rax + rax]
mov qword [rsp + 0x70], rax
call fcn.1400cbba4
test rax, rax
je 0x14009b159
mov r14, rax
mov rax, qword [rsp + 0x48]
test rdi, rdi
je 0x14009b0ec
lea r8, [rdi + rdi]
lea rcx, [r14 + r13*2]
mov rdx, rax
call fcn.1400cb300
mov r13, qword [rbp - 0x80]
movzx eax, word [0x1400ee8e4]
mov rdi, qword [rbp - 0x78]
inc r13
add rdi, 4
mov word [r14 + r13*2 - 2], ax
mov qword [rsp + 0x48], rdi
test r15d, r15d
jne 0x14009b030
mov eax, dword [rbp + 0x810]
test eax, eax
je 0x14009b212
mov r15, qword [rsp + 0x78]
mov rax, rdi
sub rax, qword [rsp + 0x40]
sar rax, 1
sub r15, rax
je 0x14009b189
lea rax, [r15 + r13]
mov qword [rbp + 0x810], rax
cmp rax, qword [rsp + 0x70]
jb 0x14009b172
lea rdx, [rax + rax + 2]
mov rcx, r14
call fcn.1400cbba4
test rax, rax
jne 0x14009b16f
test r14, r14
je 0x14009b212
mov rcx, r14
call fcn.1400cb13c
jmp 0x14009b212
mov r14, rax
lea r8, [r15 + r15]
lea rcx, [r14 + r13*2]
mov rdx, rdi
call fcn.1400cb300
mov r13, qword [rbp + 0x810]
mov rcx, qword [rsp + 0x40]
lea r8, [r13 + r13 + 2]
mov rdx, r14
mov word [r14 + r13*2], si
call fcn.1400cb300
mov rcx, r14
call fcn.1400cb13c
jmp 0x14009b212
mov r13, qword [rsp + 0x78]
mov rsi, rdx
mov rbx, rdx
nop word [rax + rax]
lea rdx, [0x1400edd38]
mov rcx, rsi
call fcn.1400cb654
mov rdi, rax
test rax, rax
je 0x14009b20d
mov rcx, rax
lea rsi, [rax + 2]
mov r8, r13
sub rcx, rbx
lea rdx, [rax + 4]
sar rcx, 1
sub r8, rcx
mov rcx, rsi
lea r8, [r8 + r8 - 2]
call fcn.1400cb300
movzx eax, word [0x1400ee8e4]
dec r13
dec r15d
mov word [rdi], ax
jne 0x14009b1c0
mov rbx, qword [rsp + 0x48]
xor r8d, r8d
mov edx, r12d
mov rcx, rbx
call fcn.140001820
or rcx, 0xffffffffffffffff
mov rdi, rax
xor eax, eax
repne scasw ax, word [rdi]
not rcx
lea rdx, [rcx - 1]
mov rcx, rbx
call fcn.14001c4f0
cmp byte [rbx + 0x23], 0
jne 0x14009b245
mov rbx, qword [rbx + 0x10]
cmp byte [rbx + 0x23], 2
jne 0x14009b266
cmp qword [0x14011be40], 0
je 0x14009b266
lea rcx, [0x14011be28]
call fcn.140006210
mov r12d, eax
jmp 0x14009b26a
and byte [rbx + 0x21], 0x86
mov eax, r12d
mov rbx, qword [rsp + 0x908]
add rsp, 0x8c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret