Function at 0x14007cb40
Capabilities:
Log keystrokes via polling

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov rdi, r9
mov r14, r8
mov esi, edx
mov r15, rcx
mov rax, qword [0x140114500]
xor rax, rsp
mov qword [rsp + 0x40], rax
call fcn.140045ea0
test rax, rax
je 0x14007cc4a
call fcn.14004e2b0
mov rbx, rax
call fcn.140045ea0
test rax, rax
je 0x14007cb98
call fcn.14004e2b0
mov r13, qword [rax + 0x88]
jmp 0x14007cb9b
xor r13d, r13d
xor r12d, r12d
cmp esi, 0x1ff
jle 0x14007cc6e
lea eax, [rsi - 0x200]
cmp eax, 0xa3
ja case.0x14007cbc9.527
lea rcx, [0x1400ae470]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov eax, esi
and eax, 0xfffffffd
xor ecx, ecx
cmp eax, 0x204
sete cl
lea eax, [rsi - 0x207]
test eax, 0xfffffffd
mov edi, 2
cmovne edi, ecx
cmp esi, 0x20d
je 0x14007cbfd
cmp esi, 0x20b
jne 0x14007cc14
and r14d, 0xffff0000
xor edi, edi
cmp r14d, 0x10000
setne dil
add edi, 3
cmp dword [r13 + 0x14], 0
jne 0x14007cc2f
call qword [sym.imp.USER32.dll_GetCapture]
test rax, rax
jne 0x14007cc2f
mov rcx, r15
call qword [sym.imp.USER32.dll_SetCapture]
mov eax, 1
shlx eax, eax, edi
or dword [r13 + 0x14], eax
mov rcx, rbx
mov edx, edi
mov r8b, 1
call fcn.140043bf0
xor r12d, r12d
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.1400a1e40
mov rax, r12
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea eax, [rsi - 0x100]
cmp eax, 5
ja 0x14007cdec
mov ecx, 0x33
bt ecx, eax
jae 0x14007cdc7
cmp r14, 0xff
ja 0x14007cc4a
and esi, 0xfffffffb
call fcn.14004e2b0
mov rbx, rax
mov r15, qword [sym.imp.USER32.dll_GetKeyState]
mov ecx, 0x11
call r15
movzx r8d, ax
shr r8d, 0xf
mov rcx, rbx
mov edx, 0x1000
call fcn.140043a30
mov ecx, 0x10
call r15
movzx r8d, ax
shr r8d, 0xf
mov rcx, rbx
mov edx, 0x2000
call fcn.140043a30
mov ecx, 0x12
call r15
movzx r8d, ax
shr r8d, 0xf
mov rcx, rbx
mov edx, 0x4000
call fcn.140043a30
mov ecx, 0x5d
call r15
movzx r8d, ax
shr r8d, 0xf
mov rcx, rbx
mov edx, 0x8000
call fcn.140043a30
test edi, 0x1000000
mov ebx, 0x10d
cmove ebx, r14d
cmp r14, 0xd
cmovne ebx, r14d
lea eax, [rbx - 8]
cmp eax, 0x105
ja case.0x14007cd4d.10
lea rcx, [0x1400ae700]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov ebp, 0x20b
jmp 0x14007d2d6
xor eax, eax
cmp esi, 0x205
sete al
cmp esi, 0x208
mov ecx, 2
cmovne ecx, eax
and r14d, 0xffff0000
xor edi, edi
cmp r14d, 0x10000
setne dil
add edi, 3
cmp esi, 0x20c
cmovne edi, ecx
mov eax, 0xfffffffe
mov ecx, edi
rol eax, cl
and dword [r13 + 0x14], eax
jne 0x14007cdb2
call qword [sym.imp.USER32.dll_GetCapture]
cmp rax, r15
jne 0x14007cdb2
call qword [sym.imp.USER32.dll_ReleaseCapture]
xor r12d, r12d
mov rcx, rbx
mov edx, edi
xor r8d, r8d
call fcn.140043bf0
jmp case.0x14007cbc9.527
cmp eax, 2
jne 0x14007cdec
lea rax, [r14 - 1]
cmp rax, 0xfffe
ja 0x14007cc4a
mov rcx, rbx
mov edx, r14d
call fcn.1400432e0
jmp 0x14007cc4a
lea eax, [rsi - 7]
cmp eax, 2
jae 0x14007ce07
cmp esi, 7
sete dl
mov rcx, rbx
call fcn.140043dc0
jmp 0x14007cc4a
cmp esi, 0x20
jne case.0x14007cbc9.527
cmp di, 1
jne 0x14007cc4a
mov r12d, 1
call fcn.14007caa0
test al, al
je 0x14007cc4a
jmp case.0x14007cbc9.527
mov qword [r13 + 8], r15
cmp byte [r13 + 0x10], 0
jne 0x14007ce69
movabs rax, 0x200000018
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x38], 0
lea rcx, [rsp + 0x28]
call qword [sym.imp.USER32.dll_TrackMouseEvent]
mov byte [r13 + 0x10], 1
mov eax, edi
sar eax, 0x10
vcvtsi2ss xmm2, xmm0, eax
movsx eax, di
vcvtsi2ss xmm1, xmm0, eax
mov rcx, rbx
call fcn.140043a90
jmp 0x14007cc4a
sar r14d, 0x10
vcvtsi2ss xmm0, xmm0, r14d
vmulss xmm2, xmm0, dword [0x1400ae42c]
vxorps xmm1, xmm1, xmm1
jmp 0x14007ceb2
sar r14d, 0x10
vcvtsi2ss xmm0, xmm0, r14d
vmulss xmm1, xmm0, dword [0x1400ae42c]
vxorps xmm2, xmm2, xmm2
mov rcx, rbx
call fcn.140043d10
jmp 0x14007cc4a
cmp r14d, 7
jne 0x14007cc4a
mov byte [r13 + 0x2d], 1
jmp 0x14007cc4a
cmp qword [r13 + 8], r15
jne 0x14007cee1
mov qword [r13 + 8], 0
mov byte [r13 + 0x10], 0
vmovss xmm1, dword [0x1400a6850]
mov rcx, rbx
vmovaps xmm2, xmm1
call fcn.140043a90
jmp 0x14007cc4a
mov ebp, 0x200
jmp 0x14007d2d6
shr edi, 0x10
movzx edi, dil
jmp 0x14007d314
mov ebp, 0x20d
jmp 0x14007d2d6
mov ebp, 0x263
jmp 0x14007d2d6
mov ebp, 0x25f
jmp 0x14007d2d6
mov ebp, 0x20e
jmp 0x14007d2d6
mov ebp, 0x20c
jmp 0x14007d2d6
mov ebp, 0x205
jmp 0x14007d2d6
mov ebp, 0x206
jmp 0x14007d2d6
mov ebp, 0x208
jmp 0x14007d2d6
mov ebp, 0x207
jmp 0x14007d2d6
mov ebp, 0x201
jmp 0x14007d2d6
mov ebp, 0x203
jmp 0x14007d2d6
mov ebp, 0x202
jmp 0x14007d2d6
mov ebp, 0x204
jmp 0x14007d2d6
mov ebp, 0x262
jmp 0x14007d2d6
mov ebp, 0x209
jmp 0x14007d2d6
mov ebp, 0x20a
jmp 0x14007d2d6
mov ebp, 0x218
jmp 0x14007d2d6
mov ebp, 0x219
jmp 0x14007d2d6
mov ebp, 0x21a
jmp 0x14007d2d6
mov ebp, 0x21b
jmp 0x14007d2d6
mov ebp, 0x21c
jmp 0x14007d2d6
mov ebp, 0x21d
jmp 0x14007d2d6
mov ebp, 0x21e
jmp 0x14007d2d6
mov ebp, 0x21f
jmp 0x14007d2d6
mov ebp, 0x220
jmp 0x14007d2d6
mov ebp, 0x221
jmp 0x14007d2d6
mov ebp, 0x222
jmp 0x14007d2d6
mov ebp, 0x223
jmp 0x14007d2d6
mov ebp, 0x224
jmp 0x14007d2d6
mov ebp, 0x225
jmp 0x14007d2d6
mov ebp, 0x226
jmp 0x14007d2d6
mov ebp, 0x227
jmp 0x14007d2d6
mov ebp, 0x228
jmp 0x14007d2d6
mov ebp, 0x229
jmp 0x14007d2d6
mov ebp, 0x22a
jmp 0x14007d2d6
mov ebp, 0x22b
jmp 0x14007d2d6
mov ebp, 0x22c
jmp 0x14007d2d6
mov ebp, 0x22d
jmp 0x14007d2d6
mov ebp, 0x22e
jmp 0x14007d2d6
mov ebp, 0x22f
jmp 0x14007d2d6
mov ebp, 0x230
jmp 0x14007d2d6
mov ebp, 0x231
jmp 0x14007d2d6
mov ebp, 0x232
jmp 0x14007d2d6
mov ebp, 0x233
jmp 0x14007d2d6
mov ebp, 0x234
jmp 0x14007d2d6
mov ebp, 0x235
jmp 0x14007d2d6
mov ebp, 0x236
jmp 0x14007d2d6
mov ebp, 0x237
jmp 0x14007d2d6
mov ebp, 0x238
jmp 0x14007d2d6
mov ebp, 0x239
jmp 0x14007d2d6
mov ebp, 0x23a
jmp 0x14007d2d6
mov ebp, 0x23b
jmp 0x14007d2d6
mov ebp, 0x212
jmp 0x14007d2d6
mov ebp, 0x216
jmp 0x14007d2d6
mov ebp, 0x217
jmp 0x14007d2d6
mov ebp, 0x264
jmp 0x14007d2d6
mov ebp, 0x265
jmp 0x14007d2d6
mov ebp, 0x266
jmp 0x14007d2d6
mov ebp, 0x267
jmp 0x14007d2d6
mov ebp, 0x268
jmp 0x14007d2d6
mov ebp, 0x269
jmp 0x14007d2d6
mov ebp, 0x26a
jmp 0x14007d2d6
mov ebp, 0x26b
jmp 0x14007d2d6
mov ebp, 0x26c
jmp 0x14007d2d6
mov ebp, 0x26d
jmp 0x14007d2d6
mov ebp, 0x270
jmp 0x14007d2d6
mov ebp, 0x272
jmp 0x14007d2d6
mov ebp, 0x271
jmp 0x14007d2d6
mov ebp, 0x26e
jmp 0x14007d2d6
mov ebp, 0x26f
jmp 0x14007d2d6
mov ebp, 0x23c
jmp 0x14007d2d6
mov ebp, 0x23d
jmp 0x14007d2d6
mov ebp, 0x23e
jmp 0x14007d2d6
mov ebp, 0x23f
jmp 0x14007d2d6
mov ebp, 0x240
jmp 0x14007d2d6
mov ebp, 0x241
jmp 0x14007d2d6
mov ebp, 0x242
jmp 0x14007d2d6
mov ebp, 0x243
jmp 0x14007d2d6
mov ebp, 0x244
jmp 0x14007d2d6
mov ebp, 0x245
jmp 0x14007d2d6
mov ebp, 0x246
jmp 0x14007d2d6
mov ebp, 0x247
jmp 0x14007d2d6
mov ebp, 0x261
jmp 0x14007d2d6
mov ebp, 0x260
jmp 0x14007d2d6
mov ebp, 0x210
jmp 0x14007d2d6
mov ebp, 0x214
jmp 0x14007d2d6
mov ebp, 0x20f
jmp 0x14007d2d6
mov ebp, 0x213
jmp 0x14007d2d6
mov ebp, 0x211
jmp 0x14007d2d6
mov ebp, 0x215
jmp 0x14007d2d6
mov ebp, 0x259
jmp 0x14007d2d6
mov ebp, 0x25a
jmp 0x14007d2d6
mov ebp, 0x255
jmp 0x14007d2d6
mov ebp, 0x256
jmp 0x14007d2d6
mov ebp, 0x257
jmp 0x14007d2d6
mov ebp, 0x25e
jmp 0x14007d2d6
mov ebp, 0x25b
jmp 0x14007d2d6
mov ebp, 0x25c
jmp 0x14007d2d6
mov ebp, 0x25d
jmp 0x14007d2d6
mov ebp, 0x254
jmp 0x14007d2d6
mov ebp, 0x273
jmp 0x14007d2d6
mov ebp, 0x258
cmp esi, 0x100
sete r14b
shr edi, 0x10
movzx edi, dil
call fcn.14004e2b0
mov r15, rax
mov rcx, rax
mov edx, ebp
mov r8d, r14d
call fcn.140043a30
mov dword [rsp + 0x20], 0xffffffff
mov rcx, r15
mov edx, ebp
mov r8d, ebx
mov r9d, edi
call fcn.140043a60
cmp ebx, 0x12
je 0x14007d3a4
cmp ebx, 0x11
je 0x14007d416
cmp ebx, 0x10
jne 0x14007cc4a
cmp esi, 0x100
sete bl
mov ecx, 0xa0
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
sets al
xor al, bl
jne 0x14007d369
cmp esi, 0x100
sete dl
mov ecx, 0x210
mov r8d, 0xa0
mov r9d, edi
call fcn.14007d4a0
cmp esi, 0x100
sete bl
mov ecx, 0xa1
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
sets al
xor al, bl
jne 0x14007cc4a
cmp esi, 0x100
sete dl
mov ecx, 0x214
mov r8d, 0xa1
jmp 0x14007d486
cmp esi, 0x100
sete bl
mov ecx, 0xa4
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
sets al
xor al, bl
jne 0x14007d3de
cmp esi, 0x100
sete dl
mov ecx, 0x211
mov r8d, 0xa4
mov r9d, edi
call fcn.14007d4a0
cmp esi, 0x100
sete bl
mov ecx, 0xa5
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
sets al
xor al, bl
jne 0x14007cc4a
cmp esi, 0x100
sete dl
mov ecx, 0x215
mov r8d, 0xa5
jmp 0x14007d486
cmp esi, 0x100
sete bl
mov ecx, 0xa2
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
sets al
xor al, bl
jne 0x14007d450
cmp esi, 0x100
sete dl
mov ecx, 0x20f
mov r8d, 0xa2
mov r9d, edi
call fcn.14007d4a0
cmp esi, 0x100
sete bl
mov ecx, 0xa3
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
sets al
xor al, bl
jne 0x14007cc4a
cmp esi, 0x100
sete dl
mov ecx, 0x213
mov r8d, 0xa3
mov r9d, edi
call fcn.14007d4a0
jmp 0x14007cc4a