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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x98
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov rax, qword [0x14007d008]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov rbp, r9
mov r12, rdx
mov r14, rcx
mov qword [rsp + 0x78], r8
mov eax, dword [rcx + 0x860]
test eax, eax
jne 0x14002977c
mov rax, qword [rcx]
mov r9, qword [rax + 0xa0]
lea rcx, [method.AdRmDwfUnderlay.virtual_160]
cmp r9, rcx
jne 0x14002952e
test r8, r8
jne 0x14002953a
mov rcx, r14
call qword [rax + 0x78]
jmp 0x140029537
mov rdx, r8
mov rcx, r14
call r9
mov r8, rax
mov qword [rsp + 0x78], r8
test r8, r8
jne 0x14002954d
lea eax, [r8 + 9]
jmp 0x14002977c
lea r15, [r14 + 0x878]
mov rax, qword [r15]
mov rcx, qword [rax + 8]
mov rbx, rax
cmp byte [rcx + 0x19], 0
jne 0x14002957c
cmp qword [rcx + 0x20], r8
jae 0x140029570
mov rcx, qword [rcx + 0x10]
jmp 0x140029576
mov rbx, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x140029564
cmp rbx, rax
je 0x140029587
cmp r8, qword [rbx + 0x20]
jae 0x14002958a
mov rbx, rax
cmp rbx, rax
je 0x1400295f7
mov rsi, qword [rbx + 0x28]
test rsi, rsi
je 0x1400295f7
mov edi, dword [rsi]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, edi
cmp eax, 0x3a98
ja 0x1400295d8
lea rdx, [rsi + 8]
mov rcx, r12
call qword [sym.imp.acdb21.dll_public:_class_AdXREFString_const____ptr64___cdecl_AdXREFString::operator_class_AdXREFString_const____ptr64____ptr64]
test rbp, rbp
je 0x1400295c2
movzx eax, byte [rsi + 0x30]
mov byte [rbp], al
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x40]
neg al
sbb eax, eax
and eax, 0x13
jmp 0x14002977c
lea rcx, [rsi + 8]
call qword [sym.imp.acdb21.dll_public_virtual:_void___cdecl_AdXREFString::destructor_void____ptr64]
mov edx, 0x38
mov rcx, rsi
call fcn.140048fc0
mov qword [rbx + 0x28], 0
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x70]
mov r13, rax
test rax, rax
jne 0x140029611
lea eax, [r13 + 8]
jmp 0x14002977c
mov rcx, qword [r14 + 0x28]
mov rax, qword [r14 + 0x18]
sub rax, qword [r14 + 0x10]
sar rax, 0xb
cmp rax, 1
jb 0x140029777
cmp rcx, rax
jae 0x140029777
mov byte [rsp + 0x70], 0
mov edi, dword [r14 + 0x870]
mov rsi, qword [rsp + 0x78]
shl rcx, 0xb
add rcx, qword [r14 + 0x10]
lea rdx, [rsp + 0x48]
call fcn.140001330
nop
mov rcx, qword [r13]
mov r10, qword [rcx + 0x100]
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], edi
mov r9, rsi
mov r8, rax
mov rdx, r12
mov rcx, r13
call r10
mov r13d, eax
lea rcx, [rsp + 0x48]
call qword [sym.imp.acdb21.dll_public_virtual:_void___cdecl_AdXREFString::destructor_void____ptr64]
test r13d, r13d
jne 0x1400296a0
test rbp, rbp
je 0x1400296a0
movzx edx, byte [rsp + 0x70]
mov byte [rbp], dl
mov ecx, 0x38
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonLinkCtrl::XElementButtonLinkCtrl]
mov r14, rax
mov qword [rsp + 0x30], rax
test rax, rax
je 0x1400296f9
mov rdx, r12
lea rcx, [rsp + 0x48]
call qword [sym.imp.acdb21.dll_public:_void___cdecl_AdXREFString::constructor_class_AdXREFString_const____ptr64____ptr64]
mov rsi, rax
mov qword [rsp + 0x38], rax
movzx edi, byte [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
nop
mov dword [r14], eax
lea rcx, [r14 + 8]
mov rdx, rsi
call qword [sym.imp.acdb21.dll_public:_void___cdecl_AdXREFString::constructor_class_AdXREFString_const____ptr64____ptr64]
mov byte [r14 + 0x30], dil
mov rcx, rsi
call qword [sym.imp.acdb21.dll_public_virtual:_void___cdecl_AdXREFString::destructor_void____ptr64]
jmp 0x1400296fc
xor r14d, r14d
cmp rbx, qword [r15]
jne 0x14002976e
mov rax, qword [r15]
mov rcx, qword [rax + 8]
mov rbx, rax
mov rdx, qword [rsp + 0x78]
cmp byte [rcx + 0x19], 0
jne 0x14002972e
cmp qword [rcx + 0x20], rdx
jae 0x140029722
mov rcx, qword [rcx + 0x10]
jmp 0x140029728
mov rbx, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x140029716
cmp rbx, rax
je 0x140029739
cmp rdx, qword [rbx + 0x20]
jae 0x14002976e
lea rax, [rsp + 0x78]
mov qword [rsp + 0x30], rax
lea r8, [rsp + 0x30]
mov rcx, r15
call fcn.14002b070
lea r9, [rax + 0x20]
mov qword [rsp + 0x20], rax
mov r8, rbx
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.14002b0b0
mov rbx, qword [rsp + 0x30]
mov qword [rbx + 0x28], r14
mov eax, r13d
jmp 0x14002977c
mov eax, 0x2b
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1400489c0
add rsp, 0x98
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret