Function at 0x14007e8f6
Capabilities:
Log keystrokes via polling

Disassembly:
jmp 0x1401640b0
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
sub rsp, 0xcd0
lea rbp, [rsp + 0x40]
lea rdi, [rsp + 0x40]
mov ecx, 0x234
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0xcf8]
mov rax, qword [0x140207278]
xor rax, rbp
mov qword [rbp + 0xc80], rax
lea rcx, [0x1402227d6]
call fcn.14008004d
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
cvtsi2ss xmm0, eax
movss dword [rbp + 4], xmm0
mov ecx, 1
call qword [sym.imp.USER32.dll_GetSystemMetrics]
cvtsi2ss xmm0, eax
movss dword [rbp + 0x24], xmm0
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x624]
call fcn.14007e194
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
addss xmm0, dword [0x14018fc44]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
addss xmm1, dword [0x14018fc44]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x654]
call fcn.14007ef04
mov qword [rbp + 0xc78], rax
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x674]
call fcn.14007ef04
lea r9, [rbp + 0x624]
mov rcx, qword [rbp + 0xc78]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rbp + 0xcb0]
call fcn.14007f94a
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x694]
call fcn.14007e194
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
addss xmm0, dword [0x14018fc44]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
subss xmm1, dword [0x14018fc44]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x6c4]
call fcn.14007ef04
mov qword [rbp + 0xc78], rax
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x6e4]
call fcn.14007ef04
lea r9, [rbp + 0x694]
mov rcx, qword [rbp + 0xc78]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rbp + 0xcb0]
call fcn.14007f94a
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x704]
call fcn.14007e194
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
subss xmm0, dword [0x14018fc44]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
subss xmm1, dword [0x14018fc44]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x734]
call fcn.14007ef04
mov qword [rbp + 0xc78], rax
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x754]
call fcn.14007ef04
lea r9, [rbp + 0x704]
mov rcx, qword [rbp + 0xc78]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rbp + 0xcb0]
call fcn.14007f94a
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x774]
call fcn.14007e194
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
subss xmm0, dword [0x14018fc44]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
addss xmm1, dword [0x14018fc44]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x7a4]
call fcn.14007ef04
mov qword [rbp + 0xc78], rax
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x7c4]
call fcn.14007ef04
lea r9, [rbp + 0x774]
mov rcx, qword [rbp + 0xc78]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rbp + 0xcb0]
call fcn.14007f94a
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
mov edx, 0xff
lea rcx, [rbp + 0x7e4]
call fcn.14007e194
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
addss xmm0, dword [0x14018fc44]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
addss xmm1, dword [0x14018fc44]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x814]
call fcn.14007ef04
mov qword [rbp + 0xc78], rax
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
addss xmm0, dword [0x14018fc44]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
addss xmm1, dword [0x14018fc44]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x834]
call fcn.14007ef04
lea r9, [rbp + 0x7e4]
mov rcx, qword [rbp + 0xc78]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rbp + 0xcb0]
call fcn.14007f94a
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
mov edx, 0xff
lea rcx, [rbp + 0x854]
call fcn.14007e194
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
addss xmm0, dword [0x14018fc44]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
subss xmm1, dword [0x14018fc44]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x884]
call fcn.14007ef04
mov qword [rbp + 0xc78], rax
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
addss xmm0, dword [0x14018fc44]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
subss xmm1, dword [0x14018fc44]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x8a4]
call fcn.14007ef04
lea r9, [rbp + 0x854]
mov rcx, qword [rbp + 0xc78]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rbp + 0xcb0]
call fcn.14007f94a
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
mov edx, 0xff
lea rcx, [rbp + 0x8c4]
call fcn.14007e194
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
subss xmm0, dword [0x14018fc44]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
subss xmm1, dword [0x14018fc44]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x8f4]
call fcn.14007ef04
mov qword [rbp + 0xc78], rax
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
subss xmm0, dword [0x14018fc44]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
subss xmm1, dword [0x14018fc44]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x914]
call fcn.14007ef04
lea r9, [rbp + 0x8c4]
mov rcx, qword [rbp + 0xc78]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rbp + 0xcb0]
call fcn.14007f94a
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
mov edx, 0xff
lea rcx, [rbp + 0x934]
call fcn.14007e194
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
subss xmm0, dword [0x14018fc44]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
addss xmm1, dword [0x14018fc44]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x964]
call fcn.14007ef04
mov qword [rbp + 0xc78], rax
movss xmm0, dword [rbp + 4]
divss xmm0, dword [0x14018fc30]
subss xmm0, dword [0x14018fc44]
movss xmm1, dword [rbp + 0x24]
divss xmm1, dword [0x14018fc30]
addss xmm1, dword [0x14018fc44]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rbp + 0x984]
call fcn.14007ef04
lea r9, [rbp + 0x934]
mov rcx, qword [rbp + 0xc78]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rbp + 0xcb0]
call fcn.14007f94a
movss xmm0, dword [rbp + 0x24]
divss xmm0, dword [0x14018fc30]
movss dword [rbp + 0x44], xmm0
mov ecx, 0x2d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
test eax, eax
je 0x14016472b
xor eax, eax
cmp eax, 0x8000
je 0x14016472b
movzx eax, byte [0x1401d7891]
test eax, eax
jne 0x140164714
mov dword [rbp + 0xc74], 1
jmp 0x14016471e
mov dword [rbp + 0xc74], 0
movzx eax, byte [rbp + 0xc74]
mov byte [0x1401d7891], al
movzx eax, byte [0x1401d7891]
test eax, eax
je 0x14016483e
movss xmm2, dword [0x1401be6d4]
movss xmm1, dword [0x1401be6c8]
lea rcx, [rbp + 0x9d4]
call fcn.14007ef04
movss xmm0, dword [rbp + 0x44]
subss xmm0, dword [0x14018fc4c]
movaps xmm2, xmm0
movss xmm1, dword [0x14018fc4c]
lea rcx, [rbp + 0x9f4]
call fcn.14007ef04
mov dword [rsp + 0x20], 0x96
mov r9d, 0x1c
mov r8d, 0x17
mov edx, 0x18
lea rcx, [rbp + 0x9a4]
call fcn.14007e194
mov r9, rax
lea r8, [rbp + 0x9d4]
lea rdx, [rbp + 0x9f4]
mov rcx, qword [rbp + 0xcb0]
call fcn.14007f5df
movss xmm2, dword [0x1401be6d8]
movss xmm1, dword [0x1401be6cc]
lea rcx, [rbp + 0xa44]
call fcn.14007ef04
movss xmm0, dword [rbp + 0x44]
subss xmm0, dword [0x14018fc4c]
movaps xmm2, xmm0
movss xmm1, dword [0x14018fc4c]
lea rcx, [rbp + 0xa64]
call fcn.14007ef04
mov dword [rsp + 0x20], 0xfa
mov r9d, 0xdb
mov r8d, 0x5c
mov edx, 0xff
lea rcx, [rbp + 0xa14]
call fcn.14007e194
mov r9, rax
lea r8, [rbp + 0xa44]
lea rdx, [rbp + 0xa64]
mov rcx, qword [rbp + 0xcb0]
call fcn.14007db68
call fcn.14007feea
call fcn.14007e121
mov rcx, qword [rbp + 0xcc0]
call fcn.14007e441
mov qword [rbp + 0x68], rax
cmp qword [rbp + 0x68], 0
jne 0x140164866
xor al, al
jmp 0x140164be7
lea rdx, [rbp + 0x88]
mov rcx, qword [rbp + 0x68]
call fcn.14007f7ce
nop
mov rcx, qword [rbp + 0xcc0]
call fcn.14007d69a
mov qword [rbp + 0xc8], rax
cmp qword [rbp + 0xc8], 0
jne 0x1401648b3
mov byte [rbp + 0xa84], 0
lea rcx, [rbp + 0x88]
call fcn.14007d956
movzx eax, byte [rbp + 0xa84]
jmp 0x140164be7
lea rdx, [rbp + 0xe8]
mov rcx, qword [rbp + 0xc8]
call fcn.14007e149
lea rdx, [0x14020fdc0]
lea rcx, [rbp + 0x118]
call fcn.14007ee9b
lea rax, [rbp + 0xaa8]
mov qword [rbp + 0xad8], rax
lea rdx, [rbp + 0xe8]
mov rcx, qword [rbp + 0xad8]
call fcn.14007ee9b
lea r8, [rbp + 0x118]
mov rdx, rax
mov rcx, qword [rbp + 0xcb8]
call fcn.14007e1cb
movzx eax, al
test eax, eax
jne 0x140164936
mov byte [rbp + 0xaf4], 0
lea rcx, [rbp + 0x88]
call fcn.14007d956
movzx eax, byte [rbp + 0xaf4]
jmp 0x140164be7
lea rdx, [rbp + 0x148]
mov rcx, qword [rbp + 0x68]
call fcn.14007f07b
nop
lea rdx, [rbp + 0x188]
mov rcx, qword [rbp + 0x68]
call fcn.14007d17c
nop
mov rcx, qword [rbp + 0xcc8]
call fcn.14007d69a
mov qword [rbp + 0x1c8], rax
cmp qword [rbp + 0x1c8], 0
jne 0x1401649d1
lea rcx, str._CRACK_CRACK_CRACK_
call fcn.14007e680
lea rcx, str._ERR__pLocalVisualState_is_nullptr_
call fcn.14007e680
mov ecx, 0xa
call qword [sym.imp.ucrtbased.dll_putchar]
mov byte [rbp + 0xb14], 0
lea rcx, [rbp + 0x188]
call fcn.14007d956
nop
lea rcx, [rbp + 0x148]
call fcn.14007d956
nop
lea rcx, [rbp + 0x88]
call fcn.14007d956
movzx eax, byte [rbp + 0xb14]
jmp 0x140164be7
lea rax, [rbp + 0xb58]
mov qword [rbp + 0xb88], rax
lea rdx, [rbp + 0xe8]
mov rcx, qword [rbp + 0xb88]
call fcn.14007ee9b
mov qword [rbp + 0xc78], rax
lea rdx, [rbp + 0xb34]
mov rcx, qword [rbp + 0x1c8]
call fcn.14007e149
mov rcx, qword [rbp + 0xc78]
mov rdx, rcx
mov rcx, rax
call fcn.14007fd05
movss dword [rbp + 0x1e4], xmm0
movss xmm0, dword [rbp + 0x1e4]
comiss xmm0, dword [0x1401d7894]
jbe 0x140164a70
mov byte [rbp + 0xba4], 0
lea rcx, [rbp + 0x188]
call fcn.14007d956
nop
lea rcx, [rbp + 0x148]
call fcn.14007d956
nop
lea rcx, [rbp + 0x88]
call fcn.14007d956
movzx eax, byte [rbp + 0xba4]
jmp 0x140164be7
movzx eax, byte [0x1401d7893]
test eax, eax
je 0x140164bac
lea r9, [rbp + 0x118]
lea r8, [rbp + 0xcb0]
lea rdx, [rbp + 0x188]
lea rcx, [rbp + 0x208]
call fcn.14015b380
lea rcx, [rbp + 0x208]
call fcn.14015cd70
movzx eax, al
test eax, eax
je 0x140164ade
mov dword [rsp + 0x20], 0xff
mov r9d, 0xff
mov r8d, 0xbf
xor edx, edx
lea rcx, [rbp + 0xbe4]
call fcn.14007e194
mov qword [rbp + 0xc78], rax
jmp 0x140164b0a
mov dword [rsp + 0x20], 0
mov r9d, 0xff
mov r8d, 0xff
mov edx, 0xff
lea rcx, [rbp + 0xc14]
call fcn.14007e194
mov qword [rbp + 0xc78], rax
mov rax, qword [rbp + 0xc78]
mov qword [rbp + 0xbc8], rax
lea rax, [rbp + 0x238]
mov rdi, rax
mov rsi, qword [rbp + 0xbc8]
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
movss xmm0, dword [rbp + 0x11c]
subss xmm0, dword [0x14018fc50]
movaps xmm2, xmm0
movss xmm1, dword [rbp + 0x118]
lea rcx, [rbp + 0xc44]
call fcn.14007ef04
cvttss2si eax, dword [rbp + 0x1e4]
mov dword [rbp + 0xc74], eax
lea rcx, [rbp + 0x148]
call fcn.14007d46f
mov ecx, dword [rbp + 0xc74]
mov dword [rsp + 0x30], ecx
mov qword [rsp + 0x28], rax
lea rax, str._s___d_
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x238]
mov r8d, 6
lea rdx, [rbp + 0xc44]
mov rcx, qword [rbp + 0xcb0]
call fcn.14007fa67
movzx eax, byte [0x1401d7893]
mov byte [rbp + 0xc64], 1
lea rcx, [rbp + 0x188]
call fcn.14007d956
nop
lea rcx, [rbp + 0x148]
call fcn.14007d956
nop
lea rcx, [rbp + 0x88]
call fcn.14007d956
movzx eax, byte [rbp + 0xc64]
mov rdi, rax
lea rcx, [rbp - 0x40]
lea rdx, [0x1401bc4b0]
call fcn.14007f855
mov rax, rdi
mov rcx, qword [rbp + 0xc80]
xor rcx, rbp
call fcn.14007e739
lea rsp, [rbp + 0xc90]
pop rdi
pop rsi
pop rbp
ret