Function at 0x14003ecc0
Capabilities:
Execute anti-debugging instructions

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xe0
mov rax, qword [0x1400dc040]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov rbx, rdx
mov rdi, rcx
cmp qword [0x1400e1690], 0
je 0x14003f48a
cmp qword [rcx + 0x350], 0
je 0x14003f4b0
cmp qword [rcx + 0x358], 0
je 0x14003f4d6
test rdx, rdx
je 0x14003f464
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rcx + 0x3d0], rax
xor r13d, r13d
mov r14d, r13d
xchg byte [rcx + 0x360], r14b
mov rax, qword [rbx]
lea r8, [rbp + 0xf]
lea rdx, [0x1400b1810]
mov rcx, rbx
call qword [rax + 0x38]
mov esi, 0xffffffff
test eax, eax
mov eax, esi
js 0x14003ed62
mov eax, dword [rbp + 0xf]
mov r12d, eax
mov rax, qword [rbx]
lea r8, [rbp + 0x17]
lea rdx, [0x1400b1858]
mov rcx, rbx
call qword [rax + 0x38]
test eax, eax
js 0x14003ed80
mov esi, dword [rbp + 0x17]
mov r15d, esi
mov qword [rsp + 0x30], r13
mov qword [rbp + 0x17], r13
mov qword [rbp + 0xf], r13
mov rax, qword [rbx]
lea rdx, [rbp + 0x17]
mov rcx, rbx
call qword [rax + 0x118]
mov esi, eax
test eax, eax
jns 0x14003ede4
mov dword [rsp + 0x20], 0xfd
lea r9, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
mov r8d, eax
lea rdx, str.sample__GetSampleTime__timestamp__
lea rcx, str._s____0x_08X___s__d_
call fcn.140011520
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14003eddd
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov eax, esi
jmp 0x14003f43d
mov rax, qword [rbx]
lea rdx, [rbp + 0xf]
mov rcx, rbx
call qword [rax + 0x128]
mov esi, eax
test eax, eax
jns 0x14003ee38
mov dword [rsp + 0x20], 0xfe
lea r9, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
mov r8d, eax
lea rdx, str.sample__GetSampleDuration__duration__
lea rcx, str._s____0x_08X___s__d_
call fcn.140011520
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14003ee31
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov eax, esi
jmp 0x14003f43d
mov qword [rsp + 0x38], r13
mov rax, qword [rbx]
lea r8, [rsp + 0x38]
xor edx, edx
mov rcx, rbx
call qword [rax + 0x140]
mov ebx, eax
test eax, eax
jns 0x14003eeaa
mov dword [rsp + 0x20], 0x100
lea r9, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
mov r8d, eax
lea rdx, str.sample__GetBufferByIndex__0__mfBuffer.ReleaseAndGetAddressOf____
lea rcx, str._s____0x_08X___s__d_
call fcn.140011520
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14003ee92
mov qword [rsp + 0x38], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14003eea3
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov eax, ebx
jmp 0x14003f43d
mov qword [rbp - 0x79], r13
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx]
lea r8, [rbp - 0x79]
lea rdx, [0x1400ba940]
call qword [rax]
mov ebx, eax
test eax, eax
jns 0x14003ef31
mov dword [rsp + 0x20], 0x102
lea r9, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
mov r8d, eax
lea rdx, str.mfBuffer__QueryInterface__dxBuffer.ReleaseAndGetAddressOf____
lea rcx, str._s____0x_08X___s__d_
call fcn.140011520
nop
mov rcx, qword [rbp - 0x79]
test rcx, rcx
je 0x14003ef03
mov qword [rbp - 0x79], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14003ef19
mov qword [rsp + 0x38], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14003ef2a
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov eax, ebx
jmp 0x14003f43d
mov dword [rbp - 0x69], r13d
mov rcx, qword [rbp - 0x79]
mov rax, qword [rcx]
lea rdx, [rbp - 0x69]
call qword [rax + 0x20]
mov ebx, eax
test eax, eax
jns 0x14003efb1
mov dword [rsp + 0x20], 0x104
lea r9, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
mov r8d, eax
lea rdx, str.dxBuffer__GetSubresourceIndex__subRcIdx__
lea rcx, str._s____0x_08X___s__d_
call fcn.140011520
nop
mov rcx, qword [rbp - 0x79]
test rcx, rcx
je 0x14003ef83
mov qword [rbp - 0x79], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14003ef99
mov qword [rsp + 0x38], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14003efaa
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov eax, ebx
jmp 0x14003f43d
mov qword [rbp - 0x71], r13
mov rcx, qword [rbp - 0x79]
mov rax, qword [rcx]
lea r8, [rbp - 0x71]
lea rdx, [0x1400b6408]
call qword [rax + 0x18]
mov ebx, eax
test eax, eax
jns 0x14003f04c
mov dword [rsp + 0x20], 0x106
lea r9, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
mov r8d, eax
lea rdx, str.dxBuffer__GetResource__IID_PPV_ARGS__texture.ReleaseAndGetAddressOf______
lea rcx, str._s____0x_08X___s__d_
call fcn.140011520
nop
mov rcx, qword [rbp - 0x71]
test rcx, rcx
je 0x14003f00a
mov qword [rbp - 0x71], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rbp - 0x79]
test rcx, rcx
je 0x14003f01e
mov qword [rbp - 0x79], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14003f034
mov qword [rsp + 0x38], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14003f045
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov eax, ebx
jmp 0x14003f43d
mov rbx, qword [rdi + 0x350]
mov rax, qword [rbx]
mov rsi, qword [rax + 0x188]
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14003f06d
mov rax, qword [rcx]
call qword [rax + 8]
xor r9d, r9d
lea r8, [rsp + 0x30]
mov rdx, qword [rbp - 0x71]
mov rcx, rbx
call rsi
mov ecx, eax
call fcn.1400419e0
mov ebx, eax
test eax, eax
jns 0x14003f107
mov dword [rsp + 0x20], 0x109
lea r9, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
mov r8d, eax
lea rdx, str.::dte::amd::ToHresult_m_context__CreateSurfaceFromDX11Native__texture.Get____surface__nullptr___
lea rcx, str._s____0x_08X___s__d_
call fcn.140011520
nop
mov rcx, qword [rbp - 0x71]
test rcx, rcx
je 0x14003f0c5
mov qword [rbp - 0x71], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rbp - 0x79]
test rcx, rcx
je 0x14003f0d9
mov qword [rbp - 0x79], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14003f0ef
mov qword [rsp + 0x38], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14003f100
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov eax, ebx
jmp 0x14003f43d
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
mov rdx, qword [rbp + 0x17]
call qword [rax + 0x98]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
mov rdx, qword [rbp + 0xf]
call qword [rax + 0xa8]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0xe0]
test r14b, r14b
je 0x14003f205
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
mov dword [rbp - 0x39], 2
mov qword [rbp - 0x31], 2
movups xmm0, xmmword [rbp - 0x39]
movaps xmmword [rbp - 0x59], xmm0
movsd xmm1, qword [rbp - 0x29]
movsd qword [rbp - 0x49], xmm1
lea r8, [rbp - 0x59]
lea rdx, str.HevcForcePictureType
call qword [rax + 0x18]
nop
mov ecx, eax
call fcn.1400419e0
mov ebx, eax
test eax, eax
jns 0x14003f205
mov dword [rsp + 0x20], 0x112
lea r9, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
mov r8d, eax
lea rdx, str.::dte::amd::ToHresult_surface__SetProperty__L_HevcForcePictureType___AMF_VIDEO_ENCODER_HEVC_PICTURE_TYPE_IDR___
lea rcx, str._s____0x_08X___s__d_
call fcn.140011520
nop
mov rcx, qword [rbp - 0x71]
test rcx, rcx
je 0x14003f1c3
mov qword [rbp - 0x71], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rbp - 0x79]
test rcx, rcx
je 0x14003f1d7
mov qword [rbp - 0x79], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14003f1ed
mov qword [rsp + 0x38], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14003f1fe
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov eax, ebx
jmp 0x14003f43d
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
mov dword [rbp - 0x21], 2
mov qword [rbp - 0x19], r12
movups xmm0, xmmword [rbp - 0x21]
movaps xmmword [rbp - 0x59], xmm0
movsd xmm1, qword [rbp - 0x11]
movsd qword [rbp - 0x49], xmm1
lea r8, [rbp - 0x59]
lea rdx, str.DteStreamNum
call qword [rax + 0x18]
nop
mov ecx, eax
call fcn.1400419e0
mov ebx, eax
test eax, eax
jns 0x14003f2c2
mov dword [rsp + 0x20], 0x115
lea r9, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
mov r8d, eax
lea rdx, str.::dte::amd::ToHresult_surface__SetProperty__DTE_STR_STREAMNUM__streamNum___
lea rcx, str._s____0x_08X___s__d_
call fcn.140011520
nop
mov rcx, qword [rbp - 0x71]
test rcx, rcx
je 0x14003f280
mov qword [rbp - 0x71], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rbp - 0x79]
test rcx, rcx
je 0x14003f294
mov qword [rbp - 0x79], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14003f2aa
mov qword [rsp + 0x38], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14003f2bb
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov eax, ebx
jmp 0x14003f43d
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
mov dword [rbp - 9], 2
mov qword [rbp - 1], r15
movups xmm0, xmmword [rbp - 9]
movaps xmmword [rbp - 0x59], xmm0
movsd xmm1, qword [rbp + 7]
movsd qword [rbp - 0x49], xmm1
lea r8, [rbp - 0x59]
lea rdx, str.DteFrameNum
call qword [rax + 0x18]
nop
mov ecx, eax
call fcn.1400419e0
mov ebx, eax
test eax, eax
jns 0x14003f37f
mov dword [rsp + 0x20], 0x116
lea r9, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
mov r8d, eax
lea rdx, str.::dte::amd::ToHresult_surface__SetProperty__DTE_STR_FRAMENUM__frameNum___
lea rcx, str._s____0x_08X___s__d_
call fcn.140011520
nop
mov rcx, qword [rbp - 0x71]
test rcx, rcx
je 0x14003f33d
mov qword [rbp - 0x71], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rbp - 0x79]
test rcx, rcx
je 0x14003f351
mov qword [rbp - 0x79], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14003f367
mov qword [rsp + 0x38], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14003f378
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov eax, ebx
jmp 0x14003f43d
mov rcx, qword [rbp - 0x71]
test rcx, rcx
je 0x14003f393
mov qword [rbp - 0x71], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rbp - 0x79]
test rcx, rcx
je 0x14003f3a7
mov qword [rbp - 0x79], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14003f3bd
mov qword [rsp + 0x38], r13
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rdi + 0x358]
mov rax, qword [rcx]
mov rdx, qword [rsp + 0x30]
call qword [rax + 0xb0]
mov ecx, eax
call fcn.1400419e0
mov ebx, eax
test eax, eax
jns 0x14003f41a
mov dword [rsp + 0x20], 0x11a
lea r9, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
mov r8d, eax
lea rdx, str.::dte::amd::ToHresult_m_encoder__SubmitInput__surface___
lea rcx, str._s____0x_08X___s__d_
call fcn.140011520
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14003f416
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov eax, ebx
jmp 0x14003f43d
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rdi + 0x3d8], rax
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14003f43b
mov rax, qword [rcx]
call qword [rax + 8]
nop
xor eax, eax
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.140053bc0
mov rbx, qword [rsp + 0x130]
add rsp, 0xe0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r9d, 0xef
lea r8, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
lea rdx, str.sample
lea rcx, str.ASSERTION_FAILED:__s___s__d_
call fcn.140011520
call fcn.14005e1c0
int3
mov r9d, 0xec
lea r8, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
lea rdx, str.Amf.isLoaded___
lea rcx, str.ASSERTION_FAILED:__s___s__d_
call fcn.140011520
call fcn.14005e1c0
int3
mov r9d, 0xed
lea r8, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
lea rdx, str.m_context
lea rcx, str.ASSERTION_FAILED:__s___s__d_
call fcn.140011520
call fcn.14005e1c0
int3
mov r9d, 0xee
lea r8, str.dte::mfcodec::EncoderAmdHevc::onInputArrived
lea rdx, str.m_encoder
lea rcx, str.ASSERTION_FAILED:__s___s__d_
call fcn.140011520
call fcn.14005e1c0
int3