Function at 0x1400635e0
Capabilities:
Check for time delay via gettickcount

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x4c0
mov rax, qword [0x14031a940]
xor rax, rsp
mov qword [rsp + 0x4b8], rax
mov rbx, rdx
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0xd0], rdx
xor edi, edi
mov qword [rcx + 0x10], rdi
mov qword [rcx + 0x18], rdi
mov dword [rcx + 0x20], edi
call fcn.1400102e4
mov rcx, rax
test rax, rax
je 0x14006494d
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x30], rax
test rbx, rbx
je 0x14006368d
cmp rbx, 0x10000
jae 0x14006366d
movzx edx, bx
lea rcx, [rsp + 0x30]
call fcn.140010b40
mov r15, 0xffffffffffffffff
jmp 0x1400636a5
mov r15, 0xffffffffffffffff
mov r8, r15
nop word [rax + rax]
inc r8
cmp word [rbx + r8*2], 0
jne 0x140063680
jmp 0x140063697
mov r8d, edi
mov r15, 0xffffffffffffffff
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.140002b2c
nop
mov r13, qword [rsp + 0x30]
movsxd rbx, dword [r13 - 0x10]
test ebx, ebx
js 0x140064958
mov ecx, 1
sub ecx, dword [r13 - 8]
mov eax, dword [r13 - 0xc]
sub eax, ebx
or eax, ecx
jge 0x1400636da
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.140002ac8
mov r13, qword [rsp + 0x30]
lea eax, [rbx + 1]
movsxd rdx, eax
mov rcx, r13
call fcn.140232790
cmp ebx, dword [r13 - 0xc]
jg 0x140064942
mov dword [r13 - 0x10], ebx
mov word [r13 + rbx*2], di
call fcn.1400102e4
mov rcx, rax
test rax, rax
je 0x140064962
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x50], rax
movsxd rax, dword [r13 - 0x10]
lea rdi, [rax*2]
add rdi, r13
cmp r13, rdi
jae 0x140063782
lea rdx, [0x1402d1a78]
mov rcx, r13
call fcn.14022a5c4
mov rbx, rax
movsxd rcx, ebx
lea rcx, [rcx*2]
add rcx, r13
cmp rcx, rdi
jae 0x140063782
lea rdx, [0x1402d1a78]
call fcn.14022a584
lea esi, [rbx + 1]
add esi, eax
mov r9d, eax
mov r8d, ebx
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x30]
call fcn.140013230
mov rax, qword [rsp + 0x68]
jmp 0x1400637c5
mov esi, r15d
mov rcx, qword [r13 - 0x18]
test rcx, rcx
je 0x14006379c
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
test rax, rax
jne 0x1400637b6
call fcn.1400102e4
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
mov rcx, rax
test rax, rax
je 0x140064ad1
mov rax, qword [rcx]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x68], rax
lea rdx, [rax - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400637df
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test esi, esi
jle 0x140063884
mov r9d, 4
mov r8d, esi
lea rdx, [rsp + 0x88]
lea rcx, [rsp + 0x30]
call fcn.140013230
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x50]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x140063862
cmp dword [rbx + 0x10], 0
jl 0x140063853
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140063853
call fcn.140002cec
mov rdi, rax
mov ecx, r15d
lock xadd dword [rbx + 0x10], ecx
sub ecx, 1
jg 0x140063848
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rdi + 0x18]
mov qword [rsp + 0x50], rax
jmp 0x140063862
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x50]
call fcn.140002b2c
nop
mov rdx, qword [rsp + 0x88]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140063884
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
call fcn.1400102e4
mov rcx, rax
test rax, rax
je 0x140064ad1
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x48], rax
test esi, esi
js 0x14006496d
movsxd rax, esi
mov rbx, qword [rsp + 0x30]
lea rdi, [rbx + rax*2]
movsxd rax, dword [r13 - 0x10]
lea r14, [rbx + rax*2]
cmp rdi, r14
jae 0x140063913
lea rdx, [0x1402d1a78]
mov rcx, rdi
call fcn.14022a5c4
mov r12, rax
movsxd rcx, r12d
lea rcx, [rdi + rcx*2]
cmp rcx, r14
jae 0x140063913
lea rdx, [0x1402d1a78]
call fcn.14022a584
lea r8d, [r12 + rsi]
lea r12d, [r8 + 1]
add r12d, eax
mov r9d, eax
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x30]
call fcn.140013230
mov rax, qword [rsp + 0x70]
jmp 0x140063956
mov r12d, r15d
mov rcx, qword [rbx - 0x18]
test rcx, rcx
je 0x14006392d
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
test rax, rax
jne 0x140063947
call fcn.1400102e4
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
mov rcx, rax
test rax, rax
je 0x140064ac6
mov rax, qword [rcx]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x70], rax
lea rdx, [rax - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140063970
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test r12d, r12d
jle 0x140063a16
mov r9d, 4
mov r8d, r12d
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x30]
call fcn.140013230
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x48]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x1400639f4
cmp dword [rbx + 0x10], 0
jl 0x1400639e5
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x1400639e5
call fcn.140002cec
mov rdi, rax
mov ecx, r15d
lock xadd dword [rbx + 0x10], ecx
sub ecx, 1
jg 0x1400639da
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rdi + 0x18]
mov qword [rsp + 0x48], rax
jmp 0x1400639f4
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x48]
call fcn.140002b2c
nop
mov rdx, qword [rsp + 0x90]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140063a16
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
call fcn.1400102e4
mov rcx, rax
test rax, rax
je 0x140064ac6
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x40], rax
call fcn.1400102e4
mov rcx, rax
test rax, rax
je 0x140064978
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x38], rax
test r12d, r12d
js 0x140064983
movsxd rax, r12d
mov rbx, qword [rsp + 0x30]
lea rdi, [rbx + rax*2]
movsxd rax, dword [r13 - 0x10]
lea rsi, [rbx + rax*2]
cmp rdi, rsi
jae 0x140063ac6
lea rdx, [0x1402d1a78]
mov rcx, rdi
call fcn.14022a5c4
mov r14, rax
movsxd rcx, r14d
lea rcx, [rdi + rcx*2]
cmp rcx, rsi
jae 0x140063ac6
lea rdx, [0x1402d1a78]
call fcn.14022a584
lea r8d, [r14 + r12]
lea r12d, [r8 + 1]
add r12d, eax
mov r9d, eax
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x30]
call fcn.140013230
mov rax, qword [rsp + 0x78]
jmp 0x140063b09
mov r12d, r15d
mov rcx, qword [rbx - 0x18]
test rcx, rcx
je 0x140063ae0
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
test rax, rax
jne 0x140063afa
call fcn.1400102e4
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
mov rcx, rax
test rax, rax
je 0x140064abb
mov rax, qword [rcx]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x78], rax
lea rdx, [rax - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140063b23
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test r12d, r12d
jle 0x140063c68
mov r9d, 4
mov r8d, r12d
lea rdx, [rsp + 0x98]
lea rcx, [rsp + 0x30]
call fcn.140013230
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x40]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x140063ba7
cmp dword [rbx + 0x10], 0
jl 0x140063b98
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140063b98
call fcn.140002cec
mov rdi, rax
mov ecx, r15d
lock xadd dword [rbx + 0x10], ecx
sub ecx, 1
jg 0x140063b8d
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rdi + 0x18]
mov qword [rsp + 0x40], rax
jmp 0x140063ba7
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x40]
call fcn.140002b2c
nop
mov rdx, qword [rsp + 0x98]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140063bc9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea r8d, [r12 + 4]
mov r9d, 4
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x30]
call fcn.140013230
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x38]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x140063c46
cmp dword [rbx + 0x10], 0
jl 0x140063c37
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140063c37
call fcn.140002cec
mov rdi, rax
mov ecx, r15d
lock xadd dword [rbx + 0x10], ecx
sub ecx, 1
jg 0x140063c2c
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rdi + 0x18]
mov qword [rsp + 0x38], rax
jmp 0x140063c46
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x38]
call fcn.140002b2c
nop
mov rdx, qword [rsp + 0xa0]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140063c68
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
call fcn.1400102e4
mov rcx, rax
test rax, rax
je 0x140064abb
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x58], rax
test r12d, r12d
js 0x14006498e
movsxd rax, r12d
mov rbx, qword [rsp + 0x30]
lea rdi, [rbx + rax*2]
movsxd rax, dword [r13 - 0x10]
lea rsi, [rbx + rax*2]
cmp rdi, rsi
jae 0x140063cfd
lea rdx, [0x1402d1a78]
mov rcx, rdi
call fcn.14022a5c4
mov r14, rax
movsxd rcx, r14d
lea rcx, [rdi + rcx*2]
cmp rcx, rsi
jae 0x140063cfd
lea rdx, [0x1402d1a78]
call fcn.14022a584
lea r8d, [r14 + r12]
lea edi, [r8 + 1]
add edi, eax
mov r9d, eax
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x30]
call fcn.140013230
mov rax, qword [rsp + 0x80]
jmp 0x140063d43
mov edi, r15d
mov rcx, qword [rbx - 0x18]
test rcx, rcx
je 0x140063d17
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
test rax, rax
jne 0x140063d31
call fcn.1400102e4
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
mov rcx, rax
test rax, rax
je 0x140064998
mov rax, qword [rcx]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x80], rax
lea rdx, [rax - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140063d5d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test edi, edi
jle 0x140063e02
mov r9d, 2
mov r8d, edi
lea rdx, [rsp + 0xa8]
lea rcx, [rsp + 0x30]
call fcn.140013230
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x58]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x140063de0
cmp dword [rbx + 0x10], 0
jl 0x140063dd1
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140063dd1
call fcn.140002cec
mov rdi, rax
mov ecx, r15d
lock xadd dword [rbx + 0x10], ecx
sub ecx, 1
jg 0x140063dc6
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rdi + 0x18]
mov qword [rsp + 0x58], rax
jmp 0x140063de0
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x58]
call fcn.140002b2c
nop
mov rdx, qword [rsp + 0xa8]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140063e02
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, qword [rsp + 0x50]
lea rcx, [rsp + 0x3c0]
call fcn.1400095cc
nop
call fcn.14022a290
mov rdi, rax
lea rbx, [rsp + 0x3c0]
cmp qword [rsp + 0x3d8], 8
cmovae rbx, qword [rsp + 0x3c0]
xor r12d, r12d
mov dword [rax], r12d
lea r8d, [r12 + 0x10]
lea rdx, [rsp + 0xb0]
mov rcx, rbx
call fcn.1402324e4
cmp rbx, qword [rsp + 0xb0]
je 0x1400649a3
cmp dword [rdi], 0x22
je 0x1400649af
mov r14, qword [rsp + 0x60]
mov dword [r14 + 0x10], eax
mov rdx, qword [rsp + 0x3d8]
cmp rdx, 8
jb 0x140063eba
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140063eb5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400649bc
call fcn.1400041d4
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x3e0]
call fcn.1400095cc
nop
call fcn.14022a290
mov rdi, rax
lea rbx, [rsp + 0x3e0]
cmp qword [rsp + 0x3f8], 8
cmovae rbx, qword [rsp + 0x3e0]
mov dword [rax], r12d
mov r8d, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1402324e4
cmp rbx, qword [rsp + 0x60]
je 0x1400649c2
cmp dword [rdi], 0x22
je 0x1400649ce
mov dword [r14 + 0x14], eax
mov rdx, qword [rsp + 0x3f8]
cmp rdx, 8
jb 0x140063f65
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140063f60
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400649db
call fcn.1400041d4
mov rdx, qword [rsp + 0x38]
lea rcx, [rsp + 0x400]
call fcn.1400095cc
nop
call fcn.14022a290
mov rdi, rax
lea rbx, [rsp + 0x400]
cmp qword [rsp + 0x418], 8
cmovae rbx, qword [rsp + 0x400]
mov dword [rax], r12d
mov r8d, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rdx, [rsp + 0xb8]
mov rcx, rbx
call fcn.1402324e4
cmp rbx, qword [rsp + 0xb8]
je 0x1400649e1
cmp dword [rdi], 0x22
je 0x1400649ed
mov dword [r14 + 0x18], eax
mov rdx, qword [rsp + 0x418]
cmp rdx, 8
jb 0x140064016
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x400]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140064011
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400649fa
call fcn.1400041d4
mov rdx, qword [rsp + 0x40]
lea rcx, [rsp + 0x420]
call fcn.1400095cc
nop
call fcn.14022a290
mov rdi, rax
lea rbx, [rsp + 0x420]
cmp qword [rsp + 0x438], 8
cmovae rbx, qword [rsp + 0x420]
mov dword [rax], r12d
mov r8d, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rdx, [rsp + 0xc0]
mov rcx, rbx
call fcn.1402324e4
cmp rbx, qword [rsp + 0xc0]
je 0x140064a00
cmp dword [rdi], 0x22
je 0x140064a0c
mov dword [r14 + 0x1c], eax
mov rdx, qword [rsp + 0x438]
cmp rdx, 8
jb 0x1400640c7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x420]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400640c2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140064a19
call fcn.1400041d4
mov rbx, qword [rsp + 0x58]
mov rdx, rbx
lea rcx, [rsp + 0x440]
call fcn.1400095cc
nop
call fcn.14022a290
mov rsi, rax
lea rdi, [rsp + 0x440]
cmp qword [rsp + 0x458], 8
cmovae rdi, qword [rsp + 0x440]
mov dword [rax], r12d
mov r8d, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rdx, [rsp + 0xc8]
mov rcx, rdi
call fcn.1402324e4
cmp rdi, qword [rsp + 0xc8]
je 0x140064a1f
cmp dword [rsi], 0x22
je 0x140064a2b
mov dword [r14 + 0x20], eax
mov rdx, qword [rsp + 0x458]
cmp rdx, 8
jb 0x14006417b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x440]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140064176
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140064a38
call fcn.1400041d4
call fcn.140021130
cmp dword [rax + 8], 3
jl 0x14006485b
call fcn.140021130
mov rsi, rax
lea rcx, [rsp + 0x140]
call fcn.140019550
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x3a0], xmm0
mov qword [rsp + 0x3b0], r12
mov qword [rsp + 0x3b8], 7
mov word [rsp + 0x3a0], r12w
lea rdx, str.TRACE
lea rcx, [rsp + 0x3a0]
call fcn.1400184d0
xorps xmm0, xmm0
movups xmmword [rsp + 0x340], xmm0
mov rdx, r12
mov qword [rsp + 0x350], rdx
mov r8d, 7
mov qword [rsp + 0x358], r8
mov word [rsp + 0x340], r12w
mov edi, r12d
nop dword [rax]
cmp edi, dword [rsi + 0x10]
jge 0x1400642a3
cmp edi, 0xa
jge 0x1400642a3
mov rax, r8
sub rax, rdx
lea rcx, [rsp + 0x340]
cmp rax, 2
jb 0x140064272
lea rax, [rdx + 2]
mov qword [rsp + 0x350], rax
cmp r8, 8
cmovae rcx, qword [rsp + 0x340]
mov eax, dword [0x1402cca20]
mov dword [rcx + rdx*2], eax
mov word [rcx + rdx*2 + 4], r12w
inc edi
mov r8, qword [rsp + 0x358]
mov rdx, qword [rsp + 0x350]
jmp 0x140064210
mov qword [rsp + 0x20], 2
lea r9, [0x1402cca20]
mov edx, 2
call fcn.140022120
inc edi
mov r8, qword [rsp + 0x358]
mov rdx, qword [rsp + 0x350]
jmp 0x140064210
xorps xmm0, xmm0
movups xmmword [rsp + 0x380], xmm0
mov qword [rsp + 0x390], r12
mov qword [rsp + 0x398], 7
mov word [rsp + 0x380], r12w
movups xmmword [rsp + 0x360], xmm0
mov qword [rsp + 0x370], r12
mov qword [rsp + 0x378], 7
mov word [rsp + 0x360], r12w
call fcn.140231aac
mov edx, VariantTimeToDosDateTime
lea rcx, [rsp + 0x4a0]
call fcn.140231bfc
lea rdx, [rsp + 0x4a0]
lea rcx, [rsp + 0x380]
call fcn.1400184d0
lea rcx, [rsp + 0x240]
call fcn.140019550
nop
cmp dword [rsi + 0x14], 0
jne 0x14006434a
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rsi + 0x14], eax
xor edx, edx
lea rcx, [rsp + 0x250]
call fcn.140013030
jmp 0x140064370
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [rsi + 0x14]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
divsd xmm1, qword [0x1402d35d0]
lea rcx, [rsp + 0x250]
call fcn.140021b10
lea rdx, [rsp + 0x460]
lea rcx, [rsp + 0x258]
call fcn.14001a150
nop
mov rdx, qword [rsp + 0x378]
cmp rdx, 8
jb 0x1400643ce
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x360]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400643c9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140064a3e
call fcn.1400041d4
movups xmm0, xmmword [rsp + 0x460]
movups xmmword [rsp + 0x360], xmm0
movups xmm1, xmmword [rsp + 0x470]
movups xmmword [rsp + 0x370], xmm1
lea rcx, [rsp + 0x240]
call fcn.140019440
mov edx, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rcx, [rsp + 0xd8]
call fcn.1402237b8
mov rsi, rax
mov edx, 0x2040
lea rcx, [rsp + 0xe8]
call fcn.1402237b8
mov rcx, qword [rsp + 0x150]
movsxd rdx, dword [rcx + 4]
lea rcx, [rsp + 0x150]
add rcx, rdx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rsp + 0x380]
cmp qword [rsp + 0x398], 8
cmovae rdx, qword [rsp + 0x380]
mov r8, qword [rsp + 0x390]
lea rcx, [rsp + 0x150]
call fcn.140016d70
lea rdx, [0x1402cc558]
mov rcx, rax
call fcn.140016ab0
mov rdi, rax
mov rax, qword [rax]
movsxd rcx, dword [rax + 4]
add rcx, rdi
mov edx, dword [rsi + 8]
call qword [rsi]
mov edx, 6
lea rcx, [rsp + 0xf8]
call fcn.1402237e0
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
add rcx, rdi
mov rdx, qword [rax + 8]
call qword [rax]
mov rax, qword [rdi]
movsxd rcx, dword [rax + 4]
mov word [rcx + rdi + 0x58], 0x30
mov edx, 3
lea rcx, [rsp + 0x108]
call fcn.1402237cc
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
add rcx, rdi
mov rdx, qword [rax + 8]
call qword [rax]
lea rdx, [rsp + 0x360]
cmp qword [rsp + 0x378], 8
cmovae rdx, qword [rsp + 0x360]
mov r8, qword [rsp + 0x370]
mov rcx, rdi
call fcn.140016d70
mov rdi, rax
mov edx, 5
lea rcx, [rsp + 0x118]
call fcn.1402237e0
mov rsi, rax
lea rdx, [0x1402cc558]
mov rcx, rdi
call fcn.140016ab0
mov rdi, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov rdx, qword [rsi + 8]
call qword [rsi]
mov rax, qword [rdi]
movsxd rcx, dword [rax + 4]
mov word [rcx + rdi + 0x58], 0x20
mov edx, 0x40
lea rcx, [rsp + 0x128]
call fcn.1402237b8
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
add rcx, rdi
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rsp + 0x3a0]
cmp qword [rsp + 0x3b8], 8
cmovae rdx, qword [rsp + 0x3a0]
mov r8, qword [rsp + 0x3b0]
mov rcx, rdi
call fcn.140016d70
lea rdi, [rsp + 0x340]
cmp qword [rsp + 0x358], 8
cmovae rdi, qword [rsp + 0x340]
lea rdx, [0x1402cca70]
mov rcx, rax
call fcn.140016ab0
mov rdx, rdi
mov rcx, rax
call fcn.140016ab0
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x14032a0a4], eax
jg 0x140064a44
lea rdx, [rsp + 0x480]
lea rcx, [rsp + 0x158]
call fcn.14001a150
nop
mov rdx, qword [reloc.OLEAUT32.dll_VariantInit]
cmp rdx, 8
jb 0x14006464d
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x14031b5e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140064648
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140064a9d
call fcn.1400041d4
movups xmm0, xmmword [rsp + 0x480]
movups xmmword [0x14031b5e0], xmm0
movups xmm1, xmmword [rsp + 0x490]
movups xmmword [0x14031b5f0], xmm1
mov rdx, qword [rsp + 0x378]
cmp rdx, 8
jb 0x1400646b3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x360]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400646ae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140064aa3
call fcn.1400041d4
mov qword [rsp + 0x370], r12
mov qword [rsp + 0x378], 7
mov word [rsp + 0x360], r12w
mov rdx, qword [rsp + 0x398]
cmp rdx, 8
jb 0x140064718
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x380]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140064713
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140064aa9
call fcn.1400041d4
mov qword [rsp + 0x390], r12
mov qword [rsp + 0x398], 7
mov word [rsp + 0x380], r12w
mov rdx, qword [rsp + 0x358]
cmp rdx, 8
jb 0x14006477d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x340]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140064778
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140064aaf
call fcn.1400041d4
mov qword [rsp + 0x350], r12
mov qword [rsp + 0x358], 7
mov word [rsp + 0x340], r12w
mov rdx, qword [rsp + 0x3b8]
cmp rdx, 8
jb 0x1400647e2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400647dd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140064ab5
call fcn.1400041d4
mov qword [rsp + 0x3b0], r12
mov qword [rsp + 0x3b8], 7
mov word [rsp + 0x3a0], r12w
lea rcx, [rsp + 0x140]
call fcn.140019440
call fcn.140021130
lea rdx, [0x14031b5e0]
cmp qword [reloc.OLEAUT32.dll_VariantInit], 8
cmovae rdx, qword [0x14031b5e0]
mov r8, qword [0x14031b5f0]
mov rcx, rax
call fcn.140016d70
lea rdx, str.Tokenized_device_id:
mov rcx, rax
call fcn.1400153f0
mov edx, dword [r14 + 0x14]
mov rcx, rax
call fcn.140019750
mov rcx, rax
call fcn.140017c90
nop
lea rdx, [rbx - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140064876
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140064896
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, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400648b6
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, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400648d6
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, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400648f6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r15d
sub r15d, 1
jg 0x140064915
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x4b8]
xor rcx, rsp
call fcn.140220e50
lea r11, [rsp + 0x4c0]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov ecx, 0x80070057
call fcn.140002dfc
nop
mov ecx, 0x80004005
call fcn.140002dfc
nop
mov ecx, 0x80070057
call fcn.140002dfc
mov ecx, 0x80004005
call fcn.140002dfc
nop
mov ecx, 0x80070057
call fcn.140002dfc
nop
mov ecx, 0x80004005
call fcn.140002dfc
nop
mov ecx, 0x80070057
call fcn.140002dfc
nop
mov ecx, 0x80070057
call fcn.140002dfc
mov ecx, 0x80004005
call fcn.140002dfc
nop
lea rcx, str.invalid_stoul_argument
call fcn.1402226a8
lea rcx, str.stoul_argument_out_of_range
call fcn.1402226f0
nop
call fcn.14022a144
nop
lea rcx, str.invalid_stoul_argument
call fcn.1402226a8
lea rcx, str.stoul_argument_out_of_range
call fcn.1402226f0
nop
call fcn.14022a144
nop
lea rcx, str.invalid_stoul_argument
call fcn.1402226a8
lea rcx, str.stoul_argument_out_of_range
call fcn.1402226f0
nop
call fcn.14022a144
nop
lea rcx, str.invalid_stoul_argument
call fcn.1402226a8
lea rcx, str.stoul_argument_out_of_range
call fcn.1402226f0
nop
call fcn.14022a144
nop
lea rcx, str.invalid_stoul_argument
call fcn.1402226a8
lea rcx, str.stoul_argument_out_of_range
call fcn.1402226f0
nop
call fcn.14022a144
nop
call fcn.14022a144
nop
lea rcx, [0x14032a0a4]
call fcn.140221194
cmp dword [0x14032a0a4], 0xffffffff
jne 0x1400645f1
xorps xmm0, xmm0
movups xmmword [0x14031b5e0], xmm0
movdqa xmm1, xmmword [0x1402d3620]
movdqu xmmword [0x14031b5f0], xmm1
mov word [0x14031b5e0], r12w
lea rcx, [0x14026f080]
call fcn.1402210a8
lea rcx, [0x14032a0a4]
call fcn.140221128
nop
jmp 0x1400645f1
call fcn.14022a144
nop
call fcn.14022a144
nop
call fcn.14022a144
nop
call fcn.14022a144
nop
call fcn.14022a144
nop
mov ecx, 0x80004005
call fcn.140002dfc
nop
mov ecx, 0x80004005
call fcn.140002dfc
nop
mov ecx, 0x80004005
call fcn.140002dfc
int3