Function at 0x140039c90
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1b8]
sub rsp, 0x290
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x1400f0080]
xor rax, rsp
mov qword [rbp + 0xe0], rax
mov rdi, rdx
mov qword [rbp - 0x60], rdx
xor r12d, r12d
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x1400df7f4]
movss dword [0x1400f13c0], xmm0
lea ecx, [r12 + 1]
call qword [sym.imp.USER32.dll_GetSystemMetrics]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x1400df804]
movss dword [0x1400f13c4], xmm0
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x1400df888]
cvtpd2ps xmm0, xmm0
movss dword [0x1400f13c8], xmm0
lea ecx, [r12 + 1]
call qword [sym.imp.USER32.dll_GetSystemMetrics]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x1400df818]
movss dword [0x1400f13cc], xmm0
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x1400df7c8]
movss dword [0x1400f1320], xmm0
lea ecx, [r12 + 1]
call qword [sym.imp.USER32.dll_GetSystemMetrics]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x1400df7e4]
movss dword [0x1400f1324], xmm0
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x1400df800]
movss dword [0x1400f1328], xmm0
lea ecx, [r12 + 1]
call qword [sym.imp.USER32.dll_GetSystemMetrics]
movd xmm15, eax
cvtdq2ps xmm15, xmm15
mulss xmm15, dword [0x1400df838]
movss dword [0x1400f132c], xmm15
movss xmm0, dword [0x1400f1354]
movss xmm7, dword [0x1400df810]
subss xmm0, xmm7
movss xmm8, dword [0x1400df8c4]
mulss xmm0, xmm8
cvtps2pd xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
movsd xmm10, qword [0x1400df8a0]
addsd xmm0, xmm10
movsd xmm11, qword [0x1400df898]
mulsd xmm0, xmm11
xorps xmm4, xmm4
cvtsd2ss xmm4, xmm0
movss xmm14, dword [0x1400f1320]
subss xmm14, dword [0x1400f13c0]
mulss xmm14, xmm4
addss xmm14, dword [0x1400f13c0]
movss xmm13, dword [0x1400f1324]
subss xmm13, dword [0x1400f13c4]
mulss xmm13, xmm4
addss xmm13, dword [0x1400f13c4]
movss xmm1, dword [0x1400f1328]
subss xmm1, dword [0x1400f13c8]
mulss xmm1, xmm4
addss xmm1, dword [0x1400f13c8]
movss dword [rsp + 0x58], xmm1
subss xmm15, dword [0x1400f13cc]
mulss xmm15, xmm4
addss xmm15, dword [0x1400f13cc]
cmp byte [0x1400f03e4], r12b
jne 0x140039ef8
mov ecx, dword [reloc.XINPUT1_3.dll_Ordinal_2]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x58], xmm1
mov qword [rbp + 0x68], r12
movdqu xmmword [rbp + 0x28], xmm1
mov qword [rbp + 0x38], r12
mov r9, r12
mov qword [rbp - 0x58], r12
mov r8, qword [rdi]
mov rcx, qword [rdi + 8]
sub rcx, r8
movabs r13, 0x2aaaaaaaaaaaaaab
mov rax, r13
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x14003a18c
mov r14, r12
movsd xmm6, qword [0x1400df878]
nop dword [rax]
mov rbx, qword [r14 + r8 + 0x10]
mov r13d, r12d
cmp dword [r14 + r8 + 8], 0
jle 0x14003a153
xorps xmm0, xmm0
movups xmmword [rbp + 0x80], xmm0
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0xc0], xmm0
movups xmmword [rbp + 0xd0], xmm0
lea rdx, [r14 + r8]
mov dword [rbp - 0x80], 0x80000000
mov dword [rbp - 0x7c], 0x7fffffff
mov dword [rbp - 0x78], r13d
lea eax, [r13 + 1]
mov r13d, eax
mov dword [rbp - 0x74], eax
lea r9, [rbp - 0x80]
lea r8, [rbp - 0x78]
lea rcx, [rbp - 0x50]
call qword [sym.imp.opencv_world452.dll_public:_void___cdecl_cv::Mat::constructor_class_cv::Mat_const____ptr64__class_cv::Range_const____ptr64__class_cv::Range_const____ptr64____ptr64]
nop
mov rax, qword [rdi]
mov ecx, dword [r14 + rax + 0xc]
mov dword [rbp - 0x70], 5
mov dword [rbp - 0x6c], ecx
mov dword [rbp - 0x68], 0x80000000
mov dword [rbp - 0x64], 0x7fffffff
lea r9, [rbp - 0x70]
lea r8, [rbp - 0x68]
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0x80]
call qword [sym.imp.opencv_world452.dll_public:_void___cdecl_cv::Mat::constructor_class_cv::Mat_const____ptr64__class_cv::Range_const____ptr64__class_cv::Range_const____ptr64____ptr64]
nop
lea rcx, [rbp - 0x50]
call qword [sym.imp.opencv_world452.dll_public:_void___cdecl_cv::Mat::destructor_void____ptr64]
mov qword [rbp + 0x70], 0
call qword [sym.imp.opencv_world452.dll_class_cv::_InputOutputArray_const____ptr64___cdecl_cv::noArray_void_]
mov qword [rsp + 0x70], 0
mov dword [rsp + 0x60], 0x1010000
lea rcx, [rbp + 0x80]
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x70]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rbp + 0x78]
xor edx, edx
lea rcx, [rsp + 0x60]
call qword [sym.imp.opencv_world452.dll_void___cdecl_cv::minMaxLoc_class_cv::_InputArray_const____ptr64__double____ptr64__double____ptr64__class_cv::Point__int_____ptr64__class_cv::Point__int_____ptr64__class_cv::_InputArray_const____ptr64_]
movsd xmm4, qword [rbp + 0x78]
comisd xmm4, xmm6
jbe 0x14003a12b
movd xmm3, dword [0x1400f14cc]
cvtdq2ps xmm3, xmm3
movaps xmm0, xmm3
mulss xmm0, dword [rbx]
cvttss2si edi, xmm0
movd xmm2, dword [0x1400f14c8]
cvtdq2ps xmm2, xmm2
movaps xmm1, xmm2
mulss xmm1, dword [rbx + 4]
cvttss2si esi, xmm1
mulss xmm3, dword [rbx + 8]
cvttss2si r15d, xmm3
mulss xmm2, dword [rbx + 0xc]
cvttss2si r12d, xmm2
mov eax, r15d
cdq
sub eax, edx
sar eax, 1
sub edi, eax
mov eax, r12d
cdq
sub eax, edx
sar eax, 1
sub esi, eax
cvtpd2ps xmm0, xmm4
movss dword [rsp + 0x5c], xmm0
mov rdx, qword [rbp + 0x60]
cmp rdx, qword [rbp + 0x68]
je 0x14003a0d8
movss dword [rdx], xmm0
add qword [rbp + 0x60], 4
jmp 0x14003a0e6
lea r8, [rsp + 0x5c]
lea rcx, [rbp + 0x58]
call fcn.140052d50
mov dword [rsp + 0x40], edi
mov dword [rsp + 0x44], esi
mov dword [rsp + 0x48], r15d
mov dword [rsp + 0x4c], r12d
mov rdx, qword [rbp + 0x30]
cmp rdx, qword [rbp + 0x38]
je 0x14003a116
mov dword [rdx], edi
mov dword [rdx + 4], esi
mov dword [rdx + 8], r15d
mov dword [rdx + 0xc], r12d
add qword [rbp + 0x30], 0x10
jmp 0x14003a124
lea r8, [rsp + 0x40]
lea rcx, [rbp + 0x28]
call fcn.140052b10
xor r12d, r12d
mov rdi, qword [rbp - 0x60]
lea rcx, [rbp + 0x80]
call qword [sym.imp.opencv_world452.dll_public:_void___cdecl_cv::Mat::destructor_void____ptr64]
mov r8, qword [rdi]
movsxd rax, dword [r14 + r8 + 0xc]
lea rbx, [rbx + rax*4]
cmp r13d, dword [r14 + r8 + 8]
jl 0x140039f64
mov r9, qword [rbp - 0x58]
inc r9
mov qword [rbp - 0x58], r9
add r14, 0x60
mov rcx, qword [rdi + 8]
sub rcx, r8
movabs r13, 0x2aaaaaaaaaaaaaab
mov rax, r13
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r9, rdx
jb 0x140039f50
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
mov qword [rbp + 0x50], r12
mov dword [rsp + 0x30], r12d
movss xmm0, dword [0x1400df85c]
movss dword [rsp + 0x28], xmm0
lea rax, [rbp + 0x40]
mov qword [rsp + 0x20], rax
movss xmm9, dword [0x1400df7ec]
movaps xmm3, xmm9
movaps xmm2, xmm9
lea rdx, [rbp + 0x58]
lea rcx, [rbp + 0x28]
call qword [sym.imp.opencv_world452.dll_void___cdecl_cv::dnn::dnn4_v20210301::NMSBoxes_class_std::vector_class_cv::Rect__int___class_std::allocator_class_cv::Rect__int____const____ptr64__class_std::vector_float__class_std::allocator_float___const____ptr64__float__float__class_std::vector_int__class_std::allocator_int______ptr64__float__int_]
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x10], xmm1
mov qword [rbp + 0x20], r12
mov rbx, r12
mov rax, qword [rbp + 0x48]
mov rcx, qword [rbp + 0x40]
sub rax, rcx
sar rax, 2
test rax, rax
je 0x14003a3fb
movss xmm10, dword [0x1400df834]
movss xmm11, dword [0x1400df808]
movss xmm12, dword [0x1400df7dc]
nop word [rax + rax]
movsxd rax, dword [rcx + rbx*4]
shl rax, 4
add rax, qword [rbp + 0x28]
mov edi, dword [rax]
mov esi, dword [rax + 4]
mov r14d, dword [rax + 8]
mov r15d, dword [rax + 0xc]
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
test eax, eax
jns 0x14003a247
inc eax
sar eax, 1
add eax, 0xffffff83
add eax, edi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
mov ecx, 1
call qword [sym.imp.USER32.dll_GetSystemMetrics]
test eax, eax
jns 0x14003a26c
inc eax
sar eax, 1
add eax, 0xffffff83
add eax, esi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x44], xmm0
movd xmm1, r14d
cvtdq2ps xmm1, xmm1
movss dword [rsp + 0x48], xmm1
movd xmm6, r15d
cvtdq2ps xmm6, xmm6
movss dword [rsp + 0x4c], xmm6
movaps xmm7, xmm9
mov ecx, dword [reloc.WS2_32.dll_accept]
test ecx, ecx
je 0x14003a2c0
sub ecx, 1
je 0x14003a2ba
cmp ecx, 1
jne 0x14003a2c4
movaps xmm7, xmm10
jmp 0x14003a2c4
movaps xmm7, xmm11
jmp 0x14003a2c4
movaps xmm7, xmm12
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x7d
movd xmm8, eax
cvtdq2ps xmm8, xmm8
mov eax, r14d
cdq
sub eax, edx
sar eax, 1
add eax, edi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm8, xmm0
movss dword [rsp + 0x50], xmm8
mov ecx, 1
call qword [sym.imp.USER32.dll_GetSystemMetrics]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x7d
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm6, xmm7
movd xmm0, esi
cvtdq2ps xmm0, xmm0
addss xmm6, xmm0
addss xmm1, xmm6
movss dword [rsp + 0x54], xmm1
comiss xmm8, xmm14
jbe 0x14003a358
movss xmm0, dword [rsp + 0x58]
addss xmm0, xmm14
comiss xmm8, xmm0
jae 0x14003a358
comiss xmm1, xmm13
jbe 0x14003a358
movaps xmm0, xmm15
addss xmm0, xmm13
comiss xmm1, xmm0
jb 0x14003a3bd
movsd xmm6, qword [rsp + 0x50]
movups xmm7, xmmword [rsp + 0x40]
mov rdx, qword [rbp + 0x18]
cmp rdx, qword [rbp + 0x20]
je 0x14003a37c
movups xmmword [rdx], xmm7
movsd qword [rdx + 0x10], xmm6
add qword [rbp + 0x18], 0x18
jmp 0x14003a38a
lea r8, [rsp + 0x40]
lea rcx, [rbp + 0x10]
call fcn.1400528f0
mov rdx, qword [0x1400f17e0]
cmp rdx, qword [0x1400f17e8]
je 0x14003a3ac
movups xmmword [rdx], xmm7
movsd qword [rdx + 0x10], xmm6
add qword [0x1400f17e0], 0x18
jmp 0x14003a3bd
lea r8, [rsp + 0x40]
lea rcx, [0x1400f17d8]
call fcn.1400528f0
inc rbx
mov rax, qword [rbp + 0x48]
mov rcx, qword [rbp + 0x40]
sub rax, rcx
sar rax, 2
cmp rbx, rax
jb 0x14003a220
movss xmm7, dword [0x1400df810]
movss xmm8, dword [0x1400df8c4]
movsd xmm10, qword [0x1400df8a0]
movsd xmm11, qword [0x1400df898]
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ebx, eax
mov ecx, 1
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov r11d, eax
mov r8d, ebx
mov r9d, r12d
mov rcx, qword [rbp + 0x18]
mov rdi, qword [rbp + 0x10]
sub rcx, rdi
mov rax, r13
imul rcx
mov r10, rdx
sar r10, 2
mov rcx, r10
shr rcx, 0x3f
add r10, rcx
movups xmm6, xmmword [rsp + 0x40]
je 0x14003a4e8
mov eax, ebx
cdq
sub eax, edx
sar eax, 1
movd xmm4, eax
cvtdq2ps xmm4, xmm4
mov eax, r11d
cdq
sub eax, edx
sar eax, 1
movd xmm5, eax
cvtdq2ps xmm5, xmm5
mov rdx, rdi
nop word [rax + rax]
movups xmm0, xmmword [rdx]
movups xmmword [rsp + 0x60], xmm0
movsd xmm3, qword [rdx + 0x10]
movaps xmm1, xmm4
subss xmm1, xmm3
cvttss2si ecx, xmm1
movaps xmm2, xmm5
movaps xmm0, xmm3
shufps xmm0, xmm0, 0x55
movsd qword [rsp + 0x70], xmm3
subss xmm2, xmm0
cvttss2si eax, xmm2
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm1
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm0
addsd xmm0, xmm1
sqrtpd xmm0, xmm0
cvttsd2si eax, xmm0
cmp eax, r8d
jge 0x14003a4d2
movups xmm6, xmmword [rdx]
movsd qword [rsp + 0x50], xmm3
cmovge eax, r8d
mov r8d, eax
inc r9d
add rdx, 0x18
movsxd rax, r9d
cmp rax, r10
jb 0x14003a470
cmp byte [reloc.WS2_32.dll_accept], 0
je 0x14003a5c9
cmp r8d, ebx
je 0x14003a5c9
mov eax, ebx
cdq
sub eax, edx
sar eax, 1
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
subss xmm0, dword [rsp + 0x50]
cvttss2si ecx, xmm0
mov eax, r11d
cdq
sub eax, edx
sar eax, 1
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
subss xmm0, dword [rsp + 0x54]
cvttss2si eax, xmm0
xorps xmm1, xmm1
cvtsi2sd xmm1, ecx
mulsd xmm1, xmm1
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
mulsd xmm0, xmm0
addsd xmm0, xmm1
sqrtpd xmm0, xmm0
cvttsd2si ebx, xmm0
movss xmm1, dword [0x1400f1354]
subss xmm1, xmm7
mulss xmm1, xmm8
cvtps2pd xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
addsd xmm0, xmm10
mulsd xmm0, xmm11
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
xorps xmm3, xmm3
cvtsi2ss xmm3, dword [0x1400f03d8]
xorps xmm2, xmm2
cvtsi2ss xmm2, dword [0x1400f03d4]
subss xmm3, xmm2
mulss xmm3, xmm1
addss xmm3, xmm2
cvttss2si eax, xmm3
cdq
sub eax, edx
sar eax, 1
cmp ebx, eax
jge 0x14003a5c9
movaps xmmword [rsp + 0x60], xmm6
movsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x70], xmm0
lea rcx, [rsp + 0x60]
call fcn.140039280
mov rdi, qword [rbp + 0x10]
test rdi, rdi
je 0x14003a62d
mov rcx, qword [rbp + 0x20]
sub rcx, rdi
mov rax, r13
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, rdi
cmp rdx, 0x1000
jb 0x14003a619
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14003a619
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.1400b48b0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], r12
mov rcx, qword [rbp + 0x40]
test rcx, rcx
je 0x14003a682
mov rax, qword [rbp + 0x50]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a671
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14003a671
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400b48b0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x50], r12
mov rcx, qword [rbp + 0x28]
test rcx, rcx
je 0x14003a6cf
mov rdx, qword [rbp + 0x38]
sub rdx, rcx
and rdx, 0xfffffffffffffff0
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a6be
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14003a6be
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400b48b0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x28], xmm0
mov qword [rbp + 0x38], r12
mov rcx, qword [rbp + 0x58]
test rcx, rcx
je 0x14003a710
mov rdx, qword [rbp + 0x68]
sub rdx, rcx
and rdx, 0xfffffffffffffffc
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a70b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14003a70b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400b48b0
mov rcx, qword [rbp + 0xe0]
xor rcx, rsp
call fcn.1400b47c0
lea r11, [rsp + 0x290]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret