Function at 0x14007f2b0
Capabilities:
Create shortcut via ishelllink

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 - 0x1a0]
sub rsp, 0x2a0
movzx eax, byte [rcx + 1]
xor ecx, ecx
mov rsi, rdx
cmp al, 1
mov ebx, ecx
mov r12d, ecx
cmova rbx, qword [0x140119628]
cmp al, 2
mov r14d, ecx
cmova r12, qword [0x140119630]
cmp al, 3
mov r15d, ecx
cmova r14, qword [0x140119638]
cmp al, 4
mov edi, ecx
cmova r15, qword [0x140119640]
cmp al, 5
mov r13d, ecx
cmova rdi, qword [0x140119648]
cmp al, 6
cmova r13, qword [0x140119650]
cmp al, 7
mov qword [rsp + 0x50], rdi
cmova rcx, qword [0x140119658]
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x38], rcx
test rbx, rbx
je 0x14007f34f
mov rcx, rbx
call fcn.14001bf20
test r12, r12
je 0x14007f35c
mov rcx, r12
call fcn.14001bf20
test r14, r14
je 0x14007f369
mov rcx, r14
call fcn.14001bf20
test r15, r15
je 0x14007f376
mov rcx, r15
call fcn.14001bf20
test rdi, rdi
je 0x14007f383
mov rcx, rdi
call fcn.14001bf20
test r13, r13
je 0x14007f390
mov rcx, r13
call fcn.14001bf20
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x14007f3a2
mov rcx, rax
call fcn.14001bf20
mov rcx, rsi
xor dil, dil
call fcn.140081ae0
test al, al
je 0x140080657
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitialize]
xor edx, edx
lea r11, [rsp + 0x30]
lea r9, [0x1400e0f90]
lea rcx, [0x1400e0fa0]
lea r8d, [rdx + 1]
mov qword [rsp + 0x20], r11
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x140080600
mov rcx, qword [rsp + 0x30]
lea r8, [rsp + 0x40]
lea rdx, [0x1400e0fb0]
mov rax, qword [rcx]
call qword [rax]
test eax, eax
js 0x1400805f5
mov rcx, qword [rsp + 0x40]
xor r8d, r8d
mov rdx, rsi
mov rax, qword [rcx]
call qword [rax + 0x28]
test eax, eax
js 0x1400805ea
movaps xmmword [rsp + 0x290], xmm6
movsd xmm6, qword [0x140101ea8]
movaps xmmword [rsp + 0x280], xmm7
movsd xmm7, qword [0x140101e78]
movabs rdi, 0x8000000000000000
mov r13d, 8
movaps xmmword [rsp + 0x270], xmm8
movsd xmm8, qword [0x140101eb0]
test rbx, rbx
je 0x14007f70e
mov rcx, qword [rsp + 0x30]
lea rdx, [rsp + 0x60]
xor r9d, r9d
mov rax, qword [rcx]
mov r8d, 0x104
mov dword [rsp + 0x20], 2
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
movzx r11d, byte [rbx + 0x23]
test r11b, r11b
jne 0x14007f4b5
mov rcx, qword [rbx + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b1370
jmp 0x14007f70e
lea rax, [rsp + 0x60]
cmp qword [rbx + 8], rax
jne 0x14007f4c9
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14007f4e8
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x60]
xor eax, eax
repne scasw ax, word [rdi]
movabs rdi, 0x8000000000000000
not rcx
lea r13, [rcx - 1]
lea rax, [r13 + 1]
lea rsi, [rax + rax]
cmp r11b, 2
jne 0x14007f508
lea rcx, [rsp + 0x60]
mov rdx, r13
call fcn.1400060b0
jmp 0x14007f708
cmp rsi, qword [0x140114480]
jbe 0x14007f536
cmp rsi, qword [rbx + 0x18]
jbe 0x14007f536
lea r8, [0x1400e34fc]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14011b1d0]
call fcn.1400405d0
jmp 0x14007f708
cmp rax, 2
jae 0x14007f550
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400b1a20
jmp 0x14007f708
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14007f566
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 [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, rcx
jbe 0x14007f6d8
movzx r8d, byte [rbx + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14007f59d
cmp al, 2
je 0x14007f5de
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14007f6cc
cmp rsi, 0x80
ja 0x14007f5de
cmp rsi, 8
ja 0x14007f5b3
mov edi, 8
jmp 0x14007f5c4
mov edi, 0x80
cmp rsi, 0x10
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmovbe edi, eax
mov rcx, rdi
call fcn.1400aa290
test rax, rax
je 0x14007f708
mov byte [rbx + 0x20], 1
jmp 0x14007f6cc
cmp rsi, 0x20
jae 0x14007f5ee
mov edi, SafeArrayAllocDescriptor
jmp 0x14007f684
cmp rsi, 0x208
jae 0x14007f601
mov edi, 0x208
jmp 0x14007f684
cmp rsi, 0x50000
jae 0x14007f640
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14007f61c
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14007f636
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14007f636
mov rax, rdi
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x14007f684
cmp rsi, 0x320000
jae 0x14007f652
lea rdi, [rsi + 0x8000]
jmp 0x14007f684
cmp rsi, 0xc80000
jae 0x14007f67d
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14007f684
lea rdi, [rsi + 0x20000]
mov rax, qword [0x140114480]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14007f6ab
test rcx, rcx
je 0x14007f6ab
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400cafac
jmp 0x14007f6ae
xor sil, sil
test rdi, rdi
js 0x14007f758
mov rcx, rdi
call fcn.1400ca834
test rax, rax
je 0x14007f758
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, [rsp + 0x60]
cmp rcx, rax
je 0x14007f6f5
lea r8, [r13 + r13]
lea rdx, [rsp + 0x60]
call fcn.1400cb170
mov rax, qword [rbx + 8]
lea rcx, [r13 + r13]
xor edx, edx
mov word [rcx + rax], dx
mov qword [rbx + 0x10], rcx
mov r13d, 8
test r12, r12
je 0x14007fa03
mov rcx, qword [rsp + 0x30]
lea rdx, [rsp + 0x60]
mov r8d, 0x104
mov rax, qword [rcx]
call qword [rax + 0x40]
movzx r11d, byte [r12 + 0x23]
test r11b, r11b
jne 0x14007f79e
mov rcx, qword [r12 + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b1370
jmp 0x14007fa03
test sil, sil
je 0x14007f770
lea rcx, [0x14011b188]
xor eax, eax
mov qword [rbx + 8], rcx
mov qword [rbx + 0x18], rax
jmp 0x14007f77b
mov rax, qword [rbx + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
lea r8, [0x1400e34fc]
lea rdx, str.Out_of_memory.
lea rcx, [0x14011b1d0]
mov qword [rbx + 0x10], rax
call fcn.1400405d0
jmp 0x14007f708
lea rax, [rsp + 0x60]
cmp qword [r12 + 8], rax
jne 0x14007f7b4
mov rsi, qword [r12 + 0x10]
shr rsi, 1
jmp 0x14007f7c9
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x60]
xor eax, eax
repne scasw ax, word [rdi]
not rcx
lea rsi, [rcx - 1]
lea rax, [rsi + 1]
lea rbx, [rax + rax]
cmp r11b, 2
jne 0x14007f7e9
lea rcx, [rsp + 0x60]
mov rdx, rsi
call fcn.1400060b0
jmp 0x14007fa03
cmp rbx, qword [0x140114480]
jbe 0x14007f818
cmp rbx, qword [r12 + 0x18]
jbe 0x14007f818
lea r8, [0x1400e34fc]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14011b1d0]
call fcn.1400405d0
jmp 0x14007fa03
cmp rax, 2
jae 0x14007f832
xor r8d, r8d
mov rcx, r12
lea edx, [r8 + 4]
call fcn.1400b1a20
jmp 0x14007fa03
movzx eax, byte [r12 + 0x21]
test al, 2
je 0x14007f84d
mov rcx, qword [r12]
and al, 0x3d
mov byte [r12 + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov rcx, qword [r12 + 0x18]
and byte [r12 + 0x21], 0x82
cmp rbx, rcx
jbe 0x14007f9d2
movzx r8d, byte [r12 + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14007f888
cmp al, 2
je 0x14007f8c9
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14007f9c2
cmp rbx, 0x80
ja 0x14007f8c9
cmp rbx, 8
ja 0x14007f89c
mov rdi, r13
jmp 0x14007f8ad
mov edi, 0x80
cmp rbx, 0x10
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmovbe edi, eax
mov rcx, rdi
call fcn.1400aa290
test rax, rax
je 0x14007fa03
mov byte [r12 + 0x20], 1
jmp 0x14007f9c2
cmp rbx, 0x20
jae 0x14007f8d9
mov edi, SafeArrayAllocDescriptor
jmp 0x14007f979
cmp rbx, 0x208
jae 0x14007f8ec
mov edi, 0x208
jmp 0x14007f979
cmp rbx, 0x50000
jae 0x14007f935
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x14007f907
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14007f92b
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14007f92b
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x14007f979
cmp rbx, 0x320000
jae 0x14007f947
lea rdi, [rbx + 0x8000]
jmp 0x14007f979
cmp rbx, 0xc80000
jae 0x14007f972
movabs rax, 0x47ae147ae147ae15
mov rdi, rbx
mul rbx
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rbx
jmp 0x14007f979
lea rdi, [rbx + 0x20000]
mov rax, qword [0x140114480]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14007f9a0
test rcx, rcx
je 0x14007f9a0
mov rcx, qword [r12 + 8]
mov bl, 1
call fcn.1400cafac
jmp 0x14007f9a2
xor bl, bl
test rdi, rdi
js 0x14007fa95
mov rcx, rdi
call fcn.1400ca834
test rax, rax
je 0x14007fa95
mov byte [r12 + 0x20], 2
and byte [r12 + 0x21], 0x7f
mov qword [r12 + 8], rax
mov qword [r12 + 0x18], rdi
mov rcx, qword [r12 + 8]
lea rax, [rsp + 0x60]
cmp rcx, rax
je 0x14007f9ef
lea r8, [rsi + rsi]
lea rdx, [rsp + 0x60]
call fcn.1400cb170
mov rax, qword [r12 + 8]
lea rcx, [rsi + rsi]
xor edx, edx
mov word [rcx + rax], dx
mov qword [r12 + 0x10], rcx
test r14, r14
je 0x14007fa46
mov rcx, qword [rsp + 0x30]
lea rdx, [rsp + 0x60]
mov r8d, 0x104
mov rax, qword [rcx]
call qword [rax + 0x50]
movzx r11d, byte [r14 + 0x23]
test r11b, r11b
jne 0x14007fade
mov rcx, qword [r14 + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b1370
xor r12d, r12d
test r15, r15
je 0x14007ffc5
mov rcx, qword [rsp + 0x30]
lea rdx, [rsp + 0x60]
mov r8d, 0x104
mov rax, qword [rcx]
call qword [rax + 0x30]
movzx r11d, byte [r15 + 0x23]
test r11b, r11b
jne 0x14007fd73
mov rcx, qword [r15 + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b1370
jmp 0x14007ffc5
test bl, bl
je 0x14007faae
lea rcx, [0x14011b188]
xor eax, eax
mov qword [r12 + 8], rcx
mov qword [r12 + 0x18], rax
jmp 0x14007faba
mov rax, qword [r12 + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
lea r8, [0x1400e34fc]
lea rdx, str.Out_of_memory.
lea rcx, [0x14011b1d0]
mov qword [r12 + 0x10], rax
call fcn.1400405d0
jmp 0x14007fa03
lea rax, [rsp + 0x60]
cmp qword [r14 + 8], rax
jne 0x14007faf2
mov rsi, qword [r14 + 0x10]
shr rsi, 1
jmp 0x14007fb07
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x60]
xor eax, eax
repne scasw ax, word [rdi]
not rcx
lea rsi, [rcx - 1]
lea rax, [rsi + 1]
lea rbx, [rax + rax]
cmp r11b, 2
jne 0x14007fb27
lea rcx, [rsp + 0x60]
mov rdx, rsi
call fcn.1400060b0
jmp 0x14007fa46
cmp rbx, qword [0x140114480]
jbe 0x14007fb55
cmp rbx, qword [r14 + 0x18]
jbe 0x14007fb55
lea r8, [0x1400e34fc]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14011b1d0]
call fcn.1400405d0
jmp 0x14007fa46
cmp rax, 2
jae 0x14007fb6f
xor r8d, r8d
mov rcx, r14
lea edx, [r8 + 4]
call fcn.1400b1a20
jmp 0x14007fa46
movzx eax, byte [r14 + 0x21]
test al, 2
je 0x14007fb87
mov rcx, qword [r14]
and al, 0x3d
mov byte [r14 + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov rcx, qword [r14 + 0x18]
and byte [r14 + 0x21], 0x82
cmp rbx, rcx
jbe 0x14007fcfb
movzx r8d, byte [r14 + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14007fbbf
cmp al, 2
je 0x14007fbff
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14007fcee
cmp rbx, 0x80
ja 0x14007fbff
cmp rbx, 8
ja 0x14007fbd3
mov rdi, r13
jmp 0x14007fbe4
mov edi, 0x80
cmp rbx, 0x10
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmovbe edi, eax
mov rcx, rdi
call fcn.1400aa290
test rax, rax
je 0x14007fa46
mov byte [r14 + 0x20], 1
jmp 0x14007fcee
cmp rbx, 0x20
jae 0x14007fc0f
mov edi, SafeArrayAllocDescriptor
jmp 0x14007fcaf
cmp rbx, 0x208
jae 0x14007fc22
mov edi, 0x208
jmp 0x14007fcaf
cmp rbx, 0x50000
jae 0x14007fc6b
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x14007fc3d
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14007fc61
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14007fc61
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x14007fcaf
cmp rbx, 0x320000
jae 0x14007fc7d
lea rdi, [rbx + 0x8000]
jmp 0x14007fcaf
cmp rbx, 0xc80000
jae 0x14007fca8
movabs rax, 0x47ae147ae147ae15
mov rdi, rbx
mul rbx
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rbx
jmp 0x14007fcaf
lea rdi, [rbx + 0x20000]
mov rax, qword [0x140114480]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14007fcd5
test rcx, rcx
je 0x14007fcd5
mov rcx, qword [r14 + 8]
mov bl, 1
call fcn.1400cafac
jmp 0x14007fcd7
xor bl, bl
test rdi, rdi
js 0x14007fd30
mov rcx, rdi
call fcn.1400ca834
test rax, rax
je 0x14007fd30
mov byte [r14 + 0x20], 2
and byte [r14 + 0x21], 0x7f
mov qword [r14 + 8], rax
mov qword [r14 + 0x18], rdi
mov rcx, qword [r14 + 8]
lea rax, [rsp + 0x60]
cmp rcx, rax
je 0x14007fd17
lea r8, [rsi + rsi]
lea rdx, [rsp + 0x60]
call fcn.1400cb170
mov rax, qword [r14 + 8]
lea rcx, [rsi + rsi]
xor r12d, r12d
mov word [rcx + rax], r12w
mov qword [r14 + 0x10], rcx
jmp 0x14007fa49
xor r12d, r12d
test bl, bl
je 0x14007fd48
lea rax, [0x14011b188]
mov qword [r14 + 0x18], r12
mov qword [r14 + 8], rax
jmp 0x14007fd50
mov rax, qword [r14 + 8]
mov word [rax], r12w
lea r8, [0x1400e34fc]
lea rdx, str.Out_of_memory.
lea rcx, [0x14011b1d0]
mov qword [r14 + 0x10], r12
call fcn.1400405d0
jmp 0x14007fa49
lea rax, [rsp + 0x60]
cmp qword [r15 + 8], rax
jne 0x14007fd87
mov rsi, qword [r15 + 0x10]
shr rsi, 1
jmp 0x14007fd9c
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x60]
xor eax, eax
repne scasw ax, word [rdi]
not rcx
lea rsi, [rcx - 1]
lea rax, [rsi + 1]
lea rbx, [rax + rax]
cmp r11b, 2
jne 0x14007fdbc
lea rcx, [rsp + 0x60]
mov rdx, rsi
call fcn.1400060b0
jmp 0x14007ffc5
cmp rbx, qword [0x140114480]
jbe 0x14007fdea
cmp rbx, qword [r15 + 0x18]
jbe 0x14007fdea
lea r8, [0x1400e34fc]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14011b1d0]
call fcn.1400405d0
jmp 0x14007ffc5
cmp rax, 2
jae 0x14007fe04
xor r8d, r8d
mov rcx, r15
lea edx, [r8 + 4]
call fcn.1400b1a20
jmp 0x14007ffc5
movzx eax, byte [r15 + 0x21]
test al, 2
je 0x14007fe1c
mov rcx, qword [r15]
and al, 0x3d
mov byte [r15 + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov rcx, qword [r15 + 0x18]
and byte [r15 + 0x21], 0x82
cmp rbx, rcx
jbe 0x14007ff98
movzx r8d, byte [r15 + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14007fe54
cmp al, 2
je 0x14007fe94
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14007ff8b
cmp rbx, 0x80
ja 0x14007fe94
cmp rbx, 8
ja 0x14007fe68
mov rdi, r13
jmp 0x14007fe79
mov edi, 0x80
cmp rbx, 0x10
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmovbe edi, eax
mov rcx, rdi
call fcn.1400aa290
test rax, rax
je 0x14007ffc5
mov byte [r15 + 0x20], 1
jmp 0x14007ff8b
cmp rbx, 0x20
jae 0x14007fea4
mov edi, SafeArrayAllocDescriptor
jmp 0x14007ff44
cmp rbx, 0x208
jae 0x14007feb7
mov edi, 0x208
jmp 0x14007ff44
cmp rbx, 0x50000
jae 0x14007ff00
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x14007fed2
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14007fef6
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14007fef6
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x14007ff44
cmp rbx, 0x320000
jae 0x14007ff12
lea rdi, [rbx + 0x8000]
jmp 0x14007ff44
cmp rbx, 0xc80000
jae 0x14007ff3d
movabs rax, 0x47ae147ae147ae15
mov rdi, rbx
mul rbx
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rbx
jmp 0x14007ff44
lea rdi, [rbx + 0x20000]
mov rax, qword [0x140114480]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14007ff6a
test rcx, rcx
je 0x14007ff6a
mov rcx, qword [r15 + 8]
mov bl, 1
call fcn.1400cafac
jmp 0x14007ff6c
xor bl, bl
test rdi, rdi
js 0x140080030
mov rcx, rdi
call fcn.1400ca834
test rax, rax
je 0x140080030
mov byte [r15 + 0x20], 2
and byte [r15 + 0x21], 0x7f
mov qword [r15 + 8], rax
mov qword [r15 + 0x18], rdi
mov rcx, qword [r15 + 8]
lea rax, [rsp + 0x60]
cmp rcx, rax
je 0x14007ffb4
lea r8, [rsi + rsi]
lea rdx, [rsp + 0x60]
call fcn.1400cb170
mov rax, qword [r15 + 8]
lea rcx, [rsi + rsi]
mov word [rcx + rax], r12w
mov qword [r15 + 0x10], rcx
mov r12, qword [rsp + 0x50]
mov r14, qword [rsp + 0x48]
test r12, r12
jne 0x14007ffdd
test r14, r14
je 0x14008033f
mov rcx, qword [rsp + 0x30]
lea r9, [rbp + 0x1f0]
lea rdx, [rsp + 0x60]
mov rax, qword [rcx]
mov r8d, 0x104
call qword [rax + 0x80]
test r12, r12
je 0x1400800e1
movzx edx, byte [r12 + 0x23]
test dl, dl
jne 0x140080070
mov rcx, qword [r12 + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b1370
jmp 0x1400800e1
test bl, bl
je 0x140080045
lea rax, [0x14011b188]
mov qword [r15 + 0x18], r12
mov qword [r15 + 8], rax
jmp 0x14008004d
mov rax, qword [r15 + 8]
mov word [rax], r12w
lea r8, [0x1400e34fc]
lea rdx, str.Out_of_memory.
lea rcx, [0x14011b1d0]
mov qword [r15 + 0x10], r12
call fcn.1400405d0
jmp 0x14007ffc5
lea rax, [rsp + 0x60]
cmp qword [r12 + 8], rax
jne 0x140080086
mov rsi, qword [r12 + 0x10]
shr rsi, 1
jmp 0x14008009b
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x60]
xor eax, eax
repne scasw ax, word [rdi]
not rcx
lea rsi, [rcx - 1]
lea rax, [rsi + 1]
lea rbx, [rax + rax]
cmp dl, 2
jne 0x1400800b7
lea rcx, [rsp + 0x60]
mov rdx, rsi
call fcn.1400060b0
jmp 0x1400800e1
cmp rbx, qword [0x140114480]
jbe 0x140080118
cmp rbx, qword [r12 + 0x18]
jbe 0x140080118
lea r8, [0x1400e34fc]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14011b1d0]
call fcn.1400405d0
xor edx, edx
test r14, r14
je 0x14008033f
cmp word [rsp + 0x60], 0
mov rcx, r14
je 0x14008033a
mov eax, dword [rbp + 0x1f0]
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
test eax, eax
setns dl
add edx, eax
movsxd rdx, edx
call fcn.140001090
jmp 0x14008033f
cmp rax, 2
jae 0x14008012f
xor r8d, r8d
mov rcx, r12
lea edx, [r8 + 4]
call fcn.1400b1a20
jmp 0x1400800e1
movzx eax, byte [r12 + 0x21]
test al, 2
je 0x14008014a
mov rcx, qword [r12]
and al, 0x3d
mov byte [r12 + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov rcx, qword [r12 + 0x18]
and byte [r12 + 0x21], 0x82
cmp rbx, rcx
jbe 0x1400802c7
movzx r8d, byte [r12 + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x140080185
cmp al, 2
je 0x1400801c6
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x1400802b7
cmp rbx, 0x80
ja 0x1400801c6
cmp rbx, 8
ja 0x140080199
mov rdi, r13
jmp 0x1400801aa
mov edi, 0x80
cmp rbx, 0x10
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmovbe edi, eax
mov rcx, rdi
call fcn.1400aa290
test rax, rax
je 0x1400800e1
mov byte [r12 + 0x20], 1
jmp 0x1400802b7
cmp rbx, 0x20
jae 0x1400801d6
mov edi, SafeArrayAllocDescriptor
jmp 0x140080276
cmp rbx, 0x208
jae 0x1400801e9
mov edi, 0x208
jmp 0x140080276
cmp rbx, 0x50000
jae 0x140080232
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x140080204
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x140080228
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x140080228
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x140080276
cmp rbx, 0x320000
jae 0x140080244
lea rdi, [rbx + 0x8000]
jmp 0x140080276
cmp rbx, 0xc80000
jae 0x14008026f
movabs rax, 0x47ae147ae147ae15
mov rdi, rbx
mul rbx
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rbx
jmp 0x140080276
lea rdi, [rbx + 0x20000]
mov rax, qword [0x140114480]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14008029d
test rcx, rcx
je 0x14008029d
mov rcx, qword [r12 + 8]
mov bl, 1
call fcn.1400cafac
jmp 0x14008029f
xor bl, bl
test rdi, rdi
js 0x1400802fd
mov rcx, rdi
call fcn.1400ca834
test rax, rax
je 0x1400802fd
mov byte [r12 + 0x20], 2
and byte [r12 + 0x21], 0x7f
mov qword [r12 + 8], rax
mov qword [r12 + 0x18], rdi
mov rcx, qword [r12 + 8]
lea rax, [rsp + 0x60]
cmp rcx, rax
je 0x1400802e4
lea r8, [rsi + rsi]
lea rdx, [rsp + 0x60]
call fcn.1400cb170
mov rax, qword [r12 + 8]
lea rcx, [rsi + rsi]
xor edx, edx
mov word [rcx + rax], dx
mov qword [r12 + 0x10], rcx
jmp 0x1400800e3
test bl, bl
je 0x140080316
lea rcx, [0x14011b188]
xor eax, eax
mov qword [r12 + 8], rcx
mov qword [r12 + 0x18], rax
jmp 0x140080322
mov rax, qword [r12 + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
mov qword [r12 + 0x10], rax
lea r8, [0x1400e34fc]
lea rdx, str.Out_of_memory.
jmp 0x1400800d5
call fcn.14001bf20
mov rdi, qword [rsp + 0x38]
test rdi, rdi
je 0x14008036d
mov rcx, qword [rsp + 0x30]
lea rdx, [rbp + 0x1f8]
mov rax, qword [rcx]
call qword [rax + 0x70]
movsxd rdx, dword [rbp + 0x1f8]
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, rdi
call fcn.140001090
mov rdi, qword [0x14011a300]
movzx eax, byte [rdi + 0x23]
test al, al
jne 0x14008039d
mov rcx, qword [rdi + 0x10]
lea rdx, [0x1400e350c]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b1370
jmp 0x1400805ce
lea rsi, [0x1400e350c]
cmp qword [rdi + 8], rsi
jne 0x1400803b3
mov r12, qword [rdi + 0x10]
shr r12, 1
jmp 0x1400803b9
mov r12d, 1
lea rcx, [r12 + 1]
lea rbx, [rcx + rcx]
cmp al, 2
jne 0x1400803d6
mov rdx, r12
mov rcx, rsi
call fcn.1400060b0
jmp 0x1400805ce
cmp rbx, qword [0x140114480]
jbe 0x140080404
cmp rbx, qword [rdi + 0x18]
jbe 0x140080404
lea r8, [0x1400e34fc]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14011b1d0]
call fcn.1400405d0
jmp 0x1400805ce
cmp rcx, 2
jae 0x14008041e
xor r8d, r8d
mov rcx, rdi
lea edx, [r8 + 4]
call fcn.1400b1a20
jmp 0x1400805ce
movzx eax, byte [rdi + 0x21]
test al, 2
je 0x140080434
mov rcx, qword [rdi]
and al, 0x3d
mov byte [rdi + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov rcx, qword [rdi + 0x18]
and byte [rdi + 0x21], 0x82
cmp rbx, rcx
jbe 0x1400805a7
movzx r8d, byte [rdi + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14008046b
cmp al, 2
je 0x1400804a7
mov r13, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14008059b
cmp rbx, 0x80
ja 0x1400804a7
cmp rbx, 8
jbe 0x14008048d
mov r13d, 0x80
cmp rbx, 0x10
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmovbe r13d, eax
mov rcx, r13
call fcn.1400aa290
test rax, rax
je 0x1400805ce
mov byte [rdi + 0x20], 1
jmp 0x14008059b
cmp rbx, 0x20
jae 0x1400804b8
mov r13d, SafeArrayAllocDescriptor
jmp 0x140080559
cmp rbx, 0x208
jae 0x1400804cc
mov r13d, 0x208
jmp 0x140080559
cmp rbx, 0x50000
jae 0x140080515
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x1400804e7
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14008050b
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14008050b
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r13, xmm0
add r13, rax
jmp 0x140080559
cmp rbx, 0x320000
jae 0x140080527
lea r13, [rbx + 0x8000]
jmp 0x140080559
cmp rbx, 0xc80000
jae 0x140080552
movabs rax, 0x47ae147ae147ae15
mov r13, rbx
mul rbx
sub r13, rdx
shr r13, 1
add r13, rdx
shr r13, 6
add r13, rbx
jmp 0x140080559
lea r13, [rbx + 0x20000]
mov rax, qword [0x140114480]
cmp r13, rax
cmova r13, rax
cmp r8b, 2
jne 0x14008057f
test rcx, rcx
je 0x14008057f
mov rcx, qword [rdi + 8]
mov bl, 1
call fcn.1400cafac
jmp 0x140080581
xor bl, bl
test r13, r13
js 0x140080612
mov rcx, r13
call fcn.1400ca834
test rax, rax
je 0x140080612
mov byte [rdi + 0x20], 2
and byte [rdi + 0x21], 0x7f
mov qword [rdi + 8], rax
mov qword [rdi + 0x18], r13
mov rcx, qword [rdi + 8]
cmp rcx, rsi
je 0x1400805bc
lea r8, [r12 + r12]
mov rdx, rsi
call fcn.1400cb170
mov rax, qword [rdi + 8]
lea rcx, [r12 + r12]
xor edx, edx
mov word [rcx + rax], dx
mov qword [rdi + 0x10], rcx
movaps xmm8, xmmword [rsp + 0x270]
movaps xmm7, xmmword [rsp + 0x280]
movaps xmm6, xmmword [rsp + 0x290]
mov dil, 1
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rcx]
call qword [rdx + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rcx]
call qword [rdx + reloc.OLEAUT32.dll_SafeArrayGetDim]
call qword [sym.imp.ole32.dll_CoUninitialize]
test dil, dil
je 0x140080657
mov eax, 1
jmp 0x140080665
test bl, bl
je 0x140080629
lea rcx, [0x14011b188]
xor eax, eax
mov qword [rdi + 8], rcx
mov qword [rdi + 0x18], rax
jmp 0x140080634
mov rax, qword [rdi + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
lea r8, [0x1400e34fc]
lea rdx, str.Out_of_memory.
lea rcx, [0x14011b1d0]
mov qword [rdi + 0x10], rax
call fcn.1400405d0
jmp 0x1400805ce
mov rcx, qword [rbp + 0x1e0]
mov dl, 1
call fcn.14003f030
mov rbx, qword [rsp + 0x2e8]
add rsp, 0x2a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret