Function at 0x14009ea90
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push rbx
push rsi
push r14
sub rsp, 0xd0
mov rax, qword [0x14011f010]
xor rax, rsp
mov qword [rsp + 0xc8], rax
mov rsi, rdx
mov rbx, rcx
lea rdx, str.CWaveFile::Open
mov r8d, 0x29
lea rcx, str._s__d
call fcn.14004c3d0
xor r14d, r14d
mov qword [rbx + 0xa0], 1
lea rdx, str.CWaveFile::Open
lea rcx, str._s__d
lea r8d, [r14 + 0x2f]
call fcn.14004c3d0
test rsi, rsi
jne 0x14009eb18
lea r8d, [r14 + 0x32]
lea rdx, str.CWaveFile::Open
lea rcx, str._s__d
call fcn.14004c3d0
mov eax, 0x80070057
jmp 0x14009ee89
mov rcx, qword [rbx]
mov qword [rsp + 0x108], rdi
test rcx, rcx
je 0x14009eb30
call fcn.1400a404c
mov qword [rbx], r14
mov r8d, 0x3b
mov qword [rbx + 8], r14
lea rdx, str.CWaveFile::Open
lea rcx, str._s__d
call fcn.14004c3d0
lea r8, [0x1400e47d0]
mov rdx, rsi
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_1.dll_FindResourceW]
mov rdi, rax
test rax, rax
jne 0x14009eb9e
lea r8d, [rax + 0x44]
lea rdx, str.CWaveFile::Open
lea rcx, str._s__d
call fcn.14004c3d0
lea r8, [0x1400f2978]
mov rdx, rsi
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_1.dll_FindResourceW]
mov rdi, rax
test rax, rax
jne 0x14009eb9e
lea r8d, [rax + 0x47]
jmp 0x14009ebf5
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleW]
mov rcx, rax
mov rdx, rdi
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_LoadResource]
mov rsi, rax
test rax, rax
jne 0x14009ebc0
lea r8d, [rax + 0x4e]
jmp 0x14009ebf5
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleW]
mov rcx, rax
mov rdx, rdi
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_SizeofResource]
mov edi, eax
test eax, eax
jne 0x14009ebe0
lea r8d, [rax + 0x54]
jmp 0x14009ebf5
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_LockResource]
mov rsi, rax
test rax, rax
jne 0x14009ec12
lea r8d, [rax + 0x5a]
lea rdx, str.CWaveFile::Open
lea rcx, str._s__d
call fcn.14004c3d0
mov eax, 0x80004005
jmp 0x14009ee81
mov rcx, rdi
mov qword [rsp + 0x100], rbp
call fcn.1400a4688
mov qword [rbx + 0xc0], rax
test rax, rax
jne 0x14009ec4f
lea r8d, [rax + 0x61]
lea rdx, str.CWaveFile::Open
lea rcx, str._s__d
call fcn.14004c3d0
mov eax, 0x8007000e
jmp 0x14009ee79
mov r8, rdi
mov rdx, rsi
mov rcx, rax
call fcn.1400aaba0
xor edx, edx
lea rcx, [rsp + 0x30]
lea r8d, [rdx + 0x64]
call fcn.1400aa8f0
mov rax, qword [rbx + 0xc0]
lea rdx, [rsp + 0x30]
mov r8d, 0x10000
mov qword [rsp + 0x50], rax
xor ecx, ecx
mov dword [rsp + 0x34], 0x204d454d
mov dword [rsp + 0x4c], edi
call qword [sym.imp.api_ms_win_mm_misc_l1_1_0.dll_mmioOpenW]
mov r8d, 0x6d
lea rdx, str.CWaveFile::Open
lea rcx, str._s__d
mov qword [rbx + 8], rax
call fcn.14004c3d0
mov rcx, qword [rbx + 8]
lea rdx, [rbx + 0x24]
xor r9d, r9d
mov qword [rbx], r14
xor r8d, r8d
call qword [sym.imp.api_ms_win_mm_misc_l1_1_0.dll_mmioDescend]
test eax, eax
jne 0x14009ee4f
cmp dword [rbx + 0x24], 0x46464952
jne 0x14009ee4f
cmp dword [rbx + 0x2c], 0x45564157
jne 0x14009ee4f
mov rcx, qword [rbx + 8]
lea r9d, [rax + 0x10]
lea r8, [rbx + 0x24]
mov dword [rsp + 0xb0], 0x20746d66
lea rdx, [rsp + 0xb0]
call qword [sym.imp.api_ms_win_mm_misc_l1_1_0.dll_mmioDescend]
test eax, eax
jne 0x14009ee4f
cmp dword [rsp + 0xb4], 0x10
jb 0x14009ee4f
mov rcx, qword [rbx + 8]
lea r8d, [rax + 0x10]
lea rdx, [rsp + 0xa0]
call qword [sym.imp.api_ms_win_mm_misc_l1_1_0.dll_mmioRead]
cmp eax, 0x10
jne 0x14009ee4f
cmp word [rsp + 0xa0], 1
jne 0x14009edc9
lea ecx, [rax + 2]
call fcn.1400a4688
mov qword [rbx], rax
test rax, rax
je 0x14009ee4f
movups xmm0, xmmword [rsp + 0xa0]
movups xmmword [rax], xmm0
mov rax, qword [rbx]
mov word [rax + 0x10], r14w
mov rcx, qword [rbx + 8]
lea rdx, [rsp + 0xb0]
xor r8d, r8d
call qword [sym.imp.api_ms_win_mm_misc_l1_1_0.dll_mmioAscend]
test eax, eax
jne 0x14009ee3a
mov rcx, rbx
call fcn.14009eed0
lea rdx, str.CWaveFile::Open
mov edi, eax
test eax, eax
jns 0x14009eea5
mov r8d, 0x7a
lea rcx, str._s__d
call fcn.14004c3d0
mov eax, edi
jmp 0x14009ee79
mov rcx, qword [rbx + 8]
lea rdx, [rsp + 0x20]
mov r8d, 2
mov word [rsp + 0x20], r14w
call qword [sym.imp.api_ms_win_mm_misc_l1_1_0.dll_mmioRead]
cmp eax, 2
jne 0x14009ee4f
movzx ecx, word [rsp + 0x20]
add rcx, 0x12
call fcn.1400a4688
mov qword [rbx], rax
test rax, rax
je 0x14009ee4f
movups xmm0, xmmword [rsp + 0xa0]
movups xmmword [rax], xmm0
mov rcx, qword [rbx]
movzx eax, word [rsp + 0x20]
mov word [rcx + 0x10], ax
mov rdx, qword [rbx]
movzx r8d, word [rsp + 0x20]
add rdx, 0x12
mov rcx, qword [rbx + 8]
call qword [sym.imp.api_ms_win_mm_misc_l1_1_0.dll_mmioRead]
movzx ecx, word [rsp + 0x20]
cmp eax, ecx
je 0x14009ed7a
mov rcx, qword [rbx]
test rcx, rcx
je 0x14009ee4f
mov edx, 0x12
call fcn.1400a404c
mov qword [rbx], r14
mov rcx, qword [rbx + 8]
xor edx, edx
call qword [sym.imp.api_ms_win_mm_misc_l1_1_0.dll_mmioClose]
mov r8d, 0x74
lea rdx, str.CWaveFile::Open
lea rcx, str._s__d
call fcn.14004c3d0
mov eax, 0x80004005
mov rbp, qword [rsp + 0x100]
mov rdi, qword [rsp + 0x108]
mov rcx, qword [rsp + 0xc8]
xor rcx, rsp
call fcn.1400a4020
add rsp, 0xd0
pop r14
pop rsi
pop rbx
ret
mov r9d, dword [rbx + 0x14]
lea rcx, str._s__d_m_dwSize_d_End
mov r8d, 0x80
mov dword [rbx + 0x38], r9d
call fcn.14004c3d0
mov eax, edi
jmp 0x14009ee79