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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
xor r15d, r15d
mov rdi, rcx
cmp byte [rcx + 0x50], r15b
je 0x18001ccee
cmp byte [rcx + 0x69], r15b
je 0x18001ccee
mov qword [rsp + 0x50], r15
movabs rbx, 0xfe99b66d079cf6bc
mov dword [rsp + 0x50], 2
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c60], rax
mov dword [rsp + 0x50], 1
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], rbx
mov qword [0x1800a2c68], r15
mov dword [0x1800a2b88], 3
call fcn.18001f0a0
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 2
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c60], rax
mov dword [rsp + 0x50], 0x13
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c68], rax
mov dword [rsp + 0x50], 1
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], rbx
mov dword [0x1800a2b88], 3
call fcn.18001f0a0
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 2
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c60], rax
mov dword [rsp + 0x50], 0x8c
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c68], rax
mov dword [rsp + 0x50], 1
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], rbx
mov dword [0x1800a2b88], 3
call fcn.18001f0a0
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 2
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c60], rax
mov dword [rsp + 0x50], 0x14
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c68], rax
mov dword [rsp + 0x50], 1
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], rbx
mov dword [0x1800a2b88], 3
call fcn.18001f0a0
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 2
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c60], rax
mov dword [rsp + 0x50], 0x1b
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c68], rax
mov dword [rsp + 0x50], 1
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], rbx
mov dword [0x1800a2b88], 3
call fcn.18001f0a0
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], rbx
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 2
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c60], rax
mov dword [rsp + 0x50], 0x50
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c68], rax
mov dword [rsp + 0x50], 1
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b88], 3
call fcn.18001f0a0
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 2
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c60], rax
mov dword [rsp + 0x50], 0x151
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c68], rax
mov dword [rsp + 0x50], 1
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], rbx
mov dword [0x1800a2b88], 3
call fcn.18001f0a0
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 2
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c60], rax
mov dword [rsp + 0x50], 0x1b
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c68], rax
mov dword [rsp + 0x50], 1
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], rbx
mov dword [0x1800a2b88], 3
call fcn.18001f0a0
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 2
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c60], rax
mov dword [rsp + 0x50], 0x55
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c68], rax
mov dword [rsp + 0x50], 1
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], rbx
mov dword [0x1800a2b88], 3
call fcn.18001f0a0
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 2
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c60], rax
mov dword [rsp + 0x50], 0x4a
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], r15
mov qword [0x1800a2c68], rax
mov dword [rsp + 0x50], 1
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], rbx
mov dword [0x1800a2b88], 3
call fcn.18001f0a0
mov rax, qword gs:[0x58]
mov ecx, dword [0x1800b6204]
mov edx, 4
mov r14, qword [rax + rcx*8]
add r14, rdx
mov eax, dword [r14]
cmp dword [0x1800b81e8], eax
jle 0x18001cd41
lea rcx, [0x1800b81e8]
call fcn.180056ac0
cmp dword [0x1800b81e8], 0xffffffff
jne 0x18001cd41
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea rcx, [0x1800b81e8]
mov dword [0x1800b81ec], eax
call fcn.180056a60
lea rbp, str.SELECT
movabs r13, 0x67c540aa08e4a6f5
lea rsi, str.BACK
movabs r12, 0xe2587f8cbbd87b1d
lea rbx, str.HUD_FRONTEND_DEFAULT_SOUNDSET
cmp byte [rdi + 0x150], r15b
je 0x18001cd88
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x1800b81ec]
cmp eax, dword [rdi + 0x6c]
jae 0x18001ce2f
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 0xe3
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c68], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], r12
mov qword [0x1800a2c60], r15
mov dword [0x1800a2b88], 2
call fcn.18001f0a0
cmp dword [rax], r15d
je 0x18001ce9f
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 0xaf
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c68], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], r12
mov qword [0x1800a2c60], r15
mov dword [0x1800a2b88], 2
call fcn.18001f0a0
cmp dword [rax], r15d
je 0x18001ce9f
cmp byte [rdi + 0x69], r15b
je 0x18001ce9f
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x1800b81ec]
cmp eax, dword [rdi + 0x6c]
jb 0x18001ce9f
call qword [sym.imp.KERNEL32.dll_GetTickCount]
movzx ecx, byte [rdi + 0x50]
xor cl, 1
mov dword [0x1800b81ec], eax
mov byte [rdi + 0x50], cl
cmp byte [rdi + 0x68], r15b
je 0x18001ce9f
mov qword [rsp + 0x50], r15
test cl, cl
mov dword [rsp + 0x50], 0xffffffff
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c60], rax
mov rax, rsi
cmovne rax, rbp
mov dword [0x1800a2b98], r15d
mov qword [0x1800a2c68], rax
mov qword [0x1800b7fc8], r13
mov qword [0x1800a2c70], rbx
mov qword [0x1800a2c78], r15
mov dword [0x1800a2b88], 4
call fcn.18001f0a0
mov eax, dword [r14]
cmp dword [0x1800b81f0], eax
jle 0x18001cede
lea rcx, [0x1800b81f0]
call fcn.180056ac0
cmp dword [0x1800b81f0], 0xffffffff
jne 0x18001cede
lea rcx, [0x1800b81f8]
call fcn.1800029a0
lea rcx, [0x1800b81f0]
mov qword [0x1800b8200], r15
call fcn.180056a60
movsxd rax, dword [rdi + 0x70]
imul rcx, rax, 0xf4240
mov qword [0x1800b8200], rcx
cmp byte [rdi + 0x50], r15b
je 0x18001da8a
cmp byte [rdi + 0x151], r15b
je 0x18001cf56
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 0x18001cf21
imul rax, rax, 0x64
jmp 0x18001cf3f
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 [0x1800b81f8]
cmp rcx, qword [0x1800b8200]
jge 0x18001d003
cmp byte [rdi + 0x50], r15b
je 0x18001da8a
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 0xca
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c68], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], r12
mov qword [0x1800a2c60], r15
mov dword [0x1800a2b88], 2
call fcn.18001f0a0
cmp dword [rax], r15d
je 0x18001d088
cmp byte [rdi + 0x69], r15b
je 0x18001d088
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 0x18001cfce
imul rax, rax, 0x64
jmp 0x18001cfec
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 [0x1800b81f8]
cmp rcx, qword [0x1800b8200]
jl 0x18001d088
mov qword [0x1800b81f8], rax
cmp byte [rdi + 0x68], r15b
je 0x18001d062
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 0xffffffff
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c60], rax
lea rax, str.HUD_FRONTEND_DEFAULT_SOUNDSET
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], r13
mov qword [0x1800a2c68], rsi
mov qword [0x1800a2c78], r15
mov dword [0x1800a2b88], 4
call fcn.18001f0a0
mov rax, qword [rdi + 0x180]
sub rax, qword [rdi + 0x178]
sar rax, 3
cmp rax, 1
ja 0x18001d080
mov byte [rdi + 0x50], r15b
jmp 0x18001d088
add qword [rdi + 0x180], 0xfffffffffffffff8
cmp byte [rdi + 0x50], r15b
je 0x18001da8a
mov rax, qword [rdi + 0x180]
cmp qword [rdi + 0x178], rax
je 0x18001da8a
mov rsi, qword [rax - 8]
mov eax, dword [r14]
cmp dword [0x1800b8208], eax
jle 0x18001d0e9
lea rcx, [0x1800b8208]
call fcn.180056ac0
cmp dword [0x1800b8208], 0xffffffff
jne 0x18001d0e9
lea rcx, [0x1800b8210]
call fcn.1800029a0
lea rcx, [0x1800b8208]
mov qword [0x1800b8218], r15
call fcn.180056a60
movsxd rax, dword [rdi + 0x74]
imul rcx, rax, 0xf4240
mov qword [0x1800b8218], rcx
cmp byte [rdi + 0x152], r15b
je 0x18001d165
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
test rax, rax
je 0x18001d165
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 0x18001d130
imul rax, rax, 0x64
jmp 0x18001d14e
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 [0x1800b8210]
cmp rcx, qword [0x1800b8218]
jge 0x18001d21a
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 0xc9
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c68], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], r12
mov qword [0x1800a2c60], r15
mov dword [0x1800a2b88], 2
call fcn.18001f0a0
cmp dword [rax], r15d
je 0x18001d29f
cmp byte [rdi + 0x69], r15b
je 0x18001d29f
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
test rax, rax
je 0x18001d29f
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 0x18001d1e5
imul rax, rax, 0x64
jmp 0x18001d203
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 [0x1800b8210]
cmp rcx, qword [0x1800b8218]
jl 0x18001d29f
mov qword [0x1800b8210], rax
cmp byte [rdi + 0x68], r15b
je 0x18001d279
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 0xffffffff
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c60], rax
lea rax, str.HUD_FRONTEND_DEFAULT_SOUNDSET
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], r13
mov qword [0x1800a2c68], rbp
mov qword [0x1800a2c78], r15
mov dword [0x1800a2b88], 4
call fcn.18001f0a0
mov rbx, qword [rsi]
mov rcx, rsi
call qword [rbx + 0x38]
mov rdx, rax
mov rcx, rsi
call qword [rbx + 0x28]
test rax, rax
je 0x18001d29f
mov r8, qword [rax]
mov edx, 2
mov rcx, rax
call qword [r8 + 0x20]
mov eax, dword [r14]
cmp dword [0x1800b8220], eax
jle 0x18001d2de
lea rcx, [0x1800b8220]
call fcn.180056ac0
cmp dword [0x1800b8220], 0xffffffff
jne 0x18001d2de
lea rcx, [0x1800b8228]
call fcn.1800029a0
lea rcx, [0x1800b8220]
mov qword [0x1800b8230], r15
call fcn.180056a60
movsxd rax, dword [rdi + 0x78]
lea rbp, str.NAV_UP_DOWN
imul rcx, rax, 0xf4240
mov qword [0x1800b8230], rcx
cmp byte [rdi + 0x153], r15b
je 0x18001d361
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
test rax, rax
je 0x18001d361
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 0x18001d32c
imul rax, rax, 0x64
jmp 0x18001d34a
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 [0x1800b8228]
cmp rcx, qword [0x1800b8230]
jge 0x18001d416
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 0xbc
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c68], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], r12
mov qword [0x1800a2c60], r15
mov dword [0x1800a2b88], 2
call fcn.18001f0a0
cmp dword [rax], r15d
je 0x18001d49b
cmp byte [rdi + 0x69], r15b
je 0x18001d49b
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
test rax, rax
je 0x18001d49b
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 0x18001d3e1
imul rax, rax, 0x64
jmp 0x18001d3ff
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 [0x1800b8228]
cmp rcx, qword [0x1800b8230]
jl 0x18001d49b
mov qword [0x1800b8228], rax
cmp byte [rdi + 0x68], r15b
je 0x18001d475
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 0xffffffff
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c60], rax
lea rax, str.HUD_FRONTEND_DEFAULT_SOUNDSET
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], r13
mov qword [0x1800a2c68], rbp
mov qword [0x1800a2c78], r15
mov dword [0x1800a2b88], 4
call fcn.18001f0a0
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x38]
mov rbx, qword [rsi]
mov rcx, rsi
test rax, rax
je 0x18001d48e
call qword [rbx + 0x38]
jmp 0x18001d491
call qword [rbx + 0x30]
lea rdx, [rax - 1]
mov rcx, rsi
call qword [rbx + 0x40]
mov eax, dword [r14]
cmp dword [0x1800b8238], eax
jle 0x18001d4da
lea rcx, [0x1800b8238]
call fcn.180056ac0
cmp dword [0x1800b8238], 0xffffffff
jne 0x18001d4da
lea rcx, [0x1800b8240]
call fcn.1800029a0
lea rcx, [0x1800b8238]
mov qword [0x1800b8248], r15
call fcn.180056a60
movsxd rax, dword [rdi + 0x78]
imul rcx, rax, 0xf4240
mov qword [0x1800b8248], rcx
cmp byte [rdi + 0x154], r15b
je 0x18001d556
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
test rax, rax
je 0x18001d556
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 0x18001d521
imul rax, rax, 0x64
jmp 0x18001d53f
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 [0x1800b8240]
cmp rcx, qword [0x1800b8248]
jge 0x18001d60b
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 0xbb
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c68], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], r12
mov qword [0x1800a2c60], r15
mov dword [0x1800a2b88], 2
call fcn.18001f0a0
cmp dword [rax], r15d
je 0x18001d69c
cmp byte [rdi + 0x69], r15b
je 0x18001d69c
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
test rax, rax
je 0x18001d69c
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 0x18001d5d6
imul rax, rax, 0x64
jmp 0x18001d5f4
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 [0x1800b8240]
cmp rcx, qword [0x1800b8248]
jl 0x18001d69c
mov qword [0x1800b8240], rax
cmp byte [rdi + 0x68], r15b
je 0x18001d66a
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 0xffffffff
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c60], rax
lea rax, str.HUD_FRONTEND_DEFAULT_SOUNDSET
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], r13
mov qword [0x1800a2c68], rbp
mov qword [0x1800a2c78], r15
mov dword [0x1800a2b88], 4
call fcn.18001f0a0
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
mov rdx, qword [rsi]
mov rcx, rsi
lea rbx, [rax - 1]
call qword [rdx + 0x38]
mov rbp, qword [rsi]
mov rcx, rsi
cmp rax, rbx
jae 0x18001d697
call qword [rbp + 0x38]
mov rcx, rsi
lea rdx, [rax + 1]
jmp 0x18001d699
xor edx, edx
call qword [rbp + 0x40]
mov eax, dword [r14]
cmp dword [0x1800b8250], eax
jle 0x18001d6db
lea rcx, [0x1800b8250]
call fcn.180056ac0
cmp dword [0x1800b8250], 0xffffffff
jne 0x18001d6db
lea rcx, [0x1800b8258]
call fcn.1800029a0
lea rcx, [0x1800b8250]
mov qword [0x1800b8260], r15
call fcn.180056a60
movsxd rax, dword [rdi + 0x7c]
lea rbp, str.NAV_LEFT_RIGHT
imul rcx, rax, 0xf4240
mov qword [0x1800b8260], rcx
cmp byte [rdi + 0x155], r15b
je 0x18001d75e
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
test rax, rax
je 0x18001d75e
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 0x18001d729
imul rax, rax, 0x64
jmp 0x18001d747
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 [0x1800b8258]
cmp rcx, qword [0x1800b8260]
jge 0x18001d813
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 0xae
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c68], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], r12
mov qword [0x1800a2c60], r15
mov dword [0x1800a2b88], 2
call fcn.18001f0a0
cmp dword [rax], r15d
je 0x18001d895
cmp byte [rdi + 0x69], r15b
je 0x18001d895
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
test rax, rax
je 0x18001d895
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 0x18001d7de
imul rax, rax, 0x64
jmp 0x18001d7fc
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 [0x1800b8258]
cmp rcx, qword [0x1800b8260]
jl 0x18001d895
mov qword [0x1800b8258], rax
cmp byte [rdi + 0x68], r15b
je 0x18001d872
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 0xffffffff
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c60], rax
lea rax, str.HUD_FRONTEND_DEFAULT_SOUNDSET
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], r13
mov qword [0x1800a2c68], rbp
mov qword [0x1800a2c78], r15
mov dword [0x1800a2b88], 4
call fcn.18001f0a0
mov rbx, qword [rsi]
mov rcx, rsi
call qword [rbx + 0x38]
mov rdx, rax
mov rcx, rsi
call qword [rbx + 0x28]
test rax, rax
je 0x18001d895
mov r8, qword [rax]
xor edx, edx
mov rcx, rax
call qword [r8 + 0x20]
mov eax, dword [r14]
cmp dword [0x1800b8268], eax
jle 0x18001d8d4
lea rcx, [0x1800b8268]
call fcn.180056ac0
cmp dword [0x1800b8268], 0xffffffff
jne 0x18001d8d4
lea rcx, [0x1800b8270]
call fcn.1800029a0
lea rcx, [0x1800b8268]
mov qword [0x1800b8278], r15
call fcn.180056a60
movsxd rax, dword [rdi + 0x7c]
imul rcx, rax, 0xf4240
mov qword [0x1800b8278], rcx
cmp byte [rdi + 0x156], r15b
je 0x18001d950
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
test rax, rax
je 0x18001d950
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 0x18001d91b
imul rax, rax, 0x64
jmp 0x18001d939
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 [0x1800b8270]
cmp rcx, qword [0x1800b8278]
jge 0x18001da05
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 0xaf
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c68], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], r12
mov qword [0x1800a2c60], r15
mov dword [0x1800a2b88], 2
call fcn.18001f0a0
cmp dword [rax], r15d
je 0x18001da8a
cmp byte [rdi + 0x69], r15b
je 0x18001da8a
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
test rax, rax
je 0x18001da8a
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 0x18001d9d0
imul rax, rax, 0x64
jmp 0x18001d9ee
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 [0x1800b8270]
cmp rcx, qword [0x1800b8278]
jl 0x18001da8a
mov qword [0x1800b8270], rax
cmp byte [rdi + 0x68], r15b
je 0x18001da64
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x50], 0xffffffff
mov rax, qword [rsp + 0x50]
mov qword [0x1800a2c60], rax
lea rax, str.HUD_FRONTEND_DEFAULT_SOUNDSET
mov qword [0x1800a2c70], rax
mov dword [0x1800a2b98], r15d
mov qword [0x1800b7fc8], r13
mov qword [0x1800a2c68], rbp
mov qword [0x1800a2c78], r15
mov dword [0x1800a2b88], 4
call fcn.18001f0a0
mov rbx, qword [rsi]
mov rcx, rsi
call qword [rbx + 0x38]
mov rdx, rax
mov rcx, rsi
call qword [rbx + 0x28]
test rax, rax
je 0x18001da8a
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8 + 0x20]
mov rbx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret