Function at 0x14007b9c0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x14021f740]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov rdi, rcx
mov r10d, dword [rcx + 0x38]
lea ebx, [r10 + 8]
movzx r11d, byte [rcx + 0xe8]
lea r14, [rcx + 0xd0]
test r11b, r11b
je 0x14007babf
mov rsi, qword [r14]
cmp ebx, dword [rsi + 0x10]
jb 0x14007ba1a
lea eax, [rbx + 2]
cmp eax, dword [rsi + 0x14]
jbe 0x14007ba30
mov edx, ebx
mov rcx, rsi
call fcn.140121da0
mov r10d, dword [rdi + 0x38]
movzx r11d, byte [rdi + 0xe8]
sub ebx, dword [rsi + 0x10]
mov rdx, qword [rsi + 8]
lea eax, [rbx + 1]
movzx r9d, byte [rax + rdx]
shl r9d, 8
movzx eax, byte [rbx + rdx]
or r9d, eax
lea r15, [rdi + 0x88]
mov r12, r14
mov rsi, r15
mov dword [rdi + 0x3c], r9d
lea ebx, [r10 + 0x14]
test r11b, r11b
je 0x14007baed
mov rsi, qword [r14]
cmp ebx, dword [rsi + 0x10]
jb 0x14007ba78
lea eax, [rbx + 1]
cmp eax, dword [rsi + 0x14]
jbe 0x14007ba8e
mov edx, ebx
mov rcx, rsi
call fcn.140121da0
mov r10d, dword [rdi + 0x38]
movzx r11d, byte [rdi + 0xe8]
sub ebx, dword [rsi + 0x10]
mov rax, qword [rsi + 8]
movzx eax, byte [rbx + rax]
mov dword [rdi + 0xf0], eax
lea edx, [r10 + 0x15]
test r11b, r11b
je 0x14007bafd
mov rcx, qword [r14]
cmp edx, dword [rcx + 0x10]
jb 0x14007bab8
lea eax, [rdx + 1]
cmp eax, dword [rcx + 0x14]
jbe 0x14007bafd
call fcn.140121da0
jmp 0x14007bafd
lea rsi, [rcx + 0x88]
sub ebx, dword [rsi + 8]
mov rdx, qword [rsi]
lea eax, [rbx + 1]
movzx r9d, byte [rax + rdx]
shl r9d, 8
movzx eax, byte [rbx + rdx]
or r9d, eax
mov r12, r14
mov dword [rcx + 0x3c], r9d
mov r15, rsi
lea ebx, [r10 + 0x14]
sub ebx, dword [rsi + 8]
mov rax, qword [rsi]
movzx ecx, byte [rbx + rax]
mov dword [rdi + 0xf0], ecx
mov r10d, dword [rdi + 0x38]
lea ebx, [r10 + 0x16]
movzx r11d, byte [rdi + 0xe8]
test r11b, r11b
je 0x14007bbe0
mov rsi, qword [r12]
cmp ebx, dword [rsi + 0x10]
jb 0x14007bb27
lea eax, [rbx + 2]
cmp eax, dword [rsi + 0x14]
jbe 0x14007bb3d
mov edx, ebx
mov rcx, rsi
call fcn.140121da0
mov r10d, dword [rdi + 0x38]
movzx r11d, byte [rdi + 0xe8]
sub ebx, dword [rsi + 0x10]
mov rdx, qword [rsi + 8]
lea eax, [rbx + 1]
movzx r9d, byte [rax + rdx]
shl r9w, 8
movzx eax, byte [rbx + rdx]
or r9w, ax
mov word [rdi + 0x182], r9w
lea ebx, [r10 + 0x1e]
test r11b, r11b
je 0x14007bc08
mov rsi, qword [r14]
cmp ebx, dword [rsi + 0x10]
jb 0x14007bb7e
lea eax, [rbx + 2]
cmp eax, dword [rsi + 0x14]
jbe 0x14007bb94
mov edx, ebx
mov rcx, rsi
call fcn.140121da0
mov r10d, dword [rdi + 0x38]
movzx r11d, byte [rdi + 0xe8]
sub ebx, dword [rsi + 0x10]
mov rdx, qword [rsi + 8]
lea eax, [rbx + 1]
movzx r14d, byte [rax + rdx]
shl r14w, 8
movzx eax, byte [rbx + rdx]
or r14w, ax
lea ebx, [r10 + 0x20]
test r11b, r11b
je 0x14007bc2e
mov rsi, qword [rdi + 0xd0]
cmp ebx, dword [rsi + 0x10]
jb 0x14007bbcd
lea eax, [rbx + 2]
cmp eax, dword [rsi + 0x14]
jbe 0x14007bbd7
mov edx, ebx
mov rcx, rsi
call fcn.140121da0
sub ebx, dword [rsi + 0x10]
mov rdx, qword [rsi + 8]
jmp 0x14007bc3b
sub ebx, dword [r15 + 8]
mov rdx, qword [r15]
lea eax, [rbx + 1]
movzx r9d, byte [rax + rdx]
shl r9w, 8
movzx eax, byte [rbx + rdx]
or r9w, ax
mov word [rdi + 0x182], r9w
lea ebx, [r10 + 0x1e]
sub ebx, dword [rdi + 0x90]
mov rdx, qword [rdi + 0x88]
lea eax, [rbx + 1]
movzx r14d, byte [rax + rdx]
shl r14w, 8
movzx eax, byte [rbx + rdx]
or r14w, ax
lea ebx, [r10 + 0x20]
sub ebx, dword [rdi + 0x90]
mov rdx, qword [rdi + 0x88]
lea eax, [rbx + 1]
movzx r9d, byte [rax + rdx]
movzx eax, byte [rbx + rdx]
shl r9d, 8
or r9d, eax
movzx ebx, r14w
mov r12d, r9d
sub r12d, ebx
mov esi, r9d
sub rsi, rbx
mov rcx, rsi
call fcn.14016cd8c
mov r15, rax
mov edx, dword [rdi + 0x38]
add edx, ebx
mov r9, rax
mov r8d, r12d
mov rcx, rdi
call fcn.140017130
lea rcx, [rsi + r15]
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x40], xmm1
cmp r15, rcx
jne 0x14007bca2
mov qword [rbp - 0x38], 0xf
mov byte [rbp - 0x50], 0
jmp 0x14007bcb1
mov r8, rsi
mov rdx, r15
lea rcx, [rbp - 0x50]
call fcn.1400067d0
lea rcx, [rdi + 0x18]
lea rdx, [rbp - 0x50]
call fcn.140013c30
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x14007bcfc
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007bcf7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007bcf7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14016cca4
mov rcx, r15
call fcn.14016cca4
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], 6
mov qword [rbp - 0x18], 0xf
mov eax, dword [str.Header]
mov dword [rbp - 0x30], eax
movzx eax, word [0x140184b54]
mov word [rbp - 0x2c], ax
mov byte [rbp - 0x2a], 0
lea r9, [rbp - 0x30]
mov r8d, 0x22
mov edx, dword [rdi + 0x38]
mov rcx, rdi
call fcn.140018170
mov rsi, rax
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x14007bd89
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007bd84
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007bd84
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14016cca4
xor ebx, ebx
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], 0xf
mov byte [rbp - 0x30], bl
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], 9
mov qword [rbp - 0x38], 0xf
movsd xmm0, qword [str.Signature]
movsd qword [rbp - 0x50], xmm0
movzx eax, byte [0x140184b60]
mov byte [rbp - 0x48], al
mov byte [rbp - 0x47], bl
lea r9, [rbp - 0x50]
lea r8d, [rbx + 4]
mov edx, dword [rdi + 0x38]
mov rcx, rsi
call fcn.140016f40
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x14007be1d
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007be18
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007be18
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14016cca4
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], 4
mov qword [rbp - 0x38], 0xf
mov dword [rbp - 0x50], 0x657a6953
mov byte [rbp - 0x4c], 0
mov edx, dword [rdi + 0x38]
add edx, 8
lea r9, [rbp - 0x50]
mov r8d, 2
mov rcx, rsi
call fcn.140018240
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x14007be96
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007be91
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007be91
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14016cca4
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], 0xb
mov qword [rbp - 0x38], 0xf
movsd xmm0, qword [str.Track_count]
movsd qword [rbp - 0x50], xmm0
movzx eax, word [0x140189c60]
mov word [rbp - 0x48], ax
movzx eax, byte [0x140189c62]
mov byte [rbp - 0x46], al
mov byte [rbp - 0x45], 0
mov edx, dword [rdi + 0x38]
add edx, 0x14
lea r9, [rbp - 0x50]
mov r8d, 1
mov rcx, rsi
call fcn.140018240
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x14007bf2a
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007bf25
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007bf25
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14016cca4
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x38], 0xf
mov ecx, 0x20
call fcn.14016cc68
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x40], 0x15
mov qword [rbp - 0x38], 0x1f
movups xmm0, xmmword [str.Drum_instrument_count]
movups xmmword [rax], xmm0
mov ecx, dword [0x140189c78]
mov dword [rax + 0x10], ecx
movzx ecx, byte [0x140189c7c]
mov byte [rax + 0x14], cl
mov byte [rax + 0x15], 0
mov edx, dword [rdi + 0x38]
add edx, 0x15
lea r9, [rbp - 0x50]
mov r8d, 1
mov rcx, rsi
call fcn.140018240
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x14007bfd3
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007bfce
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007bfce
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14016cca4
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x38], 0xf
mov ecx, 0x20
call fcn.14016cc68
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x40], 0x18
mov qword [rbp - 0x38], 0x1f
movups xmm0, xmmword [str.Associated_Sample_Set_ID]
movups xmmword [rax], xmm0
movsd xmm0, qword [0x140185298]
movsd qword [rax + 0x10], xmm0
mov byte [rax + 0x18], 0
mov edx, dword [rdi + 0x38]
add edx, 0x16
lea r9, [rbp - 0x50]
mov r8d, 1
mov rcx, rsi
call fcn.140018240
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x14007c076
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007c071
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007c071
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14016cca4
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x38], 0xf
mov ecx, 0x20
call fcn.14016cc68
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x40], 0x12
mov qword [rbp - 0x38], 0x1f
movups xmm0, xmmword [str.Song_title_Pointer]
movups xmmword [rax], xmm0
movzx ecx, word [0x140189c90]
mov word [rax + 0x10], cx
mov byte [rax + 0x12], 0
mov edx, dword [rdi + 0x38]
add edx, 0x1e
lea r9, [rbp - 0x50]
mov r8d, 2
mov rcx, rsi
call fcn.140018240
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x14007c117
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007c112
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007c112
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14016cca4
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x40], xmm1
mov r8d, 0x14
lea rdx, str.Drumkit_Data_Pointer
lea rcx, [rbp - 0x50]
call fcn.1400067d0
nop
mov edx, dword [rdi + 0x38]
add edx, 0x20
lea r9, [rbp - 0x50]
mov r8d, 2
mov rcx, rsi
call fcn.140018240
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x14007c194
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007c18f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007c18f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14016cca4
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], 0xe
mov qword [rbp - 0x18], 0xf
movsd xmm0, qword [str.Track_Pointers]
movsd qword [rbp - 0x30], xmm0
mov eax, dword [0x140187af0]
mov dword [rbp - 0x28], eax
movzx eax, word [0x140187af4]
mov word [rbp - 0x24], ax
mov byte [rbp - 0x22], 0
mov r8d, dword [rdi + 0xf0]
add r8d, r8d
mov edx, dword [rdi + 0x38]
add edx, 0x22
lea r9, [rbp - 0x30]
mov rcx, rdi
call fcn.140018170
mov r15, rax
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x14007c22d
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007c228
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007c228
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14016cca4
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], 0xf
mov byte [rbp - 0x30], 0
cmp dword [rdi + 0xf0], 0
jbe 0x14007c2f2
mov esi, ebx
nop dword [rax]
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], 0xd
mov qword [rbp - 0x38], 0xf
movsd xmm0, qword [str.Track_Pointer]
movsd qword [rbp - 0x50], xmm0
mov eax, dword [0x140187b00]
mov dword [rbp - 0x48], eax
movzx eax, byte [0x140187b04]
mov byte [rbp - 0x44], al
mov byte [rbp - 0x43], 0
mov edx, dword [rdi + 0x38]
add edx, 0x22
add edx, esi
lea r9, [rbp - 0x50]
mov r8d, 2
mov rcx, r15
call fcn.140018240
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x14007c2e1
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007c2dc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007c374
call fcn.14016cca4
inc ebx
add esi, 2
cmp ebx, dword [rdi + 0xf0]
jb 0x14007c250
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], 9
mov qword [rbp - 0x38], 0xf
movsd xmm0, qword [str.Song_Name]
movsd qword [rbp - 0x50], xmm0
movzx eax, byte [0x140189ca0]
mov byte [rbp - 0x48], al
mov byte [rbp - 0x47], 0
movzx edx, r14w
add edx, dword [rdi + 0x38]
lea r9, [rbp - 0x50]
mov r8d, r12d
mov rcx, rdi
call fcn.140018170
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x14007c380
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007c37b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007c37b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14016cca4
mov edx, 0x30
mov rcx, rdi
call fcn.14002b3a0
mov al, 1
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.14016cd40
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret