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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x58]
sub rsp, 0x130
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
mov rax, qword [0x1800a8008]
xor rax, rsp
mov qword [rbp - 0x68], rax
mov byte [0x1800c823a], 0
xor ebx, ebx
mov qword [rsp + 0x78], rbx
mov qword [rbp - 0x78], rbx
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], bl
lea r8d, [rbx + 0xf]
lea rdx, str.SELECT_CAR_TYPE
lea rcx, [rsp + 0x78]
call fcn.18001bf00
nop
mov r13, qword [rbp - 0x70]
mov r15, qword [rbp - 0x78]
mov r12, qword [rsp + 0x78]
movss xmm6, dword [0x18009a260]
movss xmm10, dword [0x18009a29c]
movss xmm11, dword [0x18009a288]
movsd xmm8, qword [0x18009a220]
movsd xmm7, qword [0x18009a240]
movss xmm9, dword [0x18009a290]
movsd xmm12, qword [0x18009a228]
movss xmm13, dword [0x18009a284]
movss xmm14, dword [0x18009a204]
mov r14d, 0x96
movabs rbx, 0x5f4b6931816e599b
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea esi, [r14 + rax]
mov rcx, rbx
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativeInit_unsigned_long_long_unsigned___int64__]
xor r14d, r14d
mov ecx, r14d
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
call qword [sym.imp.ScriptHookV.dll_unsigned_long_long_unsigned___int64_____ptr64___cdecl_nativeCall_void_]
nop dword [rax]
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r14
lea rdi, [rsp + 0x78]
cmp r13, 0x10
cmovae rdi, r12
cmp r15, 0x10
jae 0x180039125
movups xmm0, xmmword [rdi]
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x70], 0xf
jmp 0x1800391a1
mov rbx, r15
or rbx, 0xf
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
cmova rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x180039179
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180039804
mov rcx, rax
call fcn.18004ffe0
mov rcx, rax
test rax, rax
je 0x1800397fe
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x180039188
test rcx, rcx
je 0x180039185
call fcn.18004ffe0
jmp 0x180039188
mov rax, r14
mov qword [rsp + 0x58], rax
lea r8, [r15 + 1]
mov rdx, rdi
mov rcx, rax
call fcn.180053c40
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x68], r15
mov byte [rsp + 0x38], 1
mov byte [rsp + 0x30], r14b
movss dword [rsp + 0x28], xmm6
movaps xmm3, xmm10
movaps xmm2, xmm11
lea rcx, [rsp + 0x58]
call fcn.180038230
mov ebx, r14d
lea rdi, str.Super_r__
mov eax, dword [0x1800c8a74]
cmp ebx, eax
je 0x18003924c
mov rdx, qword [rdi]
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], 0xf
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], r14b
jne 0x180039200
lea rcx, [rsp + 0x58]
call fcn.18001bf00
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm8
addsd xmm0, xmm7
cvtpd2ps xmm3, xmm0
mov byte [rsp + 0x38], r14b
mov byte [rsp + 0x30], r14b
movss dword [rsp + 0x28], xmm9
movaps xmm2, xmm6
lea rcx, [rsp + 0x58]
call fcn.180038230
mov eax, dword [0x1800c8a74]
inc ebx
add rdi, 8
cmp ebx, 0xc
jl 0x1800391d8
cdqe
lea rdx, str.Super_r__
mov rdx, qword [rdx + rax*8]
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], 0xf
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rdx + r8], r14b
jne 0x180039280
lea rcx, [rsp + 0x58]
call fcn.18001bf00
movd xmm0, dword [0x1800c8a74]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm12
addsd xmm0, xmm7
cvtpd2ps xmm3, xmm0
mov byte [rsp + 0x38], r14b
mov byte [rsp + 0x30], 1
movss dword [rsp + 0x28], xmm13
movaps xmm2, xmm14
lea rcx, [rsp + 0x58]
call fcn.180038230
call fcn.180038ec0
xor ecx, ecx
call qword [sym.imp.ScriptHookV.dll_void___cdecl_scriptWait_unsigned_long_int_]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, esi
jb 0x1800390f0
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x1800c7710]
add ecx, 0x1388
cmp eax, ecx
jae 0x180039305
cmp dword [0x1800c771c], r14d
je 0x180039343
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x1800c7190]
add ecx, 0x1388
cmp eax, ecx
jae 0x180039324
cmp dword [0x1800c719c], r14d
je 0x180039343
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x1800c72c0]
add ecx, 0x1388
cmp eax, ecx
jae 0x180039348
cmp dword [0x1800c72cc], r14d
jne 0x180039348
mov sil, 1
jmp 0x18003934b
xor sil, sil
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x1800c76c0]
add ecx, 0x1388
cmp eax, ecx
jae 0x18003936a
cmp dword [0x1800c76cc], r14d
je 0x180039389
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x1800c7140]
add ecx, 0x1388
cmp eax, ecx
jae 0x18003938e
cmp dword [0x1800c714c], r14d
jne 0x18003938e
mov dil, 1
jmp 0x180039391
xor dil, dil
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x1800c7740]
add ecx, 0x1388
cmp eax, ecx
jae 0x1800393b0
cmp dword [0x1800c774c], r14d
je 0x1800393cf
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x1800c7320]
add ecx, 0x1388
cmp eax, ecx
jae 0x1800393d3
cmp dword [0x1800c732c], r14d
jne 0x1800393d3
mov bl, 1
jmp 0x1800393d5
xor bl, bl
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x1800c76e0]
add ecx, 0x1388
cmp eax, ecx
jae 0x1800393f4
cmp dword [0x1800c76ec], r14d
je 0x180039413
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x1800c7340]
add ecx, 0x1388
cmp eax, ecx
jae 0x180039417
cmp dword [0x1800c734c], r14d
jne 0x180039417
mov al, 1
jmp 0x180039419
xor al, al
test sil, sil
je 0x18003949a
movabs rcx, 0x67c540aa08e4a6f5
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativeInit_unsigned_long_long_unsigned___int64__]
xor ebx, ebx
mov qword [rsp + 0x50], rbx
mov dword [rsp + 0x50], 0xffffffff
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
lea rcx, str.NAV_UP_DOWN
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
lea rcx, str.HUD_FRONTEND_DEFAULT_SOUNDSET
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
mov ecx, ebx
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
call qword [sym.imp.ScriptHookV.dll_unsigned_long_long_unsigned___int64_____ptr64___cdecl_nativeCall_void_]
movsxd rax, dword [0x1800c8a74]
cmp eax, 0xb
ja case.default.0x18003948d
lea rdi, [0x180000000]
mov ecx, dword [rdi + rax*4 + 0x3980c]
add rcx, rdi
jmp rcx
mov r14d, 0xc8
jmp 0x1800390be
test dil, dil
jne 0x18003970f
test bl, bl
je 0x180039516
movabs rcx, 0x67c540aa08e4a6f5
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativeInit_unsigned_long_long_unsigned___int64__]
xor ebx, ebx
mov qword [rsp + 0x50], rbx
mov dword [rsp + 0x50], 0xffffffff
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
lea rcx, str.NAV_UP_DOWN
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
lea rcx, str.HUD_FRONTEND_DEFAULT_SOUNDSET
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
mov ecx, ebx
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
call qword [sym.imp.ScriptHookV.dll_unsigned_long_long_unsigned___int64_____ptr64___cdecl_nativeCall_void_]
mov eax, dword [0x1800c8a74]
test eax, eax
mov ecx, 0xc
cmove eax, ecx
dec eax
mov dword [0x1800c8a74], eax
jmp 0x1800390b8
test al, al
movabs rbx, 0x5f4b6931816e599b
je 0x1800390c8
movabs rcx, 0x67c540aa08e4a6f5
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativeInit_unsigned_long_long_unsigned___int64__]
xor ebx, ebx
mov qword [rsp + 0x50], rbx
mov dword [rsp + 0x50], 0xffffffff
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
lea rcx, str.NAV_UP_DOWN
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
lea rcx, str.HUD_FRONTEND_DEFAULT_SOUNDSET
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
mov ecx, ebx
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
call qword [sym.imp.ScriptHookV.dll_unsigned_long_long_unsigned___int64_____ptr64___cdecl_nativeCall_void_]
mov eax, dword [0x1800c8a74]
inc eax
cmp eax, 0xc
cmove eax, ebx
mov dword [0x1800c8a74], eax
jmp 0x1800390b8
mov dword [0x1800aaa24], 0x14
movabs rcx, 0x202709f4c58a0424
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativeInit_unsigned_long_long_unsigned___int64__]
lea rcx, str.STRING
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
call qword [sym.imp.ScriptHookV.dll_unsigned_long_long_unsigned___int64_____ptr64___cdecl_nativeCall_void_]
movabs rcx, 0x5f68520888e69014
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativeInit_unsigned_long_long_unsigned___int64__]
lea rcx, str.trap_final
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
call qword [sym.imp.ScriptHookV.dll_unsigned_long_long_unsigned___int64_____ptr64___cdecl_nativeCall_void_]
movabs rcx, 0x2ed7843f8f801023
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativeInit_unsigned_long_long_unsigned___int64__]
mov rcx, rbx
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
mov qword [rsp + 0x50], rbx
mov dword [rsp + 0x50], 1
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
call qword [sym.imp.ScriptHookV.dll_unsigned_long_long_unsigned___int64_____ptr64___cdecl_nativeCall_void_]
mov byte [0x1800c823a], 1
jmp 0x180039761
mov dword [0x1800aaa24], 0x13
mov byte [0x1800c823a], 1
jmp 0x180039761
mov dword [0x1800aaa24], 0x12
mov byte [0x1800c823a], 1
jmp 0x180039761
mov dword [0x1800aaa24], 0xd
mov byte [0x1800c823a], 1
jmp 0x180039761
mov dword [0x1800aaa24], 0x10
mov byte [0x1800c823a], 1
jmp 0x180039761
mov dword [0x1800aaa24], 1
mov byte [0x1800c823a], 1
jmp 0x180039761
mov dword [0x1800aaa24], 2
mov byte [0x1800c823a], 1
jmp 0x180039761
mov dword [0x1800aaa24], 0x19
mov byte [0x1800c823a], 1
jmp 0x180039761
mov dword [0x1800aaa24], 0x18
mov byte [0x1800c823a], 1
jmp 0x180039761
mov dword [0x1800aaa24], 0xe
mov byte [0x1800c823a], 1
jmp 0x180039761
mov dword [0x1800aaa24], 0x29
mov byte [0x1800c823a], 1
jmp 0x180039761
mov dword [0x1800aaa24], 0xb
mov byte [0x1800c823a], 1
jmp 0x180039761
movabs rcx, 0x67c540aa08e4a6f5
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativeInit_unsigned_long_long_unsigned___int64__]
xor ebx, ebx
mov qword [rsp + 0x50], rbx
mov dword [rsp + 0x50], 0xffffffff
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
lea rcx, str.NAV_UP_DOWN
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
lea rcx, str.HUD_FRONTEND_DEFAULT_SOUNDSET
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
mov ecx, ebx
call qword [sym.imp.ScriptHookV.dll_void___cdecl_nativePush64_unsigned_long_long_unsigned___int64__]
call qword [sym.imp.ScriptHookV.dll_unsigned_long_long_unsigned___int64_____ptr64___cdecl_nativeCall_void_]
mov byte [0x1800c823b], bl
cmp r13, 0x10
jb 0x18003979b
lea rdx, [r13 + 1]
mov rax, r12
cmp rdx, 0x1000
jb 0x180039793
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800397f8
mov rcx, r12
call fcn.18005001c
mov rcx, qword [rbp - 0x68]
xor rcx, rsp
call fcn.18004ffc0
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.180057d6c
nop
call fcn.180057d6c
nop
call fcn.180015590
int3