Function at 0x1400c1980
Capabilities:
Read file via mapping

Disassembly:
mov qword [rsp + 0x10], 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, 0x90
mov rax, qword [0x1401aa010]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov r14, rcx
xor r13d, r13d
mov dword [rbp - 0x19], r13d
lea r12d, [r13 + 1]
call fcn.14000cd60
mov rcx, rax
test rax, rax
je 0x1400c2094
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x14005eeb3.0]
add rax, 0x18
mov qword [rbp + 0x1f], rax
lea rbx, [0x14011c160]
mov rdx, rbx
lea rcx, [rbp + 0x1f]
call fcn.14000c4c0
lea rdi, [r13 - 1]
test al, al
jne 0x1400c1a1e
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x1400c1a04
mov r8d, eax
mov rdx, rbx
lea rcx, [rbp + 0x1f]
call fcn.14000c750
nop
call fcn.1400143d0
test dword [rax + 4], 0x2000000
je 0x1400c1c5d
mov edx, 0x7b
mov rcx, qword [r14 + 0x10]
call fcn.1400fa554
mov rcx, rax
test rax, rax
jne 0x1400c1a4a
mov ecx, edi
jmp 0x1400c1a51
sub rcx, qword [r14 + 0x10]
sar rcx, 1
mov rax, qword [r14 + 0x10]
mov r9d, dword [rax - 0x10]
sub r9d, ecx
mov r8d, ecx
lea rdx, [rbp + 0xf]
lea rcx, [r14 + 0x10]
call fcn.140019190
mov dword [rbp - 0x19], r12d
mov qword [rbp - 0x11], r13
mov rbx, qword [rbp + 0xf]
lea r12, [rbx - 0x18]
mov rcx, qword [r12]
test rcx, rcx
je 0x1400c1a9a
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x14005eeb3.0]
mov rcx, rax
test rax, rax
jne 0x1400c1abe
call fcn.14000cd60
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x14005eeb3.0]
mov rcx, rax
test rax, rax
je 0x1400c209f
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x14005eeb3.0]
add rax, 0x18
mov qword [rbp - 0x11], rax
mov dword [rbp - 0x19], 3
mov ecx, dword [rbx - 0x10]
lea rdx, str.GlobalRtk_Gen4BSSNLT2_
mov rax, rdi
nop word [rax + rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x1400c1af0
mov dword [rsp + 0x20], ecx
mov r9, rbx
mov r8d, eax
lea rcx, [rbp - 0x11]
call fcn.140019320
nop
mov qword [rbp - 9], r13
mov rbx, qword [rbp - 0x11]
lea r15, [rbx - 0x18]
mov rcx, qword [r15]
test rcx, rcx
je 0x1400c1b37
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x14005eeb3.0]
mov rcx, rax
test rax, rax
jne 0x1400c1b5b
call fcn.14000cd60
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x14005eeb3.0]
mov rcx, rax
test rax, rax
je 0x1400c20aa
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x14005eeb3.0]
add rax, 0x18
mov qword [rbp - 9], rax
mov dword [rbp - 0x19], 7
lea r9, str._C18E2F7E_933D_4965_B7D1_1EEF228D2AF3
mov rax, rdi
inc rax
cmp word [r9 + rax*2], 0
jne 0x1400c1b81
mov dword [rsp + 0x20], eax
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rbp - 9]
call fcn.140019320
mov rdx, qword [rbp - 9]
lea rbx, [rdx - 0x18]
mov rsi, qword [rbp + 0x1f]
add rsi, 0xffffffffffffffe8
cmp rbx, rsi
je 0x1400c1c0a
cmp dword [rsi + 0x10], 0
jl 0x1400c1bfd
mov rax, qword [rsi]
cmp qword [rbx], rax
jne 0x1400c1bfd
mov rcx, rbx
call fcn.14000ec00
mov r13, rax
mov ecx, edi
lock xadd dword [rsi + 0x10], ecx
sub ecx, 1
jg 0x1400c1bf0
lfence
mov rcx, qword [rsi]
mov r8, qword [rcx]
mov rdx, rsi
mov rax, qword [r8 + 8]
call qword [case.0x14005eeb3.0]
lea rax, [r13 + 0x18]
mov qword [rbp + 0x1f], rax
xor r13d, r13d
jmp 0x1400c1c0a
mov r8d, dword [rdx - 0x10]
lea rcx, [rbp + 0x1f]
call fcn.14000c750
mov dword [rbp - 0x19], 3
mov eax, edi
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x1400c1c34
lfence
mov rcx, qword [rbx]
mov rax, qword [rcx]
mov rdx, rbx
mov rax, qword [rax + 8]
call qword [case.0x14005eeb3.0]
nop
mov eax, edi
lock xadd dword [r15 + 0x10], eax
sub eax, 1
jg 0x1400c1c58
lfence
mov rcx, qword [r15]
mov rax, qword [rcx]
mov rdx, r15
mov rax, qword [rax + 8]
call qword [case.0x14005eeb3.0]
nop
jmp 0x1400c1e98
call fcn.1400143d0
test dword [rax + 4], 0x10000
je 0x1400c1ec3
mov edx, 0x7b
mov rcx, qword [r14 + 0x10]
call fcn.1400fa554
mov rcx, rax
test rax, rax
jne 0x1400c1c89
mov ecx, edi
jmp 0x1400c1c90
sub rcx, qword [r14 + 0x10]
sar rcx, 1
mov rax, qword [r14 + 0x10]
mov r9d, dword [rax - 0x10]
sub r9d, ecx
mov r8d, ecx
lea rdx, [rbp + 0x17]
lea rcx, [r14 + 0x10]
call fcn.140019190
mov dword [rbp - 0x19], 8
mov qword [rbp - 1], r13
mov rbx, qword [rbp + 0x17]
lea r12, [rbx - 0x18]
mov rcx, qword [r12]
test rcx, rcx
je 0x1400c1cdc
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x14005eeb3.0]
mov rcx, rax
test rax, rax
jne 0x1400c1d00
call fcn.14000cd60
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x14005eeb3.0]
mov rcx, rax
test rax, rax
je 0x1400c20b5
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x14005eeb3.0]
add rax, 0x18
mov qword [rbp - 1], rax
mov dword [rbp - 0x19], reloc.OLEAUT32.dll_SafeArrayGetElement
mov ecx, dword [rbx - 0x10]
lea rdx, str.GlobalRtk_Gen4BSSNL_
mov rax, rdi
nop dword [rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x1400c1d30
mov dword [rsp + 0x20], ecx
mov r9, rbx
mov r8d, eax
lea rcx, [rbp - 1]
call fcn.140019320
nop
mov qword [rbp + 7], r13
mov rbx, qword [rbp - 1]
lea r15, [rbx - 0x18]
mov rcx, qword [r15]
test rcx, rcx
je 0x1400c1d77
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x14005eeb3.0]
mov rcx, rax
test rax, rax
jne 0x1400c1d9b
call fcn.14000cd60
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x14005eeb3.0]
mov rcx, rax
test rax, rax
je 0x1400c2089
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x14005eeb3.0]
add rax, 0x18
mov qword [rbp + 7], rax
mov dword [rbp - 0x19], 0x38
lea r9, str._C18E2F7E_933D_4965_B7D1_1EEF228D2AF3
mov rax, rdi
inc rax
cmp word [r9 + rax*2], 0
jne 0x1400c1dc1
mov dword [rsp + 0x20], eax
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rbp + 7]
call fcn.140019320
mov rdx, qword [rbp + 7]
lea rbx, [rdx - 0x18]
mov rsi, qword [rbp + 0x1f]
add rsi, 0xffffffffffffffe8
cmp rbx, rsi
je 0x1400c1e4a
cmp dword [rsi + 0x10], 0
jl 0x1400c1e3d
mov rax, qword [rsi]
cmp qword [rbx], rax
jne 0x1400c1e3d
mov rcx, rbx
call fcn.14000ec00
mov r13, rax
mov ecx, edi
lock xadd dword [rsi + 0x10], ecx
sub ecx, 1
jg 0x1400c1e30
lfence
mov rcx, qword [rsi]
mov r8, qword [rcx]
mov rdx, rsi
mov rax, qword [r8 + 8]
call qword [case.0x14005eeb3.0]
lea rax, [r13 + 0x18]
mov qword [rbp + 0x1f], rax
xor r13d, r13d
jmp 0x1400c1e4a
mov r8d, dword [rdx - 0x10]
lea rcx, [rbp + 0x1f]
call fcn.14000c750
mov dword [rbp - 0x19], reloc.OLEAUT32.dll_SafeArrayGetElement
mov eax, edi
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x1400c1e74
lfence
mov rcx, qword [rbx]
mov rax, qword [rcx]
mov rdx, rbx
mov rax, qword [rax + 8]
call qword [case.0x14005eeb3.0]
nop
mov eax, edi
lock xadd dword [r15 + 0x10], eax
sub eax, 1
jg 0x1400c1e98
lfence
mov rcx, qword [r15]
mov rax, qword [rcx]
mov rdx, r15
mov rax, qword [rax + 8]
call qword [case.0x14005eeb3.0]
nop
mov eax, edi
lock xadd dword [r12 + 0x10], eax
sub eax, 1
jg 0x1400c1ebd
lfence
mov rcx, qword [r12]
mov rax, qword [rcx]
mov rdx, r12
mov rax, qword [rax + 8]
call qword [case.0x14005eeb3.0]
mov r12d, 1
mov rbx, qword [rbp + 0x1f]
mov r9, rbx
mov r8d, 0x7a2
lea rdx, str.CRtkBssGen5SpkTrackEnroll::CheckSNR
lea rcx, str._s__d_csTmpEndpointId__s
call fcn.140075db0
mov r8, rbx
xor edx, edx
lea ecx, [rdx + 4]
call qword [sym.imp.api_ms_win_core_memory_l1_1_0.dll_OpenFileMappingW]
mov r15, rax
test rax, rax
jne 0x1400c1f17
lea rcx, str._s__d_OpenFileMapping_fail
mov r8d, 0x7aa
lea rdx, str.CRtkBssGen5SpkTrackEnroll::CheckSNR
call fcn.140075db0
jmp 0x1400c2038
mov qword [rsp + 0x20], 0x20
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 4]
mov rcx, r15
call qword [sym.imp.api_ms_win_core_memory_l1_1_0.dll_MapViewOfFile]
mov rsi, rax
test rax, rax
jne 0x1400c1f62
mov rcx, r15
call qword [sym.imp.api_ms_win_core_handle_l1_1_0.dll_CloseHandle]
lea rcx, str._s__d_MapViewOfFile_fail
mov r8d, 0x7b7
lea rdx, str.CRtkBssGen5SpkTrackEnroll::CheckSNR
call fcn.140075db0
jmp 0x1400c2038
call fcn.1400143d0
test dword [rax + 4], 0x2000000
je 0x1400c1f7f
mov eax, dword [rsi + 4]
mov dword [r14 + 0x958], eax
mov eax, dword [rsi + 8]
jmp 0x1400c1f9a
call fcn.1400143d0
test dword [rax + 4], 0x10000
je 0x1400c1fa1
mov eax, dword [rsi + 4]
mov dword [r14 + 0x958], eax
mov eax, dword [rsi + 0xc]
mov dword [r14 + 0x95c], eax
movss xmm3, dword [r14 + 0x958]
movss xmm2, dword [r14 + 0x960]
comiss xmm3, xmm2
ja 0x1400c1fcf
movss xmm1, dword [r14 + 0x95c]
movss xmm0, dword [r14 + 0x964]
comiss xmm0, xmm1
jbe 0x1400c1fe4
mov r12d, r13d
movss xmm0, dword [r14 + 0x964]
movss xmm1, dword [r14 + 0x95c]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
cvtps2pd xmm3, xmm3
mov dword [rsp + 0x38], r12d
movsd qword [rsp + 0x30], xmm0
movsd qword [rsp + 0x28], xmm1
movsd qword [rsp + 0x20], xmm2
movq r9, xmm3
mov r8d, 0x7c9
lea rdx, str.CRtkBssGen5SpkTrackEnroll::CheckSNR
lea rcx, str._s__d_Noise__f__f__Speech__f__f___bRet___d
call fcn.140075db0
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_memory_l1_1_0.dll_UnmapViewOfFile]
mov rcx, r15
call qword [sym.imp.api_ms_win_core_handle_l1_1_0.dll_CloseHandle]
nop
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x1400c2059
lfence
mov rcx, qword [rdx]
mov r8, qword [rcx]
mov rax, qword [r8 + 8]
call qword [case.0x14005eeb3.0]
mov eax, r12d
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.1400f4410
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x38]
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 ecx, 0x80004005
call fcn.14000ce90
nop
mov ecx, 0x80004005
call fcn.14000ce90
nop
mov ecx, 0x80004005
call fcn.14000ce90
nop
mov ecx, 0x80004005
call fcn.14000ce90
nop
mov ecx, 0x80004005
call fcn.14000ce90
int3