Function at 0x1400aac90
Capabilities:
Log keystrokes via application hook

Disassembly:
mov rax, rsp
push rbp
push rdi
push r12
push r13
push r14
mov rbp, rsp
sub rsp, 0x70
mov qword [rbp - 0x10], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov r13, r8
mov r14, rdx
mov rdi, rcx
call fcn.1400a87b0
mov r12, rax
test rax, rax
je 0x1400ab379
mov rax, qword [rdi + 0x20]
cmp qword [rax + 0x10], 0
je 0x1400aacdd
mov rcx, qword [rax + 0x20]
jmp 0x1400aace1
lea rcx, [rax + 8]
add rax, 8
xor ebx, ebx
cmp rcx, rax
je 0x1400aad13
nop dword [rax]
cmp qword [rcx + 0x20], r12
je 0x1400aad0e
call qword [sym.imp.Qt5Core.dll_public:_struct_QMapNodeBase_const____ptr64___cdecl_QMapNodeBase::nextNode_void_const___ptr64]
mov rcx, rax
mov rax, qword [rdi + 0x20]
add rax, 8
cmp rcx, rax
jne 0x1400aacf0
jmp 0x1400aad13
mov esi, dword [rcx + 0x18]
jmp 0x1400aad15
mov esi, ebx
movzx eax, word [r13 + 0x10]
cmp eax, 6
jl 0x1400ab379
cmp eax, 7
jle 0x1400aaf31
cmp eax, 8
je 0x1400aadcd
cmp eax, 9
jne 0x1400ab379
mov rcx, qword [rdi + 0x150]
test rcx, rcx
je 0x1400aad57
call qword [sym.imp.USER32.dll_UnhookWindowsHookEx]
mov qword [rdi + 0x150], rbx
mov rdx, qword [rdi + 0x160]
test rdx, rdx
je 0x1400aad90
mov rcx, qword [sym.imp.Qt5Core.dll_class_QCoreApplication____ptr64___ptr64_QCoreApplication::self]
mov rcx, qword [rcx]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QCoreApplication::removeNativeEventFilter_class_QAbstractNativeEventFilter____ptr64____ptr64]
mov rcx, qword [rdi + 0x160]
test rcx, rcx
je 0x1400aad89
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov qword [rdi + 0x160], rbx
or eax, 0xffffffff
mov dword [rdi + 0x144], eax
mov rax, qword [rdi + 0x10]
mov rcx, qword [rax + 0x10]
mov eax, dword [rcx + 0x38c]
cmp eax, 5
je 0x1400aadb6
cmp eax, 8
je 0x1400aadb6
cmp eax, 9
jne 0x1400aadbe
mov rcx, rdi
call fcn.1400a8610
mov dl, 1
mov rcx, rdi
call fcn.1400a9690
jmp 0x1400ab379
mov rcx, qword [rdi + 0x150]
test rcx, rcx
je 0x1400aadf3
cmp esi, dword [rdi + 0x144]
je 0x1400aae19
test rcx, rcx
je 0x1400aadf3
call qword [sym.imp.USER32.dll_UnhookWindowsHookEx]
mov qword [rdi + 0x150], rbx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov r8, rax
xor r9d, r9d
lea rdx, [0x1400aa850]
lea ecx, [r9 + 0xd]
call qword [sym.imp.USER32.dll_SetWindowsHookExW]
mov qword [rdi + 0x150], rax
mov rdx, qword [rdi + 0x160]
test rdx, rdx
je 0x1400aae5f
cmp esi, dword [rdi + 0x144]
je 0x1400aae9a
test rdx, rdx
je 0x1400aae5f
mov rax, qword [sym.imp.Qt5Core.dll_class_QCoreApplication____ptr64___ptr64_QCoreApplication::self]
mov rcx, qword [rax]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QCoreApplication::removeNativeEventFilter_class_QAbstractNativeEventFilter____ptr64____ptr64]
mov rcx, qword [rdi + 0x160]
test rcx, rcx
je 0x1400aae58
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov qword [rdi + 0x160], rbx
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
call sub.MSVCR100.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
mov qword [rbp + 0x48], rax
test rax, rax
je 0x1400aae80
mov rdx, rdi
mov rcx, rax
call fcn.1400a7e20
mov rbx, rax
mov qword [rdi + 0x160], rbx
mov rdx, rbx
mov rcx, qword [sym.imp.Qt5Core.dll_class_QCoreApplication____ptr64___ptr64_QCoreApplication::self]
mov rcx, qword [rcx]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QCoreApplication::installNativeEventFilter_class_QAbstractNativeEventFilter____ptr64____ptr64]
mov dword [rdi + 0x144], esi
mov rax, qword [rdi + 0x10]
mov rcx, qword [rax + 0x10]
mov eax, dword [rcx + 0x38c]
cmp eax, 5
je 0x1400aaec1
cmp eax, 8
je 0x1400aaec1
cmp eax, 9
jne 0x1400ab379
test byte [rcx + 0x3c9], 8
jne 0x1400aaf10
mov rax, qword [rdi + 0x30]
mov rcx, qword [rax + 0x18]
cmp byte [rcx + 0x10], 0
je 0x1400aaf10
test byte [rdi + 0x140], 0x20
jne 0x1400aaf10
mov rcx, r12
call qword [sym.imp.Qt5Widgets.dll_public:_unsigned_long_long_unsigned___int64____cdecl_QWidget::winId_void_const___ptr64]
mov rcx, rax
mov edx, 2
call qword [sym.imp.USER32.dll_GetAncestor]
mov rbx, rax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rbx, rax
jne 0x1400aaf10
mov edx, esi
mov rcx, rdi
call fcn.1400a85a0
mov rax, qword [rdi + 0x10]
mov rcx, qword [rax + 0x10]
test byte [rcx + 0x3c9], 8
je 0x1400ab379
and byte [rcx + 0x3c9], 0xf7
jmp 0x1400ab379
movzx ecx, byte [rdi + 0x140]
shr cl, 1
and cl, 1
je 0x1400ab33d
cmp eax, 6
jne 0x1400ab33d
mov eax, dword [r13 + 0x28]
cmp eax, 0x1000030
jl 0x1400ab301
cmp eax, 0x100003b
jg 0x1400ab301
mov r9d, ebx
mov edx, 8
lea ecx, [rdx - 4]
lea r8d, [rdx - 2]
call qword [sym.imp.Qt5Core.dll_public:_static_struct_QArrayData____ptr64___cdecl_QArrayData::allocate_unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___class_QFlags_enum_QArrayData::AllocationOption__]
mov qword [rbp - 0x40], rax
test rax, rax
jne 0x1400aaf8e
call qword [sym.imp.Qt5Core.dll_void___cdecl_qBadAlloc_void_]
mov rax, qword [rbp - 0x40]
mov dword [rax + 4], 6
mov rax, qword [rbp - 0x40]
mov rdx, qword [rax + 0x10]
movsxd rcx, dword [rax + 4]
lea r8, [rdx + rcx*4]
add r8, rax
lea rcx, [rdx + rax]
sub r8, rcx
and r8, 0xfffffffffffffffc
xor edx, edx
call sub.MSVCR100.dll_memset
nop
mov rax, qword [rbp - 0x40]
mov ecx, dword [rax]
cmp ecx, 1
je 0x1400ab007
test ecx, ecx
je 0x1400ab007
mov r8d, dword [rax + 8]
and r8d, 0x7fffffff
jne 0x1400aaff1
lea r9d, [r8 + 2]
xor r8d, r8d
lea edx, [r9 + 6]
lea ecx, [rdx - 4]
call qword [sym.imp.Qt5Core.dll_public:_static_struct_QArrayData____ptr64___cdecl_QArrayData::allocate_unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___class_QFlags_enum_QArrayData::AllocationOption__]
mov qword [rbp - 0x40], rax
jmp 0x1400ab007
mov dword [rbp + 0x48], ebx
mov r9d, ebx
mov edx, dword [rax + 4]
lea rcx, [rbp - 0x40]
call fcn.1400a8a20
mov rax, qword [rbp - 0x40]
mov rcx, qword [rax + 0x10]
mov dword [rax + rcx], 0x1d
mov rax, qword [rbp - 0x40]
mov ecx, dword [rax]
cmp ecx, 1
je 0x1400ab05e
test ecx, ecx
je 0x1400ab05e
mov r8d, dword [rax + 8]
and r8d, 0x7fffffff
jne 0x1400ab048
lea r9d, [r8 + 2]
xor r8d, r8d
lea edx, [r9 + 6]
lea ecx, [rdx - 4]
call qword [sym.imp.Qt5Core.dll_public:_static_struct_QArrayData____ptr64___cdecl_QArrayData::allocate_unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___class_QFlags_enum_QArrayData::AllocationOption__]
mov qword [rbp - 0x40], rax
jmp 0x1400ab05e
mov dword [rbp - 0x18], ebx
mov r9d, ebx
mov edx, dword [rax + 4]
lea rcx, [rbp - 0x40]
call fcn.1400a8a20
mov rax, qword [rbp - 0x40]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rax + 4], 0x38
mov rax, qword [rbp - 0x40]
mov ecx, dword [rax]
cmp ecx, 1
je 0x1400ab0b6
test ecx, ecx
je 0x1400ab0b6
mov r8d, dword [rax + 8]
and r8d, 0x7fffffff
jne 0x1400ab0a0
lea r9d, [r8 + 2]
xor r8d, r8d
lea edx, [r9 + 6]
lea ecx, [rdx - 4]
call qword [sym.imp.Qt5Core.dll_public:_static_struct_QArrayData____ptr64___cdecl_QArrayData::allocate_unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___class_QFlags_enum_QArrayData::AllocationOption__]
mov qword [rbp - 0x40], rax
jmp 0x1400ab0b6
mov dword [rbp - 0x28], ebx
mov r9d, ebx
mov edx, dword [rax + 4]
lea rcx, [rbp - 0x40]
call fcn.1400a8a20
mov rax, qword [rbp - 0x40]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rax + 0x10], 0xb8
mov rax, qword [rbp - 0x40]
mov ecx, dword [rax]
cmp ecx, 1
je 0x1400ab10e
test ecx, ecx
je 0x1400ab10e
mov r8d, dword [rax + 8]
and r8d, 0x7fffffff
jne 0x1400ab0f8
lea r9d, [r8 + 2]
xor r8d, r8d
lea edx, [r9 + 6]
lea ecx, [rdx - 4]
call qword [sym.imp.Qt5Core.dll_public:_static_struct_QArrayData____ptr64___cdecl_QArrayData::allocate_unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___class_QFlags_enum_QArrayData::AllocationOption__]
mov qword [rbp - 0x40], rax
jmp 0x1400ab10e
mov dword [rbp - 0x24], ebx
mov r9d, ebx
mov edx, dword [rax + 4]
lea rcx, [rbp - 0x40]
call fcn.1400a8a20
mov rax, qword [rbp - 0x40]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rax + 0x14], RegisterTypeLib
mov esi, dword [r13 + 0x28]
cmp esi, 0x1000030
jl 0x1400ab1eb
cmp esi, 0x1000039
jg 0x1400ab1eb
mov rax, qword [rbp - 0x40]
mov ecx, dword [rax]
cmp ecx, 1
je 0x1400ab182
test ecx, ecx
je 0x1400ab182
mov r8d, dword [rax + 8]
and r8d, 0x7fffffff
jne 0x1400ab16c
lea r9d, [r8 + 2]
xor r8d, r8d
lea edx, [r9 + 6]
lea ecx, [rdx - 4]
call qword [sym.imp.Qt5Core.dll_public:_static_struct_QArrayData____ptr64___cdecl_QArrayData::allocate_unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___class_QFlags_enum_QArrayData::AllocationOption__]
mov qword [rbp - 0x40], rax
jmp 0x1400ab182
mov dword [rbp - 0x2c], ebx
mov r9d, ebx
mov edx, dword [rax + 4]
lea rcx, [rbp - 0x40]
call fcn.1400a8a20
mov rax, qword [rbp - 0x40]
lea edx, [rsi - 0xfffff5]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rax + 8], edx
mov esi, dword [r13 + 0x28]
mov rax, qword [rbp - 0x40]
mov ecx, dword [rax]
cmp ecx, 1
je 0x1400ab1e0
test ecx, ecx
je 0x1400ab1e0
mov r8d, dword [rax + 8]
and r8d, 0x7fffffff
jne 0x1400ab1ca
lea r9d, [r8 + 2]
xor r8d, r8d
lea edx, [r9 + 6]
lea ecx, [rdx - 4]
call qword [sym.imp.Qt5Core.dll_public:_static_struct_QArrayData____ptr64___cdecl_QArrayData::allocate_unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___class_QFlags_enum_QArrayData::AllocationOption__]
mov qword [rbp - 0x40], rax
jmp 0x1400ab1e0
mov dword [rbp - 0x38], ebx
mov r9d, ebx
mov edx, dword [rax + 4]
lea rcx, [rbp - 0x40]
call fcn.1400a8a20
mov rax, qword [rbp - 0x40]
lea edx, [rsi - 0xffff75]
jmp 0x1400ab2b3
cmp esi, 0x100003a
jl 0x1400ab2bb
cmp esi, 0x100003b
jg 0x1400ab2bb
mov rax, qword [rbp - 0x40]
mov ecx, dword [rax]
cmp ecx, 1
je 0x1400ab24f
test ecx, ecx
je 0x1400ab24f
mov r8d, dword [rax + 8]
and r8d, 0x7fffffff
jne 0x1400ab239
lea r9d, [r8 + 2]
xor r8d, r8d
lea edx, [r9 + 6]
lea ecx, [rdx - 4]
call qword [sym.imp.Qt5Core.dll_public:_static_struct_QArrayData____ptr64___cdecl_QArrayData::allocate_unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___class_QFlags_enum_QArrayData::AllocationOption__]
mov qword [rbp - 0x40], rax
jmp 0x1400ab24f
mov dword [rbp - 0x34], ebx
mov r9d, ebx
mov edx, dword [rax + 4]
lea rcx, [rbp - 0x40]
call fcn.1400a8a20
mov rax, qword [rbp - 0x40]
lea edx, [rsi - 0xffffe3]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rax + 8], edx
mov esi, dword [r13 + 0x28]
mov rax, qword [rbp - 0x40]
mov ecx, dword [rax]
cmp ecx, 1
je 0x1400ab2ad
test ecx, ecx
je 0x1400ab2ad
mov r8d, dword [rax + 8]
and r8d, 0x7fffffff
jne 0x1400ab297
lea r9d, [r8 + 2]
xor r8d, r8d
lea edx, [r9 + 6]
lea ecx, [rdx - 4]
call qword [sym.imp.Qt5Core.dll_public:_static_struct_QArrayData____ptr64___cdecl_QArrayData::allocate_unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___class_QFlags_enum_QArrayData::AllocationOption__]
mov qword [rbp - 0x40], rax
jmp 0x1400ab2ad
mov dword [rbp - 0x30], ebx
mov r9d, ebx
mov edx, dword [rax + 4]
lea rcx, [rbp - 0x40]
call fcn.1400a8a20
mov rax, qword [rbp - 0x40]
lea edx, [rsi - 0xffff63]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rax + 0xc], edx
mov rax, qword [rdi + 0x10]
mov rcx, qword [rax + 0x10]
add rcx, 0x288
lea rdx, [rbp - 0x40]
call fcn.14022e4d0
nop
mov rcx, qword [rbp - 0x40]
mov eax, dword [rcx]
test eax, eax
je 0x1400ab2f2
cmp eax, 0xffffffff
je 0x1400ab301
lock add dword [rcx], 0xffffffff
setne al
test al, al
jne 0x1400ab301
mov rcx, qword [rbp - 0x40]
mov edx, 4
lea r8d, [rdx + 4]
call qword [sym.imp.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData____ptr64__unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64__]
mov dword [rsp + 0x20], ebx
xor r9d, r9d
xor r8d, r8d
mov edx, dword [r13 + 0x28]
lea rcx, [rbp - 0x20]
call qword [sym.imp.Qt5Gui.dll_public:_void___cdecl_QKeySequence::constructor_int__int__int__int____ptr64]
mov rbx, rax
mov rcx, qword [rdi + 0x10]
call fcn.1400ac9d0
mov rcx, rax
mov rdx, rbx
call fcn.14003c870
nop
lea rcx, [rbp - 0x20]
call qword [sym.imp.Qt5Gui.dll_public:_void___cdecl_QKeySequence::destructor_void____ptr64]
jmp 0x1400ab379
test cl, cl
jne 0x1400ab379
cmp eax, 7
jne 0x1400ab379
mov rsi, qword [rdi + 0x10]
mov rax, qword [rsi + 0x10]
mov edx, dword [rax + 0x38c]
cmp edx, 6
je 0x1400ab35e
cmp edx, 0xe
jne 0x1400ab379
call fcn.140059450
mov rbx, rax
mov rcx, rsi
call fcn.1400adcc0
mov rdx, rax
mov rcx, rbx
call fcn.14005bf00
mov r8, r13
mov rdx, r14
mov rcx, rdi
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rbp
jmp qword [sym.imp.Qt5Core.dll_public_virtual:_bool___cdecl_QObject::eventFilter_class_QObject____ptr64__class_QEvent____ptr64____ptr64]