Function at 0x1400a5560
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, [0x1400f7be8]
mov rcx, r9
mov rsi, r9
mov r14, r8
call fcn.1400d6a7c
lea r12, [0x140000000]
test eax, eax
movzx eax, byte [r14 + 8]
sete dil
add eax, 0xfffffff3
cmp eax, 5
ja case.default.0x1400a55cc
cdqe
mov ecx, dword [r12 + rax*4 + 0xa7418]
add rcx, r12
jmp rcx
mov rcx, qword [r14]
xor r9d, r9d
xor r8d, r8d
test byte [r14 + 9], 0x80
je 0x1400a55eb
mov edx, 0x472
call qword [sym.imp.USER32.DLL_SendMessageW]
jmp 0x1400a55f7
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 0x1400a73fd
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.1400a9ee0
jmp 0x1400a55f7
test dil, dil
jne 0x1400a5605
mov rcx, qword [r14]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x408
call qword [sym.imp.USER32.DLL_SendMessageW]
jmp 0x1400a55f7
mov rcx, qword [r14]
lea r9, [rsp + 0x50]
xor r8d, r8d
mov edx, 0x1001
call qword [sym.imp.USER32.DLL_SendMessageW]
lea r13, [0x1400f1524]
test eax, eax
jne 0x1400a56b2
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, [0x140111980]
lea rcx, [rbp - 0x40]
mov dword [rsp + 0x20], edi
call fcn.1400d77e8
lea r14, [rbp - 0x40]
jmp 0x1400a56b5
mov r14, r13
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x1400a56dd
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, r14
mov byte [rsp + 0x20], 1
call fcn.1400bd640
mov r12d, eax
jmp 0x1400a73fa
xor esi, esi
mov r9b, 1
test r14, r14
jne 0x1400a56f2
xor r9b, r9b
mov r15d, esi
mov r14, r13
jmp 0x1400a5714
cmp qword [rbx + 8], r14
jne 0x1400a5701
mov r15, qword [rbx + 0x10]
shr r15, 1
jmp 0x1400a5714
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 0x1400a5734
mov rdx, r15
mov rcx, r14
call fcn.140006da0
mov r12d, eax
jmp 0x1400a73fa
mov r8, qword [0x1401255a0]
cmp r12, r8
jbe 0x1400a5764
cmp r12, qword [rbx + 0x18]
jbe 0x1400a5764
mov r8, r13
lea rdx, [0x140110420]
lea rcx, [0x14012c5c0]
call fcn.14004e590
mov r12d, eax
jmp 0x1400a73fa
cmp rax, 2
jae 0x1400a578a
test r9b, r9b
mov rcx, rbx
setne sil
xor r8d, r8d
lea edx, [rsi + 3]
call fcn.1400bdcf0
mov r12d, 1
jmp 0x1400a73fa
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400a57a7
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 [0x1401255a0]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp r12, r9
jbe 0x1400a591d
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x1400a57de
cmp al, 2
je 0x1400a581c
mov rdi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x1400a5911
mov edi, 0x80
cmp r12, rdi
ja 0x1400a581c
cmp r12, 8
ja 0x1400a57f5
mov edi, 8
jmp 0x1400a5802
mov r13d, reloc.OLEAUT32.DLL_SafeArrayGetDim
cmp r12, r13
cmovbe rdi, r13
mov rcx, rdi
call fcn.1400b60a0
test rax, rax
je 0x1400a5f2b
mov byte [rbx + 0x20], 1
jmp 0x1400a5911
cmp r12, 0x20
jae 0x1400a582c
mov edi, SafeArrayAllocDescriptor
jmp 0x1400a58d8
mov edi, 0x208
cmp r12, rdi
jb 0x1400a58d8
cmp r12, 0x50000
jae 0x1400a5892
pxor xmm0, xmm0
cvtsi2sd xmm0, r12
test r12, r12
jns 0x1400a5859
addsd xmm0, qword [0x140112018]
mulsd xmm0, qword [0x140112050]
movsd xmm1, qword [0x140112048]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x1400a5888
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x1400a5888
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x1400a58d8
cmp r12, 0x320000
jae 0x1400a58a5
lea rdi, [r12 + 0x8000]
jmp 0x1400a58d8
cmp r12, 0xc80000
jae 0x1400a58d0
movabs rax, 0x47ae147ae147ae15
mov rdi, r12
mul r12
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, r12
jmp 0x1400a58d8
lea rdi, [r12 + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x1400a58f8
test r9, r9
je 0x1400a58f8
mov rcx, qword [rbx + 8]
mov r12b, 1
call fcn.1400d6fc8
jmp 0x1400a58fb
xor r12b, r12b
test rdi, rdi
js 0x1400a594d
mov rcx, rdi
call fcn.1400d6f08
test rax, rax
je 0x1400a594d
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 0x1400a5932
lea r8, [r15 + r15]
mov rdx, r14
call fcn.1400d7a30
lea rcx, [r15 + r15]
mov rax, qword [rbx + 8]
mov r12d, 1
mov word [rcx + rax], si
mov qword [rbx + 0x10], rcx
jmp 0x1400a73fa
test r12b, r12b
je 0x1400a5963
lea rax, [0x14012c4b8]
mov qword [rbx + 0x18], rsi
mov qword [rbx + 8], rax
jmp 0x1400a596a
mov rax, qword [rbx + 8]
mov word [rax], si
lea rdx, [0x1400f5a40]
lea rcx, [0x14012c5c0]
mov r8, r13
mov qword [rbx + 0x10], rsi
call fcn.14004e590
mov r12d, eax
jmp 0x1400a73fa
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 0x1400a5bcc
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, [0x140111980]
lea rcx, [rbp - 0x40]
mov dword [rsp + 0x20], edi
call fcn.1400d77e8
mov edx, 0x2d
mov word [rbp - 0x30], dx
lea rcx, [rbp - 0x2e]
lea rdx, [rsp + 0x60]
call fcn.1400b8fe0
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x1400a5a37
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
lea rdx, [rbp - 0x40]
lea r8d, [r9 + 0x11]
mov byte [rsp + 0x20], 1
call fcn.1400bd640
mov esi, eax
jmp 0x1400a73fd
cmp dl, 2
jne 0x1400a5a51
lea rcx, [rbp - 0x40]
mov edx, reloc.OLEAUT32.DLL_SafeArrayGetElemsize
call fcn.140006da0
mov esi, eax
jmp 0x1400a73fd
mov rcx, qword [0x1401255a0]
cmp rcx, 0x24
jae 0x1400a5a86
cmp qword [rbx + 0x18], 0x24
jae 0x1400a5a86
lea r8, [0x1400f1524]
lea rdx, [0x140110420]
lea rcx, [0x14012c5c0]
call fcn.14004e590
mov esi, eax
jmp 0x1400a73fd
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400a5aa3
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 [0x1401255a0]
mov rax, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rax, 0x24
jae 0x1400a5b92
movzx r8d, byte [rbx + 0x20]
movzx edx, r8b
cmp r8b, 1
jbe 0x1400a5b66
cmp dl, 2
je 0x1400a5ae0
mov rsi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x1400a5b86
mov edi, 0x208
cmp rcx, rdi
mov esi, edi
cmovb rsi, rcx
cmp r8b, 2
jne 0x1400a5b07
test rax, rax
je 0x1400a5b07
mov rcx, qword [rbx + 8]
mov dil, 1
call fcn.1400d6fc8
jmp 0x1400a5b0a
xor dil, dil
test rsi, rsi
js 0x1400a5b22
mov rcx, rsi
call fcn.1400d6f08
test rax, rax
je 0x1400a5b22
mov byte [rbx + 0x20], 2
jmp 0x1400a5b86
xor esi, esi
test dil, dil
je 0x1400a5b3a
lea rax, [0x14012c4b8]
mov qword [rbx + 0x18], rsi
mov qword [rbx + 8], rax
jmp 0x1400a5b41
mov rax, qword [rbx + 8]
mov word [rax], si
lea r8, [0x1400f1524]
lea rdx, [0x1400f5a40]
lea rcx, [0x14012c5c0]
mov qword [rbx + 0x10], rsi
call fcn.14004e590
mov esi, eax
jmp 0x1400a73fd
mov edi, 0x80
mov ecx, edi
mov esi, edi
call fcn.1400b60a0
test rax, rax
jne 0x1400a5b82
xor esi, esi
mov eax, esi
jmp 0x1400a73fd
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 0x1400a5bae
lea rdx, [rbp - 0x40]
mov r8d, SafeArrayAllocDescriptor
call fcn.1400d7a30
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 0x1400a73fd
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, [0x140111980]
lea rcx, [rbp - 0x40]
mov dword [rsp + 0x20], edi
call fcn.1400d77e8
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x1400a5c3f
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
lea rdx, [rbp - 0x40]
lea r8d, [r9 + 8]
mov byte [rsp + 0x20], 1
call fcn.1400bd640
mov esi, eax
jmp 0x1400a73fd
cmp dl, 2
jne 0x1400a5c59
lea rcx, [rbp - 0x40]
mov edx, 8
call fcn.140006da0
mov esi, eax
jmp 0x1400a73fd
mov rcx, qword [0x1401255a0]
cmp rcx, 0x12
jae 0x1400a5c8e
cmp qword [rbx + 0x18], 0x12
jae 0x1400a5c8e
lea r8, [0x1400f1524]
lea rdx, [0x140110420]
lea rcx, [0x14012c5c0]
call fcn.14004e590
mov esi, eax
jmp 0x1400a73fd
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400a5cab
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 [0x1401255a0]
mov rax, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rax, 0x12
jae 0x1400a5d98
movzx r8d, byte [rbx + 0x20]
movzx edx, r8b
cmp r8b, 1
jbe 0x1400a5d6e
cmp dl, 2
je 0x1400a5ce8
mov rdi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x1400a5d8c
mov edi, SafeArrayAllocDescriptor
cmp rcx, rdi
cmovb rdi, rcx
cmp r8b, 2
jne 0x1400a5d0d
test rax, rax
je 0x1400a5d0d
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400d6fc8
jmp 0x1400a5d10
xor sil, sil
test rdi, rdi
js 0x1400a5d28
mov rcx, rdi
call fcn.1400d6f08
test rax, rax
je 0x1400a5d28
mov byte [rbx + 0x20], 2
jmp 0x1400a5d8c
test sil, sil
je 0x1400a5d40
lea rax, [0x14012c4b8]
xor esi, esi
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rsi
jmp 0x1400a5d49
mov rax, qword [rbx + 8]
xor esi, esi
mov word [rax], si
lea r8, [0x1400f1524]
lea rdx, [0x1400f5a40]
lea rcx, [0x14012c5c0]
mov qword [rbx + 0x10], rsi
call fcn.14004e590
mov esi, eax
jmp 0x1400a73fd
mov edi, 0x80
mov ecx, edi
call fcn.1400b60a0
test rax, rax
jne 0x1400a5d88
xor esi, esi
mov eax, esi
jmp 0x1400a73fd
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 0x1400a5db7
lea rdx, [rbp - 0x40]
mov r8d, r13d
call fcn.1400d7a30
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 0x1400a73fd
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.1400a9c50
movzx r11d, byte [rbx + 0x23]
test r11b, r11b
jne 0x1400a5e1c
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp - 0x40]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bd640
mov r12d, eax
jmp 0x1400a73fa
lea rax, [rbp - 0x40]
cmp qword [rbx + 8], rax
jne 0x1400a5e2f
mov r12, qword [rbx + 0x10]
shr r12, 1
jmp 0x1400a5e43
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 0x1400a5e66
lea rcx, [rbp - 0x40]
mov rdx, r12
call fcn.140006da0
mov r12d, eax
jmp 0x1400a73fa
mov rcx, qword [0x1401255a0]
cmp rsi, rcx
jbe 0x1400a5e84
cmp rsi, qword [rbx + 0x18]
jbe 0x1400a5e84
lea r8, [0x1400f1524]
jmp 0x1400a5749
cmp rax, 2
jae 0x1400a5ea4
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400bdcf0
mov r12d, 1
jmp 0x1400a73fa
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400a5ec1
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 [0x1401255a0]
mov r8, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r8
jbe 0x1400a603b
movzx r9d, byte [rbx + 0x20]
movzx eax, r9b
cmp r9b, 1
jbe 0x1400a5ef8
cmp al, 2
je 0x1400a5f3c
mov rdi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x1400a602f
mov edi, 0x80
cmp rsi, rdi
ja 0x1400a5f3c
cmp rsi, 8
ja 0x1400a5f0f
mov edi, 8
jmp 0x1400a5f1c
mov r13d, reloc.OLEAUT32.DLL_SafeArrayGetDim
cmp rsi, r13
cmovbe rdi, r13
mov rcx, rdi
call fcn.1400b60a0
test rax, rax
jne 0x1400a5f33
xor esi, esi
mov r12d, esi
jmp 0x1400a73fa
mov byte [rbx + 0x20], 1
jmp 0x1400a602f
cmp rsi, 0x20
jae 0x1400a5f4c
mov edi, SafeArrayAllocDescriptor
jmp 0x1400a5ff6
mov edi, 0x208
cmp rsi, rdi
jb 0x1400a5ff6
cmp rsi, 0x50000
jae 0x1400a5fb2
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x1400a5f79
addsd xmm0, qword [0x140112018]
mulsd xmm0, qword [0x140112050]
movsd xmm1, qword [0x140112048]
xor edx, edx
comisd xmm0, xmm1
jbe 0x1400a5fa8
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x1400a5fa8
movabs rax, 0x8000000000000000
mov rdx, rax
cvttsd2si rdi, xmm0
add rdi, rdx
jmp 0x1400a5ff6
cmp rsi, 0x320000
jae 0x1400a5fc4
lea rdi, [rsi + 0x8000]
jmp 0x1400a5ff6
cmp rsi, 0xc80000
jae 0x1400a5fef
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x1400a5ff6
lea rdi, [rsi + 0x20000]
cmp rdi, rcx
cmova rdi, rcx
cmp r9b, 2
jne 0x1400a6016
test r8, r8
je 0x1400a6016
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400d6fc8
jmp 0x1400a6019
xor sil, sil
test rdi, rdi
js 0x1400a6060
mov rcx, rdi
call fcn.1400d6f08
test rax, rax
je 0x1400a6060
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 0x1400a6055
lea rdx, [rbp - 0x40]
lea r8, [r12 + r12]
call fcn.1400d7a30
lea rcx, [r12 + r12]
xor esi, esi
jmp 0x1400a5936
test sil, sil
je 0x1400a6078
lea rax, [0x14012c4b8]
xor esi, esi
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rsi
jmp 0x1400a6081
mov rax, qword [rbx + 8]
xor esi, esi
mov word [rax], si
lea r8, [0x1400f1524]
lea rdx, [0x1400f5a40]
lea rcx, [0x14012c5c0]
mov qword [rbx + 0x10], rsi
call fcn.14004e590
mov r12d, eax
jmp 0x1400a73fa
lea rdx, [0x1400f62a8]
mov rcx, rsi
call fcn.1400d6a7c
test eax, eax
je case.0x1400a60db.12
movzx eax, byte [r14 + 8]
dec eax
cmp eax, 0x16
ja case.0x1400a60db.12
cdqe
mov ecx, dword [r12 + rax*4 + 0xa7430]
add rcx, r12
jmp rcx
mov rcx, qword [r14]
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf0
call qword [sym.imp.USER32.DLL_SendMessageW]
test rax, rax
je 0x1400a65a1
dec rax
je 0x1400a6342
dec rax
jne 0x1400a70b2
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x1400a6138
mov rcx, qword [rbx + 0x10]
lea rdx, [0x1400f5688]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bd640
mov r12d, eax
jmp 0x1400a73fa
lea r14, [0x1400f5688]
cmp qword [rbx + 8], r14
jne 0x1400a614e
mov r12, qword [rbx + 0x10]
shr r12, 1
jmp 0x1400a6154
mov r12d, 2
lea rdx, [r12 + 1]
lea rsi, [rdx + rdx]
cmp al, 2
jne 0x1400a6174
mov rdx, r12
mov rcx, r14
call fcn.140006da0
mov r12d, eax
jmp 0x1400a73fa
mov rcx, qword [0x1401255a0]
cmp rsi, rcx
jbe 0x1400a618a
cmp rsi, qword [rbx + 0x18]
ja 0x1400a5e78
cmp rdx, 2
jb 0x1400a5e8a
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400a61b1
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 [0x1401255a0]
mov r8, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r8
jbe 0x1400a632d
movzx r9d, byte [rbx + 0x20]
movzx eax, r9b
cmp r9b, 1
jbe 0x1400a61e8
cmp al, 2
je 0x1400a6226
mov rdi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x1400a6321
mov edi, 0x80
cmp rsi, rdi
ja 0x1400a6226
cmp rsi, 8
ja 0x1400a61ff
mov edi, 8
jmp 0x1400a620c
mov r13d, reloc.OLEAUT32.DLL_SafeArrayGetDim
cmp rsi, r13
cmovbe rdi, r13
mov rcx, rdi
call fcn.1400b60a0
test rax, rax
je 0x1400a5f29
mov byte [rbx + 0x20], 1
jmp 0x1400a6321
cmp rsi, 0x20
jae 0x1400a6236
mov edi, SafeArrayAllocDescriptor
jmp 0x1400a62e0
mov edi, 0x208
cmp rsi, rdi
jb 0x1400a62e0
cmp rsi, 0x50000
jae 0x1400a629c
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x1400a6263
addsd xmm0, qword [0x140112018]
mulsd xmm0, qword [0x140112050]
movsd xmm1, qword [0x140112048]
xor edx, edx
comisd xmm0, xmm1
jbe 0x1400a6292
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x1400a6292
movabs rax, 0x8000000000000000
mov rdx, rax
cvttsd2si rdi, xmm0
add rdi, rdx
jmp 0x1400a62e0
cmp rsi, 0x320000
jae 0x1400a62ae
lea rdi, [rsi + 0x8000]
jmp 0x1400a62e0
cmp rsi, 0xc80000
jae 0x1400a62d9
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x1400a62e0
lea rdi, [rsi + 0x20000]
cmp rdi, rcx
cmova rdi, rcx
cmp r9b, 2
jne 0x1400a6300
test r8, r8
je 0x1400a6300
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400d6fc8
jmp 0x1400a6303
xor sil, sil
test rdi, rdi
js 0x1400a6060
mov rcx, rdi
call fcn.1400d6f08
test rax, rax
je 0x1400a6060
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 0x1400a6055
mov rdx, r14
jmp 0x1400a604c
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x1400a636e
mov rcx, qword [rbx + 0x10]
lea rdx, [0x1400f566c]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bd640
mov r12d, eax
jmp 0x1400a73fa
lea r15, [0x1400f566c]
mov r12d, 1
cmp qword [rbx + 8], r15
jne 0x1400a638a
mov r14, qword [rbx + 0x10]
shr r14, 1
jmp 0x1400a638d
mov r14, r12
lea rcx, [r14 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
jne 0x1400a63ac
mov rdx, r14
mov rcx, r15
call fcn.140006da0
mov r12d, eax
jmp 0x1400a73fa
mov r8, qword [0x1401255a0]
cmp rsi, r8
jbe 0x1400a63c2
cmp rsi, qword [rbx + 0x18]
ja 0x1400a5e78
cmp rcx, 2
jae 0x1400a63dc
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400bdcf0
jmp 0x1400a73fa
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400a63f9
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 [0x1401255a0]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x1400a6575
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, r12b
jbe 0x1400a642f
cmp al, 2
je 0x1400a646d
mov rdi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x1400a6569
mov edi, 0x80
cmp rsi, rdi
ja 0x1400a646d
cmp rsi, 8
ja 0x1400a6446
mov edi, 8
jmp 0x1400a6453
mov r13d, reloc.OLEAUT32.DLL_SafeArrayGetDim
cmp rsi, r13
cmovbe rdi, r13
mov rcx, rdi
call fcn.1400b60a0
test rax, rax
je 0x1400a5f29
mov byte [rbx + 0x20], r12b
jmp 0x1400a6569
cmp rsi, 0x20
jae 0x1400a647d
mov edi, SafeArrayAllocDescriptor
jmp 0x1400a6527
mov edi, 0x208
cmp rsi, rdi
jb 0x1400a6527
cmp rsi, 0x50000
jae 0x1400a64e3
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x1400a64aa
addsd xmm0, qword [0x140112018]
mulsd xmm0, qword [0x140112050]
movsd xmm1, qword [0x140112048]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x1400a64d9
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x1400a64d9
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x1400a6527
cmp rsi, 0x320000
jae 0x1400a64f5
lea rdi, [rsi + 0x8000]
jmp 0x1400a6527
cmp rsi, 0xc80000
jae 0x1400a6520
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x1400a6527
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x1400a6548
test r9, r9
je 0x1400a6548
mov rcx, qword [rbx + 8]
movzx esi, r12b
call fcn.1400d6fc8
jmp 0x1400a654b
xor sil, sil
test rdi, rdi
js 0x1400a6060
mov rcx, rdi
call fcn.1400d6f08
test rax, rax
je 0x1400a6060
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 0x1400a658a
lea r8, [r14 + r14]
mov rdx, r15
call fcn.1400d7a30
mov rax, qword [rbx + 8]
lea rcx, [r14 + r14]
xor esi, esi
mov word [rcx + rax], si
mov qword [rbx + 0x10], rcx
jmp 0x1400a73fa
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x1400a65cd
mov rcx, qword [rbx + 0x10]
lea rdx, [0x1400f1614]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bd640
mov r12d, eax
jmp 0x1400a73fa
lea r15, [0x1400f1614]
mov r12d, 1
cmp qword [rbx + 8], r15
jne 0x1400a65e9
mov r14, qword [rbx + 0x10]
shr r14, 1
jmp 0x1400a65ec
mov r14, r12
lea rcx, [r14 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
je 0x1400a6399
mov r8, qword [0x1401255a0]
cmp rsi, r8
jbe 0x1400a6612
cmp rsi, qword [rbx + 0x18]
ja 0x1400a5e78
cmp rcx, 2
jb 0x1400a63c8
jmp 0x1400a63dc
test byte [r14 + 9], 2
je case.0x1400a60db.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 0x1400a6766
inc eax
jmp 0x1400a55fa
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 0x1400a66ae
mov rcx, qword [r14]
lea rdx, [rbp - 0x40]
mov r8d, 0x400
call qword [sym.imp.USER32.DLL_GetWindowTextW]
test eax, eax
je case.0x1400a60db.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.0x1400a60db.12
test byte [r14 + 9], 2
je 0x1400a66bd
lea eax, [rdi + 1]
jmp 0x1400a55f7
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 0x1400a6766
xor r9d, r9d
mov r8, rax
xor edx, edx
mov byte [rsp + 0x20], 1
call fcn.1400bd640
cmp eax, 1
jne 0x1400a70b2
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 0x1400a6770
cmp byte [rbx + 0x23], 0
jne 0x1400a6733
mov rax, qword [rbx + 0x10]
jmp 0x1400a6736
mov rax, rbx
cmp byte [rax + 0x23], 2
jne 0x1400a675f
cmp qword [0x14012d240], 0
je 0x1400a675f
lea rcx, [0x14012d228]
call fcn.140006f20
mov rcx, rbx
call fcn.1400243d0
jmp 0x1400a73fd
and byte [rax + 0x21], 0x86
mov rcx, rbx
call fcn.1400243d0
jmp 0x1400a73fd
mov rdx, rax
jmp 0x1400a73c3
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 0x1400a69ab
mov edx, 0x190
call qword [sym.imp.USER32.DLL_SendMessageW]
mov rdi, rax
cmp rax, 1
jl 0x1400a6763
lea rcx, [rax*4]
call fcn.1400d6f08
mov r12, rax
mov qword [rsp + 0x40], rax
test rax, rax
je 0x1400a6763
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 0x1400a6801
mov rcx, r12
call fcn.1400d6fc8
mov rcx, rbx
call fcn.1400243d0
jmp 0x1400a73fd
xor esi, esi
test byte [r14 + 9], 2
lea r15, [rax - 1]
mov r13d, esi
je 0x1400a6861
test rax, rax
jle 0x1400a689a
mov rbx, rax
nop dword [rax]
mov ecx, dword [r12 + r13*4]
lea rdx, [rbp - 0x40]
mov r8d, 0xa
inc ecx
call fcn.1400d67d0
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 0x1400a6820
mov rbx, qword [rsp + 0x48]
mov rdi, qword [rbp + 0x810]
jmp 0x1400a689a
test rax, rax
jle 0x1400a689a
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 0x1400a67ec
inc r13
add r15, rax
cmp r13, rdi
jl 0x1400a6870
xor r9d, r9d
mov r8, r15
xor edx, edx
mov rcx, rbx
mov byte [rsp + 0x20], 1
call fcn.1400bd640
cmp eax, 1
jne 0x1400a70b2
mov r12d, 1
xor r8d, r8d
mov rcx, rbx
mov edx, r12d
call fcn.140001820
test byte [r14 + 9], 2
mov r13, rax
je 0x1400a6937
test rdi, rdi
jle 0x1400a6999
mov r14, qword [rbp + 0x810]
mov rbx, qword [rsp + 0x40]
mov r12, qword [rbp + 0x800]
test rsi, rsi
je 0x1400a6906
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.1400d67d0
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 0x1400a68f2
jmp 0x1400a698e
lea r15, [rdi - 1]
test rdi, rdi
jle 0x1400a6999
mov rbx, qword [rsp + 0x40]
mov r12, qword [rbp + 0x800]
nop dword [rax]
test rsi, rsi
je 0x1400a6964
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 0x1400a6986
add r15, rax
lea r13, [r13 + rax*2]
inc rsi
cmp rsi, rdi
jl 0x1400a6950
mov rbx, qword [rsp + 0x48]
mov r12d, 1
mov rcx, qword [rsp + 0x40]
call fcn.1400d6fc8
mov rdx, r15
jmp 0x1400a73c3
mov edx, 0x188
call qword [sym.imp.USER32.DLL_SendMessageW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x1400a6763
test byte [r14 + 9], 2
je 0x1400a69d1
inc eax
jmp 0x1400a55f7
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 0x1400a6766
xor r9d, r9d
mov r8, rax
xor edx, edx
mov byte [rsp + 0x20], 1
call fcn.1400bd640
cmp eax, 1
jne 0x1400a70b2
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 0x1400a69a3
cmp byte [rbx + 0x23], 0
jne 0x1400a6733
mov rax, qword [rbx + 0x10]
jmp 0x1400a6736
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 0x1400a6763
test byte [r14 + 9], 2
je 0x1400a6a85
lea eax, [rcx + 1]
jmp 0x1400a55f7
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 0x1400a6763
movzx edx, byte [rbx + 0x23]
mov r15, qword [rbp - 0x60]
test dl, dl
jne 0x1400a6ae7
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, r15
mov byte [rsp + 0x20], r12b
call fcn.1400bd640
mov r12d, eax
jmp 0x1400a73fa
xor esi, esi
movzx r8d, r12b
lea r13, [0x1400f1524]
test r15, r15
jne 0x1400a6b0a
xor r8b, r8b
mov edi, esi
mov qword [rbp + 0x810], rsi
mov r15, r13
jmp 0x1400a6b33
cmp qword [rbx + 8], r15
jne 0x1400a6b19
mov rdi, qword [rbx + 0x10]
shr rdi, 1
jmp 0x1400a6b2c
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 0x1400a6b53
mov rdx, rdi
mov rcx, r15
call fcn.140006da0
mov r12d, eax
jmp 0x1400a73fa
mov r9, qword [0x1401255a0]
cmp r14, r9
jbe 0x1400a6b83
cmp r14, qword [rbx + 0x18]
jbe 0x1400a6b83
lea rdx, [0x140110420]
lea rcx, [0x14012c5c0]
mov r8, r13
call fcn.14004e590
mov r12d, eax
jmp 0x1400a73fa
cmp rax, 2
jae 0x1400a6ba3
test r8b, r8b
mov rcx, rbx
setne sil
xor r8d, r8d
lea edx, [rsi + 3]
call fcn.1400bdcf0
jmp 0x1400a73fa
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400a6bc0
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 [0x1401255a0]
mov r8, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp r14, r8
jbe 0x1400a6d3b
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, r12b
jbe 0x1400a6bf6
cmp al, 2
je 0x1400a6c34
mov rdi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x1400a6d28
mov edi, 0x80
cmp r14, rdi
ja 0x1400a6c34
cmp r14, 8
ja 0x1400a6c0d
mov edi, 8
jmp 0x1400a6c1a
mov r13d, reloc.OLEAUT32.DLL_SafeArrayGetDim
cmp r14, r13
cmovbe rdi, r13
mov rcx, rdi
call fcn.1400b60a0
test rax, rax
je 0x1400a5f2b
mov byte [rbx + 0x20], r12b
jmp 0x1400a6d28
cmp r14, 0x20
jae 0x1400a6c44
mov edi, SafeArrayAllocDescriptor
jmp 0x1400a6cee
mov edi, 0x208
cmp r14, rdi
jb 0x1400a6cee
cmp r14, 0x50000
jae 0x1400a6caa
pxor xmm0, xmm0
cvtsi2sd xmm0, r14
test r14, r14
jns 0x1400a6c71
addsd xmm0, qword [0x140112018]
mulsd xmm0, qword [0x140112050]
movsd xmm1, qword [0x140112048]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x1400a6ca0
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x1400a6ca0
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x1400a6cee
cmp r14, 0x320000
jae 0x1400a6cbc
lea rdi, [r14 + 0x8000]
jmp 0x1400a6cee
cmp r14, 0xc80000
jae 0x1400a6ce7
movabs rax, 0x47ae147ae147ae15
mov rdi, r14
mul r14
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, r14
jmp 0x1400a6cee
lea rdi, [r14 + 0x20000]
cmp rdi, r9
cmova rdi, r9
cmp r10b, 2
jne 0x1400a6d0f
test r8, r8
je 0x1400a6d0f
mov rcx, qword [rbx + 8]
movzx r14d, r12b
call fcn.1400d6fc8
jmp 0x1400a6d12
xor r14b, r14b
test rdi, rdi
js 0x1400a6d65
mov rcx, rdi
call fcn.1400d6f08
test rax, rax
je 0x1400a6d65
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 0x1400a6d50
lea r8, [rdi + rdi]
mov rdx, r15
call fcn.1400d7a30
mov rax, qword [rbx + 8]
lea rcx, [rdi + rdi]
mov word [rcx + rax], si
mov qword [rbx + 0x10], rcx
jmp 0x1400a73fa
test r14b, r14b
je 0x1400a6d7b
lea rax, [0x14012c4b8]
mov qword [rbx + 0x18], rsi
mov qword [rbx + 8], rax
jmp 0x1400a6d82
mov rax, qword [rbx + 8]
mov word [rax], si
lea rdx, [0x1400f5a40]
lea rcx, [0x14012c5c0]
mov r8, r13
mov qword [rbx + 0x10], rsi
call fcn.14004e590
mov r12d, eax
jmp 0x1400a73fa
test dil, dil
jne 0x1400a5605
mov rcx, qword [r14]
call fcn.140092300
mov rcx, rbx
test rax, rax
je 0x1400a6766
mov rdx, rax
call fcn.1400bd9c0
jmp 0x1400a73fd
test dil, dil
jne 0x1400a5605
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 0x1400a6e0c
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
mov r8, r15
xor edx, edx
mov byte [rsp + 0x20], 1
call fcn.1400bd640
jmp 0x1400a70ab
mov dl, 1
mov byte [rbp + 0x810], dl
movzx edi, dl
cmp r15, 0xffffffffffffffff
jne 0x1400a6e25
xor dil, dil
mov r15, rsi
jmp 0x1400a6e2d
xor dl, dl
mov byte [rbp + 0x810], dl
lea rax, [r15 + 1]
lea r12, [rax + rax]
cmp cl, 2
jne 0x1400a6e6e
test dl, dl
je 0x1400a6e52
lea rcx, [0x1400f1524]
mov rdx, r15
call fcn.140006da0
jmp 0x1400a70ab
lea rcx, [0x14012d228]
mov rdx, rax
call fcn.140006e60
mov edx, esi
test rax, rax
setne dl
jmp 0x1400a70ad
mov r8, qword [0x1401255a0]
cmp r12, r8
jbe 0x1400a6e8c
cmp r12, qword [rbx + 0x18]
jbe 0x1400a6e8c
lea rdx, [0x140110420]
jmp 0x1400a7098
cmp rax, 2
jae 0x1400a6ead
mov edx, esi
test dil, dil
mov rcx, rbx
setne dl
xor r8d, r8d
add edx, 3
call fcn.1400bdcf0
jmp 0x1400a70c8
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400a6eca
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 [0x1401255a0]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp r12, r9
jbe 0x1400a7040
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x1400a6f01
cmp al, 2
je 0x1400a6f3f
mov rdi, qword [rbp + 0x810]
mov rax, qword [rbp + 0x810]
jmp 0x1400a7034
mov edi, 0x80
cmp r12, rdi
ja 0x1400a6f3f
cmp r12, 8
ja 0x1400a6f18
mov edi, 8
jmp 0x1400a6f25
mov r13d, reloc.OLEAUT32.DLL_SafeArrayGetDim
cmp r12, r13
cmovbe rdi, r13
mov rcx, rdi
call fcn.1400b60a0
test rax, rax
je 0x1400a70b2
mov byte [rbx + 0x20], 1
jmp 0x1400a7034
cmp r12, 0x20
jae 0x1400a6f4f
mov edi, SafeArrayAllocDescriptor
jmp 0x1400a6ffb
mov edi, 0x208
cmp r12, rdi
jb 0x1400a6ffb
cmp r12, 0x50000
jae 0x1400a6fb5
pxor xmm0, xmm0
cvtsi2sd xmm0, r12
test r12, r12
jns 0x1400a6f7c
addsd xmm0, qword [0x140112018]
mulsd xmm0, qword [0x140112050]
movsd xmm1, qword [0x140112048]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x1400a6fab
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x1400a6fab
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x1400a6ffb
cmp r12, 0x320000
jae 0x1400a6fc8
lea rdi, [r12 + 0x8000]
jmp 0x1400a6ffb
cmp r12, 0xc80000
jae 0x1400a6ff3
movabs rax, 0x47ae147ae147ae15
mov rdi, r12
mul r12
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, r12
jmp 0x1400a6ffb
lea rdi, [r12 + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x1400a701b
test r9, r9
je 0x1400a701b
mov rcx, qword [rbx + 8]
mov r12b, 1
call fcn.1400d6fc8
jmp 0x1400a701e
xor r12b, r12b
test rdi, rdi
js 0x1400a7070
mov rcx, rdi
call fcn.1400d6f08
test rax, rax
je 0x1400a7070
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 0x1400a70b9
mov rcx, qword [rbx + 8]
lea r13, [0x1400f1524]
cmp rcx, r13
je 0x1400a7065
lea r8, [r15 + r15]
mov rdx, r13
call fcn.1400d7a30
mov rax, qword [rbx + 8]
mov word [rax + r15*2], si
jmp 0x1400a70c0
test r12b, r12b
je 0x1400a7086
lea rax, [0x14012c4b8]
mov qword [rbx + 0x18], rsi
mov qword [rbx + 8], rax
jmp 0x1400a708d
mov rax, qword [rbx + 8]
mov word [rax], si
mov qword [rbx + 0x10], rsi
lea rdx, [0x1400f5a40]
lea r8, [0x1400f1524]
lea rcx, [0x14012c5c0]
call fcn.14004e590
mov edx, eax
cmp edx, 1
je 0x1400a70c8
xor eax, eax
jmp 0x1400a73fd
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 0x1400a70ff
mov rdi, qword [rbx + 0x10]
jmp 0x1400a7102
mov rdi, rbx
cmp byte [rdi + 0x23], r12b
jne 0x1400a711c
test byte [rdi + 0x21], 8
je 0x1400a7116
mov rcx, rdi
call fcn.140001130
add rdi, 0x10
jmp 0x1400a7123
lea rdi, [0x14012d400]
lea rax, [r13 + r13]
mov qword [rdi], rax
test r13, r13
jne 0x1400a7146
xor r8d, r8d
mov edx, r12d
mov rcx, rbx
call fcn.140001820
mov word [rax], si
jmp 0x1400a73cb
cmp byte [r14 + 8], 0xc
jne 0x1400a73cb
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 0x1400a73a2
cmp rax, 0x1388
jb 0x1400a733a
mov dword [rbp + 0x810], esi
mov rdi, rdx
mov qword [rsp + 0x48], rdx
nop word [rax + rax]
lea rdx, [0x1400fe358]
mov rcx, rdi
call fcn.1400d8b38
mov rcx, rax
mov qword [rbp - 0x78], rax
test rax, rax
je 0x1400a72a2
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 0x1400a7263
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.1400b9ff0
mov rcx, r14
lea rdx, [rax + rax]
mov qword [rsp + 0x70], rax
call fcn.1400d7008
test rax, rax
je 0x1400a72e9
mov r14, rax
mov rax, qword [rsp + 0x48]
test rdi, rdi
je 0x1400a727c
lea r8, [rdi + rdi]
lea rcx, [r14 + r13*2]
mov rdx, rax
call fcn.1400d7a30
mov r13, qword [rbp - 0x80]
movzx eax, word [reloc.WSOCK32.DLL_inet_addr]
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 0x1400a71c0
mov eax, dword [rbp + 0x810]
test eax, eax
je 0x1400a73a2
mov r15, qword [rsp + 0x78]
mov rax, rdi
sub rax, qword [rsp + 0x40]
sar rax, 1
sub r15, rax
je 0x1400a7319
lea rax, [r15 + r13]
mov qword [rbp + 0x810], rax
cmp rax, qword [rsp + 0x70]
jb 0x1400a7302
lea rdx, [rax + rax + 2]
mov rcx, r14
call fcn.1400d7008
test rax, rax
jne 0x1400a72ff
test r14, r14
je 0x1400a73a2
mov rcx, r14
call fcn.1400d6fc8
jmp 0x1400a73a2
mov r14, rax
lea r8, [r15 + r15]
lea rcx, [r14 + r13*2]
mov rdx, rdi
call fcn.1400d7a30
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.1400d7a30
mov rcx, r14
call fcn.1400d6fc8
jmp 0x1400a73a2
mov r13, qword [rsp + 0x78]
mov rsi, rdx
mov rbx, rdx
nop word [rax + rax]
lea rdx, [0x1400fe358]
mov rcx, rsi
call fcn.1400d8b38
mov rdi, rax
test rax, rax
je 0x1400a739d
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.1400d7a30
movzx eax, word [reloc.WSOCK32.DLL_inet_addr]
dec r13
dec r15d
mov word [rdi], ax
jne 0x1400a7350
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.140024830
cmp byte [rbx + 0x23], 0
jne 0x1400a73d5
mov rbx, qword [rbx + 0x10]
cmp byte [rbx + 0x23], 2
jne 0x1400a73f6
cmp qword [0x14012d240], 0
je 0x1400a73f6
lea rcx, [0x14012d228]
call fcn.140006f20
mov r12d, eax
jmp 0x1400a73fa
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