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

Disassembly:
mov qword [rsp + 0x20], rbp
push rdi
push r14
push r15
sub rsp, 0x30
mov rax, qword [0x1801f7118]
xor rax, rsp
mov qword [rsp + 0x20], rax
mov rax, qword gs:[0x58]
mov rdi, rcx
mov edx, dword [0x18026660c]
mov ecx, 4
mov r14, qword [rax + rdx*8]
add r14, rcx
mov eax, dword [r14]
cmp dword [0x18029d03c], eax
jle 0x1800f63f3
lea rcx, [0x18029d03c]
call fcn.18015cb48
cmp dword [0x18029d03c], 0xffffffff
jne 0x1800f63f3
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea rcx, [0x18029d03c]
mov dword [0x18029d040], eax
call fcn.18015cadc
cmp byte [rdi + 0x5b1], 0
lea rbp, str.SELECT
je 0x1800f6447
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x18029d040]
cmp eax, dword [rdi + 0x88]
jb 0x1800f6447
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x18029d040], eax
movzx eax, byte [rdi + 0x50]
xor al, 1
cmp byte [rdi + 0x87], 0
mov byte [rdi + 0x50], al
je 0x1800f6447
test al, al
lea rdx, str.BACK
cmovne rdx, rbp
call fcn.1800fe640
mov eax, dword [r14]
xor r15d, r15d
cmp dword [0x18029d044], eax
mov qword [rsp + 0x58], rbx
jle 0x1800f64c5
lea rcx, [0x18029d044]
call fcn.18015cb48
cmp dword [0x18029d044], 0xffffffff
jne 0x1800f64c5
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1800f648d
imul rax, rax, 0x64
jmp 0x1800f64ab
cqo
idiv rbx
mov r8, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
imul rdx, r8, 0x3b9aca00
add rax, rdx
lea rcx, [0x18029d044]
mov qword [0x18029d048], rax
mov qword [0x18029d050], r15
call fcn.18015cadc
movsxd rax, dword [rdi + 0x8c]
imul rcx, rax, 0xf4240
mov qword [0x18029d050], rcx
cmp byte [rdi + 0x50], r15b
je 0x1800f6bda
cmp byte [rdi + 0x5b2], r15b
je 0x1800f6582
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1800f650f
imul rax, rax, 0x64
jmp 0x1800f652d
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
mov rcx, rax
sub rcx, qword [0x18029d048]
cmp rcx, qword [0x18029d050]
jl 0x1800f6582
mov qword [0x18029d048], rax
cmp byte [rdi + 0x87], r15b
je 0x1800f655c
lea rdx, str.BACK
call fcn.1800fe640
mov rax, qword [rdi + 0x5a1]
sub rax, qword [rdi + 0x599]
sar rax, 3
cmp rax, 1
ja 0x1800f657a
mov byte [rdi + 0x50], r15b
jmp 0x1800f6582
add qword [rdi + 0x5a1], 0xfffffffffffffff8
cmp byte [rdi + 0x50], r15b
je 0x1800f6bda
mov rax, qword [rdi + 0x5a1]
cmp qword [rdi + 0x599], rax
je 0x1800f6bda
mov qword [rsp + 0x60], rsi
mov rsi, qword [rax - 8]
mov eax, dword [r14]
cmp dword [0x18029d058], eax
jle 0x1800f661f
lea rcx, [0x18029d058]
call fcn.18015cb48
cmp dword [0x18029d058], 0xffffffff
jne 0x1800f661f
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1800f65e7
imul rax, rax, 0x64
jmp 0x1800f6605
cqo
idiv rbx
mov r8, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
imul rdx, r8, 0x3b9aca00
add rax, rdx
lea rcx, [0x18029d058]
mov qword [0x18029d060], rax
mov qword [0x18029d068], r15
call fcn.18015cadc
movsxd rax, dword [rdi + 0x90]
imul rcx, rax, 0xf4240
mov qword [0x18029d068], rcx
cmp byte [rdi + 0x5b3], r15b
je 0x1800f66e0
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + Ordinal_50]
test rax, rax
je 0x1800f66e0
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1800f6671
imul rax, rax, 0x64
jmp 0x1800f668f
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
mov rcx, rax
sub rcx, qword [0x18029d060]
cmp rcx, qword [0x18029d068]
jl 0x1800f66e0
mov qword [0x18029d060], rax
cmp byte [rdi + 0x87], r15b
je 0x1800f66ba
mov rdx, rbp
call fcn.1800fe640
mov rbx, qword [rsi]
mov rcx, rsi
call qword [rbx + gethostname]
mov rdx, rax
mov rcx, rsi
call qword [rbx + Ordinal_41]
test rax, rax
je 0x1800f66e0
mov r8, qword [rax]
mov edx, 2
mov rcx, rax
call qword [r8 + reloc.WLDAP32.dll_Ordinal_32]
mov eax, dword [r14]
cmp dword [0x18029d070], eax
jle 0x1800f6756
lea rcx, [0x18029d070]
call fcn.18015cb48
cmp dword [0x18029d070], 0xffffffff
jne 0x1800f6756
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1800f671e
imul rax, rax, 0x64
jmp 0x1800f673c
cqo
idiv rbx
mov r8, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
imul rdx, r8, 0x3b9aca00
add rax, rdx
lea rcx, [0x18029d070]
mov qword [0x18029d078], rax
mov qword [0x18029d080], r15
call fcn.18015cadc
movsxd rax, dword [rdi + 0x94]
imul rcx, rax, 0xf4240
mov qword [0x18029d080], rcx
cmp byte [rdi + 0x5b4], r15b
je 0x1800f681b
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + Ordinal_50]
test rax, rax
je 0x1800f681b
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1800f67a8
imul rax, rax, 0x64
jmp 0x1800f67c6
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
mov rcx, rax
sub rcx, qword [0x18029d078]
cmp rcx, qword [0x18029d080]
jl 0x1800f681b
mov qword [0x18029d078], rax
cmp byte [rdi + 0x87], r15b
je 0x1800f67f5
lea rdx, str.NAV_UP_DOWN
call fcn.1800fe640
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + gethostname]
mov rbx, qword [rsi]
mov rcx, rsi
test rax, rax
je 0x1800f680e
call qword [rbx + gethostname]
jmp 0x1800f6811
call qword [rbx + Ordinal_50]
lea rdx, [rax - 1]
mov rcx, rsi
call qword [rbx + 0x40]
mov eax, dword [r14]
cmp dword [0x18029d088], eax
jle 0x1800f6891
lea rcx, [0x18029d088]
call fcn.18015cb48
cmp dword [0x18029d088], 0xffffffff
jne 0x1800f6891
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1800f6859
imul rax, rax, 0x64
jmp 0x1800f6877
cqo
idiv rbx
mov r8, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
imul rdx, r8, 0x3b9aca00
add rax, rdx
lea rcx, [0x18029d088]
mov qword [0x18029d090], rax
mov qword [0x18029d098], r15
call fcn.18015cadc
movsxd rax, dword [rdi + 0x94]
imul rcx, rax, 0xf4240
mov qword [0x18029d098], rcx
cmp byte [rdi + 0x5b5], r15b
je 0x1800f6962
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + Ordinal_50]
test rax, rax
je 0x1800f6962
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1800f68e3
imul rax, rax, 0x64
jmp 0x1800f6901
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
mov rcx, rax
sub rcx, qword [0x18029d090]
cmp rcx, qword [0x18029d098]
jl 0x1800f6962
mov qword [0x18029d090], rax
cmp byte [rdi + 0x87], r15b
je 0x1800f6930
lea rdx, str.NAV_UP_DOWN
call fcn.1800fe640
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + Ordinal_50]
mov rdx, qword [rsi]
mov rcx, rsi
lea rbx, [rax - 1]
call qword [rdx + gethostname]
mov rbp, qword [rsi]
mov rcx, rsi
cmp rax, rbx
jae 0x1800f695d
call qword [rbp + gethostname]
mov rcx, rsi
lea rdx, [rax + 1]
jmp 0x1800f695f
xor edx, edx
call qword [rbp + 0x40]
mov eax, dword [r14]
cmp dword [0x18029d0a0], eax
jle 0x1800f69d8
lea rcx, [0x18029d0a0]
call fcn.18015cb48
cmp dword [0x18029d0a0], 0xffffffff
jne 0x1800f69d8
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1800f69a0
imul rax, rax, 0x64
jmp 0x1800f69be
cqo
idiv rbx
mov r8, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
imul rdx, r8, 0x3b9aca00
add rax, rdx
lea rcx, [0x18029d0a0]
mov qword [0x18029d0a8], rax
mov qword [0x18029d0b0], r15
call fcn.18015cadc
movsxd rax, dword [rdi + 0x98]
imul rcx, rax, 0xf4240
mov qword [0x18029d0b0], rcx
cmp byte [rdi + 0x5b6], r15b
je 0x1800f6a9a
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + Ordinal_50]
test rax, rax
je 0x1800f6a9a
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1800f6a2a
imul rax, rax, 0x64
jmp 0x1800f6a48
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
mov rcx, rax
sub rcx, qword [0x18029d0a8]
cmp rcx, qword [0x18029d0b0]
jl 0x1800f6a9a
mov qword [0x18029d0a8], rax
cmp byte [rdi + 0x87], r15b
je 0x1800f6a77
lea rdx, str.NAV_LEFT_RIGHT
call fcn.1800fe640
mov rbx, qword [rsi]
mov rcx, rsi
call qword [rbx + gethostname]
mov rdx, rax
mov rcx, rsi
call qword [rbx + Ordinal_41]
test rax, rax
je 0x1800f6a9a
mov r8, qword [rax]
xor edx, edx
mov rcx, rax
call qword [r8 + reloc.WLDAP32.dll_Ordinal_32]
mov eax, dword [r14]
cmp dword [0x18029d0b8], eax
jle 0x1800f6b10
lea rcx, [0x18029d0b8]
call fcn.18015cb48
cmp dword [0x18029d0b8], 0xffffffff
jne 0x1800f6b10
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1800f6ad8
imul rax, rax, 0x64
jmp 0x1800f6af6
cqo
idiv rbx
mov r8, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
imul rdx, r8, 0x3b9aca00
add rax, rdx
lea rcx, [0x18029d0b8]
mov qword [0x18029d0c0], rax
mov qword [0x18029d0c8], r15
call fcn.18015cadc
movsxd rax, dword [rdi + 0x98]
imul rcx, rax, 0xf4240
mov qword [0x18029d0c8], rcx
cmp byte [rdi + 0x5b7], r15b
je 0x1800f6bd5
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + Ordinal_50]
test rax, rax
je 0x1800f6bd5
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1800f6b62
imul rax, rax, 0x64
jmp 0x1800f6b80
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
mov rcx, rax
sub rcx, qword [0x18029d0c0]
cmp rcx, qword [0x18029d0c8]
jl 0x1800f6bd5
mov qword [0x18029d0c0], rax
cmp byte [rdi + 0x87], r15b
je 0x1800f6baf
lea rdx, str.NAV_LEFT_RIGHT
call fcn.1800fe640
mov rbx, qword [rsi]
mov rcx, rsi
call qword [rbx + gethostname]
mov rdx, rax
mov rcx, rsi
call qword [rbx + Ordinal_41]
test rax, rax
je 0x1800f6bd5
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8 + reloc.WLDAP32.dll_Ordinal_32]
mov rsi, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x20]
xor rcx, rsp
call fcn.18015c690
mov rbp, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop rdi
ret