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

Disassembly:
mov rax, rsp
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xe0
mov qword [rbp - 0x39], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
mov rax, qword [0x14027eb40]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov rdi, rdx
mov rbx, rcx
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r8d, eax
mov rcx, qword [rbx + 0x90]
xor r15d, r15d
test rcx, rcx
je 0x140008ee6
mov rdx, qword [rcx + 0x18]
test rdx, rdx
je 0x140008aeb
mov cl, byte [rdx]
jmp 0x140008aee
mov cl, byte [rcx + 0x20]
test cl, cl
jne 0x140008afe
sub eax, dword [rdi + 0x48]
cmp eax, dword [rbx + 0x68]
jbe 0x140008ee6
mov dword [rdi + 0x48], r8d
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rax, [rbp - 0x49]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, str.SoftwareHPNGLogging
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140008edd
mov qword [rbp - 0x51], r15
mov eax, 0x10624dd3
mul dword [rbx + 0x68]
shr edx, 6
mov dword [rbp - 0x59], edx
mov qword [rbp - 1], r15
mov qword [rbp + 7], r15
mov esi, 7
mov qword [rbp + 7], rsi
mov qword [rbp - 1], r15
mov word [rbp - 0x11], r15w
movzx eax, word [str.SoftwareHPNGLogging]
neg ax
sbb r8, r8
and r8d, 0x16
lea rdx, str.SoftwareHPNGLogging
lea rcx, [rbp - 0x11]
call fcn.140004e30
nop
mov qword [rbp + 0x1f], r15
mov qword [rbp + 0x27], r15
mov qword [rbp + 0x27], rsi
mov qword [rbp + 0x1f], r15
mov word [rbp + 0xf], r15w
lea r8, [rbp - 0x59]
lea rdx, str.LogParmsPollTime
mov rcx, qword [rbp - 0x49]
call fcn.14000d7e8
lea ecx, [rsi + 0x17]
mov eax, dword [rbp - 0x59]
test eax, eax
cmovne ecx, eax
imul eax, ecx, 0x3e8
mov dword [rbx + 0x68], eax
mov r9, qword [rbx + 0x90]
xor r8d, r8d
mov rdx, qword [rbp - 0x49]
mov rcx, rdi
call fcn.1400076cc
lea r8d, [rsi - 6]
lea rdx, [0x140234bf8]
lea rcx, [rbp - 0x11]
call fcn.140005f60
lea r14, [rbx + 0x28]
or r12, 0xffffffffffffffff
mov r9, r12
xor r8d, r8d
mov rdx, r14
lea rcx, [rbp - 0x11]
call fcn.1400060c0
mov r9, r12
xor r8d, r8d
lea rdx, [rbp - 0x11]
lea rcx, [rbp + 0xf]
call fcn.140004a80
mov qword [rbp - 0x21], r15
mov qword [rbp - 0x19], r15
mov qword [rbp - 0x19], rsi
mov qword [rbp - 0x21], r15
mov word [rbp - 0x31], r15w
mov r9, r12
xor r8d, r8d
mov rdx, r14
lea rcx, [rbp - 0x31]
call fcn.140004a80
nop
lea rcx, [rbp - 0x31]
lea r12d, [rsi + 1]
cmp qword [rbp - 0x19], r12
cmovae rcx, qword [rbp - 0x31]
call qword [sym.imp.SHLWAPI.dll_PathFindExtensionW]
mov rdx, rax
test rax, rax
je 0x140008ca3
lea rcx, [rbp - 0x31]
cmp qword [rbp - 0x19], r12
cmovae rcx, qword [rbp - 0x31]
sub rdx, rcx
sar rdx, 1
cmp rdx, qword [rbp - 0x21]
ja 0x140008c93
mov qword [rbp - 0x21], rdx
lea rax, [rbp - 0x31]
cmp qword [rbp - 0x19], r12
cmovae rax, qword [rbp - 0x31]
mov word [rax + rdx*2], r15w
jmp 0x140008ca3
xor r8d, r8d
sub rdx, qword [rbp - 0x21]
lea rcx, [rbp - 0x31]
call fcn.14000bce8
lea rsi, [rbx + 8]
lea rdx, [rbp - 0x31]
cmp qword [rbp - 0x19], r12
cmovae rdx, qword [rbp - 0x31]
mov r10, qword [rsi + 0x10]
cmp qword [rsi + 0x18], r12
jb 0x140008cc3
mov r8, qword [rsi]
jmp 0x140008cc6
mov r8, rsi
mov r9, qword [rbp - 0x21]
mov rcx, r9
cmp r10, r9
cmovb rcx, r10
test rcx, rcx
jmp 0x140008ced
movzx eax, word [rdx]
cmp word [r8], ax
jne 0x140008cf1
add r8, 2
add rdx, 2
dec rcx
jne 0x140008cd9
jmp 0x140008cfa
sbb eax, eax
and eax, 0xfffffffe
inc eax
jmp 0x140008cfd
mov eax, r15d
movsxd rcx, eax
mov eax, r15d
cmp r10, r9
setne al
cmp r10, r9
mov r8, 0xffffffffffffffff
cmovb eax, r8d
test rcx, rcx
cmovne eax, ecx
test eax, eax
je 0x140008d4a
mov r8d, 1
lea rdx, [0x140234bf8]
lea rcx, [rbp + 0xf]
call fcn.140005f60
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rsi
lea rcx, [rbp + 0xf]
call fcn.1400060c0
mov rax, qword [rbx + 0x90]
lea rdx, [rbp + 0xf]
mov rcx, 0xffffffff80000001
test dword [rax + 0xc], 0x1000000
lea rax, [rbp - 0x51]
je 0x140008d9c
cmp qword [rbp + 0x27], r12
cmovae rdx, qword [rbp + 0xf]
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 0x20019
mov dword [rsp + 0x20], r15d
xor r9d, r9d
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
jmp 0x140008db9
cmp qword [rbp + 0x27], r12
cmovae rdx, qword [rbp + 0xf]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov esi, eax
lea rdx, [rbp - 0x11]
cmp qword [rbp + 7], r12
cmovae rdx, qword [rbp - 0x11]
lea rax, [rbp - 0x41]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140008e66
mov r9, qword [rbx + 0x90]
xor r8d, r8d
mov rdx, qword [rbp - 0x41]
mov rcx, rdi
call fcn.1400076cc
cmp qword [r14 + 0x18], r12
jb 0x140008e0a
mov r14, qword [r14]
mov r8, r14
mov rdx, qword [rbp - 0x41]
mov rcx, qword [rbx + 0x330]
call fcn.140007e18
test esi, esi
jne 0x140008e5c
mov rdx, qword [rbp - 0x51]
test rdx, rdx
je 0x140008e5c
mov r9, qword [rbx + 0x90]
xor r8d, r8d
mov rcx, rdi
call fcn.1400076cc
lea rdx, [rbp - 0x11]
cmp qword [rbp + 7], r12
cmovae rdx, qword [rbp - 0x11]
mov r9, qword [rbx + 0x90]
mov r8, qword [rbp - 0x51]
mov rcx, rdi
call fcn.14000782c
mov rcx, qword [rbp - 0x41]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test esi, esi
jne 0x140008e79
mov rcx, qword [rbp - 0x51]
test rcx, rcx
je 0x140008e79
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rbp - 0x49]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
cmp qword [rbp - 0x19], r12
jb 0x140008e93
mov rcx, qword [rbp - 0x31]
call fcn.14001ae84
mov ebx, 7
mov qword [rbp - 0x19], rbx
mov qword [rbp - 0x21], r15
mov word [rbp - 0x31], r15w
cmp qword [rbp + 0x27], r12
jb 0x140008eb4
mov rcx, qword [rbp + 0xf]
call fcn.14001ae84
mov qword [rbp + 0x27], rbx
mov qword [rbp + 0x1f], r15
mov word [rbp + 0xf], r15w
cmp qword [rbp + 7], r12
jb 0x140008ed0
mov rcx, qword [rbp - 0x11]
call fcn.14001ae84
mov qword [rbp + 7], rbx
mov qword [rbp - 1], r15
mov word [rbp - 0x11], r15w
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rdi + 0x48], eax
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.140199450
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret