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

Disassembly:
mov qword [rsp + 0x18], rbx
push rsi
push r14
push r15
sub rsp, 0x30
mov rax, qword [rcx]
mov rsi, rcx
mov r8, qword [0x14046a618]
mov r14d, dword [0x14046a358]
cmp dword [rax], 0
mov r15d, dword [r8 + 0x38]
jne 0x1401a061e
cmp dword [0x14045b480], 0
jne 0x1401a061e
mov eax, dword [rcx + 0xc]
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x58], rdi
cmp eax, 9
jne 0x1401a04d3
cmp dword [0x14045b5b8], 4
jne 0x1401a0395
call fcn.140329e90
test eax, eax
jne 0x1401a037c
mov rcx, qword [rsi]
call fcn.1401a8b70
mov rbp, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
add rsp, 0x30
pop r15
pop r14
pop rsi
ret
lea rdi, [rcx + 0x28]
mov rbp, rdi
mov edi, dword [rdi]
mov edx, 1
mov rcx, r8
call fcn.140162fb0
mov r8, qword [0x14046a618]
cmp dword [r8 + 0x1908], 0
je 0x1401a0499
mov ecx, dword [r8 + 0x190c]
add ecx, edi
js 0x1401a0499
nop
mov ecx, dword [r8 + 0x190c]
mov edx, dword [r8 + 0x1908]
lea eax, [rcx + rdi]
cmp eax, edx
jge 0x1401a0499
cmp ecx, edx
jne 0x1401a040f
call fcn.140164680
mov r8, qword [0x14046a618]
dec dword [r8 + 0x190c]
mov ecx, dword [r8 + 0x190c]
add ecx, edi
js 0x1401a0499
add dword [r8 + 0x190c], edi
lea rbx, [r8 + 0xc88]
movsxd rax, dword [r8 + 0x190c]
shl rax, 5
add rbx, rax
cmp dword [rbx + 0xc], 0
jne 0x1401a0440
mov rcx, rbx
call fcn.1401612b0
mov r8, qword [0x14046a618]
mov rax, qword [0x14045b410]
mov ecx, dword [rax + 0x98]
cmp dword [rbx + 0xc], ecx
je 0x1401a0576
movups xmm0, xmmword [rbx]
mov rbx, qword [rbx + 8]
mov rcx, rbx
shr rcx, 0x20
movups xmmword [rsp + 0x20], xmm0
call fcn.14004c820
test rax, rax
jne 0x1401a0533
mov r8, qword [0x14046a618]
mov eax, edi
sar eax, 0x1f
inc edi
and eax, 0xfffffffe
add edi, eax
mov ecx, dword [r8 + 0x190c]
add ecx, edi
jns 0x1401a03d0
xor ebx, ebx
cmp dword [rsi + 0xc], 0x67
jne 0x1401a05d3
mov rax, qword [0x14045b410]
cmp dword [rax + 0x768], 0
jne 0x1401a05af
lea rcx, str.E664:_Changelist_is_empty
call qword [case.0x1400407ae.0]
mov rcx, rax
call fcn.140186090
jmp 0x1401a05db
lea rdi, [rcx + 0x28]
mov rbp, rdi
cmp eax, 0x67
jne 0x1401a039c
mov rax, qword [0x14045b410]
mov ecx, dword [rax + 0x768]
test ecx, ecx
je 0x1401a0499
mov ebx, dword [rdi]
mov edx, dword [r8 + 0x1910]
add ebx, edx
jns 0x1401a0509
xor ebx, ebx
test edx, edx
je 0x1401a049b
jmp 0x1401a0514
cmp ebx, ecx
jl 0x1401a0514
lea ebx, [rcx - 1]
cmp edx, ebx
je 0x1401a0499
movsxd rax, ebx
add rax, 0x3a
mov dword [r8 + 0x1910], ebx
lea rcx, [rax + rax*2]
mov rax, qword [0x14045b410]
lea rbx, [rax + rcx*4]
jmp 0x1401a0576
movups xmm0, xmmword [rsp + 0x20]
xor r9d, r9d
xor r8d, r8d
movd edx, xmm0
psrldq xmm0, 0xc
movd ecx, xmm0
call fcn.140047830
test eax, eax
je 0x1401a0499
mov r8, qword [0x14046a618]
movsd xmm0, qword [rsp + 0x20]
movsd qword [r8 + 0x38], xmm0
mov dword [r8 + 0x40], ebx
mov rbx, 0xffffffffffffffff
cmp rbx, 0xffffffffffffffff
jne 0x1401a0597
mov dword [r8 + 0x48], 1
call fcn.14018f760
mov rcx, qword [0x14046a618]
call fcn.14018d5b0
jmp 0x1401a05db
test rbx, rbx
je 0x1401a049b
mov r8, rbx
xor edx, edx
mov rcx, rsi
call fcn.1401a0b10
jmp 0x1401a05db
cmp dword [rbp], 0
lea rcx, str.E662:_At_start_of_changelist
jl 0x1401a05c3
lea rcx, str.E663:_At_end_of_changelist
call qword [case.0x1400407ae.0]
mov rcx, rax
call fcn.140186090
jmp 0x1401a05db
mov rcx, qword [rsi]
call fcn.1401a8b70
mov rax, qword [rsi]
cmp dword [rax], 0
jne 0x1401a037c
cmp rbx, 0xffffffffffffffff
je 0x1401a05fe
mov rax, qword [0x14046a618]
cmp r15d, dword [rax + 0x38]
je 0x1401a037c
test byte [0x140469aec], 8
je 0x1401a037c
test r14d, r14d
je 0x1401a037c
call fcn.14011dae0
jmp 0x1401a037c
xor ebx, ebx
cmp dword [0x14045b404], ebx
mov qword [rax], rbx
mov qword [rax + 0xc], rbx
mov dword [0x14045b99c], ebx
jne 0x1401a0386
xor ecx, ecx
call fcn.140122f90
lea ecx, [rbx + 0x40]
mov rbx, qword [rsp + 0x60]
add rsp, 0x30
pop r15
pop r14
pop rsi
jmp fcn.14018aca0