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

Disassembly:
push rbx
push rdi
push r12
push r13
push r14
sub rsp, 0x30
mov r13d, dword [rsp + 0x88]
mov r14d, r9d
mov rdi, rdx
mov rbx, rcx
test r13d, r13d
jne 0x140013b09
lea r8, [0x1400e14ec]
lea rdx, [0x1400e4b00]
lea rcx, [0x1401181e0]
add rsp, 0x30
pop r14
pop r13
pop r12
pop rdi
pop rbx
jmp fcn.1400401e0
mov qword [rsp + 0x60], rbp
mov qword [rsp + 0x68], rsi
mov rsi, qword [rsp + 0x80]
mov rbp, qword [rsi]
lea r12, [0x1400e14ec]
mov ecx, dword [rbp + 0x10]
test ecx, ecx
je 0x140013b57
dec ecx
je 0x140013b3d
dec ecx
je 0x140013b3d
sub ecx, 2
je 0x140013b42
dec ecx
je 0x140013b57
mov rbp, r12
jmp 0x140013b5b
mov rcx, qword [rbp]
xor r8d, r8d
lea edx, [r8 + 1]
call fcn.140001820
mov rbp, rax
jmp 0x140013b5b
mov rbp, qword [rbp]
test r14b, 2
je 0x140013cc1
lea rdx, [0x1400e4b20]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140013b9e
cmp dword [rbx + 0x10], 1
lea rcx, [rbx + 0x10]
je 0x140013c85
mov rax, qword [rbx + 0x28]
xor esi, esi
xor edx, edx
mov dword [rbx + 0x30], esi
mov word [rax], si
call fcn.140047450
jmp 0x14001414c
lea rdx, [0x1400e4ae0]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140013c43
cmp r13d, 1
jle 0x140013bdf
mov rcx, qword [rsi + 8]
cmp dword [rcx + 0x10], 3
je 0x140013bdf
lea edx, [rax + 1]
xor r8d, r8d
call fcn.140077900
mulsd xmm0, qword [0x1400ffd78]
cvttsd2si rsi, xmm0
jmp 0x140013be2
or esi, 0xffffffff
call qword [sym.imp.KERNEL32.dll_GetTickCount]
cmp dword [rbx + 0x10], 1
mov ebp, eax
jne 0x140013c11
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, ebp
cmp eax, esi
jae 0x140013c11
mov edx, 1
mov ecx, 0x8000012f
call fcn.140001a70
cmp dword [rbx + 0x10], 1
je 0x140013bf0
xor esi, esi
mov dword [rdi + 0x10], esi
mov eax, dword [rbx + 0x10]
cmp eax, 6
ja 0x140013c36
lea rcx, [rbx + 0x10]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], eax
call fcn.140048110
mov r12, rax
mov qword [rdi], r12
mov eax, 1
jmp 0x14001414c
lea rdx, [0x1400e4b30]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140013c8f
cmp dword [rbx + 0x10], 1
lea r8, [rbx + 0x10]
jne 0x140013c85
movzx eax, byte [0x14011679d]
mov rcx, qword [0x1401167a8]
xor esi, esi
xor r9d, r9d
mov edx, 0x41b
mov dword [r8], esi
mov byte [r8 + 0x6c], al
call qword [sym.imp.USER32.dll_PostMessageW]
mov eax, 1
jmp 0x14001414c
lea rdx, [0x1400e4b40]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140013cb7
lea r8d, [r13 - 1]
lea rdx, [rsi + 8]
mov rcx, rbx
call fcn.140014170
jmp 0x14001414c
mov eax, 4
jmp 0x14001414c
mov qword [rsp + 0x70], r15
mov r15d, r14d
mov esi, 0
and r15d, 1
mov eax, esi
setne al
inc eax
cmp r13d, eax
je 0x140013cf9
lea rdx, [0x1400e4b00]
lea rcx, [0x1401181e0]
mov r8, r12
call fcn.1400401e0
jmp 0x140014147
test r14b, 3
jne 0x140013e9a
lea rdx, [0x1400e37c0]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140013d2e
mov dword [rdi + 0x10], esi
movsxd r8, dword [rbx + 0x30]
mov rdx, qword [rbx + 0x28]
mov rcx, rdi
call fcn.140077e80
jmp 0x140014147
lea rdx, [0x1400e4b50]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140013d5d
mov dword [rdi + 0x10], 1
cmp dword [rbx + 0x10], 1
mov eax, 1
sete sil
mov qword [rdi], rsi
jmp 0x140014147
lea rdx, [0x1400e4b68]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140013d9f
lea rcx, [rbx + 0x10]
mov dword [rdi + 0x10], esi
mov eax, dword [rcx]
cmp eax, 6
ja 0x140013d92
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], eax
call fcn.140048110
mov r12, rax
mov qword [rdi], r12
mov eax, 1
jmp 0x140014147
lea rdx, [0x1400e4b80]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140013de8
lea rcx, [rbx + 0x10]
mov dword [rdi + 0x10], esi
cmp dword [rcx], 4
jne 0x140013d92
mov rdx, qword [rdi + 8]
mov qword [rdi], rdx
mov eax, dword [rcx]
cmp eax, 6
ja 0x140013d95
xor r9d, r9d
mov r8d, 0x100
mov dword [rsp + 0x20], eax
call fcn.140048110
mov eax, 1
jmp 0x140014147
lea rdx, [0x1400e4b90]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140013e54
mov rcx, qword [rdi + 8]
mov dword [rdi + 0x10], esi
mov edx, 1
lea r8, [0x1400e4ba0]
lea r9, [0x1400e4ba2]
lea r10d, [rax + 8]
mov qword [rdi], rcx
nop dword [rax]
test byte [rbx + 0x7c], dl
je 0x140013e39
movzx eax, word [r8]
add rcx, 4
mov word [rcx - 4], ax
movzx eax, word [r9]
mov word [rcx - 2], ax
rol edx, 1
add r8, 4
add r9, 4
dec r10
jne 0x140013e20
mov word [rcx], si
lea eax, [r10 + 1]
jmp 0x140014147
lea rdx, [0x1400e4bc8]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140013e9a
mov dword [rdi + 0x10], esi
cmp dword [rbx + 0x10], 3
jne 0x140013d92
mov eax, dword [rbx + 0x80]
cmp eax, dword [rbx + 0x50]
jae 0x140013d92
mov ecx, eax
mov rax, qword [rbx + 0x48]
mov rcx, qword [rax + rcx*8]
mov eax, 1
mov qword [rdi], rcx
jmp 0x140014147
lea rdx, [0x1400e41a4]
mov r8d, 2
mov rcx, rbp
call fcn.1400c9264
test eax, eax
jne 0x140013fb6
add rbp, 4
lea rdx, [0x1400e1ab8]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140013ed7
add rbx, 0x388
jmp 0x140013f2d
lea rdx, [0x1400e4bd8]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140013ef3
add rbx, 0x390
jmp 0x140013f2d
lea rdx, [0x1400e4be8]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140013f0f
add rbx, 0x3a0
jmp 0x140013f2d
lea rdx, [0x1400e4bf8]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140014142
add rbx, 0x398
test r15d, r15d
je 0x140013f65
mov rbp, qword [rsp + 0x80]
mov rcx, qword [rbp + 8]
call fcn.140077d30
mov rsi, rax
test rax, rax
je 0x140013f8e
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + VariantCopy]
mov rcx, qword [rbx]
test rcx, rcx
je 0x140013f62
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rbx], rsi
mov rcx, qword [rbx]
test rcx, rcx
je 0x14001413b
mov rax, qword [rcx]
call qword [rax + VariantCopy]
mov r11, qword [rbx]
mov dword [rdi + 0x10], 6
mov qword [rdi], r11
mov eax, 1
jmp 0x140014147
mov rcx, qword [rbp + 8]
call fcn.140077760
test eax, eax
jne 0x140013f54
lea rdx, [0x1400e4c08]
lea rcx, [0x1401181e0]
mov r8, r12
call fcn.1400401e0
jmp 0x140014147
lea rdx, [0x1400e4c28]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140013ffc
test r15d, r15d
je 0x140013fe4
mov rbp, qword [rsp + 0x80]
xor edx, edx
mov rcx, qword [rbp + 8]
call fcn.140077860
mov byte [rbx + 0x6c], al
movzx eax, byte [rbx + 0x6c]
mov dword [rdi + 0x10], 1
mov qword [rdi], rax
mov eax, 1
jmp 0x140014147
lea rdx, [0x1400e4af0]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140014073
test r15d, r15d
je 0x14001404d
mov rbp, qword [rsp + 0x80]
lea edx, [rax + 1]
xor r8d, r8d
mov rcx, qword [rbp + 8]
call fcn.140077900
cmp dword [rbx + 0x10], 1
lea rcx, [rbx + 0x10]
mulsd xmm0, qword [0x1400ffd78]
cvttsd2si eax, xmm0
mov dword [rbx + 0x64], eax
jne 0x14001404d
test eax, eax
jle 0x14001404d
call fcn.140047700
movd xmm0, dword [rbx + 0x64]
mov eax, 1
mov dword [rdi + 0x10], 2
cvtdq2pd xmm0, xmm0
divsd xmm0, qword [0x1400ffd78]
movsd qword [rdi], xmm0
jmp 0x140014147
lea rdx, [0x1400e4c48]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x14001408c
add rbx, 0x6d
jmp 0x140014107
lea rdx, [0x1400e4c68]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x1400140a5
add rbx, 0x6e
jmp 0x140014107
lea rdx, [0x1400e4c88]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x1400140be
add rbx, 0x73
jmp 0x140014107
lea rdx, [0x1400e4ca8]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x1400140d7
add rbx, 0x70
jmp 0x140014107
lea rdx, [0x1400e4cc0]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x1400140f0
add rbx, 0x71
jmp 0x140014107
lea rdx, [0x1400e4ce0]
mov rcx, rbp
call fcn.1400c900c
test eax, eax
jne 0x140014142
add rbx, 0x72
test rbx, rbx
je 0x140014142
test r15d, r15d
je 0x14001412e
mov rbp, qword [rsp + 0x80]
mov edx, 0x41
mov rcx, qword [rbp + 8]
call fcn.140077410
test eax, eax
setne al
mov byte [rbx], al
movzx eax, byte [rbx]
mov dword [rdi + 0x10], 1
mov qword [rdi], rax
mov eax, 1
jmp 0x140014147
mov eax, 4
mov r15, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x30
pop r14
pop r13
pop r12
pop rdi
pop rbx
ret