Function at 0x14007eff0
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 [0x1401175a8]
cmp al, 2
mov r14d, ecx
cmova r12, qword [0x1401175b0]
cmp al, 3
mov r15d, ecx
cmova r14, qword [0x1401175b8]
cmp al, 4
mov edi, ecx
cmova r15, qword [0x1401175c0]
cmp al, 5
mov r13d, ecx
cmova rdi, qword [0x1401175c8]
cmp al, 6
cmova r13, qword [0x1401175d0]
cmp al, 7
mov qword [rsp + 0x50], rdi
cmova rcx, qword [0x1401175d8]
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x38], rcx
test rbx, rbx
je 0x14007f08f
mov rcx, rbx
call fcn.14001c030
test r12, r12
je 0x14007f09c
mov rcx, r12
call fcn.14001c030
test r14, r14
je 0x14007f0a9
mov rcx, r14
call fcn.14001c030
test r15, r15
je 0x14007f0b6
mov rcx, r15
call fcn.14001c030
test rdi, rdi
je 0x14007f0c3
mov rcx, rdi
call fcn.14001c030
test r13, r13
je 0x14007f0d0
mov rcx, r13
call fcn.14001c030
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x14007f0e2
mov rcx, rax
call fcn.14001c030
mov rcx, rsi
xor dil, dil
call fcn.140081820
test al, al
je 0x140080397
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitialize]
xor edx, edx
lea r11, [rsp + 0x30]
lea r9, [0x1400dff90]
lea rcx, [0x1400dffa0]
lea r8d, [rdx + 1]
mov qword [rsp + 0x20], r11
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x140080340
mov rcx, qword [rsp + 0x30]
lea r8, [rsp + 0x40]
lea rdx, [0x1400dffb0]
mov rax, qword [rcx]
call qword [rax]
test eax, eax
js 0x140080335
mov rcx, qword [rsp + 0x40]
xor r8d, r8d
mov rdx, rsi
mov rax, qword [rcx]
call qword [rax + 0x28]
test eax, eax
js 0x14008032a
movaps xmmword [rsp + 0x290], xmm6
movsd xmm6, qword [0x140100dd8]
movaps xmmword [rsp + 0x280], xmm7
movsd xmm7, qword [0x140100da8]
movabs rdi, 0x8000000000000000
mov r13d, 8
movaps xmmword [rsp + 0x270], xmm8
movsd xmm8, qword [0x140100de0]
test rbx, rbx
je 0x14007f44e
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 0x14007f1f5
mov rcx, qword [rbx + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b04d0
jmp 0x14007f44e
lea rax, [rsp + 0x60]
cmp qword [rbx + 8], rax
jne 0x14007f209
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14007f228
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 0x14007f248
lea rcx, [rsp + 0x60]
mov rdx, r13
call fcn.140006120
jmp 0x14007f448
cmp rsi, qword [0x140112460]
jbe 0x14007f276
cmp rsi, qword [rbx + 0x18]
jbe 0x14007f276
lea r8, [0x1400e245c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x140119150]
call fcn.1400404f0
jmp 0x14007f448
cmp rax, 2
jae 0x14007f290
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400b0b80
jmp 0x14007f448
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14007f2a6
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 0x14007f418
movzx r8d, byte [rbx + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14007f2dd
cmp al, 2
je 0x14007f31e
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14007f40c
cmp rsi, 0x80
ja 0x14007f31e
cmp rsi, 8
ja 0x14007f2f3
mov edi, 8
jmp 0x14007f304
mov edi, 0x80
cmp rsi, 0x10
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a9650
test rax, rax
je 0x14007f448
mov byte [rbx + 0x20], 1
jmp 0x14007f40c
cmp rsi, 0x20
jae 0x14007f32e
mov edi, SafeArrayAllocDescriptor
jmp 0x14007f3c4
cmp rsi, 0x208
jae 0x14007f341
mov edi, 0x208
jmp 0x14007f3c4
cmp rsi, 0x50000
jae 0x14007f380
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14007f35c
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14007f376
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14007f376
mov rax, rdi
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x14007f3c4
cmp rsi, 0x320000
jae 0x14007f392
lea rdi, [rsi + 0x8000]
jmp 0x14007f3c4
cmp rsi, 0xc80000
jae 0x14007f3bd
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14007f3c4
lea rdi, [rsi + 0x20000]
mov rax, qword [0x140112460]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14007f3eb
test rcx, rcx
je 0x14007f3eb
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400ca390
jmp 0x14007f3ee
xor sil, sil
test rdi, rdi
js 0x14007f498
mov rcx, rdi
call fcn.1400c98f4
test rax, rax
je 0x14007f498
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 0x14007f435
lea r8, [r13 + r13]
lea rdx, [rsp + 0x60]
call fcn.1400ca550
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 0x14007f743
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 0x14007f4de
mov rcx, qword [r12 + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b04d0
jmp 0x14007f743
test sil, sil
je 0x14007f4b0
lea rcx, [0x140119108]
xor eax, eax
mov qword [rbx + 8], rcx
mov qword [rbx + 0x18], rax
jmp 0x14007f4bb
mov rax, qword [rbx + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
lea r8, [0x1400e245c]
lea rdx, [0x1400e5580]
lea rcx, [0x140119150]
mov qword [rbx + 0x10], rax
call fcn.1400404f0
jmp 0x14007f448
lea rax, [rsp + 0x60]
cmp qword [r12 + 8], rax
jne 0x14007f4f4
mov rsi, qword [r12 + 0x10]
shr rsi, 1
jmp 0x14007f509
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 0x14007f529
lea rcx, [rsp + 0x60]
mov rdx, rsi
call fcn.140006120
jmp 0x14007f743
cmp rbx, qword [0x140112460]
jbe 0x14007f558
cmp rbx, qword [r12 + 0x18]
jbe 0x14007f558
lea r8, [0x1400e245c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x140119150]
call fcn.1400404f0
jmp 0x14007f743
cmp rax, 2
jae 0x14007f572
xor r8d, r8d
mov rcx, r12
lea edx, [r8 + 4]
call fcn.1400b0b80
jmp 0x14007f743
movzx eax, byte [r12 + 0x21]
test al, 2
je 0x14007f58d
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 0x14007f712
movzx r8d, byte [r12 + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14007f5c8
cmp al, 2
je 0x14007f609
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14007f702
cmp rbx, 0x80
ja 0x14007f609
cmp rbx, 8
ja 0x14007f5dc
mov rdi, r13
jmp 0x14007f5ed
mov edi, 0x80
cmp rbx, 0x10
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a9650
test rax, rax
je 0x14007f743
mov byte [r12 + 0x20], 1
jmp 0x14007f702
cmp rbx, 0x20
jae 0x14007f619
mov edi, SafeArrayAllocDescriptor
jmp 0x14007f6b9
cmp rbx, 0x208
jae 0x14007f62c
mov edi, 0x208
jmp 0x14007f6b9
cmp rbx, 0x50000
jae 0x14007f675
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x14007f647
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14007f66b
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14007f66b
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x14007f6b9
cmp rbx, 0x320000
jae 0x14007f687
lea rdi, [rbx + 0x8000]
jmp 0x14007f6b9
cmp rbx, 0xc80000
jae 0x14007f6b2
movabs rax, 0x47ae147ae147ae15
mov rdi, rbx
mul rbx
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rbx
jmp 0x14007f6b9
lea rdi, [rbx + 0x20000]
mov rax, qword [0x140112460]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14007f6e0
test rcx, rcx
je 0x14007f6e0
mov rcx, qword [r12 + 8]
mov bl, 1
call fcn.1400ca390
jmp 0x14007f6e2
xor bl, bl
test rdi, rdi
js 0x14007f7d5
mov rcx, rdi
call fcn.1400c98f4
test rax, rax
je 0x14007f7d5
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 0x14007f72f
lea r8, [rsi + rsi]
lea rdx, [rsp + 0x60]
call fcn.1400ca550
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 0x14007f786
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 0x14007f81e
mov rcx, qword [r14 + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b04d0
xor r12d, r12d
test r15, r15
je 0x14007fd05
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 0x14007fab3
mov rcx, qword [r15 + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b04d0
jmp 0x14007fd05
test bl, bl
je 0x14007f7ee
lea rcx, [0x140119108]
xor eax, eax
mov qword [r12 + 8], rcx
mov qword [r12 + 0x18], rax
jmp 0x14007f7fa
mov rax, qword [r12 + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
lea r8, [0x1400e245c]
lea rdx, [0x1400e5580]
lea rcx, [0x140119150]
mov qword [r12 + 0x10], rax
call fcn.1400404f0
jmp 0x14007f743
lea rax, [rsp + 0x60]
cmp qword [r14 + 8], rax
jne 0x14007f832
mov rsi, qword [r14 + 0x10]
shr rsi, 1
jmp 0x14007f847
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 0x14007f867
lea rcx, [rsp + 0x60]
mov rdx, rsi
call fcn.140006120
jmp 0x14007f786
cmp rbx, qword [0x140112460]
jbe 0x14007f895
cmp rbx, qword [r14 + 0x18]
jbe 0x14007f895
lea r8, [0x1400e245c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x140119150]
call fcn.1400404f0
jmp 0x14007f786
cmp rax, 2
jae 0x14007f8af
xor r8d, r8d
mov rcx, r14
lea edx, [r8 + 4]
call fcn.1400b0b80
jmp 0x14007f786
movzx eax, byte [r14 + 0x21]
test al, 2
je 0x14007f8c7
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 0x14007fa3b
movzx r8d, byte [r14 + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14007f8ff
cmp al, 2
je 0x14007f93f
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14007fa2e
cmp rbx, 0x80
ja 0x14007f93f
cmp rbx, 8
ja 0x14007f913
mov rdi, r13
jmp 0x14007f924
mov edi, 0x80
cmp rbx, 0x10
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a9650
test rax, rax
je 0x14007f786
mov byte [r14 + 0x20], 1
jmp 0x14007fa2e
cmp rbx, 0x20
jae 0x14007f94f
mov edi, SafeArrayAllocDescriptor
jmp 0x14007f9ef
cmp rbx, 0x208
jae 0x14007f962
mov edi, 0x208
jmp 0x14007f9ef
cmp rbx, 0x50000
jae 0x14007f9ab
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x14007f97d
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14007f9a1
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14007f9a1
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x14007f9ef
cmp rbx, 0x320000
jae 0x14007f9bd
lea rdi, [rbx + 0x8000]
jmp 0x14007f9ef
cmp rbx, 0xc80000
jae 0x14007f9e8
movabs rax, 0x47ae147ae147ae15
mov rdi, rbx
mul rbx
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rbx
jmp 0x14007f9ef
lea rdi, [rbx + 0x20000]
mov rax, qword [0x140112460]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14007fa15
test rcx, rcx
je 0x14007fa15
mov rcx, qword [r14 + 8]
mov bl, 1
call fcn.1400ca390
jmp 0x14007fa17
xor bl, bl
test rdi, rdi
js 0x14007fa70
mov rcx, rdi
call fcn.1400c98f4
test rax, rax
je 0x14007fa70
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 0x14007fa57
lea r8, [rsi + rsi]
lea rdx, [rsp + 0x60]
call fcn.1400ca550
mov rax, qword [r14 + 8]
lea rcx, [rsi + rsi]
xor r12d, r12d
mov word [rcx + rax], r12w
mov qword [r14 + 0x10], rcx
jmp 0x14007f789
xor r12d, r12d
test bl, bl
je 0x14007fa88
lea rax, [0x140119108]
mov qword [r14 + 0x18], r12
mov qword [r14 + 8], rax
jmp 0x14007fa90
mov rax, qword [r14 + 8]
mov word [rax], r12w
lea r8, [0x1400e245c]
lea rdx, [0x1400e5580]
lea rcx, [0x140119150]
mov qword [r14 + 0x10], r12
call fcn.1400404f0
jmp 0x14007f789
lea rax, [rsp + 0x60]
cmp qword [r15 + 8], rax
jne 0x14007fac7
mov rsi, qword [r15 + 0x10]
shr rsi, 1
jmp 0x14007fadc
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 0x14007fafc
lea rcx, [rsp + 0x60]
mov rdx, rsi
call fcn.140006120
jmp 0x14007fd05
cmp rbx, qword [0x140112460]
jbe 0x14007fb2a
cmp rbx, qword [r15 + 0x18]
jbe 0x14007fb2a
lea r8, [0x1400e245c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x140119150]
call fcn.1400404f0
jmp 0x14007fd05
cmp rax, 2
jae 0x14007fb44
xor r8d, r8d
mov rcx, r15
lea edx, [r8 + 4]
call fcn.1400b0b80
jmp 0x14007fd05
movzx eax, byte [r15 + 0x21]
test al, 2
je 0x14007fb5c
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 0x14007fcd8
movzx r8d, byte [r15 + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14007fb94
cmp al, 2
je 0x14007fbd4
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14007fccb
cmp rbx, 0x80
ja 0x14007fbd4
cmp rbx, 8
ja 0x14007fba8
mov rdi, r13
jmp 0x14007fbb9
mov edi, 0x80
cmp rbx, 0x10
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a9650
test rax, rax
je 0x14007fd05
mov byte [r15 + 0x20], 1
jmp 0x14007fccb
cmp rbx, 0x20
jae 0x14007fbe4
mov edi, SafeArrayAllocDescriptor
jmp 0x14007fc84
cmp rbx, 0x208
jae 0x14007fbf7
mov edi, 0x208
jmp 0x14007fc84
cmp rbx, 0x50000
jae 0x14007fc40
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x14007fc12
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14007fc36
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14007fc36
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x14007fc84
cmp rbx, 0x320000
jae 0x14007fc52
lea rdi, [rbx + 0x8000]
jmp 0x14007fc84
cmp rbx, 0xc80000
jae 0x14007fc7d
movabs rax, 0x47ae147ae147ae15
mov rdi, rbx
mul rbx
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rbx
jmp 0x14007fc84
lea rdi, [rbx + 0x20000]
mov rax, qword [0x140112460]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14007fcaa
test rcx, rcx
je 0x14007fcaa
mov rcx, qword [r15 + 8]
mov bl, 1
call fcn.1400ca390
jmp 0x14007fcac
xor bl, bl
test rdi, rdi
js 0x14007fd70
mov rcx, rdi
call fcn.1400c98f4
test rax, rax
je 0x14007fd70
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 0x14007fcf4
lea r8, [rsi + rsi]
lea rdx, [rsp + 0x60]
call fcn.1400ca550
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 0x14007fd1d
test r14, r14
je 0x14008007f
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 0x14007fe21
movzx edx, byte [r12 + 0x23]
test dl, dl
jne 0x14007fdb0
mov rcx, qword [r12 + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b04d0
jmp 0x14007fe21
test bl, bl
je 0x14007fd85
lea rax, [0x140119108]
mov qword [r15 + 0x18], r12
mov qword [r15 + 8], rax
jmp 0x14007fd8d
mov rax, qword [r15 + 8]
mov word [rax], r12w
lea r8, [0x1400e245c]
lea rdx, [0x1400e5580]
lea rcx, [0x140119150]
mov qword [r15 + 0x10], r12
call fcn.1400404f0
jmp 0x14007fd05
lea rax, [rsp + 0x60]
cmp qword [r12 + 8], rax
jne 0x14007fdc6
mov rsi, qword [r12 + 0x10]
shr rsi, 1
jmp 0x14007fddb
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 0x14007fdf7
lea rcx, [rsp + 0x60]
mov rdx, rsi
call fcn.140006120
jmp 0x14007fe21
cmp rbx, qword [0x140112460]
jbe 0x14007fe58
cmp rbx, qword [r12 + 0x18]
jbe 0x14007fe58
lea r8, [0x1400e245c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x140119150]
call fcn.1400404f0
xor edx, edx
test r14, r14
je 0x14008007f
cmp word [rsp + 0x60], 0
mov rcx, r14
je 0x14008007a
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 0x14008007f
cmp rax, 2
jae 0x14007fe6f
xor r8d, r8d
mov rcx, r12
lea edx, [r8 + 4]
call fcn.1400b0b80
jmp 0x14007fe21
movzx eax, byte [r12 + 0x21]
test al, 2
je 0x14007fe8a
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 0x140080007
movzx r8d, byte [r12 + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14007fec5
cmp al, 2
je 0x14007ff06
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14007fff7
cmp rbx, 0x80
ja 0x14007ff06
cmp rbx, 8
ja 0x14007fed9
mov rdi, r13
jmp 0x14007feea
mov edi, 0x80
cmp rbx, 0x10
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a9650
test rax, rax
je 0x14007fe21
mov byte [r12 + 0x20], 1
jmp 0x14007fff7
cmp rbx, 0x20
jae 0x14007ff16
mov edi, SafeArrayAllocDescriptor
jmp 0x14007ffb6
cmp rbx, 0x208
jae 0x14007ff29
mov edi, 0x208
jmp 0x14007ffb6
cmp rbx, 0x50000
jae 0x14007ff72
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x14007ff44
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14007ff68
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14007ff68
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x14007ffb6
cmp rbx, 0x320000
jae 0x14007ff84
lea rdi, [rbx + 0x8000]
jmp 0x14007ffb6
cmp rbx, 0xc80000
jae 0x14007ffaf
movabs rax, 0x47ae147ae147ae15
mov rdi, rbx
mul rbx
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rbx
jmp 0x14007ffb6
lea rdi, [rbx + 0x20000]
mov rax, qword [0x140112460]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14007ffdd
test rcx, rcx
je 0x14007ffdd
mov rcx, qword [r12 + 8]
mov bl, 1
call fcn.1400ca390
jmp 0x14007ffdf
xor bl, bl
test rdi, rdi
js 0x14008003d
mov rcx, rdi
call fcn.1400c98f4
test rax, rax
je 0x14008003d
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 0x140080024
lea r8, [rsi + rsi]
lea rdx, [rsp + 0x60]
call fcn.1400ca550
mov rax, qword [r12 + 8]
lea rcx, [rsi + rsi]
xor edx, edx
mov word [rcx + rax], dx
mov qword [r12 + 0x10], rcx
jmp 0x14007fe23
test bl, bl
je 0x140080056
lea rcx, [0x140119108]
xor eax, eax
mov qword [r12 + 8], rcx
mov qword [r12 + 0x18], rax
jmp 0x140080062
mov rax, qword [r12 + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
mov qword [r12 + 0x10], rax
lea r8, [0x1400e245c]
lea rdx, [0x1400e5580]
jmp 0x14007fe15
call fcn.14001c030
mov rdi, qword [rsp + 0x38]
test rdi, rdi
je 0x1400800ad
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 [0x140118280]
movzx eax, byte [rdi + 0x23]
test al, al
jne 0x1400800dd
mov rcx, qword [rdi + 0x10]
lea rdx, [0x1400e24fc]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b04d0
jmp 0x14008030e
lea rsi, [0x1400e24fc]
cmp qword [rdi + 8], rsi
jne 0x1400800f3
mov r12, qword [rdi + 0x10]
shr r12, 1
jmp 0x1400800f9
mov r12d, 1
lea rcx, [r12 + 1]
lea rbx, [rcx + rcx]
cmp al, 2
jne 0x140080116
mov rdx, r12
mov rcx, rsi
call fcn.140006120
jmp 0x14008030e
cmp rbx, qword [0x140112460]
jbe 0x140080144
cmp rbx, qword [rdi + 0x18]
jbe 0x140080144
lea r8, [0x1400e245c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x140119150]
call fcn.1400404f0
jmp 0x14008030e
cmp rcx, 2
jae 0x14008015e
xor r8d, r8d
mov rcx, rdi
lea edx, [r8 + 4]
call fcn.1400b0b80
jmp 0x14008030e
movzx eax, byte [rdi + 0x21]
test al, 2
je 0x140080174
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 0x1400802e7
movzx r8d, byte [rdi + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x1400801ab
cmp al, 2
je 0x1400801e7
mov r13, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x1400802db
cmp rbx, 0x80
ja 0x1400801e7
cmp rbx, 8
jbe 0x1400801cd
mov r13d, 0x80
cmp rbx, 0x10
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmovbe r13d, eax
mov rcx, r13
call fcn.1400a9650
test rax, rax
je 0x14008030e
mov byte [rdi + 0x20], 1
jmp 0x1400802db
cmp rbx, 0x20
jae 0x1400801f8
mov r13d, SafeArrayAllocDescriptor
jmp 0x140080299
cmp rbx, 0x208
jae 0x14008020c
mov r13d, 0x208
jmp 0x140080299
cmp rbx, 0x50000
jae 0x140080255
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x140080227
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14008024b
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14008024b
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r13, xmm0
add r13, rax
jmp 0x140080299
cmp rbx, 0x320000
jae 0x140080267
lea r13, [rbx + 0x8000]
jmp 0x140080299
cmp rbx, 0xc80000
jae 0x140080292
movabs rax, 0x47ae147ae147ae15
mov r13, rbx
mul rbx
sub r13, rdx
shr r13, 1
add r13, rdx
shr r13, 6
add r13, rbx
jmp 0x140080299
lea r13, [rbx + 0x20000]
mov rax, qword [0x140112460]
cmp r13, rax
cmova r13, rax
cmp r8b, 2
jne 0x1400802bf
test rcx, rcx
je 0x1400802bf
mov rcx, qword [rdi + 8]
mov bl, 1
call fcn.1400ca390
jmp 0x1400802c1
xor bl, bl
test r13, r13
js 0x140080352
mov rcx, r13
call fcn.1400c98f4
test rax, rax
je 0x140080352
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 0x1400802fc
lea r8, [r12 + r12]
mov rdx, rsi
call fcn.1400ca550
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 0x140080397
mov eax, 1
jmp 0x1400803a5
test bl, bl
je 0x140080369
lea rcx, [0x140119108]
xor eax, eax
mov qword [rdi + 8], rcx
mov qword [rdi + 0x18], rax
jmp 0x140080374
mov rax, qword [rdi + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
lea r8, [0x1400e245c]
lea rdx, [0x1400e5580]
lea rcx, [0x140119150]
mov qword [rdi + 0x10], rax
call fcn.1400404f0
jmp 0x14008030e
mov rcx, qword [rbp + 0x1e0]
mov dl, 1
call fcn.14003ef50
mov rbx, qword [rsp + 0x2e8]
add rsp, 0x2a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret