Function at 0x1400a0420
Capabilities:
Link many functions at runtime

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x8b8]
sub rsp, 0x990
mov qword [rbp - 0x58], 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 [0x140158010]
xor rax, rsp
mov qword [rbp + 0x860], rax
mov r13, rcx
mov r8d, 0x535
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d
call fcn.14005dbf0
xor r14d, r14d
mov esi, r14d
mov qword [rbp - 0x50], r14
mov qword [rbp - 8], r14
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x28], r14
call fcn.140004ea0
mov rcx, rax
test rax, rax
je 0x1400a1402
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rbp + 8], rax
lea rbx, [0x1400e2fc8]
mov rdx, rbx
lea rcx, [rbp + 8]
call fcn.140004660
lea r12, [r14 - 1]
test al, al
jne 0x1400a04fc
mov rax, r12
inc rax
cmp word [rbx + rax*2], 0
jne 0x1400a04e2
mov r8d, eax
mov rdx, rbx
lea rcx, [rbp + 8]
call fcn.1400048e0
nop
mov qword [rbp - 0x18], r14
call fcn.140004ea0
mov rcx, rax
test rax, rax
je 0x1400a13f7
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rbp + 0x18], rax
mov rdx, rbx
lea rcx, [rbp + 0x18]
call fcn.140004660
test al, al
jne 0x1400a054c
mov rax, r12
inc rax
cmp word [rbx + rax*2], 0
jne 0x1400a0532
mov r8d, eax
mov rdx, rbx
lea rcx, [rbp + 0x18]
call fcn.1400048e0
nop
mov qword [r13 + 0x894], 0x41b00000
mov qword [r13 + 0x89c], r14
lea rcx, str.SpeakerVerfDll.dll
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_1.dll_LoadLibraryW]
mov rdi, rax
mov qword [rsp + 0x58], rax
test rax, rax
jne 0x1400a0596
mov r8d, 0x563
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_Load_SpeakerVerfDll.dll_fail
call fcn.14005dbf0
jmp 0x1400a1249
lea rdx, str.SVD_Init2
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov r15, rax
lea rdx, str.SVD_StartRecog
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov r14, rax
lea rdx, str.SVD_Process
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov qword [rbp - 0x78], rax
lea rdx, str.SVD_Process2
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
lea rdx, str.SVD_GetDetectCount
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
lea rdx, str.SVD_GetDetect
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
lea rdx, str.SVD_GetScore
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov qword [rbp - 0x70], rax
lea rdx, str.SVD_Stop
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov qword [rbp - 0x68], rax
lea rdx, str.SVD_Destroy
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov qword [rbp - 0x60], rax
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitialize]
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x1400e6628]
xor edx, edx
lea r8d, [rdx + 0x17]
lea rcx, [0x1400e6648]
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoCreateInstance]
test eax, eax
jns 0x1400a068c
mov r8d, 0x575
mov r9d, eax
lea rcx, str._s__d_EXIT_ON_ERROR_0x_X_
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
call fcn.14005dbf0
jmp 0x1400a1246
mov rdx, qword [r13 + 8]
cmp dword [rdx - 0x10], 0
je 0x1400a06e3
mov rcx, qword [rbp - 0x30]
mov rax, qword [rcx]
lea r8, [rbp - 0x40]
call qword [rax + 0x28]
mov ebx, eax
mov r9, qword [r13 + 8]
mov r8d, 0x57a
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_GetDevice_EndpointId_s
call fcn.14005dbf0
test ebx, ebx
jns 0x1400a06e3
mov r9d, ebx
mov r8d, 0x57b
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hr_x
call fcn.14005dbf0
mov rcx, qword [rbp - 0x40]
test rcx, rcx
jne 0x1400a0715
mov rcx, qword [rbp - 0x30]
mov rax, qword [rcx]
lea r9, [rbp - 0x40]
mov edx, 1
mov r8d, edx
call qword [rax + 0x20]
test eax, eax
jns 0x1400a0711
mov r8d, 0x581
jmp 0x1400a0671
mov rcx, qword [rbp - 0x40]
mov rax, qword [rcx]
lea rdx, [rbp - 0x18]
call qword [rax + 0x28]
test eax, eax
jns 0x1400a072e
mov r8d, 0x586
jmp 0x1400a0671
mov rdx, qword [rbp - 0x18]
test rdx, rdx
jne 0x1400a073b
xor eax, eax
jmp 0x1400a074a
mov rax, r12
nop
inc rax
cmp word [rdx + rax*2], 0
jne 0x1400a0740
mov r8d, eax
lea rcx, [rbp + 8]
call fcn.1400048e0
mov rcx, qword [rbp - 0x18]
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoTaskMemFree]
mov rbx, qword [rbp + 8]
mov r9, rbx
mov r8d, 0x58b
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_IMMDevice_GetDevice_EndpointId_s
call fcn.14005dbf0
mov rcx, qword [rbp - 0x40]
mov rax, qword [rcx]
lea rdx, [rbp - 0x48]
mov qword [rsp + 0x20], rdx
xor r9d, r9d
lea r8d, [r9 + 0x17]
lea rdx, [0x14011ddc8]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
test eax, eax
jns 0x1400a07b0
mov r8d, 0x58e
jmp 0x1400a0671
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx]
lea rdx, [rbp - 0x50]
call qword [rax + 0x40]
test eax, eax
jns 0x1400a07cd
mov r8d, 0x595
jmp 0x1400a0671
mov rcx, qword [rbp - 0x50]
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, 0x596
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.14005dbf0
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx]
lea r9, [rbp - 8]
mov r8, qword [rbp - 0x50]
xor edx, edx
call qword [rax + 0x38]
test eax, eax
jns 0x1400a0839
mov r9d, eax
mov r8d, 0x599
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hr_x
call fcn.14005dbf0
mov r8, qword [rbp - 0x50]
mov r9d, dword [r8 + 4]
cmp r9d, 0xbb80
je 0x1400a087a
cmp r9d, 0x17700
je 0x1400a087a
cmp r9d, 0x2ee00
je 0x1400a087a
mov r8d, 0x5a5
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.14005dbf0
jmp 0x1400a1246
movzx eax, word [r8]
mov ecx, 3
cmp cx, ax
je 0x1400a08b6
mov ecx, 0xfffe
cmp cx, ax
jne 0x1400a08ac
mov rax, qword [0x14011ddb8]
cmp rax, qword [r8 + 0x18]
jne 0x1400a08ac
mov rax, qword [0x14011ddc0]
cmp rax, qword [r8 + 0x20]
je 0x1400a08b6
xor r9d, r9d
mov qword [rsp + 0x60], r9
jmp 0x1400a08c2
mov qword [rsp + 0x60], 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 + 0x50], eax
movzx ecx, word [r8 + 0xc]
cmp eax, ecx
je 0x1400a090a
mov dword [rsp + 0x20], ecx
mov r9d, eax
mov r8d, 0x5c1
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_not_support_FrameSize___pWfxIn__nBlockAlign._FrameSize:__d_bytes__BlockAlign:__d_bytes
call fcn.14005dbf0
jmp 0x1400a1246
mov dword [rbp + 0x10], r9d
mov qword [rbp - 0x20], r9
mov rcx, qword [rbp - 0x48]
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 0x1400a0956
mov r9d, eax
mov r8d, 0x5d0
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hr_x
call fcn.14005dbf0
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx]
lea r8, [rbp - 0x38]
lea rdx, [0x14011ddd8]
call qword [rax + 0x70]
test eax, eax
jns 0x1400a098b
mov r9d, eax
mov r8d, 0x5d2
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hr_x
call fcn.14005dbf0
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx]
lea rdx, [rbp + 0x10]
call qword [rax + 0x20]
test eax, eax
jns 0x1400a09b9
mov r9d, eax
mov r8d, 0x5d4
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hr_x
call fcn.14005dbf0
mov r9d, dword [rbp + 0x10]
mov r8d, 0x5d5
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_bufferFrameCount:__d
call fcn.14005dbf0
mov eax, dword [rbp + 0x10]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
mulsd xmm1, qword [0x140129da0]
mov rax, qword [rbp - 0x50]
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 [rsp + 0x70], rdi
mov qword [rsp + 0x20], rcx
mov r9d, 0xf4240
mov r8d, 0x5da
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hnsRequestedDuratio:__I64d__hnsActualDuration:__I64d
call fcn.14005dbf0
mov r9d, edi
mov r8d, 0x5db
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_sleep_time:__d
call fcn.14005dbf0
mov dword [rbp], 0
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx]
call qword [rax + 0x50]
test eax, eax
jns 0x1400a0a95
mov r9d, eax
mov r8d, 0x5e2
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_hr_x
call fcn.14005dbf0
mov eax, 0x51eb851f
mov rcx, qword [rbp - 0x50]
mul dword [rcx + 4]
mov edi, edx
shr edi, 5
mov dword [rsp + 0x44], edi
mov r9d, edi
mov r8d, 0x5e8
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_dwMonoFramesNumPerSec:__d
call fcn.14005dbf0
mov eax, 4
mul rdi
cmovo rax, r12
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r12, rax
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
test rax, rax
jne 0x1400a0b01
mov r8d, 0x5eb
lea rcx, str._s__d_EXIT_ON_FALSE
call fcn.14005dbf0
jmp 0x1400a123a
lea rax, [rdi*4]
mov qword [rsp + 0x78], rax
mov r9, rax
mov r8d, 0x5ec
lea rcx, str._s__d_in_size:__d__bytes_
call fcn.14005dbf0
mov rax, qword [rbp - 0x50]
movzx edi, word [rax + 2]
imul edi, dword [rsp + 0x44]
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 0x1400a0b74
mov r8d, 0x5f1
lea rcx, str._s__d_EXIT_ON_FALSE
call fcn.14005dbf0
jmp 0x1400a1210
lea rax, [rdi*4]
mov qword [rsp + 0x68], rax
mov r9, rax
mov r8d, 0x5f2
lea rcx, str._s__d_iIntergerData_size:__d__bytes_
call fcn.14005dbf0
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 0x1400a0bd8
mov r8d, 0x5f5
lea rcx, str._s__d_EXIT_ON_FALSE
call fcn.14005dbf0
jmp 0x1400a1210
lea r9, [rdi*4]
mov r8d, 0x5f6
lea rcx, str._s__d_fFloatData_size:__d__bytes_
call fcn.14005dbf0
call fcn.14000b470
mov rdx, rbx
call fcn.14008e8b0
mov rdi, rax
test rax, rax
je 0x1400a0d3e
mov dword [rsp + 0x40], 0x28
mov dword [rsp + 0x20], 3
lea r9, [rsp + 0x40]
lea r8, [rbp + 0x38]
lea rdx, [0x1400de820]
lea rcx, [rbp + 8]
call fcn.140003540
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
test eax, eax
jne 0x1400a0c5a
mov r9, qword [rbp + 8]
mov r8d, 0x613
lea rcx, str._s__d_csEndpointId_s__get_PKEY_RTK_BSS_SVEParam_fail
call fcn.14005dbf0
jmp 0x1400a1210
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x20], eax
mov rbx, qword [rbp + 8]
mov r9, rbx
mov r8d, 0x618
lea rcx, str._s__d_csEndpointId_s__get_nDataSize__d
call fcn.14005dbf0
lea rcx, [rdi + 0x10]
mov r9d, 3
lea r8, [rbp + 0x18]
lea rdx, [0x1400dde48]
call fcn.1400041b0
mov r9, rbx
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
test eax, eax
jne 0x1400a0cba
mov r8d, 0x629
lea rcx, str._s__d_csEndpointId_s__get_PKEY_AUDIO_CONTENT_TYPE_SFX_fail
call fcn.14005dbf0
jmp 0x1400a1210
mov rax, qword [rbp + 0x18]
mov qword [rsp + 0x20], rax
mov r8d, 0x62e
lea rcx, str._s__d_csEndpointId_s__get_PKEY_AUDIO_CONTENT_TYPE_SFX__s
call fcn.14005dbf0
mov dword [rsp + 0x40], 0x800
mov dword [rsp + 0x20], 2
lea r9, [rsp + 0x40]
lea r8, [rbp + 0x60]
lea rdx, [0x1400ddce0]
lea rcx, [rbp + 8]
call fcn.140003540
mov r9, qword [rbp + 8]
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
test eax, eax
jne 0x1400a0d24
mov r8d, 0x635
lea rcx, str._s__d_csEndpointId_s__get_PKEY_RTK_BSS_SVETrainData_fail
call fcn.14005dbf0
jmp 0x1400a1210
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x20], eax
mov r8d, 0x63a
lea rcx, str._s__d_csEndpointId_s__get_nDataSize__d
call fcn.14005dbf0
mov rcx, qword [rbp - 0x40]
mov rax, qword [rcx]
lea rdx, [rbp - 0x28]
mov qword [rsp + 0x20], rdx
xor r9d, r9d
lea r8d, [r9 + 1]
lea rdx, [0x1400e6638]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
test eax, eax
jns 0x1400a0d84
mov r9d, eax
mov r8d, 0x64b
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_ERROR_hr0x_X
call fcn.14005dbf0
jmp 0x1400a1210
mov qword [rbp - 0x10], 0
mov rcx, qword [rbp - 0x40]
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 + 0x18]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x800
lea rax, [rbp + 0x60]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x28
lea r9, [rbp + 0x38]
mov r8d, dword [rsp + 0x44]
mov edx, 1
mov rax, qword [rbp - 0x50]
mov ecx, dword [rax + 4]
call r15
mov rdi, rax
mov qword [rbp - 0x80], rax
test rax, rax
jne 0x1400a0e08
mov r8d, 0x654
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_EXIT_ON_FALSE
call fcn.14005dbf0
jmp 0x1400a1210
mov rcx, rax
call r14
xor r14d, r14d
mov dword [r13 + 0x8f0], r14d
cmp dword [r13 + 0x880], r14d
jne 0x1400a11e1
mov ebx, 0x100401
movss xmm7, dword [0x140129d10]
mov ecx, dword [rsp + 0x70]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
cmp dword [r13 + 0x880], 0
jne 0x1400a11e1
nop word [rax + rax]
mov eax, dword [r13 + 0x64]
add eax, 0xffffff38
cmp eax, 0x14
ja 0x1400a11d3
bt ebx, eax
jae 0x1400a11d3
mov rcx, qword [rbp - 0x38]
mov rax, qword [rcx]
lea rdx, [rbp + 0x28]
mov qword [rsp + 0x28], rdx
lea rdx, [rbp + 0x30]
mov qword [rsp + 0x20], rdx
lea r9, [rbp + 0x20]
lea r8, [rbp]
lea rdx, [rbp - 0x20]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
test eax, eax
jne 0x1400a11d3
mov rcx, qword [rbp - 0x28]
mov rax, qword [rcx]
lea rdx, [r13 + 0x8d0]
call qword [rax + 0x48]
call fcn.14001dc30
mov rcx, r13
test dword [rax + 4], 0x2000000
je 0x1400a0ec4
call fcn.14009e320
jmp 0x1400a0eda
movss xmm3, dword [r13 + 0x8d0]
mov r8d, dword [rbp]
mov rdx, qword [rbp - 0x20]
call fcn.14009e600
test eax, eax
jne 0x1400a0ef0
mov rcx, qword [rbp - 0x38]
mov rax, qword [rcx]
mov edx, dword [rbp]
call qword [rax + 0x20]
jmp 0x1400a11ba
mov r15d, dword [rbp]
mov ebx, r14d
cmp dword [r13 + 0x880], 0
jne 0x1400a11a7
test r15d, r15d
je 0x1400a11a3
mov eax, dword [r13 + 0x64]
cmp eax, 0xc8
jne 0x1400a115c
mov edi, dword [rsp + 0x44]
mov r14d, edi
cmp r15d, edi
cmovbe r14d, r15d
mov eax, r15d
sub r15d, edi
cmp eax, edi
mov eax, 0
cmovbe r15d, eax
mov r8, qword [rsp + 0x78]
xor edx, edx
mov rcx, r12
call fcn.1400c53e0
mov r8, qword [rsp + 0x68]
xor edx, edx
mov rcx, qword [rsp + 0x48]
call fcn.1400c53e0
mov r8, qword [rsp + 0x68]
xor edx, edx
mov rcx, rsi
call fcn.1400c53e0
imul edi, ebx
imul edi, dword [rsp + 0x50]
add rdi, qword [rbp - 0x20]
inc ebx
mov dword [rsp + 0x54], ebx
mov eax, r14d
imul eax, dword [rsp + 0x50]
mov ebx, eax
mov r8d, eax
mov rdx, rdi
mov rcx, qword [rsp + 0x48]
call fcn.1400c5690
mov r8d, ebx
mov rdx, rdi
mov rcx, rsi
call fcn.1400c5690
cmp qword [rsp + 0x60], 0
jne 0x1400a0ffa
mov rax, qword [rbp - 0x50]
movzx r8d, word [rax + 2]
imul r8d, r14d
xor eax, eax
mov edx, eax
test r8d, r8d
je 0x1400a0ffa
mov rcx, rsi
mov r9, qword [rsp + 0x48]
sub r9, rsi
nop
mov rax, qword [rbp - 0x50]
cmp word [rax], 0x20
jne 0x1400a136d
movd xmm0, dword [r9 + rcx]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm7
movss dword [rcx], xmm0
inc edx
add rcx, 4
cmp edx, r8d
jb 0x1400a0fd0
xor edx, edx
mov ebx, edx
test r14d, r14d
je 0x1400a10bd
mov r11, r12
mov rdi, rsi
sub rdi, r12
mov rax, qword [rbp - 0x50]
movzx r9d, word [rax + 2]
cmp r9d, 1
jbe 0x1400a10a7
xorps xmm1, xmm1
mov r8d, edx
cmp r9d, 4
jb 0x1400a1076
mov edx, r9d
imul edx, ebx
inc edx
lea eax, [r9 - 4]
shr eax, 2
inc eax
mov r10d, eax
lea r8d, [rax*4]
nop dword [rax + rax]
lea eax, [rdx - 1]
addss xmm1, dword [rsi + rax*4]
addss xmm1, dword [rsi + rdx*4]
lea eax, [rdx + 1]
addss xmm1, dword [rsi + rax*4]
lea eax, [rdx + 2]
addss xmm1, dword [rsi + rax*4]
add edx, 4
sub r10, 1
jne 0x1400a1050
cmp r8d, r9d
jae 0x1400a1092
mov edx, r9d
imul edx, ebx
lea eax, [rdx + r8]
addss xmm1, dword [rsi + rax*4]
inc r8d
cmp r8d, r9d
jb 0x1400a1081
xorps xmm0, xmm0
cvtsi2ss xmm0, r9
divss xmm1, xmm0
movss dword [r11], xmm1
xor edx, edx
jmp 0x1400a10ae
mov eax, dword [rdi + r11]
mov dword [r11], eax
inc ebx
add r11, 4
cmp ebx, r14d
jb 0x1400a1010
inc dword [r13 + 0x8f0]
mov r8d, 0x1e0
mov rdx, r12
mov rdi, qword [rbp - 0x80]
mov rcx, rdi
call qword [rbp - 0x78]
mov edx, 0x309
mov rcx, rdi
call qword [rbp - 0x70]
movaps xmm6, xmm0
movss dword [r13 + 0x89c], xmm6
comiss xmm6, dword [r13 + 0x898]
jbe 0x1400a1153
xorps xmm3, xmm3
cvtss2sd xmm3, xmm6
movq r9, xmm3
mov r8d, 0x6eb
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_update_fScore_to_fDetectScore_Max___f
call fcn.14005dbf0
movss dword [r13 + 0x898], xmm6
comiss xmm6, dword [r13 + 0x894]
jb 0x1400a1153
mov r8d, 0x6f0
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_notify_UWP_to__update_detect_score_data
call fcn.14005dbf0
mov edx, 0x1000024c
call fcn.1400b2fd0
mov ebx, dword [rsp + 0x54]
xor r14d, r14d
jmp 0x1400a1195
cmp eax, 0xdc
jne 0x1400a1195
mov r8d, 0x6f7
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_set_m_bStop__TRUE_to_exit_loop
call fcn.14005dbf0
mov dword [r13 + 0x880], 1
mov r15d, r14d
mov dword [r13 + 0x8a0], 1
cmp dword [r13 + 0x880], 0
je 0x1400a0f05
mov r15d, dword [rbp]
mov rcx, qword [rbp - 0x38]
mov rax, qword [rcx]
mov edx, r15d
call qword [rax + 0x20]
cmp dword [rbp], 0
je 0x1400a11ce
cmp dword [r13 + 0x880], 0
jne 0x1400a11e1
mov ebx, 0x100401
jmp 0x1400a0e50
mov ebx, 0x100401
cmp dword [r13 + 0x880], 0
je 0x1400a0e32
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx]
call qword [rax + 0x58]
mov r8d, 0x70d
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_Recording_Finished
call fcn.14005dbf0
mov rcx, rdi
call qword [rbp - 0x68]
mov rcx, rdi
call qword [rbp - 0x60]
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, qword [rsp + 0x48]
test rax, rax
je 0x1400a122c
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
test rsi, rsi
je 0x1400a123a
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov r12, 0xffffffffffffffff
mov rdi, qword [rsp + 0x58]
xor r14d, r14d
mov rcx, qword [rbp - 0x50]
test rcx, rcx
je 0x1400a1258
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoTaskMemFree]
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x1400a1267
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoTaskMemFree]
mov rcx, qword [rbp - 0x30]
test rcx, rcx
je 0x1400a127a
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbp - 0x30], r14
mov rcx, qword [rbp - 0x40]
test rcx, rcx
je 0x1400a128d
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbp - 0x40], r14
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x1400a12a0
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbp - 0x48], r14
mov rcx, qword [rbp - 0x38]
test rcx, rcx
je 0x1400a12b3
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbp - 0x38], r14
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x1400a12c6
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbp - 0x28], r14
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoUninitialize]
test rdi, rdi
je 0x1400a12f7
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
mov r9d, eax
mov r8d, 0x727
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_free_library__success____d
call fcn.14005dbf0
nop
mov rdx, qword [rbp + 0x18]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400a1316
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 8]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r12d
sub r12d, 1
jg 0x1400a1333
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rcx, qword [rbp + 0x860]
xor rcx, rsp
call fcn.1400beb20
lea r11, [rsp + 0x990]
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 rax, qword [rbp - 0x50]
movzx edx, word [rax]
cmp dx, 0x18
jne 0x1400a13a6
movzx eax, word [rax + 0xc]
mov dword [rsp + 0x20], eax
mov r9d, reloc.OLEAUT32.dll_SafeArrayGetElement
mov r8d, 0x6b3
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
lea rcx, str._s__d_so_far__not_support._FormatTag:__d_bits__BlockAlign:__d_bytes
call fcn.14005dbf0
jmp 0x1400a1210
mov rax, qword [rbp - 0x50]
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 0x1400a13dc
mov r9d, 0x10
mov r8d, 0x6b8
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
call fcn.14005dbf0
jmp 0x1400a1210
movzx r9d, dx
mov r8d, 0x6bd
lea rdx, str.CRtkBssGen5SpkTrackEnroll::SpkEnroll_DetectScoreProc
call fcn.14005dbf0
jmp 0x1400a1210
mov ecx, 0x80004005
call fcn.140004fd0
nop
mov ecx, 0x80004005
call fcn.140004fd0
int3