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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x30
xor ebp, ebp
mov rdi, rcx
mov esi, ebp
call fcn.140022cc0
cmp dword [0x14016a4f4], ebp
je 0x140026996
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
call fcn.140022740
mov rdx, qword [0x14016a5d0]
test rdx, rdx
je 0x1400269ae
mov ecx, 6
call rdx
call fcn.140029f40
mov rdx, qword [0x14016a5d0]
test rdx, rdx
je 0x1400269cd
mov ecx, 7
call rdx
mov rdx, qword [0x14016a5d0]
cmp dword [0x14016a4f4], ebp
mov r14d, 1
mov dword [0x14016a578], r14d
je 0x140026a04
mov edx, dword [0x14016a530]
lea rcx, str._n____Marking_for_collection__lu_after__lu_allocated_bytes_n
mov r8d, dword [0x14016cea0]
inc edx
call fcn.140025330
mov rdx, qword [0x14016a5d0]
test rdx, rdx
je 0x140026a0e
mov ecx, r14d
call rdx
mov qword [rsp + 0x28], rbp
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rbp
xor edx, edx
xor ecx, ecx
call 0x140028410
call fcn.1400270f0
mov eax, dword [0x14016a600]
lea rcx, [fcn.140024820]
cmp rdi, rcx
mov ebx, ebp
cmovne eax, r14d
mov dword [0x14016a600], eax
call rdi
test eax, eax
jne 0x140026a69
nop
call fcn.14002d500
mov rcx, rax
call fcn.140027df0
test eax, eax
jne 0x140026acb
inc ebx
call rdi
test eax, eax
je 0x140026a50
mov dword [0x14016a600], ebp
test ebx, ebx
js 0x140026af7
cmp dword [0x14016a4f4], ebp
je 0x140026a8d
mov edx, ebx
lea rcx, str.Abandoned_stopped_marking_after__d_iterations_n
call fcn.140025330
mov rax, qword [0x14016a5d0]
mov dword [0x14016a5cc], ebx
mov dword [0x14016a578], ebp
test rax, rax
je 0x140026aac
mov ecx, 8
call rax
call fcn.140029e60
mov rax, qword [0x14016a5d0]
test rax, rax
je 0x140026ac4
mov ecx, 9
call rax
xor eax, eax
jmp 0x140026c20
cmp dword [0x14016a538], ebp
je 0x140026af1
cmp dword [0x14016a600], ebp
je 0x140026af1
cmp dword [0x14016a4f4], ebp
je 0x140026af1
mov edx, ebx
lea rcx, str.Stopped_marking_done_after__d_iterations_with_disabled_parallel_marker_n
call fcn.140025330
mov dword [0x14016a600], ebp
mov rdx, qword [0x14016a530]
inc rdx
cmp dword [0x14016a4f4], ebp
mov qword [0x14016a530], rdx
je 0x140026b68
mov r9, qword [0x14016ce60]
mov rax, qword [0x14016cf18]
mov r8, qword [0x14016ce98]
sub r8, r9
sub r9, rax
add r8, 0x1ff
add r9, 0x1ff
shr r8, 0xa
lea rcx, [rax + 0x1ff]
shr rcx, 0xa
mov dword [rsp + 0x28], r8d
mov r8d, dword [0x14016b818]
mov dword [rsp + 0x20], ecx
lea rcx, str.GC__lu_freed__ld_bytes__heap__lu_KiB____lu_KiB_unmapped___lu_KiB_internal__n
shr r9, 0xa
call fcn.140025330
cmp dword [0x14016a4c8], ebp
je 0x140026b76
call qword [0x14016a560]
mov rax, qword [0x14016a5d0]
test rax, rax
je 0x140026b94
mov ecx, 2
call rax
mov ecx, 8
call qword [0x14016a5d0]
mov dword [0x14016a578], ebp
call fcn.140029e60
mov rax, qword [0x14016a5d0]
test rax, rax
je 0x140026bb2
mov ecx, 9
call rax
cmp dword [0x14016a4f4], ebp
je 0x140026c1d
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r8d, dword [0x14016a5dc]
mov r10d, eax
mov eax, dword [0x14016a5d8]
sub r10d, esi
test eax, eax
js 0x140026be0
cmp r8d, 0x3e8
jb 0x140026be5
shr eax, 1
shr r8d, 1
mov ecx, 0x7fffffff
cmp r10d, ecx
cmovb ecx, r10d
inc r8d
add eax, ecx
mov dword [0x14016a5dc], r8d
xor edx, edx
mov dword [0x14016a5d8], eax
div r8d
xor r8d, r8d
lea rcx, str.World_stopped_marking_took__lu_ms__lu_ns___u_ms_in_average__n
mov r9d, eax
mov edx, r10d
call fcn.140025330
mov eax, r14d
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x30
pop r14
ret