Function at 0x140032e40
Capabilities:
Check for time delay via gettickcount
Check for time delay via queryperformancecounter
Get system information on windows

Disassembly:
mov qword [rsp + 0x10], rdx
push rbp
push r13
lea rbp, [rsp - 0x4f]
sub rsp, 0xb8
mov r13, rcx
movabs rcx, 0x7fffffffffffffff
cmp qword [rdx], rcx
jne 0x140032e7b
mov rcx, r13
call fcn.140015cd0
mov al, 1
add rsp, 0xb8
pop r13
pop rbp
ret
mov qword [rsp + 0xd0], rbx
mov ecx, 1
mov qword [rsp + 0xb0], rsi
xor eax, eax
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xa0], r12
mov qword [rsp + 0x98], r14
mov qword [rsp + 0x90], r15
lock cmpxchg dword [r13], ecx
mov ecx, dword [r13]
cmp ecx, 1
jne 0x140032ec9
test eax, eax
je 0x140033207
xor eax, eax
lea rcx, [rbp - 0x49]
mov r15d, eax
mov r12d, eax
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
mov eax, dword [rbp - 0x49]
mov ecx, dword [rbp - 0x45]
shl rcx, 0x20
or rcx, rax
movabs rax, 0x19db1ded53e8000
sub rcx, rax
movabs rax, 0xcccccccccccccccd
mul rcx
movabs rax, 0x431bde82d7b634db
lea rcx, [rbp - 0x39]
mov r14, rdx
shr r14, 3
mul r14
mov rbx, rdx
shr rbx, 0x12
mov qword [rbp - 0x39], rbx
call fcn.140078d64
mov rsi, rax
movzx r9d, word [rax + 0xc]
lea ecx, [r9 + 1]
cmp ecx, 2
jb 0x14003325a
imul rcx, rbx, 0xf4240
sub r14, rcx
mov ecx, 0x270f
cmp r9w, 0x1f
ja 0x140033248
movzx edx, word [rsi + 0x10]
inc dx
movzx eax, dx
inc eax
cmp eax, 2
jb 0x1400332a1
cmp dx, 0xc
ja 0x140033293
mov r10d, 0x76c
add r10w, word [rsi + 0x14]
movzx eax, r10w
inc eax
cmp eax, 0x579
jb 0x140033281
cmp r10w, cx
ja 0x14003326c
movzx r8d, dx
lea rcx, [rbp - 0x41]
movzx edx, r10w
call fcn.140033e70
movsxd rax, dword [rsi + 8]
movsxd r10, dword [rsi]
movsxd r9, dword [rsi + 4]
mov r8d, r14d
test rax, rax
js 0x140032fe8
test r9, r9
js 0x140032fe8
test r10, r10
js 0x140032fe8
imul rax, rax, 0x3c
add rax, r9
imul rcx, rax, 0x3c
add rcx, r10
imul rax, rcx, 0xf4240
add r8, rax
jmp 0x140033021
cqo
neg r8
xor rax, rdx
sub rax, rdx
imul rcx, rax, 0x3c
mov rax, r9
cqo
xor rax, rdx
sub rax, rdx
add rcx, rax
mov rax, r10
cqo
xor rax, rdx
sub rax, rdx
imul r9, rcx, 0x3c
add r9, rax
imul rax, r9, 0xf4240
sub r8, rax
mov edx, dword [rbp - 0x41]
lea rcx, [rbp - 0x19]
call fcn.140034040
mov rcx, qword [rbp + 0x6f]
mov rax, qword [rcx]
cmp qword [rbp - 0x19], rax
jge 0x140033244
xor eax, eax
mov ebx, 1
lock cmpxchg dword [r13], ebx
mov ecx, dword [r13]
cmp ecx, ebx
jne 0x14003305b
test eax, eax
je 0x140033207
test edi, edi
jne 0x140033087
mov eax, dword [0x1400cf868]
test eax, eax
jne 0x140033076
lea rcx, [rbp - 9]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [rbp + 0x17]
cmp eax, ebx
mov edi, 0x20
mov esi, 0
cmova edi, esi
jmp 0x140033089
xor esi, esi
cmp edi, 8
jb 0x14003314f
cmp edi, 0x20
jae 0x14003309e
pause
jmp 0x14003314f
jne 0x14003312b
mov ecx, 7
call fcn.1400201f0
lea r8, [rbp + 0x7f]
lea rdx, [rbp - 0x21]
lea rcx, [rbp - 0x1d]
call rax
lea rcx, [rbp - 0x11]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
jne 0x1400330dd
mov ecx, dword [rbp + 0x7f]
mov eax, 0xd1b71759
dec ecx
mul ecx
mov eax, edx
shr eax, 0xd
jmp 0x140033104
mov eax, dword [rbp + 0x7f]
imul r8, rax, 0x5f5e100
movabs rax, 0x38d7ea4c67fff
cqo
idiv qword [rbp - 0x11]
lea rcx, [rax + 1]
lea rax, [r8 - 1]
cqo
idiv rcx
lea rcx, [rbp - 0x31]
lea r12d, [rax + 1]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
jne 0x140033125
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r15d, eax
mov qword [rbp - 0x31], r15
jmp 0x14003314f
mov r15, qword [rbp - 0x31]
jmp 0x14003314f
test r12d, r12d
jne 0x1400331ce
test bl, dil
je 0x140033200
call qword [sym.imp.KERNEL32.dll_SwitchToThread]
test eax, eax
jne 0x14003314f
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rbp - 0x49]
inc edi
call qword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
mov eax, dword [rbp - 0x49]
mov ecx, dword [rbp - 0x45]
shl rcx, 0x20
or rcx, rax
movabs rax, 0x19db1ded53e8000
sub rcx, rax
movabs rax, 0xcccccccccccccccd
mul rcx
movabs rax, 0x431bde82d7b634db
lea rcx, [rbp - 0x39]
mov r14, rdx
shr r14, 3
mul r14
mov rbx, rdx
shr rbx, 0x12
mov qword [rbp - 0x39], rbx
call fcn.140078d64
mov rsi, rax
movzx r9d, word [rax + 0xc]
imul rax, rbx, 0xf4240
sub r14, rax
lea eax, [r9 + 1]
cmp eax, 2
jb 0x14003325a
jmp 0x140032f4b
lea rcx, [rbp - 0x29]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
jne 0x1400331ea
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
mov qword [rbp - 0x29], rcx
jmp 0x1400331ee
mov rcx, qword [rbp - 0x29]
sub rcx, r15
mov eax, r12d
cmp rcx, rax
jb 0x14003313d
mov r12d, esi
mov ecx, ebx
jmp 0x140033149
mov al, 1
mov r14, qword [rsp + 0x98]
mov r12, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0xd0]
mov r15, qword [rsp + 0x90]
add rsp, 0xb8
pop r13
pop rbp
ret
xor al, al
jmp 0x140033209
mov ecx, 1
movzx edx, r9w
mov r8d, ecx
call fcn.140035b20
int3
mov ecx, 1
xor r8d, r8d
movzx edx, r9w
call fcn.140035b20
int3
mov ecx, 0x578
mov r8d, 1
movzx edx, r10w
call fcn.140035b60
int3
mov ecx, 0x578
xor r8d, r8d
movzx edx, r10w
call fcn.140035b60
int3
mov ecx, 1
mov r8d, ecx
call fcn.140035b40
int3
mov ecx, 1
xor r8d, r8d
call fcn.140035b40
int3