Function at 0x1400aa520
Capabilities:
Link many functions at runtime

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x8d8]
sub rsp, 0x9b0
mov qword [rbp - 0x38], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x14019b010]
xor rax, rsp
mov qword [rbp + 0x880], rax
mov r13, rcx
mov r8d, 0x77e
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d
call fcn.140064950
xor r14d, r14d
mov qword [rsp + 0x48], r14
mov esi, r14d
mov dword [rsp + 0x5c], r14d
mov dword [rsp + 0x40], r14d
mov qword [rbp - 0x30], r14
mov qword [rbp + 0x18], r14
mov qword [rbp - 0x10], r14
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x28], r14
mov qword [rbp - 0x18], r14
mov qword [rbp - 8], r14
call fcn.140005430
mov rcx, rax
test rax, rax
je 0x1400ab91f
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rbp + 0x28], rax
lea rbx, [0x140114aa8]
mov rdx, rbx
lea rcx, [rbp + 0x28]
call fcn.140004bf0
lea rdi, [r14 - 1]
test al, al
jne 0x1400aa60b
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x1400aa5f1
mov r8d, eax
mov rdx, rbx
lea rcx, [rbp + 0x28]
call fcn.140004e70
nop
mov qword [rbp], r14
call fcn.140005430
mov rcx, rax
test rax, rax
je 0x1400ab914
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rbp + 0x38], rax
mov rdx, rbx
lea rcx, [rbp + 0x38]
call fcn.140004bf0
test al, al
jne 0x1400aa65b
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x1400aa641
mov r8d, eax
mov rdx, rbx
lea rcx, [rbp + 0x38]
call fcn.140004e70
nop
mov qword [r13 + 0x938], 0x41b00000
mov qword [r13 + 0x940], r14
lea rcx, str.SpeakerVerfDll.dll
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_1.dll_LoadLibraryW]
mov r12, rax
mov qword [rsp + 0x68], rax
test rax, rax
jne 0x1400aa6a5
mov r8d, 0x7b0
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_Load_SpeakerVerfDll.dll_fail
call fcn.140064950
jmp 0x1400ab710
lea rdx, str.SVD_Init2
mov rcx, r12
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov r15, rax
lea rdx, str.SVD_StartRecog
mov rcx, r12
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov r14, rax
lea rdx, str.SVD_Process
mov rcx, r12
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov qword [rbp - 0x58], rax
lea rdx, str.SVD_Process2
mov rcx, r12
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
lea rdx, str.SVD_GetDetectCount
mov rcx, r12
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
lea rdx, str.SVD_GetDetect
mov rcx, r12
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
lea rdx, str.SVD_GetScore
mov rcx, r12
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov qword [rbp - 0x50], rax
lea rdx, str.SVD_Stop
mov rcx, r12
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov qword [rbp - 0x48], rax
lea rdx, str.SVD_Destroy
mov rcx, r12
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov qword [rbp - 0x40], rax
mov edx, 2
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoInitializeEx]
mov dword [rsp + 0x70], eax
lea rax, [rbp - 0x10]
mov qword [rsp + 0x20], rax
lea r9, [0x140118d38]
xor edx, edx
lea r8d, [rdx + 0x17]
lea rcx, [0x140118d58]
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoCreateInstance]
test eax, eax
jns 0x1400aa7a4
mov r8d, 0x7c2
mov r9d, eax
lea rcx, str._s__d_EXIT_ON_ERROR_0x_X_
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
call fcn.140064950
jmp 0x1400ab70d
mov rdx, qword [r13 + 8]
cmp dword [rdx - 0x10], 0
je 0x1400aa7fb
mov rcx, qword [rbp - 0x10]
mov rax, qword [rcx]
lea r8, [rbp - 0x20]
call qword [rax + 0x28]
mov ebx, eax
mov r9, qword [r13 + 8]
mov r8d, 0x7c7
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_GetDevice_EndpointId_s
call fcn.140064950
test ebx, ebx
jns 0x1400aa7fb
mov r9d, ebx
mov r8d, 0x7c8
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hr_x
call fcn.140064950
mov rcx, qword [rbp - 0x20]
test rcx, rcx
jne 0x1400aa82d
mov rcx, qword [rbp - 0x10]
mov rax, qword [rcx]
lea r9, [rbp - 0x20]
mov edx, 1
mov r8d, edx
call qword [rax + 0x20]
test eax, eax
jns 0x1400aa829
mov r8d, 0x7ce
jmp 0x1400aa789
mov rcx, qword [rbp - 0x20]
mov rax, qword [rcx]
lea rdx, [rbp]
call qword [rax + 0x28]
test eax, eax
jns 0x1400aa846
mov r8d, 0x7d3
jmp 0x1400aa789
mov rdx, qword [rbp]
test rdx, rdx
jne 0x1400aa853
xor eax, eax
jmp 0x1400aa860
mov rax, rdi
inc rax
cmp word [rdx + rax*2], 0
jne 0x1400aa856
mov r8d, eax
lea rcx, [rbp + 0x28]
call fcn.140004e70
mov rcx, qword [rbp]
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoTaskMemFree]
mov rbx, qword [rbp + 0x28]
mov r9, rbx
mov r8d, 0x7d8
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_IMMDevice_GetDevice_EndpointId_s
call fcn.140064950
mov rcx, qword [rbp - 0x20]
mov rax, qword [rcx]
lea rdx, [rbp - 0x28]
mov qword [rsp + 0x20], rdx
xor r9d, r9d
lea r8d, [r9 + 0x17]
lea rdx, [0x140158f08]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
test eax, eax
jns 0x1400aa8c6
mov r8d, 0x7db
jmp 0x1400aa789
mov rcx, qword [rbp - 0x28]
mov rax, qword [rcx]
lea rdx, [rbp - 0x30]
call qword [rax + 0x40]
test eax, eax
jns 0x1400aa8e3
mov r8d, 0x7e2
jmp 0x1400aa789
mov rcx, qword [rbp - 0x30]
movzx eax, word [rcx + 0xc]
movzx edx, word [rcx + 2]
movzx r9d, word [rcx]
mov dword [rsp + 0x30], eax
mov eax, dword [rcx + 4]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], edx
mov r8d, 0x7e3
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_Mix_Format:_tag0x_X__channels_d__sample_rate_d__block_align_d
call fcn.140064950
mov rcx, qword [rbp - 0x28]
mov rax, qword [rcx]
lea r9, [rbp + 0x18]
mov r8, qword [rbp - 0x30]
xor edx, edx
call qword [rax + 0x38]
test eax, eax
jns 0x1400aa94f
mov r9d, eax
mov r8d, 0x7e6
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hr_x
call fcn.140064950
mov r8, qword [rbp - 0x30]
mov r9d, dword [r8 + 4]
cmp r9d, 0xbb80
je 0x1400aa990
cmp r9d, 0x17700
je 0x1400aa990
cmp r9d, 0x2ee00
je 0x1400aa990
mov r8d, 0x7f2
lea rcx, str._s__d_so_far__only_support_48k___96k___192k_sample_rate__sample_rate_d
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
call fcn.140064950
jmp 0x1400ab70d
movzx eax, word [r8]
mov ecx, 3
cmp cx, ax
je 0x1400aa9cb
mov ecx, 0xfffe
cmp cx, ax
jne 0x1400aa9c2
mov rax, qword [0x140158f18]
cmp rax, qword [r8 + 0x18]
jne 0x1400aa9c2
mov rax, qword [0x140158f20]
cmp rax, qword [r8 + 0x20]
je 0x1400aa9cb
xor r9d, r9d
mov qword [rbp - 0x80], r9
jmp 0x1400aa9d6
mov qword [rbp - 0x80], 1
xor r9d, r9d
movzx ecx, word [r8 + 0xe]
movzx eax, word [r8 + 2]
imul eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
mov dword [rsp + 0x44], eax
movzx ecx, word [r8 + 0xc]
cmp eax, ecx
je 0x1400aaa1e
mov dword [rsp + 0x20], ecx
mov r9d, eax
mov r8d, 0x80e
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_not_support_FrameSize___pWfxIn__nBlockAlign._FrameSize:__d_bytes__BlockAlign:__d_bytes
call fcn.140064950
jmp 0x1400ab70d
mov dword [rbp + 0x30], r9d
mov qword [rbp + 8], r9
mov rcx, qword [rbp - 0x28]
mov rax, qword [rcx]
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x20], r9
mov r9d, 0xf4240
xor r8d, r8d
xor edx, edx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
test eax, eax
jns 0x1400aaa6a
mov r9d, eax
mov r8d, 0x81d
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hr_x
call fcn.140064950
mov rcx, qword [rbp - 0x28]
mov rax, qword [rcx]
lea r8, [rbp - 0x18]
lea rdx, [0x140158ef8]
call qword [rax + 0x70]
test eax, eax
jns 0x1400aaa9f
mov r9d, eax
mov r8d, 0x81f
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hr_x
call fcn.140064950
mov rcx, qword [rbp - 0x28]
mov rax, qword [rcx]
lea rdx, [rbp + 0x30]
call qword [rax + 0x20]
test eax, eax
jns 0x1400aaacd
mov r9d, eax
mov r8d, 0x821
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hr_x
call fcn.140064950
mov r9d, dword [rbp + 0x30]
mov r8d, 0x822
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_bufferFrameCount:__d
call fcn.140064950
mov eax, dword [rbp + 0x30]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
mulsd xmm1, qword [0x140165c98]
mov rax, qword [rbp - 0x30]
mov ecx, dword [rax + 4]
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
divsd xmm1, xmm0
cvttsd2si rcx, xmm1
movabs rax, 0x346dc5d63886594b
imul rcx
mov rdi, rdx
sar rdi, 0xc
mov rax, rdi
shr rax, 0x3f
add rdi, rax
mov qword [rbp - 0x78], rdi
mov qword [rsp + 0x20], rcx
mov r9d, 0xf4240
mov r8d, 0x827
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hnsRequestedDuratio:__I64d__hnsActualDuration:__I64d
call fcn.140064950
mov r9d, edi
mov r8d, 0x828
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_sleep_time:__d
call fcn.140064950
mov dword [rbp + 0x20], 0
mov rcx, qword [rbp - 0x28]
mov rax, qword [rcx]
call qword [rax + 0x50]
test eax, eax
jns 0x1400aaba8
mov r9d, eax
mov r8d, 0x82f
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hr_x
call fcn.140064950
mov eax, 0x51eb851f
mov rcx, qword [rbp - 0x30]
mul dword [rcx + 4]
mov r12d, edx
shr r12d, 5
mov r9d, r12d
mov r8d, 0x835
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_dwMonoFramesNumPerSec:__d
call fcn.140064950
mov edi, r12d
mov eax, 4
mul rdi
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rsp + 0x50], rax
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
test rax, rax
jne 0x1400aac1e
mov r8d, 0x838
lea rcx, str._s__d_EXIT_ON_FALSE
call fcn.140064950
jmp 0x1400ab701
lea rax, [r12*4]
mov qword [rbp - 0x68], rax
mov r9, rax
mov r8d, 0x839
lea rcx, str._s__d_in_size:__d__bytes_
call fcn.140064950
mov eax, r12d
shl eax, 6
mov edi, eax
mov qword [rbp - 0x70], rdi
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rsp + 0x60], rax
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
test rax, rax
jne 0x1400aac7b
mov r8d, 0x83c
lea rcx, str._s__d_EXIT_ON_FALSE
call fcn.140064950
jmp 0x1400ab6bf
mov r9, rdi
mov r8d, 0x83d
lea rcx, str._s__d_pBufferFramesData_size:__d__bytes_
call fcn.140064950
mov rax, qword [rbp - 0x30]
movzx edi, word [rax + 2]
imul edi, r12d
mov eax, 4
mul rdi
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rsp + 0x48], rax
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
test rax, rax
jne 0x1400aace0
mov r8d, 0x842
lea rcx, str._s__d_EXIT_ON_FALSE
call fcn.140064950
jmp 0x1400ab6bf
lea rax, [rdi*4]
mov qword [rbp - 0x60], rax
mov r9, rax
mov r8d, 0x843
lea rcx, str._s__d_iIntergerData_size:__d__bytes_
call fcn.140064950
mov eax, 4
mul rdi
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rsi, rax
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
test rax, rax
jne 0x1400aad43
mov r8d, 0x846
lea rcx, str._s__d_EXIT_ON_FALSE
call fcn.140064950
jmp 0x1400ab6bf
lea r9, [rdi*4]
mov r8d, 0x847
lea rcx, str._s__d_fFloatData_size:__d__bytes_
call fcn.140064950
call fcn.14000b9e0
mov rdx, rbx
call fcn.140096ac0
mov rdi, rax
test rax, rax
je 0x1400aafd7
mov dword [rsp + 0x58], 0x28
mov dword [rsp + 0x20], 3
lea r9, [rsp + 0x58]
lea r8, [rbp + 0x48]
lea rdx, [0x140110560]
lea rcx, [rbp + 0x28]
call fcn.1400039c0
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
test eax, eax
jne 0x1400aadc5
mov r9, qword [rbp + 0x28]
mov r8d, 0x864
lea rcx, str._s__d_csEndpointId_s__get_PKEY_RTK_BSS_SVEParam_fail
call fcn.140064950
jmp 0x1400ab6bf
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x20], eax
mov rbx, qword [rbp + 0x28]
mov r9, rbx
mov r8d, 0x869
lea rcx, str._s__d_csEndpointId_s__get_nDataSize__d
call fcn.140064950
mov r9d, dword [rbp + 0x48]
mov r8d, 0x86b
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_FeatureDataDropMs__d
call fcn.140064950
mov r9d, dword [rbp + 0x4c]
mov r8d, 0x86c
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_MinDataCount_______d
call fcn.140064950
mov r9d, dword [rbp + 0x50]
mov r8d, 0x86d
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_MaxDataCount_______d
call fcn.140064950
mov r9d, dword [rbp + 0x54]
mov r8d, 0x86e
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_ShiftDataCount_____d
call fcn.140064950
mov r9d, dword [rbp + 0x58]
mov r8d, 0x86f
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_LowDataCount_______d
call fcn.140064950
movss xmm3, dword [rbp + 0x5c]
cvtps2pd xmm3, xmm3
movq r9, xmm3
mov r8d, 0x870
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_ScoreThreshold_____f
call fcn.140064950
mov r9d, dword [rbp + 0x60]
mov r8d, 0x871
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_ScoreMethod________d
call fcn.140064950
mov r9d, dword [rbp + 0x64]
mov r8d, 0x872
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_FEInOverlapFrames__d
call fcn.140064950
mov r9d, dword [rbp + 0x68]
mov r8d, 0x873
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_FeatureInFrames____d
call fcn.140064950
mov r9d, dword [rbp + 0x6c]
mov r8d, 0x874
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_UseTrt_____________d
call fcn.140064950
lea rcx, [rdi + 0x10]
mov r9d, 3
lea r8, [rbp + 0x38]
lea rdx, [0x14010fc48]
call fcn.140004630
mov r9, rbx
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
test eax, eax
jne 0x1400aaf50
mov r8d, 0x886
lea rcx, str._s__d_csEndpointId_s__get_PKEY_AUDIO_CONTENT_TYPE_SFX_fail
call fcn.140064950
jmp 0x1400ab6bf
mov rax, qword [rbp + 0x38]
mov qword [rsp + 0x20], rax
mov r8d, 0x88b
lea rcx, str._s__d_csEndpointId_s__get_PKEY_AUDIO_CONTENT_TYPE_SFX__s
call fcn.140064950
mov dword [rsp + 0x58], 0x800
mov dword [rsp + 0x20], 2
lea r9, [rsp + 0x58]
lea r8, [rbp + 0x80]
lea rdx, [0x140113878]
lea rcx, [rbp + 0x28]
call fcn.1400039c0
mov r9, qword [rbp + 0x28]
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
test eax, eax
jne 0x1400aafbd
mov r8d, 0x892
lea rcx, str._s__d_csEndpointId_s__get_PKEY_RTK_BSS_SVETrainData_fail
call fcn.140064950
jmp 0x1400ab6bf
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x20], eax
mov r8d, 0x897
lea rcx, str._s__d_csEndpointId_s__get_nDataSize__d
call fcn.140064950
mov rcx, qword [rbp - 0x20]
mov rax, qword [rcx]
lea rdx, [rbp - 8]
mov qword [rsp + 0x20], rdx
xor r9d, r9d
lea r8d, [r9 + 1]
lea rdx, [0x140118d48]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
test eax, eax
jns 0x1400ab01d
mov r9d, eax
mov r8d, 0x8a8
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_ERROR_hr0x_X
call fcn.140064950
jmp 0x1400ab6bf
mov qword [rbp + 0x10], 0
mov rcx, qword [rbp - 0x20]
mov rax, qword [rcx]
lea rdx, [rbp + 0x10]
call qword [rax + 0x28]
mov rcx, qword [rbp + 0x10]
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoTaskMemFree]
mov rax, qword [rbp + 0x38]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x800
lea rax, [rbp + 0x80]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x28
lea r9, [rbp + 0x48]
mov r8d, r12d
mov edx, 1
mov rax, qword [rbp - 0x30]
mov ecx, dword [rax + 4]
call r15
mov rbx, rax
mov qword [rsp + 0x78], rax
test rax, rax
jne 0x1400ab0a3
mov r8d, 0x8b1
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_EXIT_ON_FALSE
call fcn.140064950
jmp 0x1400ab6bf
mov rcx, rax
call r14
mov dword [r13 + 0x9d4], 0
cmp dword [r13 + 0x8f8], 0
jne 0x1400ab672
mov ebx, 0x100401
movss xmm7, dword [0x140165c10]
mov r14, qword [rsp + 0x60]
mov ecx, dword [rbp - 0x78]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
cmp dword [r13 + 0x8f8], 0
jne 0x1400ab66d
nop dword [rax + rax]
mov ecx, dword [r13 + 0xc8]
lea eax, [rcx - 0xc8]
cmp eax, 0x14
ja 0x1400ab107
bt ebx, eax
jb 0x1400ab11f
lea eax, [rcx - 0x1f4]
cmp eax, 0x14
ja 0x1400ab65f
bt ebx, eax
jae 0x1400ab65f
mov rcx, qword [rbp - 0x18]
mov rax, qword [rcx]
lea rdx, [rbp + 0x70]
mov qword [rsp + 0x28], rdx
lea rdx, [rbp + 0x78]
mov qword [rsp + 0x20], rdx
lea r9, [rbp + 0x40]
lea r8, [rbp + 0x20]
lea rdx, [rbp + 8]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
mov ebx, eax
mov rcx, qword [rbp + 0x70]
mov qword [rsp + 0x38], rcx
mov rcx, qword [rbp + 0x78]
mov qword [rsp + 0x30], rcx
mov ecx, dword [rbp + 0x40]
mov dword [rsp + 0x28], ecx
mov ecx, dword [rbp + 0x20]
mov dword [rsp + 0x20], ecx
mov r9d, eax
mov r8d, 0x8c8
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hr:_0x_08X__numFramesAvailable:__d__flags__d__devPos__d__pcPos__d
call fcn.140064950
test ebx, ebx
jne 0x1400ab62a
mov dword [rsp + 0x5c], ebx
mov rcx, qword [rbp - 8]
mov rax, qword [rcx]
lea rdx, [r13 + 0x978]
call qword [rax + 0x48]
call fcn.14001ef50
test dword [rax + 4], 0x2000000
jne 0x1400ab1d9
call fcn.14001ef50
test dword [rax + 4], 0x10000
jne 0x1400ab1d9
movss xmm3, dword [r13 + 0x978]
mov r8d, dword [rbp + 0x20]
mov rdx, qword [rbp + 8]
mov rcx, r13
call fcn.1400a7a00
jmp 0x1400ab1e1
mov rcx, r13
call fcn.1400a7380
test eax, eax
jne 0x1400ab1f7
mov rcx, qword [rbp - 0x18]
mov rax, qword [rcx]
mov edx, dword [rbp + 0x20]
call qword [rax + 0x20]
jmp 0x1400ab5d1
xor r15d, r15d
mov ecx, dword [rbp + 0x20]
mov ebx, dword [rsp + 0x40]
lea eax, [rcx + rbx]
mov edi, dword [rsp + 0x44]
imul eax, edi
mov rdx, qword [rbp - 0x70]
imul ecx, edi
cmp eax, edx
jbe 0x1400ab245
mov eax, edi
imul eax, ebx
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], eax
mov r9d, ecx
mov r8d, 0x8eb
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d__numFramesAvailable__dwFrameSize_:__d___dwBufferFramesNumNeedProcess__dwFrameSize_:__d__buffer_size___d
call fcn.140064950
jmp 0x1400ab5d1
mov r8d, ecx
mov ecx, edi
imul ecx, ebx
add rcx, r14
mov rdx, qword [rbp + 8]
call fcn.1400d5760
add ebx, dword [rbp + 0x20]
mov dword [rsp + 0x40], ebx
cmp dword [r13 + 0x8f8], r15d
jne 0x1400ab5d1
nop dword [rax]
cmp ebx, r12d
jb 0x1400ab5cc
mov eax, dword [r13 + 0xc8]
cmp eax, 0xc8
je 0x1400ab2d4
cmp eax, 0x1f4
je 0x1400ab2d4
cmp eax, 0xdc
je 0x1400ab2a0
cmp eax, 0x208
jne 0x1400ab5be
mov r8d, 0x989
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_set_m_bStop__TRUE_to_exit_loop
call fcn.140064950
mov dword [r13 + 0x8f8], 1
mov dword [r13 + 0x944], 1
jmp 0x1400ab5be
sub ebx, r12d
mov dword [rsp + 0x40], ebx
mov r8, qword [rbp - 0x68]
xor edx, edx
mov r14, qword [rsp + 0x50]
mov rcx, r14
call fcn.1400d54b0
mov r8, qword [rbp - 0x60]
xor edx, edx
mov rcx, qword [rsp + 0x48]
call fcn.1400d54b0
mov r8, qword [rbp - 0x60]
xor edx, edx
mov rcx, rsi
call fcn.1400d54b0
mov eax, r15d
imul eax, r12d
imul edi, eax
add rdi, qword [rsp + 0x60]
inc r15d
mov eax, r12d
imul eax, dword [rsp + 0x44]
mov ebx, eax
mov r8d, eax
mov rdx, rdi
mov rcx, qword [rsp + 0x48]
call fcn.1400d5760
mov r8d, ebx
mov rdx, rdi
mov rcx, rsi
call fcn.1400d5760
cmp qword [rbp - 0x80], 0
jne 0x1400ab39a
mov rax, qword [rbp - 0x30]
movzx r8d, word [rax + 2]
imul r8d, r12d
xor edx, edx
test r8d, r8d
je 0x1400ab39a
mov rcx, rsi
mov rbx, qword [rsp + 0x48]
mov r9, rbx
sub r9, rsi
nop
mov rax, qword [rbp - 0x30]
cmp word [rax], 0x20
jne 0x1400ab7bb
movd xmm0, dword [r9 + rcx]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm7
movss dword [rcx], xmm0
inc edx
add rcx, 4
cmp edx, r8d
jb 0x1400ab370
xor ebx, ebx
test r12d, r12d
je 0x1400ab460
mov r11, r14
mov rdi, rsi
sub rdi, r14
nop
mov rax, qword [rbp - 0x30]
movzx r9d, word [rax + 2]
cmp r9d, 1
jbe 0x1400ab44a
xorps xmm1, xmm1
xor edx, edx
cmp r9d, 4
jb 0x1400ab41b
mov r8d, r9d
imul r8d, ebx
inc r8d
lea eax, [r9 - 4]
shr eax, 2
inc eax
mov r10d, eax
lea edx, [rax*4]
nop dword [rax + rax]
lea eax, [r8 - 1]
addss xmm1, dword [rsi + rax*4]
addss xmm1, dword [rsi + r8*4]
lea eax, [r8 + 1]
addss xmm1, dword [rsi + rax*4]
lea eax, [r8 + 2]
addss xmm1, dword [rsi + rax*4]
add r8d, 4
sub r10, 1
jne 0x1400ab3f0
cmp edx, r9d
jae 0x1400ab437
mov r8d, r9d
imul r8d, ebx
lea eax, [r8 + rdx]
addss xmm1, dword [rsi + rax*4]
inc edx
cmp edx, r9d
jb 0x1400ab427
xorps xmm0, xmm0
cvtsi2ss xmm0, r9
divss xmm1, xmm0
movss dword [r11], xmm1
jmp 0x1400ab451
mov eax, dword [rdi + r11]
mov dword [r11], eax
inc ebx
add r11, 4
cmp ebx, r12d
jb 0x1400ab3b0
inc dword [r13 + 0x9d4]
mov r8d, 0x1e0
mov rdx, r14
mov rcx, qword [rsp + 0x78]
call qword [rbp - 0x58]
mov edx, 0x309
mov rcx, qword [rsp + 0x78]
call qword [rbp - 0x50]
movaps xmm6, xmm0
movss dword [r13 + 0x940], xmm6
comiss xmm6, dword [r13 + 0x93c]
jbe 0x1400ab508
xorps xmm3, xmm3
cvtss2sd xmm3, xmm6
movq r9, xmm3
mov r8d, 0x961
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_update_fScore_to_fDetectScore_Max___f
call fcn.140064950
movss dword [r13 + 0x93c], xmm6
comiss xmm6, dword [r13 + 0x938]
jb 0x1400ab508
cmp dword [r13 + 0x8d8], 0
je 0x1400ab5f8
cmp dword [r13 + 0x8dc], 0
je 0x1400ab5f8
mov r8d, 0x968
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_waiting_for_TSE__skip_to_notify_UWP_to_send_STOP_command
call fcn.140064950
lea rbx, [0x140114aa8]
cmp dword [r13 + 0x8d8], 0
je 0x1400ab5b6
cmp dword [r13 + 0x8dc], 0
je 0x1400ab5b6
mov eax, dword [r13 + 0x9fc]
cmp dword [r13 + 0x9d4], eax
jb 0x1400ab5b6
mov r8d, 0x977
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_enough_date_cnt__set_m_bStop__TRUE_to_exit_loop
call fcn.140064950
mov dword [r13 + 0x8f8], 1
mov dword [r13 + 0x944], 1
mov dword [r13 + 0x948], 1
mov eax, dword [r13 + 0x98c]
mov dword [rsp + 0x20], eax
mov r9d, 1
mov r8d, 0x97e
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_m_bAlreadyEnoughDataOrScore___d__m_bAlreadyEnoughDataOrScore___d
call fcn.140064950
cmp dword [r13 + 0x98c], 0
je 0x1400ab5b6
mov edx, 0x10000262
mov rcx, rbx
call fcn.1400c2500
mov ebx, dword [rsp + 0x40]
mov edi, dword [rsp + 0x44]
cmp dword [r13 + 0x8f8], 0
je 0x1400ab270
mov r14, qword [rsp + 0x60]
mov rcx, qword [rbp - 0x18]
mov rax, qword [rcx]
mov edx, dword [rbp + 0x20]
call qword [rax + 0x20]
cmp dword [rbp + 0x20], 0
je 0x1400ab65a
cmp dword [r13 + 0x8f8], 0
jne 0x1400ab66d
mov ebx, 0x100401
jmp 0x1400ab0f0
mov r8d, 0x96c
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_notify_UWP_to__update_detect_score_data__UWP_will_send_STOP_command
call fcn.140064950
mov edx, 0x1000024c
lea rbx, [0x140114aa8]
mov rcx, rbx
call fcn.1400c2500
jmp 0x1400ab50f
mov eax, dword [rsp + 0x5c]
inc eax
mov dword [rsp + 0x5c], eax
cmp eax, 0x3c
jbe 0x1400ab65a
mov r8d, 0x99f
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_Get_MIC_stream_buffer_error
call fcn.140064950
mov rcx, r13
call fcn.1400ab9d0
mov ebx, 0x100401
cmp dword [r13 + 0x8f8], 0
je 0x1400ab0d4
mov rbx, qword [rsp + 0x78]
mov rcx, qword [rbp - 0x28]
mov rax, qword [rcx]
call qword [rax + 0x58]
mov r8d, 0x9a8
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_Recording_Finished
call fcn.140064950
mov rcx, rbx
call qword [rbp - 0x48]
mov rcx, rbx
call qword [rbp - 0x40]
cmp dword [0x1401a5f48], 0
je 0x1400ab6bf
cmp dword [r13 + 0x9d4], 0x1f4
jae 0x1400ab6bf
mov rcx, r13
call fcn.1400ab9d0
mov r14, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x1400ab6e5
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
test rbx, rbx
je 0x1400ab6f3
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
test rsi, rsi
je 0x1400ab701
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rdi, 0xffffffffffffffff
mov r12, qword [rsp + 0x68]
xor r14d, r14d
mov rcx, qword [rbp - 0x30]
test rcx, rcx
je 0x1400ab71f
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoTaskMemFree]
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x1400ab72e
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoTaskMemFree]
mov rcx, qword [rbp - 0x10]
test rcx, rcx
je 0x1400ab741
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbp - 0x10], r14
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x1400ab754
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbp - 0x20], r14
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x1400ab767
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbp - 0x28], r14
mov rcx, qword [rbp - 0x18]
test rcx, rcx
je 0x1400ab77a
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbp - 0x18], r14
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x1400ab78d
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbp - 8], r14
mov eax, dword [rsp + 0x70]
cmp eax, 1
jbe 0x1400ab845
mov r9d, eax
mov r8d, 0x9c6
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_CoInitializeEx_hr_x
call fcn.140064950
jmp 0x1400ab84b
mov rax, qword [rbp - 0x30]
movzx edx, word [rax]
cmp dx, 0x18
jne 0x1400ab7f4
movzx eax, word [rax + 0xc]
mov dword [rsp + 0x20], eax
mov r9d, reloc.OLEAUT32.dll_SafeArrayGetElement
mov r8d, 0x929
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_so_far__not_support._FormatTag:__d_bits__BlockAlign:__d_bytes
call fcn.140064950
jmp 0x1400ab6c9
mov rax, qword [rbp - 0x30]
movzx ecx, word [rax + 0xc]
mov dword [rsp + 0x20], ecx
lea rcx, str._s__d_so_far__not_support._FormatTag:__d_bits__BlockAlign:__d_bytes
cmp dx, 0x10
jne 0x1400ab82a
mov r9d, 0x10
mov r8d, 0x92e
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
call fcn.140064950
jmp 0x1400ab6c9
movzx r9d, dx
mov r8d, 0x933
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
call fcn.140064950
jmp 0x1400ab6c9
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoUninitialize]
test r12, r12
je 0x1400ab875
mov rcx, r12
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
mov r9d, eax
mov r8d, 0x9cb
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_free_library__success____d
call fcn.140064950
cmp dword [r13 + 0x9d4], 0
jne 0x1400ab8a1
mov r8d, 0x9d0
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_Error___detect_score_data_count_0
call fcn.140064950
mov rcx, r13
call fcn.1400ab9d0
nop
mov rdx, qword [rbp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400ab8bf
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 0x28]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x1400ab8da
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rcx, qword [rbp + 0x880]
xor rcx, rsp
call fcn.1400ce210
lea r11, [rsp + 0x9b0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov ecx, 0x80004005
call fcn.140005560
nop
mov ecx, 0x80004005
call fcn.140005560
int3