Function at 0x14012e820
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.140127600
cmp dword [0x1402cc6cc], ebp
je 0x14012e856
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
call fcn.1401245a0
mov rdx, qword [0x1402cc7a8]
test rdx, rdx
je 0x14012e86e
mov ecx, 6
call rdx
call fcn.14012a490
mov rdx, qword [0x1402cc7a8]
test rdx, rdx
je 0x14012e88d
mov ecx, 7
call rdx
mov rdx, qword [0x1402cc7a8]
cmp dword [0x1402cc6cc], ebp
mov r14d, 1
mov dword [0x1402cc750], r14d
je 0x14012e8c4
mov edx, dword [0x1402cc708]
lea rcx, str._n____Marking_for_collection__lu_after__lu_allocated_bytes_n
mov r8d, dword [0x1402ce9a0]
inc edx
call fcn.14012c5c0
mov rdx, qword [0x1402cc7a8]
test rdx, rdx
je 0x14012e8ce
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 fcn.140126740
call fcn.140125420
mov eax, dword [0x1402c3810]
lea rcx, [0x14012d1e0]
cmp rdi, rcx
mov ebx, ebp
cmovne eax, r14d
mov dword [0x1402c3810], eax
call rdi
test eax, eax
jne 0x14012e929
nop
call fcn.140132c20
mov rcx, rax
call fcn.140126120
test eax, eax
jne 0x14012e98b
inc ebx
call rdi
test eax, eax
je 0x14012e910
mov dword [0x1402c3810], ebp
test ebx, ebx
js 0x14012e9b7
cmp dword [0x1402cc6cc], ebp
je 0x14012e94d
mov edx, ebx
lea rcx, str.Abandoned_stopped_marking_after__d_iterations_n
call fcn.14012c5c0
mov rax, qword [0x1402cc7a8]
mov dword [0x1402cc7a4], ebx
mov dword [0x1402cc750], ebp
test rax, rax
je 0x14012e96c
mov ecx, 8
call rax
call fcn.14012a3a0
mov rax, qword [0x1402cc7a8]
test rax, rax
je 0x14012e984
mov ecx, 9
call rax
xor eax, eax
jmp 0x14012eae0
cmp dword [0x1402cc710], ebp
je 0x14012e9b1
cmp dword [0x1402c3810], ebp
je 0x14012e9b1
cmp dword [0x1402cc6cc], ebp
je 0x14012e9b1
mov edx, ebx
lea rcx, str.Stopped_marking_done_after__d_iterations_with_disabled_parallel_marker_n
call fcn.14012c5c0
mov dword [0x1402c3810], ebp
mov rdx, qword [0x1402cc708]
inc rdx
cmp dword [0x1402cc6cc], ebp
mov qword [0x1402cc708], rdx
je 0x14012ea28
mov r9, qword [0x1402ce960]
mov rax, qword [0x1402cea18]
mov r8, qword [0x1402ce998]
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 [0x1402ccbc8]
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.14012c5c0
cmp dword [0x1402cc6a0], ebp
je 0x14012ea36
call qword [0x1402cc738]
mov rax, qword [0x1402cc7a8]
test rax, rax
je 0x14012ea54
mov ecx, 2
call rax
mov ecx, 8
call qword [0x1402cc7a8]
mov dword [0x1402cc750], ebp
call fcn.14012a3a0
mov rax, qword [0x1402cc7a8]
test rax, rax
je 0x14012ea72
mov ecx, 9
call rax
cmp dword [0x1402cc6cc], ebp
je 0x14012eadd
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r8d, dword [0x1402cc7b4]
mov r10d, eax
mov eax, dword [0x1402cc7b0]
sub r10d, esi
test eax, eax
js 0x14012eaa0
cmp r8d, 0x3e8
jb 0x14012eaa5
shr eax, 1
shr r8d, 1
mov ecx, 0x7fffffff
cmp r10d, ecx
cmovb ecx, r10d
inc r8d
add eax, ecx
mov dword [0x1402cc7b4], r8d
xor edx, edx
mov dword [0x1402cc7b0], 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.14012c5c0
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