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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xd0
mov rax, qword [0x1800529c8]
xor rax, rsp
mov qword [rbp + 0x2f], rax
lea eax, [rcx + 0xc]
mov dword [rbp - 0x59], ecx
mov dword [rbp - 0x49], eax
mov rdi, rdx
mov ebx, dword [rbp - 0x49]
mov r15d, ecx
cmp ecx, eax
jae 0x18003a585
mov r12d, dword [rbp - 0x39]
xor esi, esi
mov r13d, dword [rbp - 0x35]
mov r14d, dword [rbp - 0x61]
mov dword [rbp - 0x31], ebx
lea eax, [r15 - 1]
lea rdx, [0x180000000]
cmp eax, 0x1b
ja case.0x18003a15b.6
mov ecx, dword [rdx + rax*4 + 0x3a5d4]
add rcx, rdx
jmp rcx
mov rdx, rdi
mov ecx, 0x9b
call fcn.18001b6b0
mov qword [rbp - 0x11], rax
jmp case.0x18003a15b.6
mov rdx, rdi
mov ecx, 0x9b
call fcn.18001b6b0
mov qword [rbp - 0x19], rax
jmp case.0x18003a15b.6
mov eax, dword [rdi + 0x3c]
mov dword [rbp - 0x21], eax
jmp case.0x18003a15b.6
mov rcx, qword [rdi + 0x28]
mov r14d, esi
mov dword [rbp - 0x61], esi
call qword [rdi + 0x20]
test al, al
je case.0x18003a15b.6
mov r13d, dword [rbp - 0x61]
xor edx, edx
mov r12d, dword [rbp - 0x29]
mov esi, edx
mov ebx, dword [rbp - 0x2d]
movzx r15d, byte [rbp - 0x69]
lea r14d, [rdx + 0xb]
cmp esi, 0xa
ja case.default.0x18003a1de
lea r8, [0x180000000]
mov eax, esi
mov ecx, dword [r8 + rax*4 + 0x3a644]
add rcx, r8
jmp rcx
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r13d, eax
sub r13d, ebx
xor edx, edx
jmp case.default.0x18003a1de
mov dword [rbp + 0x29], 0x340032
jmp case.default.0x18003a1de
mov eax, 0x74
mov dword [rbp - 1], 0x740068
mov word [rbp + 3], ax
jmp case.default.0x18003a1de
mov eax, 0x6e
mov dword [rbp + 0x21], 0x2f0074
mov word [rbp + 0x1f], ax
mov dword [rbp + 0x25], 0x380039
jmp case.default.0x18003a1de
movzx eax, r15b
test r12d, r12d
mov ecx, edx
cmovne ecx, eax
mov eax, 0x10624dd3
mul r13d
movzx r15d, cl
mov r13d, edx
shr r13d, 6
test cl, cl
je 0x18003a25c
mov ecx, r12d
call qword [sym.imp.WINMM.dll_mciGetCreatorTask]
call qword [rdi + 0x50]
xor edx, edx
jmp case.default.0x18003a1de
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ebx, eax
xor edx, edx
jmp case.default.0x18003a1de
mov eax, 0x6c
mov dword [rbp + 0xf], 0x690061
mov word [rbp + 0x13], ax
mov dword [rbp + 0x15], 0x72002e
jmp case.default.0x18003a1de
mov word [rbp + 0x2d], dx
mov r15b, 1
jmp case.default.0x18003a1de
mov eax, 0x70
mov dword [rbp + 7], 0x2f003a
mov word [rbp + 5], ax
mov dword [rbp + 0xb], 0x6d002f
jmp case.default.0x18003a1de
xor r9d, r9d
xor edx, edx
mov rcx, rdi
lea r8d, [r9 + 5]
call fcn.1800349f0
lea rcx, [rbp - 1]
call qword [sym.imp.WINMM.dll_mciGetDeviceIDW]
mov r12d, eax
xor edx, edx
jmp case.default.0x18003a1de
mov eax, 0x75
mov dword [rbp + 0x1b], 0x63002f
mov word [rbp + 0x19], ax
inc esi
sub r14, 1
jne 0x18003a1c1
mov dword [rbp - 0x61], r13d
xor esi, esi
mov r13d, dword [rbp - 0x35]
mov r14d, dword [rbp - 0x61]
mov byte [rbp - 0x69], r15b
mov r15d, dword [rbp - 0x59]
mov dword [rbp - 0x2d], ebx
mov ebx, dword [rbp - 0x31]
mov dword [rbp - 0x29], r12d
mov r12d, dword [rbp - 0x39]
jmp case.0x18003a15b.6
mov esi, 0xed
nop word [rax + rax]
lea eax, [rsi - 0xed]
cmp eax, 0xa
ja case.0x18003a339.243
mov ecx, dword [rdx + rax*4 + 0x3a670]
add rcx, rdx
jmp rcx
mov dword [rdi + 0xc], r12d
jmp case.0x18003a339.243
mov r12d, dword [rdi + 0xc]
mov rdx, rdi
mov r13d, dword [rdi + 0x3c]
mov ecx, 0x104
mov dword [rbp - 0x39], r12d
mov dword [rbp - 0x35], r13d
call fcn.180035370
test eax, eax
je case.0x18003a339.240
jmp case.0x18003a339.243
xor r8d, r8d
mov dword [rdi + 0x3c], r13d
mov rcx, rdi
lea edx, [r8 + 0x1f]
call fcn.180036510
test eax, eax
je 0x18003a3ce
mov rdx, rdi
mov ecx, 0x3b
call fcn.180017660
test eax, eax
je 0x18003a3ce
mov eax, dword [rdi + 0x28]
lea rdx, [rbp - 0x41]
mov dword [rbp - 0x59], eax
lea rcx, [rbp - 0x61]
mov eax, dword [rdi + 0x24]
mov r9, rdi
mov dword [rbp - 0x61], eax
mov r8d, 0xe2
lea rax, [0x180033af0]
mov qword [rbp - 0x41], rax
lea rax, [rbp - 0x59]
mov qword [rsp + 0x20], rax
call fcn.180031dc0
jmp case.0x18003a339.243
mov esi, 0xf6
jmp case.0x18003a339.243
mov rdx, rdi
mov dword [rdi + 0xc], r12d
mov ecx, 0x3b
mov dword [rdi + 0x3c], r13d
call fcn.180017660
test eax, eax
jne case.0x18003a339.243
xor esi, esi
lea r15d, [rax + 4]
jmp case.0x18003a15b.6
mov edx, 0xe1
mov rcx, rdi
call fcn.18000c9b0
test eax, eax
jne case.0x18003a339.243
mov esi, 0xf0
mov dword [rdi + 0xc], r12d
mov dword [rdi + 0x3c], r13d
jmp case.0x18003a339.243
mov rdx, rdi
mov ecx, 0x104
call fcn.180035370
test eax, eax
je 0x18003a43b
mov rdx, rdi
mov ecx, 0x3b
call fcn.180017660
test eax, eax
jne case.0x18003a339.243
mov esi, 0xf2
inc esi
cmp esi, 0xf8
jae case.0x18003a339.246
lea rdx, [0x180000000]
jmp 0x18003a320
mov eax, dword [rdi + 0x28]
mov dword [rbp - 0x59], eax
mov eax, dword [rdi + 0x24]
mov dword [rbp - 0x61], eax
lea rax, [0x1800337f0]
jmp 0x18003a47e
mov eax, dword [rdi + 0x28]
mov dword [rbp - 0x59], eax
mov eax, dword [rdi + 0x24]
mov dword [rbp - 0x61], eax
lea rax, [0x1800330e0]
mov qword [rbp - 0x41], rax
lea rdx, [rbp - 0x41]
lea rax, [rbp - 0x59]
mov r9, rdi
mov r8d, 0xe2
mov qword [rsp + 0x20], rax
lea rcx, [rbp - 0x61]
call fcn.180031dc0
xor esi, esi
lea r15d, [rsi + 3]
jmp case.0x18003a15b.6
mov rdx, qword [0x180052aa8]
lea r8, [rbp - 0x51]
mov ecx, 0x2c
mov byte [rbp - 0x51], 1
call fcn.180010bd0
mov r8, rdi
mov edx, 0x4f
xor ecx, ecx
call fcn.180011a10
test al, al
jne case.0x18003a15b.6
mov r8, qword [0x180052aa8]
xor edx, edx
mov ecx, 0x10b
call fcn.1800164c0
mov eax, esi
jmp 0x18003a587
mov rcx, qword [0x180052aa8]
mov edx, 0x55
call fcn.180012720
test al, al
je 0x18003a4ef
jmp case.0x18003a15b.6
mov rax, qword [rbp - 0x19]
lea rdx, [rbp - 9]
mov r9, rdi
mov qword [rsp + 0x20], rsi
mov r8d, 0xdb
lea rcx, [rbp - 0x41]
mov rax, qword [rdi + rax*8]
mov qword [rbp - 0x41], rax
mov rax, qword [rbp - 0x11]
mov dword [rbp - 9], eax
call fcn.180031dc0
jmp case.0x18003a15b.6
mov eax, dword [rdi + 0xc]
mov dword [rbp - 0x25], eax
jmp case.0x18003a15b.6
mov ecx, 0x13
nop word [rax + rax]
mov eax, ecx
sub eax, 0x12
je 0x18003a585
cmp eax, 1
jne 0x18003a56d
mov eax, dword [rbp - 0x25]
mov ebx, esi
mov dword [rdi + 0xc], eax
mov eax, dword [rbp - 0x21]
mov dword [rdi + 0x3c], eax
mov dword [rbp - 0x31], ebx
dec ecx
cmp ecx, 0x11
ja 0x18003a550
inc r15d
mov dword [rbp - 0x59], r15d
cmp r15d, dword [rbp - 0x49]
jb 0x18003a13d
mov eax, ebx
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.18003bee0
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov eax, 1
jmp 0x18003a587
mov r8, qword [0x180052aa8]
xor edx, edx
mov ecx, 0x10b
call fcn.1800164c0
mov eax, r14d
jmp 0x18003a587