Function at 0x14008bc00
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 [0x14012a948]
cmp al, 2
mov r14d, ecx
cmova r12, qword [0x14012a950]
cmp al, 3
mov r15d, ecx
cmova r14, qword [0x14012a958]
cmp al, 4
mov edi, ecx
cmova r15, qword [0x14012a960]
cmp al, 5
mov r13d, ecx
cmova rdi, qword [0x14012a968]
cmp al, 6
cmova r13, qword [0x14012a970]
cmp al, 7
mov qword [rsp + 0x50], rdi
cmova rcx, qword [0x14012a978]
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x38], rcx
test rbx, rbx
je 0x14008bc9f
mov rcx, rbx
call fcn.140024290
test r12, r12
je 0x14008bcac
mov rcx, r12
call fcn.140024290
test r14, r14
je 0x14008bcb9
mov rcx, r14
call fcn.140024290
test r15, r15
je 0x14008bcc6
mov rcx, r15
call fcn.140024290
test rdi, rdi
je 0x14008bcd3
mov rcx, rdi
call fcn.140024290
test r13, r13
je 0x14008bce0
mov rcx, r13
call fcn.140024290
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x14008bcf2
mov rcx, rax
call fcn.140024290
mov rcx, rsi
xor dil, dil
call fcn.14008e430
test al, al
je 0x14008cfa7
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitialize]
xor edx, edx
lea r11, [rsp + 0x30]
lea r9, [0x1400ef040]
lea rcx, [0x1400ef050]
lea r8d, [rdx + 1]
mov qword [rsp + 0x20], r11
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x14008cf50
mov rcx, qword [rsp + 0x30]
lea r8, [rsp + 0x40]
lea rdx, [0x1400ef060]
mov rax, qword [rcx]
call qword [rax]
test eax, eax
js 0x14008cf45
mov rcx, qword [rsp + 0x40]
xor r8d, r8d
mov rdx, rsi
mov rax, qword [rcx]
call qword [rax + 0x28]
test eax, eax
js 0x14008cf3a
movaps xmmword [rsp + 0x290], xmm6
movsd xmm6, qword [0x140112048]
movaps xmmword [rsp + 0x280], xmm7
movsd xmm7, qword [0x140112018]
movabs rdi, 0x8000000000000000
mov r13d, 8
movaps xmmword [rsp + 0x270], xmm8
movsd xmm8, qword [0x140112050]
test rbx, rbx
je 0x14008c05e
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 0x14008be05
mov rcx, qword [rbx + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bd4c0
jmp 0x14008c05e
lea rax, [rsp + 0x60]
cmp qword [rbx + 8], rax
jne 0x14008be19
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14008be38
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 0x14008be58
lea rcx, [rsp + 0x60]
mov rdx, r13
call fcn.140006d40
jmp 0x14008c058
cmp rsi, qword [0x1401255a0]
jbe 0x14008be86
cmp rsi, qword [rbx + 0x18]
jbe 0x14008be86
lea r8, [0x1400f1524]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14012c5c0]
call fcn.14004e450
jmp 0x14008c058
cmp rax, 2
jae 0x14008bea0
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400bdb70
jmp 0x14008c058
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14008beb6
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov rcx, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, rcx
jbe 0x14008c028
movzx r8d, byte [rbx + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14008beed
cmp al, 2
je 0x14008bf2e
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14008c01c
cmp rsi, 0x80
ja 0x14008bf2e
cmp rsi, 8
ja 0x14008bf03
mov edi, 8
jmp 0x14008bf14
mov edi, 0x80
cmp rsi, 0x10
mov eax, reloc.WSOCK32.dll_recv
cmovbe edi, eax
mov rcx, rdi
call fcn.1400b5f20
test rax, rax
je 0x14008c058
mov byte [rbx + 0x20], 1
jmp 0x14008c01c
cmp rsi, 0x20
jae 0x14008bf3e
mov edi, SafeArrayAllocDescriptor
jmp 0x14008bfd4
cmp rsi, 0x208
jae 0x14008bf51
mov edi, 0x208
jmp 0x14008bfd4
cmp rsi, 0x50000
jae 0x14008bf90
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14008bf6c
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14008bf86
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14008bf86
mov rax, rdi
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x14008bfd4
cmp rsi, 0x320000
jae 0x14008bfa2
lea rdi, [rsi + 0x8000]
jmp 0x14008bfd4
cmp rsi, 0xc80000
jae 0x14008bfcd
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14008bfd4
lea rdi, [rsi + 0x20000]
mov rax, qword [0x1401255a0]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14008bffb
test rcx, rcx
je 0x14008bffb
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400d6e48
jmp 0x14008bffe
xor sil, sil
test rdi, rdi
js 0x14008c0a8
mov rcx, rdi
call fcn.1400d6d88
test rax, rax
je 0x14008c0a8
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 0x14008c045
lea r8, [r13 + r13]
lea rdx, [rsp + 0x60]
call fcn.1400d78b0
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 0x14008c353
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 0x14008c0ee
mov rcx, qword [r12 + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bd4c0
jmp 0x14008c353
test sil, sil
je 0x14008c0c0
lea rcx, [0x14012c4b8]
xor eax, eax
mov qword [rbx + 8], rcx
mov qword [rbx + 0x18], rax
jmp 0x14008c0cb
mov rax, qword [rbx + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
lea r8, [0x1400f1524]
lea rdx, str.Out_of_memory.
lea rcx, [0x14012c5c0]
mov qword [rbx + 0x10], rax
call fcn.14004e450
jmp 0x14008c058
lea rax, [rsp + 0x60]
cmp qword [r12 + 8], rax
jne 0x14008c104
mov rsi, qword [r12 + 0x10]
shr rsi, 1
jmp 0x14008c119
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 0x14008c139
lea rcx, [rsp + 0x60]
mov rdx, rsi
call fcn.140006d40
jmp 0x14008c353
cmp rbx, qword [0x1401255a0]
jbe 0x14008c168
cmp rbx, qword [r12 + 0x18]
jbe 0x14008c168
lea r8, [0x1400f1524]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14012c5c0]
call fcn.14004e450
jmp 0x14008c353
cmp rax, 2
jae 0x14008c182
xor r8d, r8d
mov rcx, r12
lea edx, [r8 + 4]
call fcn.1400bdb70
jmp 0x14008c353
movzx eax, byte [r12 + 0x21]
test al, 2
je 0x14008c19d
mov rcx, qword [r12]
and al, 0x3d
mov byte [r12 + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov rcx, qword [r12 + 0x18]
and byte [r12 + 0x21], 0x82
cmp rbx, rcx
jbe 0x14008c322
movzx r8d, byte [r12 + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14008c1d8
cmp al, 2
je 0x14008c219
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14008c312
cmp rbx, 0x80
ja 0x14008c219
cmp rbx, 8
ja 0x14008c1ec
mov rdi, r13
jmp 0x14008c1fd
mov edi, 0x80
cmp rbx, 0x10
mov eax, reloc.WSOCK32.dll_recv
cmovbe edi, eax
mov rcx, rdi
call fcn.1400b5f20
test rax, rax
je 0x14008c353
mov byte [r12 + 0x20], 1
jmp 0x14008c312
cmp rbx, 0x20
jae 0x14008c229
mov edi, SafeArrayAllocDescriptor
jmp 0x14008c2c9
cmp rbx, 0x208
jae 0x14008c23c
mov edi, 0x208
jmp 0x14008c2c9
cmp rbx, 0x50000
jae 0x14008c285
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x14008c257
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14008c27b
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14008c27b
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x14008c2c9
cmp rbx, 0x320000
jae 0x14008c297
lea rdi, [rbx + 0x8000]
jmp 0x14008c2c9
cmp rbx, 0xc80000
jae 0x14008c2c2
movabs rax, 0x47ae147ae147ae15
mov rdi, rbx
mul rbx
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rbx
jmp 0x14008c2c9
lea rdi, [rbx + 0x20000]
mov rax, qword [0x1401255a0]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14008c2f0
test rcx, rcx
je 0x14008c2f0
mov rcx, qword [r12 + 8]
mov bl, 1
call fcn.1400d6e48
jmp 0x14008c2f2
xor bl, bl
test rdi, rdi
js 0x14008c3e5
mov rcx, rdi
call fcn.1400d6d88
test rax, rax
je 0x14008c3e5
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 0x14008c33f
lea r8, [rsi + rsi]
lea rdx, [rsp + 0x60]
call fcn.1400d78b0
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 0x14008c396
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 0x14008c42e
mov rcx, qword [r14 + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bd4c0
xor r12d, r12d
test r15, r15
je 0x14008c915
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 0x14008c6c3
mov rcx, qword [r15 + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bd4c0
jmp 0x14008c915
test bl, bl
je 0x14008c3fe
lea rcx, [0x14012c4b8]
xor eax, eax
mov qword [r12 + 8], rcx
mov qword [r12 + 0x18], rax
jmp 0x14008c40a
mov rax, qword [r12 + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
lea r8, [0x1400f1524]
lea rdx, str.Out_of_memory.
lea rcx, [0x14012c5c0]
mov qword [r12 + 0x10], rax
call fcn.14004e450
jmp 0x14008c353
lea rax, [rsp + 0x60]
cmp qword [r14 + 8], rax
jne 0x14008c442
mov rsi, qword [r14 + 0x10]
shr rsi, 1
jmp 0x14008c457
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 0x14008c477
lea rcx, [rsp + 0x60]
mov rdx, rsi
call fcn.140006d40
jmp 0x14008c396
cmp rbx, qword [0x1401255a0]
jbe 0x14008c4a5
cmp rbx, qword [r14 + 0x18]
jbe 0x14008c4a5
lea r8, [0x1400f1524]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14012c5c0]
call fcn.14004e450
jmp 0x14008c396
cmp rax, 2
jae 0x14008c4bf
xor r8d, r8d
mov rcx, r14
lea edx, [r8 + 4]
call fcn.1400bdb70
jmp 0x14008c396
movzx eax, byte [r14 + 0x21]
test al, 2
je 0x14008c4d7
mov rcx, qword [r14]
and al, 0x3d
mov byte [r14 + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov rcx, qword [r14 + 0x18]
and byte [r14 + 0x21], 0x82
cmp rbx, rcx
jbe 0x14008c64b
movzx r8d, byte [r14 + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14008c50f
cmp al, 2
je 0x14008c54f
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14008c63e
cmp rbx, 0x80
ja 0x14008c54f
cmp rbx, 8
ja 0x14008c523
mov rdi, r13
jmp 0x14008c534
mov edi, 0x80
cmp rbx, 0x10
mov eax, reloc.WSOCK32.dll_recv
cmovbe edi, eax
mov rcx, rdi
call fcn.1400b5f20
test rax, rax
je 0x14008c396
mov byte [r14 + 0x20], 1
jmp 0x14008c63e
cmp rbx, 0x20
jae 0x14008c55f
mov edi, SafeArrayAllocDescriptor
jmp 0x14008c5ff
cmp rbx, 0x208
jae 0x14008c572
mov edi, 0x208
jmp 0x14008c5ff
cmp rbx, 0x50000
jae 0x14008c5bb
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x14008c58d
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14008c5b1
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14008c5b1
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x14008c5ff
cmp rbx, 0x320000
jae 0x14008c5cd
lea rdi, [rbx + 0x8000]
jmp 0x14008c5ff
cmp rbx, 0xc80000
jae 0x14008c5f8
movabs rax, 0x47ae147ae147ae15
mov rdi, rbx
mul rbx
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rbx
jmp 0x14008c5ff
lea rdi, [rbx + 0x20000]
mov rax, qword [0x1401255a0]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14008c625
test rcx, rcx
je 0x14008c625
mov rcx, qword [r14 + 8]
mov bl, 1
call fcn.1400d6e48
jmp 0x14008c627
xor bl, bl
test rdi, rdi
js 0x14008c680
mov rcx, rdi
call fcn.1400d6d88
test rax, rax
je 0x14008c680
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 0x14008c667
lea r8, [rsi + rsi]
lea rdx, [rsp + 0x60]
call fcn.1400d78b0
mov rax, qword [r14 + 8]
lea rcx, [rsi + rsi]
xor r12d, r12d
mov word [rcx + rax], r12w
mov qword [r14 + 0x10], rcx
jmp 0x14008c399
xor r12d, r12d
test bl, bl
je 0x14008c698
lea rax, [0x14012c4b8]
mov qword [r14 + 0x18], r12
mov qword [r14 + 8], rax
jmp 0x14008c6a0
mov rax, qword [r14 + 8]
mov word [rax], r12w
lea r8, [0x1400f1524]
lea rdx, str.Out_of_memory.
lea rcx, [0x14012c5c0]
mov qword [r14 + 0x10], r12
call fcn.14004e450
jmp 0x14008c399
lea rax, [rsp + 0x60]
cmp qword [r15 + 8], rax
jne 0x14008c6d7
mov rsi, qword [r15 + 0x10]
shr rsi, 1
jmp 0x14008c6ec
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 0x14008c70c
lea rcx, [rsp + 0x60]
mov rdx, rsi
call fcn.140006d40
jmp 0x14008c915
cmp rbx, qword [0x1401255a0]
jbe 0x14008c73a
cmp rbx, qword [r15 + 0x18]
jbe 0x14008c73a
lea r8, [0x1400f1524]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14012c5c0]
call fcn.14004e450
jmp 0x14008c915
cmp rax, 2
jae 0x14008c754
xor r8d, r8d
mov rcx, r15
lea edx, [r8 + 4]
call fcn.1400bdb70
jmp 0x14008c915
movzx eax, byte [r15 + 0x21]
test al, 2
je 0x14008c76c
mov rcx, qword [r15]
and al, 0x3d
mov byte [r15 + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov rcx, qword [r15 + 0x18]
and byte [r15 + 0x21], 0x82
cmp rbx, rcx
jbe 0x14008c8e8
movzx r8d, byte [r15 + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14008c7a4
cmp al, 2
je 0x14008c7e4
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14008c8db
cmp rbx, 0x80
ja 0x14008c7e4
cmp rbx, 8
ja 0x14008c7b8
mov rdi, r13
jmp 0x14008c7c9
mov edi, 0x80
cmp rbx, 0x10
mov eax, reloc.WSOCK32.dll_recv
cmovbe edi, eax
mov rcx, rdi
call fcn.1400b5f20
test rax, rax
je 0x14008c915
mov byte [r15 + 0x20], 1
jmp 0x14008c8db
cmp rbx, 0x20
jae 0x14008c7f4
mov edi, SafeArrayAllocDescriptor
jmp 0x14008c894
cmp rbx, 0x208
jae 0x14008c807
mov edi, 0x208
jmp 0x14008c894
cmp rbx, 0x50000
jae 0x14008c850
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x14008c822
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14008c846
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14008c846
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x14008c894
cmp rbx, 0x320000
jae 0x14008c862
lea rdi, [rbx + 0x8000]
jmp 0x14008c894
cmp rbx, 0xc80000
jae 0x14008c88d
movabs rax, 0x47ae147ae147ae15
mov rdi, rbx
mul rbx
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rbx
jmp 0x14008c894
lea rdi, [rbx + 0x20000]
mov rax, qword [0x1401255a0]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14008c8ba
test rcx, rcx
je 0x14008c8ba
mov rcx, qword [r15 + 8]
mov bl, 1
call fcn.1400d6e48
jmp 0x14008c8bc
xor bl, bl
test rdi, rdi
js 0x14008c980
mov rcx, rdi
call fcn.1400d6d88
test rax, rax
je 0x14008c980
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 0x14008c904
lea r8, [rsi + rsi]
lea rdx, [rsp + 0x60]
call fcn.1400d78b0
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 0x14008c92d
test r14, r14
je 0x14008cc8f
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 0x14008ca31
movzx edx, byte [r12 + 0x23]
test dl, dl
jne 0x14008c9c0
mov rcx, qword [r12 + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bd4c0
jmp 0x14008ca31
test bl, bl
je 0x14008c995
lea rax, [0x14012c4b8]
mov qword [r15 + 0x18], r12
mov qword [r15 + 8], rax
jmp 0x14008c99d
mov rax, qword [r15 + 8]
mov word [rax], r12w
lea r8, [0x1400f1524]
lea rdx, str.Out_of_memory.
lea rcx, [0x14012c5c0]
mov qword [r15 + 0x10], r12
call fcn.14004e450
jmp 0x14008c915
lea rax, [rsp + 0x60]
cmp qword [r12 + 8], rax
jne 0x14008c9d6
mov rsi, qword [r12 + 0x10]
shr rsi, 1
jmp 0x14008c9eb
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 0x14008ca07
lea rcx, [rsp + 0x60]
mov rdx, rsi
call fcn.140006d40
jmp 0x14008ca31
cmp rbx, qword [0x1401255a0]
jbe 0x14008ca68
cmp rbx, qword [r12 + 0x18]
jbe 0x14008ca68
lea r8, [0x1400f1524]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14012c5c0]
call fcn.14004e450
xor edx, edx
test r14, r14
je 0x14008cc8f
cmp word [rsp + 0x60], 0
mov rcx, r14
je 0x14008cc8a
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 0x14008cc8f
cmp rax, 2
jae 0x14008ca7f
xor r8d, r8d
mov rcx, r12
lea edx, [r8 + 4]
call fcn.1400bdb70
jmp 0x14008ca31
movzx eax, byte [r12 + 0x21]
test al, 2
je 0x14008ca9a
mov rcx, qword [r12]
and al, 0x3d
mov byte [r12 + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov rcx, qword [r12 + 0x18]
and byte [r12 + 0x21], 0x82
cmp rbx, rcx
jbe 0x14008cc17
movzx r8d, byte [r12 + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14008cad5
cmp al, 2
je 0x14008cb16
mov rdi, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14008cc07
cmp rbx, 0x80
ja 0x14008cb16
cmp rbx, 8
ja 0x14008cae9
mov rdi, r13
jmp 0x14008cafa
mov edi, 0x80
cmp rbx, 0x10
mov eax, reloc.WSOCK32.dll_recv
cmovbe edi, eax
mov rcx, rdi
call fcn.1400b5f20
test rax, rax
je 0x14008ca31
mov byte [r12 + 0x20], 1
jmp 0x14008cc07
cmp rbx, 0x20
jae 0x14008cb26
mov edi, SafeArrayAllocDescriptor
jmp 0x14008cbc6
cmp rbx, 0x208
jae 0x14008cb39
mov edi, 0x208
jmp 0x14008cbc6
cmp rbx, 0x50000
jae 0x14008cb82
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x14008cb54
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14008cb78
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14008cb78
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si rdi, xmm0
add rdi, rax
jmp 0x14008cbc6
cmp rbx, 0x320000
jae 0x14008cb94
lea rdi, [rbx + 0x8000]
jmp 0x14008cbc6
cmp rbx, 0xc80000
jae 0x14008cbbf
movabs rax, 0x47ae147ae147ae15
mov rdi, rbx
mul rbx
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rbx
jmp 0x14008cbc6
lea rdi, [rbx + 0x20000]
mov rax, qword [0x1401255a0]
cmp rdi, rax
cmova rdi, rax
cmp r8b, 2
jne 0x14008cbed
test rcx, rcx
je 0x14008cbed
mov rcx, qword [r12 + 8]
mov bl, 1
call fcn.1400d6e48
jmp 0x14008cbef
xor bl, bl
test rdi, rdi
js 0x14008cc4d
mov rcx, rdi
call fcn.1400d6d88
test rax, rax
je 0x14008cc4d
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 0x14008cc34
lea r8, [rsi + rsi]
lea rdx, [rsp + 0x60]
call fcn.1400d78b0
mov rax, qword [r12 + 8]
lea rcx, [rsi + rsi]
xor edx, edx
mov word [rcx + rax], dx
mov qword [r12 + 0x10], rcx
jmp 0x14008ca33
test bl, bl
je 0x14008cc66
lea rcx, [0x14012c4b8]
xor eax, eax
mov qword [r12 + 8], rcx
mov qword [r12 + 0x18], rax
jmp 0x14008cc72
mov rax, qword [r12 + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
mov qword [r12 + 0x10], rax
lea r8, [0x1400f1524]
lea rdx, str.Out_of_memory.
jmp 0x14008ca25
call fcn.140024290
mov rdi, qword [rsp + 0x38]
test rdi, rdi
je 0x14008ccbd
mov rcx, qword [rsp + 0x30]
lea rdx, [rbp + 0x1f8]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_WSASetLastError]
movsxd rdx, dword [rbp + 0x1f8]
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, rdi
call fcn.140001090
mov rdi, qword [0x14012b620]
movzx eax, byte [rdi + 0x23]
test al, al
jne 0x14008cced
mov rcx, qword [rdi + 0x10]
lea rdx, [0x1400f1614]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bd4c0
jmp 0x14008cf1e
lea rsi, [0x1400f1614]
cmp qword [rdi + 8], rsi
jne 0x14008cd03
mov r12, qword [rdi + 0x10]
shr r12, 1
jmp 0x14008cd09
mov r12d, 1
lea rcx, [r12 + 1]
lea rbx, [rcx + rcx]
cmp al, 2
jne 0x14008cd26
mov rdx, r12
mov rcx, rsi
call fcn.140006d40
jmp 0x14008cf1e
cmp rbx, qword [0x1401255a0]
jbe 0x14008cd54
cmp rbx, qword [rdi + 0x18]
jbe 0x14008cd54
lea r8, [0x1400f1524]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14012c5c0]
call fcn.14004e450
jmp 0x14008cf1e
cmp rcx, 2
jae 0x14008cd6e
xor r8d, r8d
mov rcx, rdi
lea edx, [r8 + 4]
call fcn.1400bdb70
jmp 0x14008cf1e
movzx eax, byte [rdi + 0x21]
test al, 2
je 0x14008cd84
mov rcx, qword [rdi]
and al, 0x3d
mov byte [rdi + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov rcx, qword [rdi + 0x18]
and byte [rdi + 0x21], 0x82
cmp rbx, rcx
jbe 0x14008cef7
movzx r8d, byte [rdi + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x14008cdbb
cmp al, 2
je 0x14008cdf7
mov r13, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1e0]
jmp 0x14008ceeb
cmp rbx, 0x80
ja 0x14008cdf7
cmp rbx, 8
jbe 0x14008cddd
mov r13d, 0x80
cmp rbx, 0x10
mov eax, reloc.WSOCK32.dll_recv
cmovbe r13d, eax
mov rcx, r13
call fcn.1400b5f20
test rax, rax
je 0x14008cf1e
mov byte [rdi + 0x20], 1
jmp 0x14008ceeb
cmp rbx, 0x20
jae 0x14008ce08
mov r13d, SafeArrayAllocDescriptor
jmp 0x14008cea9
cmp rbx, 0x208
jae 0x14008ce1c
mov r13d, 0x208
jmp 0x14008cea9
cmp rbx, 0x50000
jae 0x14008ce65
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
test rbx, rbx
jns 0x14008ce37
addsd xmm0, xmm7
mulsd xmm0, xmm8
xor eax, eax
comisd xmm0, xmm6
jbe 0x14008ce5b
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14008ce5b
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r13, xmm0
add r13, rax
jmp 0x14008cea9
cmp rbx, 0x320000
jae 0x14008ce77
lea r13, [rbx + 0x8000]
jmp 0x14008cea9
cmp rbx, 0xc80000
jae 0x14008cea2
movabs rax, 0x47ae147ae147ae15
mov r13, rbx
mul rbx
sub r13, rdx
shr r13, 1
add r13, rdx
shr r13, 6
add r13, rbx
jmp 0x14008cea9
lea r13, [rbx + 0x20000]
mov rax, qword [0x1401255a0]
cmp r13, rax
cmova r13, rax
cmp r8b, 2
jne 0x14008cecf
test rcx, rcx
je 0x14008cecf
mov rcx, qword [rdi + 8]
mov bl, 1
call fcn.1400d6e48
jmp 0x14008ced1
xor bl, bl
test r13, r13
js 0x14008cf62
mov rcx, r13
call fcn.1400d6d88
test rax, rax
je 0x14008cf62
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 0x14008cf0c
lea r8, [r12 + r12]
mov rdx, rsi
call fcn.1400d78b0
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.WSOCK32.dll_recv]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rcx]
call qword [rdx + reloc.WSOCK32.dll_recv]
call qword [sym.imp.ole32.dll_CoUninitialize]
test dil, dil
je 0x14008cfa7
mov eax, 1
jmp 0x14008cfb5
test bl, bl
je 0x14008cf79
lea rcx, [0x14012c4b8]
xor eax, eax
mov qword [rdi + 8], rcx
mov qword [rdi + 0x18], rax
jmp 0x14008cf84
mov rax, qword [rdi + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
lea r8, [0x1400f1524]
lea rdx, str.Out_of_memory.
lea rcx, [0x14012c5c0]
mov qword [rdi + 0x10], rax
call fcn.14004e450
jmp 0x14008cf1e
mov rcx, qword [rbp + 0x1e0]
mov dl, 1
call fcn.14004cd90
mov rbx, qword [rsp + 0x2e8]
add rsp, 0x2a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret