Function at 0x1400176e0
Capabilities:
Get common file path
Get disk size

Disassembly:
push rdi
push r14
push r15
mov eax, 0x2c40
call fcn.1400d6730
sub rsp, rax
mov qword [rsp + 0x5a8], 0xfffffffffffffffe
mov qword [rsp + 0x2c68], rbx
mov qword [rsp + 0x2c70], rsi
mov rax, qword [0x1401c3e90]
xor rax, rsp
mov qword [rsp + 0x2c30], rax
mov r14, rcx
mov qword [rsp + 0xc0], rcx
mov rcx, qword [rcx + 0xf0]
cmp dword [rcx - 0x10], 0
jne 0x140017772
mov ecx, dword [0x1401cbd80]
imul ecx, ecx
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 2
sub ecx, eax
cmp ecx, 0xb
jne 0x140019d15
mov dword [0x1401cc13c], 0x700f2e62
jmp 0x140019d15
add rcx, 0xffffffffffffffe8
call fcn.140002410
add rax, 0x18
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x558]
mov qword [rsp + 0x138], rax
lea rdx, str.c9f1f3ffe2edfbf6cf
lea rcx, [rsp + 0x558]
call fcn.140002110
nop
mov rdx, rax
lea rcx, [rsp + 0x1a0]
call fcn.14002a5d0
nop
mov r8, qword [r14 + 0x98]
mov rdx, qword [rax]
lea rcx, [rsp + 0x40]
call fcn.1400100a0
nop
mov rdx, qword [rsp + 0x1a0]
add rdx, 0xffffffffffffffe8
or rdi, 0xffffffffffffffff
lock add dword [rdx + 0x10], edi
jg 0x1400177ee
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov eax, dword [0x1401cbd80]
lea ecx, [rax + 1]
imul ecx, eax
mov eax, 0x2e8ba2e9
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x16
sub ecx, edx
cmp ecx, 0x15
jne 0x140017821
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x1401cbd80], eax
lea rcx, [rsp + 0x518]
call fcn.1400288d0
mov rsi, rax
lea rcx, [0x1401c39a8]
mov rdx, qword [0x1401c39a8]
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0xa0], rax
lea rdx, [0x140155f28]
test rdx, 0xffffffffffff0000
jne 0x140017882
movzx ebx, dx
mov ecx, ebx
call fcn.1400019e0
test rax, rax
je 0x140017896
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0xa0]
call fcn.1400025b0
jmp 0x140017896
mov r8d, 2
lea rcx, [rsp + 0xa0]
call fcn.1400022c0
nop
lea r8, [0x140155f20]
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x1b0]
call fcn.14001c930
nop
mov r8, rsi
mov rdx, rax
lea rcx, [rsp + 0x488]
call fcn.140010500
nop
mov rdx, qword [rax]
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x40]
call fcn.140010fc0
nop
mov rdx, qword [rsp + 0x488]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x1400178f6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x1b0]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140017913
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0xa0]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140017930
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x518]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14001794c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov ecx, dword [0x1401cbd80]
lea r8d, [rcx + 2]
lea eax, [rcx + 1]
imul r8d, eax
imul r8d, ecx
mov eax, 0x88888889
imul r8d
add edx, r8d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0xf
sub r8d, edx
cmp r8d, 2
jne 0x140017988
inc dword [0x1401cc15c]
lea rcx, [0x1401c39a8]
mov rax, qword [0x1401c39a8]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x48]
call fcn.140030010
nop
lea rcx, [rsp + 0x1c0]
call fcn.14002ac60
nop
mov rdx, qword [rax]
xor r15d, r15d
mov eax, r15d
test rdx, rdx
setne al
test eax, eax
jne 0x1400179e3
mov ecx, 0x80004005
call fcn.140001920
int3
mov rax, qword [rsp + 0x48]
sub rdx, rax
nop dword [rax + rax]
movzx ecx, word [rax]
cmp cx, word [rax + rdx]
jne 0x140017a07
add rax, 2
test cx, cx
jne 0x1400179f0
mov eax, r15d
jmp 0x140017a0c
sbb eax, eax
or eax, 1
test eax, eax
sete bl
mov rdx, qword [rsp + 0x1c0]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140017a2d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test bl, bl
je 0x140017b80
lea rax, [rsp + 0x498]
mov qword [rsp + 0xc0], rax
lea rdx, str.f1dad7d1d9f3c7c6dde7c2d6d3c6d7e7c0deedfac6c6c2e0d7c3c7d7c1c6ed
lea rcx, [rsp + 0x498]
call fcn.140002110
nop
mov rdx, rax
lea rcx, [rsp + 0x1e0]
call fcn.14002a5d0
mov rbx, rax
lea rcx, [0x1401c39a8]
mov rdx, qword [0x1401c39a8]
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x120], rax
mov r8, rbx
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0x598]
call fcn.140023520
nop
lea r8, [rsp + 0x50]
mov rdx, rax
lea rcx, [rsp + 0x1d0]
call fcn.140023520
nop
mov rdx, rax
mov rcx, r14
call fcn.1400158e0
nop
mov rdx, qword [rsp + 0x1d0]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140017ae2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x598]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140017aff
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x120]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140017b1c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x1e0]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140017b39
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140017b53
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140017b6d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jmp 0x140019d0a
mov rax, qword [rsp + 0x48]
cmp dword [rax - 0x10], 0
jne 0x140017ce8
lea rax, [rsp + 0x4a8]
mov qword [rsp + 0xc0], rax
lea rdx, str.f1dad7d1d9f3c7c6dde7c2d6d3c6d7e7c0deedc1c6c0f8c1dddcedd7dfc2c6cb
lea rcx, [rsp + 0x4a8]
call fcn.140002110
nop
mov rdx, rax
lea rcx, [rsp + 0x528]
call fcn.14002a5d0
mov rbx, rax
lea rcx, [0x1401c39a8]
mov rdx, qword [0x1401c39a8]
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x118], rax
mov r8, rbx
lea rdx, [rsp + 0x118]
lea rcx, [rsp + 0x1f0]
call fcn.140023520
nop
mov rdx, rax
mov rcx, r14
call fcn.1400158e0
nop
mov rdx, qword [rsp + 0x1f0]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140017c26
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x118]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140017c43
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x528]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140017c60
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
mov ecx, dword [0x1401cbd80]
lea r8d, [rcx + 1]
imul r8d, ecx
mov eax, 0x2e8ba2e9
imul r8d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x16
sub r8d, edx
cmp r8d, 0x13
jne 0x140017ca1
lea edx, [r8 + 0x6c]
lea r8d, [rdx + 1]
lea rcx, str._d__d_n
call fcn.1400d1f8c
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140017cbb
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140017cd5
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jmp 0x140019d0a
lea rax, [rsp + 0x2458]
mov qword [rsp + 0x2450], rax
mov r8d, 3
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x2450]
call fcn.14001cf60
nop
mov qword [rsp + 0x2440], r15
mov qword [rsp + 0x2448], r15
mov qword [rsp + 0x2448], 0xf
mov qword [rsp + 0x2440], r15
mov byte [rsp + 0x2430], 0
mov rdx, qword [rsp + 0x2450]
cmp byte [rdx], 0
jne 0x140017d4f
mov r8, r15
jmp 0x140017d5c
mov r8, rdi
inc r8
cmp byte [rdx + r8], 0
jne 0x140017d52
lea rcx, [rsp + 0x2430]
call fcn.1400013f0
nop
lea rcx, [rsp + 0x24e0]
call fcn.140036260
nop
xor edx, edx
lea rcx, [rsp + 0x88]
call fcn.14003afe0
nop
lea r8, [rsp + 0x88]
lea rdx, [rsp + 0x2430]
lea rcx, [rsp + 0x24e0]
call fcn.140036310
test al, al
jne 0x140017ff2
mov ecx, dword [0x1401cbd80]
imul ecx, ecx
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0xf
sub ecx, edx
cmp ecx, 0xe
jne 0x140017dfc
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r15d
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateFileW]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
lea rax, [rsp + 0x200]
mov qword [rsp + 0x6d8], rax
lea rdx, str.f1dad7d1d9f3c7c6dde7c2d6d3c6d7e7c0deedc2d3c0c1d7edd7c0c0ddc0
lea rcx, [rsp + 0x200]
call fcn.140002110
nop
mov rdx, rax
lea rcx, [rsp + 0x220]
call fcn.14002a5d0
mov rbx, rax
lea rcx, [0x1401c39a8]
mov rdx, qword [0x1401c39a8]
call qword [rdx + 0x18]
mov qword [rsp + 0x6e8], rax
lea rcx, [rax + 0x18]
mov qword [rsp + 0x128], rcx
mov r8, rbx
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0x3c8]
call fcn.140023520
nop
mov rdx, rax
mov rcx, r14
call fcn.1400158e0
nop
mov rcx, qword [rsp + 0x3c8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x210], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140017eab
mov rdx, qword [rsp + 0x210]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x128]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3d0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140017ed8
mov rdx, qword [rsp + 0x3d0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x220]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3e0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140017f05
mov rdx, qword [rsp + 0x3e0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14003b350
nop
lea rcx, [rsp + 0x24e0]
call fcn.140019d40
nop
cmp qword [rsp + 0x2448], 0x10
jb 0x140017f39
mov rcx, qword [rsp + 0x2430]
call fcn.1400d1660
mov qword [rsp + 0x2448], 0xf
mov qword [rsp + 0x2440], r15
mov byte [rsp + 0x2430], 0
lea rax, [rsp + 0x2458]
mov rcx, qword [rsp + 0x2450]
cmp rcx, rax
je 0x140017f70
call fcn.1400d2130
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x230], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140017f9a
mov rdx, qword [rsp + 0x230]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3f0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140017fc4
mov rdx, qword [rsp + 0x3f0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rax, qword [rsp + 0x40]
add rax, 0xffffffffffffffe8
mov qword [rsp + 0x240], rax
lock add dword [rax + 0x10], 0xffffffff
jg 0x140017fed
mov rdx, qword [rsp + 0x240]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140019d15
lea rdx, str._L_update_low_ver
lea rcx, [rsp + 0x130]
call fcn.140003170
nop
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0x410]
call fcn.1400293b0
mov qword [rsp + 0x690], rax
mov rdx, qword [rax]
mov qword [rsp + 0x5c0], rdx
lea rcx, [rsp + 0x400]
call fcn.14001c4d0
mov qword [rsp + 0x720], rax
mov rdx, qword [rax]
mov qword [rsp + 0x5d0], rdx
lea rcx, [rsp + 0x88]
call fcn.14003bd90
mov qword [rsp + 0x6a0], rax
cmp byte [rax + 8], 4
setne byte [rsp + 0x59]
mov rcx, qword [rsp + 0x400]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x250], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x14001809a
mov rdx, qword [rsp + 0x250]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x410]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x260], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400180c7
mov rdx, qword [rsp + 0x260]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x130]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x420], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400180f3
mov rdx, qword [rsp + 0x420]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
cmp byte [rsp + 0x59], 0
je 0x140018233
mov ecx, dword [0x1401cbd80]
mov eax, ecx
imul eax, ecx
imul eax, ecx
and eax, 0x8000000f
jge 0x14001811a
dec eax
or eax, 0xfffffff0
inc eax
cmp eax, 0xe
jne 0x140018146
mov edx, ecx
test ecx, ecx
je 0x14001813c
dec edx
je 0x140018133
inc ecx
mov dword [0x1401cbd80], ecx
jmp 0x140018146
mov dword [0x1401cbd80], r15d
jmp 0x140018146
mov dword [0x1401cbd80], 2
lea rcx, [rsp + 0x88]
call fcn.14003b350
nop
lea rcx, [rsp + 0x24e0]
call fcn.140019d40
nop
cmp qword [rsp + 0x2448], 0x10
jb 0x14001817a
mov rcx, qword [rsp + 0x2430]
call fcn.1400d1660
mov qword [rsp + 0x2448], 0xf
mov qword [rsp + 0x2440], r15
mov byte [rsp + 0x2430], 0
lea rax, [rsp + 0x2458]
mov rcx, qword [rsp + 0x2450]
cmp rcx, rax
je 0x1400181b1
call fcn.1400d2130
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x270], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400181db
mov rdx, qword [rsp + 0x270]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x430], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018205
mov rdx, qword [rsp + 0x430]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rax, qword [rsp + 0x40]
add rax, 0xffffffffffffffe8
mov qword [rsp + 0x280], rax
lock add dword [rax + 0x10], 0xffffffff
jg 0x14001822e
mov rdx, qword [rsp + 0x280]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140019d15
lea rdx, str._L_update_low_ver
lea rcx, [rsp + 0xf0]
call fcn.140003170
nop
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x450]
call fcn.1400293b0
mov qword [rsp + 0x5e0], rax
mov rdx, qword [rax]
mov qword [rsp + 0x708], rdx
lea rcx, [rsp + 0x440]
call fcn.14001c4d0
mov qword [rsp + 0x5f0], rax
mov rdx, qword [rax]
mov qword [rsp + 0x6b0], rdx
lea rcx, [rsp + 0x88]
call fcn.14003bd90
mov qword [rsp + 0x600], rax
mov rdx, qword [rax]
mov qword [rsp + 0x728], rdx
lea rcx, [rsp + 0x60]
call fcn.140003170
nop
mov rcx, qword [rsp + 0x440]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x290], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400182e8
mov rdx, qword [rsp + 0x290]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x450]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2a0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018315
mov rdx, qword [rsp + 0x2a0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0xf0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x460], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018341
mov rdx, qword [rsp + 0x460]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
call fcn.140012f90
test al, al
jne 0x140018362
mov dword [rsp + 0x1860], r15d
mov dword [rsp + 0x730], r15d
mov dword [rsp + 0xc10], r15d
mov rax, qword [rsp + 0x60]
mov ecx, dword [rax - 0x10]
mov dword [rsp + 0x3d8], ecx
test ecx, ecx
jne 0x140018490
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2b0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400183a3
mov rdx, qword [rsp + 0x2b0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14003b350
nop
lea rcx, [rsp + 0x24e0]
call fcn.140019d40
nop
cmp qword [rsp + 0x2448], 0x10
jb 0x1400183d7
mov rcx, qword [rsp + 0x2430]
call fcn.1400d1660
mov qword [rsp + 0x2448], 0xf
mov qword [rsp + 0x2440], r15
mov byte [rsp + 0x2430], 0
lea rax, [rsp + 0x2458]
mov rcx, qword [rsp + 0x2450]
cmp rcx, rax
je 0x14001840e
call fcn.1400d2130
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x470], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018438
mov rdx, qword [rsp + 0x470]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2c0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018462
mov rdx, qword [rsp + 0x2c0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rax, qword [rsp + 0x40]
add rax, 0xffffffffffffffe8
mov qword [rsp + 0x480], rax
lock add dword [rax + 0x10], 0xffffffff
jg 0x14001848b
mov rdx, qword [rsp + 0x480]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140019d15
lea rdx, str.update_high_ver
lea rcx, [rsp + 0x88]
call fcn.14003bd90
mov qword [rsp + 0x610], rax
cmp byte [rax + 8], 4
je 0x1400185cd
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2d0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400184e0
mov rdx, qword [rsp + 0x2d0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14003b350
nop
lea rcx, [rsp + 0x24e0]
call fcn.140019d40
nop
cmp qword [rsp + 0x2448], 0x10
jb 0x140018514
mov rcx, qword [rsp + 0x2430]
call fcn.1400d1660
mov qword [rsp + 0x2448], 0xf
mov qword [rsp + 0x2440], r15
mov byte [rsp + 0x2430], 0
lea rax, [rsp + 0x2458]
mov rcx, qword [rsp + 0x2450]
cmp rcx, rax
je 0x14001854b
call fcn.1400d2130
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x490], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018575
mov rdx, qword [rsp + 0x490]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2e0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x14001859f
mov rdx, qword [rsp + 0x2e0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rax, qword [rsp + 0x40]
add rax, 0xffffffffffffffe8
mov qword [rsp + 0x4a0], rax
lock add dword [rax + 0x10], 0xffffffff
jg 0x1400185c8
mov rdx, qword [rsp + 0x4a0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140019d15
lea rdx, str.update_high_ver
lea rcx, [rsp + 0x88]
call fcn.14003bd90
mov qword [rsp + 0x6c0], rax
mov rdx, qword [rax]
mov qword [rsp + 0x620], rdx
lea rcx, [rsp + 0x68]
call fcn.140003170
nop
mov r9d, dword [0x1401cbd80]
lea ecx, [r9 + 2]
lea eax, [r9 + 1]
imul ecx, eax
imul ecx, r9d
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0xf
sub ecx, edx
cmp ecx, 3
jne 0x14001864d
call fcn.1400d2038
mov r9d, dword [0x1401cbd80]
cmp r9d, eax
jne 0x14001864d
dec r9d
mov dword [0x1401cbd80], r9d
mov rax, qword [rsp + 0x68]
mov ecx, dword [rax - 0x10]
mov dword [rsp + 0x398], ecx
test ecx, ecx
jne 0x140018826
call fcn.140013000
test al, al
jne 0x1400186e5
mov r10d, r15d
mov dword [rsp + 0xc8], r15d
nop dword [rax + rax]
cmp r10d, 0x100
jge 0x1400186e5
mov edx, r10d
mov dword [rsp + 0xac], edx
mov r8d, r15d
mov dword [rsp + 0xd0], r15d
nop
cmp r8d, 8
jae 0x1400186ce
mov ecx, edx
and ecx, 1
dec ecx
not ecx
and ecx, r9d
mov eax, edx
sar eax, 1
mov edx, ecx
xor edx, eax
mov dword [rsp + 0xac], edx
inc r8d
mov dword [rsp + 0xd0], r8d
jmp 0x1400186a0
add r9d, edx
mov dword [0x1401cbd80], r9d
inc r10d
mov dword [rsp + 0xc8], r10d
jmp 0x140018680
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2f0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x14001870f
mov rdx, qword [rsp + 0x2f0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x4b0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018739
mov rdx, qword [rsp + 0x4b0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14003b350
nop
lea rcx, [rsp + 0x24e0]
call fcn.140019d40
nop
cmp qword [rsp + 0x2448], 0x10
jb 0x14001876d
mov rcx, qword [rsp + 0x2430]
call fcn.1400d1660
mov qword [rsp + 0x2448], 0xf
mov qword [rsp + 0x2440], r15
mov byte [rsp + 0x2430], 0
lea rax, [rsp + 0x2458]
mov rcx, qword [rsp + 0x2450]
cmp rcx, rax
je 0x1400187a4
call fcn.1400d2130
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x300], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400187ce
mov rdx, qword [rsp + 0x300]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x4c0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400187f8
mov rdx, qword [rsp + 0x4c0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rax, qword [rsp + 0x40]
add rax, 0xffffffffffffffe8
mov qword [rsp + 0x310], rax
lock add dword [rax + 0x10], 0xffffffff
jg 0x140018821
mov rdx, qword [rsp + 0x310]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140019d15
lea rdx, str._L_download_url
lea rcx, [rsp + 0xd8]
call fcn.140003170
nop
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x4e0]
call fcn.1400293b0
mov qword [rsp + 0x718], rax
mov rdx, qword [rax]
mov qword [rsp + 0x630], rdx
lea rcx, [rsp + 0x4d0]
call fcn.14001c4d0
mov qword [rsp + 0x6d0], rax
mov rdx, qword [rax]
mov qword [rsp + 0x640], rdx
lea rcx, [rsp + 0x88]
call fcn.14003bd90
mov qword [rsp + 0x6f8], rax
cmp byte [rax + 8], 4
setne byte [rsp + 0x58]
mov rcx, qword [rsp + 0x4d0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x320], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400188ce
mov rdx, qword [rsp + 0x320]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x4e0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x330], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400188fb
mov rdx, qword [rsp + 0x330]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0xd8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x4f0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018927
mov rdx, qword [rsp + 0x4f0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
cmp byte [rsp + 0x58], 0
je 0x140018a73
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x340], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x14001895c
mov rdx, qword [rsp + 0x340]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x500], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018986
mov rdx, qword [rsp + 0x500]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14003b350
nop
lea rcx, [rsp + 0x24e0]
call fcn.140019d40
nop
cmp qword [rsp + 0x2448], 0x10
jb 0x1400189ba
mov rcx, qword [rsp + 0x2430]
call fcn.1400d1660
mov qword [rsp + 0x2448], 0xf
mov qword [rsp + 0x2440], r15
mov byte [rsp + 0x2430], 0
lea rax, [rsp + 0x2458]
mov rcx, qword [rsp + 0x2450]
cmp rcx, rax
je 0x1400189f1
call fcn.1400d2130
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x350], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018a1b
mov rdx, qword [rsp + 0x350]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x510], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018a45
mov rdx, qword [rsp + 0x510]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rax, qword [rsp + 0x40]
add rax, 0xffffffffffffffe8
mov qword [rsp + 0x360], rax
lock add dword [rax + 0x10], 0xffffffff
jg 0x140018a6e
mov rdx, qword [rsp + 0x360]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140019d15
lea rdx, str._L_download_url
lea rcx, [rsp + 0x100]
call fcn.140003170
nop
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0x530]
call fcn.1400293b0
mov qword [rsp + 0x650], rax
mov rdx, qword [rax]
mov qword [rsp + 0x6e0], rdx
lea rcx, [rsp + 0x520]
call fcn.14001c4d0
mov qword [rsp + 0x660], rax
mov rdx, qword [rax]
mov qword [rsp + 0x700], rdx
lea rcx, [rsp + 0x88]
call fcn.14003bd90
mov qword [rsp + 0x670], rax
mov rdx, qword [rax]
mov qword [rsp + 0x6f0], rdx
lea rcx, [rsp + 0x78]
call fcn.140003170
nop
mov rcx, qword [rsp + 0x520]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x370], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018b28
mov rdx, qword [rsp + 0x370]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x530]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x380], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018b55
mov rdx, qword [rsp + 0x380]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x100]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x540], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018b81
mov rdx, qword [rsp + 0x540]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [rsp + 0x78]
mov ecx, dword [rax - 0x10]
mov dword [rsp + 0x3b8], ecx
test ecx, ecx
jne 0x140018d80
mov eax, dword [0x1401cbd80]
lea ecx, [rax + 1]
imul ecx, eax
mov eax, 0x2e8ba2e9
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x16
sub ecx, edx
cmp ecx, 0x15
jne 0x140018c15
mov rax, qword [str.c5Mzk1MU]
mov qword [rsp + 0x148], rax
movzx eax, byte [0x140156108]
mov byte [rsp + 0x150], al
lea rax, [rsp + 0x148]
mov rcx, rdi
inc rcx
cmp byte [rax + rcx], 0
jne 0x140018be7
mov eax, 4
mul rcx
cmovo rax, rdi
mov rcx, rax
call fcn.1400d0cc8
mov qword [rsp + 0x680], rax
mov rcx, rax
call fcn.1400d272c
nop
mov rcx, qword [rsp + 0x78]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x390], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018c3f
mov rdx, qword [rsp + 0x390]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x550], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018c69
mov rdx, qword [rsp + 0x550]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3a0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018c93
mov rdx, qword [rsp + 0x3a0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14003b350
nop
lea rcx, [rsp + 0x24e0]
call fcn.140019d40
nop
cmp qword [rsp + 0x2448], 0x10
jb 0x140018cc7
mov rcx, qword [rsp + 0x2430]
call fcn.1400d1660
mov qword [rsp + 0x2448], 0xf
mov qword [rsp + 0x2440], r15
mov byte [rsp + 0x2430], 0
lea rax, [rsp + 0x2458]
mov rcx, qword [rsp + 0x2450]
cmp rcx, rax
je 0x140018cfe
call fcn.1400d2130
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x560], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018d28
mov rdx, qword [rsp + 0x560]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3b0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018d52
mov rdx, qword [rsp + 0x3b0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rax, qword [rsp + 0x40]
add rax, 0xffffffffffffffe8
mov qword [rsp + 0x570], rax
lock add dword [rax + 0x10], 0xffffffff
jg 0x140018d7b
mov rdx, qword [rsp + 0x570]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140019d15
lea rax, [rsp + 0x140]
mov qword [rsp + 0x710], rax
lea rax, [rsp + 0x110]
mov qword [rsp + 0x5b0], rax
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x5b8], rcx
call fcn.140002410
mov qword [rsp + 0x5c8], rax
add rax, 0x18
mov qword [rsp + 0x140], rax
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x5d8], rcx
call fcn.140002410
mov qword [rsp + 0x5e8], rax
add rax, 0x18
mov qword [rsp + 0x110], rax
lea r8, [rsp + 0x140]
lea rdx, [rsp + 0x110]
mov rcx, r14
call fcn.140019e40
test al, al
jne 0x140018f7f
mov rcx, qword [rsp + 0x78]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3c0], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018e3e
mov rdx, qword [rsp + 0x3c0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x580], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018e68
mov rdx, qword [rsp + 0x580]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x590], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018e92
mov rdx, qword [rsp + 0x590]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14003b350
nop
lea rcx, [rsp + 0x24e0]
call fcn.140019d40
nop
cmp qword [rsp + 0x2448], 0x10
jb 0x140018ec6
mov rcx, qword [rsp + 0x2430]
call fcn.1400d1660
mov qword [rsp + 0x2448], 0xf
mov qword [rsp + 0x2440], r15
mov byte [rsp + 0x2430], 0
lea rax, [rsp + 0x2458]
mov rcx, qword [rsp + 0x2450]
cmp rcx, rax
je 0x140018efd
call fcn.1400d2130
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x158], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018f27
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x568], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140018f51
mov rdx, qword [rsp + 0x568]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rax, qword [rsp + 0x40]
add rax, 0xffffffffffffffe8
mov qword [rsp + 0x3e8], rax
lock add dword [rax + 0x10], 0xffffffff
jg 0x140018f7a
mov rdx, qword [rsp + 0x3e8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140019d15
mov rax, qword [rsp + 0x78]
movzx ecx, word [rax]
cmp cx, word [0x14015610c]
jne 0x140018faf
movzx ecx, word [rax + 2]
cmp cx, word [0x14015610e]
jne 0x140018faf
movzx ecx, word [rax + 4]
cmp cx, word [0x140156110]
jne 0x140018faf
mov ecx, r15d
jmp 0x140018fb4
sbb ecx, ecx
or ecx, 1
mov dword [rsp + 0x5a0], ecx
test ecx, ecx
sete cl
mov byte [rsp + 0x81], cl
test cl, cl
jne 0x140019991
movzx ecx, word [rax]
cmp cx, word [0x140156114]
jne 0x140018ffa
movzx ecx, word [rax + 2]
cmp cx, word [0x140156116]
jne 0x140018ffa
movzx ecx, word [rax + 4]
cmp cx, word [0x140156118]
jne 0x140018ffa
mov eax, r15d
jmp 0x140018fff
sbb eax, eax
or eax, 1
mov dword [rsp + 0x4b8], eax
test eax, eax
sete al
mov byte [rsp + 0x80], al
test al, al
jne 0x140019991
mov word [rsp + 0x2a20], r15w
xor edx, edx
mov r8d, 0x206
lea rcx, [rsp + 0x2a22]
call fcn.1400d6ac0
lea rdx, [rsp + 0x2a20]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
mov dword [rsp + 0x468], eax
test eax, eax
jne 0x1400192ce
lea rax, [rsp + 0x4c8]
mov qword [rsp + 0x5f8], rax
lea rdx, str.f1dad7d1d9f3c7c6dde7c2d6d3c6d7e7c0deedf5d7c6e6d7dfc2e2d3c6daed
lea rcx, [rsp + 0x4c8]
call fcn.140002110
nop
mov rdx, rax
lea rcx, [rsp + 0x4d8]
call fcn.14002a5d0
mov rbx, rax
lea rcx, [0x1401c39a8]
mov rdx, qword [0x1401c39a8]
call qword [rdx + 0x18]
mov qword [rsp + 0x608], rax
lea rcx, [rax + 0x18]
mov qword [rsp + 0xe0], rcx
mov r8, rbx
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x3f8]
call fcn.140023520
nop
mov rdx, rax
mov rcx, r14
call fcn.1400158e0
nop
mov rcx, qword [rsp + 0x3f8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x538], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019109
mov rdx, qword [rsp + 0x538]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0xe0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x408], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019136
mov rdx, qword [rsp + 0x408]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x4d8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x418], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019163
mov rdx, qword [rsp + 0x418]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x78]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x588], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x14001918d
mov rdx, qword [rsp + 0x588]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x428], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400191b7
mov rdx, qword [rsp + 0x428]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x4e8], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400191e1
mov rdx, qword [rsp + 0x4e8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14003b350
nop
lea rcx, [rsp + 0x24e0]
call fcn.140019d40
nop
cmp qword [rsp + 0x2448], 0x10
jb 0x140019215
mov rcx, qword [rsp + 0x2430]
call fcn.1400d1660
mov qword [rsp + 0x2448], 0xf
mov qword [rsp + 0x2440], r15
mov byte [rsp + 0x2430], 0
lea rax, [rsp + 0x2458]
mov rcx, qword [rsp + 0x2450]
cmp rcx, rax
je 0x14001924c
call fcn.1400d2130
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x438], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019276
mov rdx, qword [rsp + 0x438]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x548], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400192a0
mov rdx, qword [rsp + 0x548]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rax, qword [rsp + 0x40]
add rax, 0xffffffffffffffe8
mov qword [rsp + 0x448], rax
lock add dword [rax + 0x10], 0xffffffff
jg 0x1400192c9
mov rdx, qword [rsp + 0x448]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140019d15
lea rdx, [rsp + 0x2a20]
lea rcx, [rsp + 0x70]
call fcn.140002110
nop
mov eax, dword [0x1401cbd80]
lea ecx, [rax + 1]
imul ecx, eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 3
sub ecx, eax
cmp ecx, 0xa
jne 0x140019335
mov ecx, 4
call fcn.1400d1e38
mov rbx, rax
mov qword [rsp + 0x618], rax
call fcn.1400d2038
mov dword [rbx], eax
mov dword [0x1401cbd80], eax
mov rcx, rbx
call fcn.1400d1660
mov rax, qword [rsp + 0x70]
mov edx, dword [rax - 0x10]
mov dword [rsp + 0x170], edx
lea ecx, [rdx - 1]
mov dword [rsp + 0x508], ecx
test ecx, ecx
js 0x140019986
mov dword [rsp + 0x180], edx
cmp ecx, edx
jg 0x140019986
movsxd rcx, ecx
movzx edx, word [rax + rcx*2]
mov word [rsp + 0xa8], dx
cmp dx, 0x5c
je 0x140019430
lea rdx, str._L__
lea rcx, [rsp + 0xe8]
call fcn.140002110
nop
lea rdx, [rsp + 0xe8]
lea rcx, [rsp + 0x4f8]
call fcn.1400293b0
mov qword [rsp + 0x628], rax
mov rdx, qword [rax]
mov r8d, dword [rdx - 0x10]
mov dword [rsp + 0x478], r8d
mov qword [rsp + 0x638], rdx
lea rcx, [rsp + 0x70]
call fcn.140010fc0
nop
mov rcx, qword [rsp + 0x4f8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x458], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400193ff
mov rdx, qword [rsp + 0x458]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0xe8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x578], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x14001942b
mov rdx, qword [rsp + 0x578]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [rsp + 0x70]
lea rcx, [rax - 0x18]
mov qword [rsp + 0x648], rcx
call fcn.140002410
mov qword [rsp + 0x658], rax
add rax, 0x18
mov qword [rsp + 0xb8], rax
lea rcx, [rsp + 0x160]
call fcn.1400288d0
mov qword [rsp + 0x668], rax
mov rdx, qword [rax]
mov r8d, dword [rdx - 0x10]
mov dword [rsp + 0x190], r8d
mov qword [rsp + 0x678], rdx
lea rcx, [rsp + 0x70]
call fcn.140010fc0
nop
mov rcx, qword [rsp + 0x160]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x168], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400194b8
mov rdx, qword [rsp + 0x168]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x78]
call fcn.14002e9a0
test al, al
jne 0x14001977e
lea rax, [rsp + 0x178]
mov qword [rsp + 0x688], rax
lea rdx, str.f1dad7d1d9f3c7c6dde7c2d6d3c6d7e7c0deedfac6c6c2e6ddf0dbdcd3c0cbf4dbded7e0d7c3c7d7c1c6
lea rcx, [rsp + 0x178]
call fcn.140002110
nop
mov rdx, rax
lea rcx, [rsp + 0x1c8]
call fcn.14002a5d0
mov rbx, rax
lea rcx, [rsp + 0x1a8]
call fcn.1400020d0
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x188]
call fcn.140023520
nop
mov rdx, rax
mov rcx, r14
call fcn.1400158e0
nop
mov rcx, qword [rsp + 0x188]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x198], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019562
mov rdx, qword [rsp + 0x198]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x1a8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x1b8], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x14001958f
mov rdx, qword [rsp + 0x1b8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x1c8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x1d8], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400195bc
mov rdx, qword [rsp + 0x1d8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0xb8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x1e8], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400195e9
mov rdx, qword [rsp + 0x1e8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x70]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x1f8], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019613
mov rdx, qword [rsp + 0x1f8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x78]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x208], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x14001963d
mov rdx, qword [rsp + 0x208]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x218], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019667
mov rdx, qword [rsp + 0x218]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x228], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019691
mov rdx, qword [rsp + 0x228]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14003b350
nop
lea rcx, [rsp + 0x24e0]
call fcn.140019d40
nop
cmp qword [rsp + 0x2448], 0x10
jb 0x1400196c5
mov rcx, qword [rsp + 0x2430]
call fcn.1400d1660
mov qword [rsp + 0x2448], 0xf
mov qword [rsp + 0x2440], r15
mov byte [rsp + 0x2430], 0
lea rax, [rsp + 0x2458]
mov rcx, qword [rsp + 0x2450]
cmp rcx, rax
je 0x1400196fc
call fcn.1400d2130
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x238], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019726
mov rdx, qword [rsp + 0x238]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x248], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019750
mov rdx, qword [rsp + 0x248]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rax, qword [rsp + 0x40]
add rax, 0xffffffffffffffe8
mov qword [rsp + 0x258], rax
lock add dword [rax + 0x10], 0xffffffff
jg 0x140019779
mov rdx, qword [rsp + 0x258]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140019d15
mov eax, dword [0x1401cbd80]
lea ecx, [rax + 1]
imul ecx, eax
mov eax, 0x2e8ba2e9
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x16
sub ecx, edx
cmp ecx, 0x13
jne 0x1400197ba
mov qword [rsp + 0x20], r15
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceW]
lea r8, [rsp + 0xb8]
lea rdx, [rsp + 0x70]
mov rcx, r14
call fcn.14001a800
mov eax, dword [0x1401cbd80]
lea ecx, [rax + 1]
imul ecx, eax
mov eax, 0x4ec4ec4f
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0xd
sub ecx, edx
cmp ecx, 1
jne 0x140019841
movabs rax, 0x55434d74346736
mov qword [rsp + 0x268], rax
lea rax, [rsp + 0x268]
mov rcx, rdi
inc rcx
cmp byte [rax + rcx], 0
jne 0x140019813
mov eax, 4
mul rcx
cmovo rax, rdi
mov rcx, rax
call fcn.1400d0cc8
mov qword [rsp + 0x698], rax
mov rcx, rax
call fcn.1400d272c
nop
mov rcx, qword [rsp + 0xb8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x278], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x14001986e
mov rdx, qword [rsp + 0x278]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x70]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x288], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019898
mov rdx, qword [rsp + 0x288]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x78]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x298], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400198c2
mov rdx, qword [rsp + 0x298]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2a8], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x1400198ec
mov rdx, qword [rsp + 0x2a8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2b8], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019916
mov rdx, qword [rsp + 0x2b8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14003b350
nop
lea rcx, [rsp + 0x24e0]
call fcn.140019d40
nop
cmp qword [rsp + 0x2448], 0x10
jb 0x14001994a
mov rcx, qword [rsp + 0x2430]
call fcn.1400d1660
mov qword [rsp + 0x2448], 0xf
mov qword [rsp + 0x2440], r15
mov byte [rsp + 0x2430], 0
lea rax, [rsp + 0x2458]
mov rcx, qword [rsp + 0x2450]
cmp rcx, rax
je 0x140019981
call fcn.1400d2130
nop
jmp 0x140019cbe
mov ecx, 0x80070057
call fcn.140001920
nop
mov r10d, dword [0x1401cbd80]
mov ecx, r10d
imul ecx, r10d
imul ecx, r10d
mov eax, 0x6bca1af3
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x13
sub ecx, edx
cmp ecx, 0xf
jne 0x140019a49
mov ebx, r15d
mov dword [rsp + 0xcc], ebx
cmp ebx, 0xd
jge 0x140019a49
mov r9d, r15d
mov dword [rsp + 0xb0], r15d
nop dword [rax]
cmp r9d, 0x16
jge 0x140019a42
lea esi, [r9 + 1]
lea ecx, [rbx + 1]
mov eax, r10d
cdq
idiv ecx
mov r8d, edx
mov ecx, r10d
sub ecx, ebx
imul r8d, ecx
mov eax, r10d
cdq
idiv esi
add r8d, eax
sub r8d, r9d
movsxd rcx, ebx
imul rcx, rcx, 0x16
movsxd rax, r9d
add rcx, rax
mov dword [rsp + rcx*4 + 0x25a0], r8d
mov edx, r8d
lea rcx, [0x140153c68]
call fcn.1400d1f8c
mov r9d, esi
mov dword [rsp + 0xb0], esi
mov r10d, dword [0x1401cbd80]
jmp 0x1400199e0
inc ebx
jmp 0x1400199c5
lea rax, [rsp + 0x2c8]
mov qword [rsp + 0x6a8], rax
lea rdx, str.f1dad7d1d9f3c7c6dde7c2d6d3c6d7e7c0deedc7c0deeddcd3edd4ddc0edc7c2d6d3c6d7
lea rcx, [rsp + 0x2c8]
call fcn.140002110
nop
mov rdx, rax
lea rcx, [rsp + 0x308]
call fcn.14002a5d0
mov rbx, rax
lea rcx, [0x1401c39a8]
mov rdx, qword [0x1401c39a8]
call qword [rdx + 0x18]
mov qword [rsp + 0x6b8], rax
lea rcx, [rax + 0x18]
mov qword [rsp + 0xf8], rcx
mov r8, rbx
lea rdx, [rsp + 0xf8]
lea rcx, [rsp + 0x2d8]
call fcn.140023520
nop
mov rdx, rax
mov rcx, r14
call fcn.1400158e0
nop
mov rcx, qword [rsp + 0x2d8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2e8], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019af8
mov rdx, qword [rsp + 0x2e8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0xf8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2f8], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019b25
mov rdx, qword [rsp + 0x2f8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x308]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x318], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019b52
mov rdx, qword [rsp + 0x318]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x78]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x328], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019b7c
mov rdx, qword [rsp + 0x328]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x338], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019ba6
mov rdx, qword [rsp + 0x338]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x348], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019bd0
mov rdx, qword [rsp + 0x348]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14003b350
nop
lea rcx, [rsp + 0x24e0]
call fcn.140019d40
nop
cmp qword [rsp + 0x2448], 0x10
jb 0x140019c04
mov rcx, qword [rsp + 0x2430]
call fcn.1400d1660
mov qword [rsp + 0x2448], 0xf
mov qword [rsp + 0x2440], r15
mov byte [rsp + 0x2430], 0
lea rax, [rsp + 0x2458]
mov rcx, qword [rsp + 0x2450]
cmp rcx, rax
je 0x140019c3b
call fcn.1400d2130
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x358], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019c65
mov rdx, qword [rsp + 0x358]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x368], rcx
lock add dword [rcx + 0x10], 0xffffffff
jg 0x140019c8f
mov rdx, qword [rsp + 0x368]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rax, qword [rsp + 0x40]
add rax, 0xffffffffffffffe8
mov qword [rsp + 0x378], rax
lock add dword [rax + 0x10], 0xffffffff
jg 0x140019cb8
mov rdx, qword [rsp + 0x378]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140019d15
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
dec eax
jg 0x140019cdc
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
dec eax
jg 0x140019cfa
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
dec edi
jg 0x140019d15
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rcx, qword [rsp + 0x2c30]
xor rcx, rsp
call fcn.1400d1680
lea r11, [rsp + 0x2c40]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rdi
ret