Function at 0x14003e780
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x28]
sub rsp, 0x120
cmp byte [reloc.WS2_32.dll_accept], 1
jne 0x14003f027
mov ecx, dword [0x140100ca8]
mov r8d, 2
mov qword [rax - 0x18], rdi
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x88], xmm11
test ecx, ecx
jne 0x14003e7c9
mov dword [0x140100ca0], 1
jmp 0x14003e810
cmp ecx, 1
jne 0x14003e7d7
mov dword [0x140100ca0], r8d
jmp 0x14003e810
cmp ecx, r8d
jne 0x14003e7e8
mov dword [0x140100ca0], 0xa0
jmp 0x14003e810
cmp ecx, 3
jne 0x14003e7f9
mov dword [0x140100ca0], 0xa4
jmp 0x14003e810
mov eax, dword [0x140100ca0]
cmp ecx, 4
mov edx, 0xa2
cmove eax, edx
mov dword [0x140100ca0], eax
mov ecx, dword [0x140100cac]
test ecx, ecx
jne 0x14003e826
mov dword [reloc.WS2_32.dll_getsockname], 6
jmp 0x14003e84a
cmp ecx, 1
jne 0x14003e837
mov dword [reloc.WS2_32.dll_getsockname], 5
jmp 0x14003e84a
mov eax, dword [reloc.WS2_32.dll_getsockname]
cmp ecx, r8d
cmove eax, r8d
mov dword [reloc.WS2_32.dll_getsockname], eax
movd xmm0, dword [0x140100c94]
mov ecx, reloc.WLDAP32.dll_Ordinal_35
movss xmm9, dword [0x1400a7cb4]
cvtdq2ps xmm0, xmm0
movaps xmm11, xmm9
maxss xmm11, xmm0
movd xmm0, dword [0x140100ca4]
cvtdq2ps xmm0, xmm0
maxss xmm9, xmm0
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x14003e894
cmp byte [reloc.WS2_32.dll_accept], 0
sete byte [0x1400b8109]
mov rdi, qword [0x140100c88]
test rdi, rdi
je 0x14003f00d
mov rcx, rdi
mov qword [rsp + 0x118], rsi
call fcn.14003dd60
movzx eax, al
lea rsi, [rdi + 0x288]
imul rcx, rax, 0xdc0
add rsi, rcx
je 0x14003f005
mov qword [rsp + 0x140], rbx
mov rbx, qword [0x140100f68]
mov qword [rsp + 0x108], r14
call fcn.140037a30
mov rcx, rax
lea rdx, [rbx + 0x296a0b0]
call fcn.14004ae20
mov r14, rax
test rax, rax
je 0x14003eff5
mov rbx, qword [0x140100f68]
mov qword [rsp + 0x100], r15
call fcn.140037a30
mov rcx, rax
lea rdx, [rbx + 0x296a060]
call fcn.14004ae20
mov rbx, rax
call fcn.140037a30
xor r15d, r15d
mov r10, qword [rax + 8]
cmp r10, 0xffffffffffffffff
je 0x14003e991
mov ecx, dword [rax]
lea r9d, [r15 + 0x20]
mov edx, dword [rax + 4]
lea r8, [rbp - 0x80]
mov qword [rsp + 0x38], r15
lea rax, [rbx + 0xa0]
mov qword [rbp - 0x78], rax
lea rax, [rsp + 0x50]
mov qword [rbp - 0x70], rax
lea rax, [rbp + 0x30]
mov qword [rsp + 0x30], rax
mov dword [rbp - 0x80], ecx
mov rcx, r10
mov dword [rbp - 0x7c], edx
mov edx, 0x220404
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
mov dword [rbp - 0x68], ntohl
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rbx, qword [0x140100c88]
mov rcx, rbx
call fcn.14003dd60
movzx eax, al
imul rcx, rax, 0xdc0
add rcx, 0x288
add rcx, rbx
je 0x14003efed
call fcn.14003cb30
test rax, rax
je 0x14003efed
mov ecx, dword [0x140100ca0]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x14003efed
cmp byte [reloc.WS2_32.dll_accept], 1
movaps xmmword [rsp + 0xf0], xmm6
movaps xmmword [rsp + 0xe0], xmm7
jne 0x14003ec75
call fcn.14003e470
cmp eax, 0xffffffff
je 0x14003efdd
imul eax, eax, 0xdc0
movsxd rcx, eax
add rcx, 0x288
add rcx, rdi
cmp rcx, rsi
je 0x14003efdd
call fcn.14003cb30
test rax, rax
je 0x14003efdd
mov r8d, dword [reloc.WS2_32.dll_getsockname]
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.14003c640
movss xmm0, dword [rsp + 0x44]
addss xmm0, dword [0x1400a7d0c]
movss dword [rsp + 0x44], xmm0
call fcn.140037a30
xorps xmm6, xmm6
movss dword [rbp + 0x30], xmm6
movaps xmm7, xmm6
mov r10, qword [rax + 8]
cmp r10, 0xffffffffffffffff
je 0x14003eace
mov ecx, dword [rax]
lea r8, [rbp - 0x80]
mov eax, dword [rax + 4]
mov r9d, reloc.WLDAP32.dll_Ordinal_32
mov dword [rbp - 0x7c], eax
mov edx, 0x220404
mov qword [rsp + 0x38], r15
lea rax, [r14 + 0x830]
mov qword [rbp - 0x78], rax
lea rax, [rbp + 0x30]
mov qword [rbp - 0x70], rax
lea rax, [rbp + 0x38]
mov qword [rsp + 0x30], rax
mov dword [rbp - 0x80], ecx
mov rcx, r10
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
mov dword [rbp - 0x68], 4
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm7, dword [rbp + 0x30]
call fcn.140037a30
movss dword [rbp + 0x30], xmm6
mov r10, qword [rax + 8]
cmp r10, 0xffffffffffffffff
je 0x14003eb3c
mov ecx, dword [rax]
lea r8, [rbp - 0x80]
mov eax, dword [rax + 4]
mov r9d, reloc.WLDAP32.dll_Ordinal_32
mov dword [rbp - 0x7c], eax
mov edx, 0x220404
mov qword [rsp + 0x38], r15
lea rax, [r14 + 0x82c]
mov qword [rbp - 0x78], rax
lea rax, [rbp + 0x30]
mov qword [rbp - 0x70], rax
lea rax, [rbp + 0x38]
mov qword [rsp + 0x30], rax
mov dword [rbp - 0x80], ecx
mov rcx, r10
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
mov dword [rbp - 0x68], 4
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm6, dword [rbp + 0x30]
movsd xmm0, qword [rsp + 0x50]
lea r8, [rsp + 0x40]
mov eax, dword [rsp + 0x58]
lea rdx, [rsp + 0x60]
movsd qword [rsp + 0x60], xmm0
lea rcx, [rsp + 0x70]
movsd xmm0, qword [rsp + 0x40]
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x48]
movsd qword [rsp + 0x70], xmm0
mov dword [rsp + 0x78], eax
call fcn.14003bbf0
movsd xmm0, qword [rsp + 0x40]
lea r8, [rsp + 0x40]
mov eax, dword [rsp + 0x48]
lea rdx, [rsp + 0x70]
mulss xmm6, dword [0x1400a7d58]
lea rcx, [rsp + 0x60]
mov dword [rsp + 0x78], eax
mov eax, r15d
mulss xmm7, dword [0x1400a7d58]
movaps xmm3, xmm11
mov dword [rbp - 0x78], r15d
movsd qword [rsp + 0x70], xmm0
movaps xmm0, xmm6
movss dword [rsp + 0x20], xmm9
unpcklps xmm0, xmm7
movsd qword [rsp + 0x60], xmm0
mov dword [rsp + 0x68], eax
call fcn.14003ba50
movss xmm0, dword [rsp + 0x40]
movss xmm1, dword [0x1400a7d68]
comiss xmm0, xmm1
movss xmm2, dword [0x1400a7de0]
jbe 0x14003ebff
nop dword [rax]
addss xmm0, xmm2
comiss xmm0, xmm1
ja 0x14003ebf0
movss dword [rsp + 0x40], xmm0
movss xmm3, dword [0x1400a7dd8]
comiss xmm3, xmm0
movss xmm1, dword [0x1400a7d7c]
jbe 0x14003ec23
addss xmm0, xmm1
comiss xmm3, xmm0
ja 0x14003ec14
movss dword [rsp + 0x40], xmm0
movss xmm0, dword [rsp + 0x44]
comiss xmm0, xmm1
jbe 0x14003ec45
movss xmm3, dword [0x1400a7de4]
addss xmm0, xmm3
comiss xmm0, xmm1
ja 0x14003ec36
movss dword [rsp + 0x44], xmm0
comiss xmm2, xmm0
jbe 0x14003ec61
movss xmm1, dword [0x1400a7d94]
addss xmm0, xmm1
comiss xmm2, xmm0
ja 0x14003ec52
movss dword [rsp + 0x44], xmm0
lea rcx, [rsp + 0x40]
mov dword [rsp + 0x48], r15d
call fcn.14003df30
jmp 0x14003efdd
lea rcx, [rbp - 0x80]
movaps xmmword [rsp + 0xd0], xmm8
call fcn.14003b670
xorps xmm6, xmm6
lea rcx, [rbp - 0x80]
movups xmm2, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
psrldq xmm2, 8
movd eax, xmm2
movsd qword [rbp - 0x70], xmm1
shr eax, 1
cvtsi2ss xmm6, rax
call fcn.14003b670
movups xmm2, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
xorps xmm8, xmm8
psrldq xmm2, 8
movq rax, xmm2
movsd qword [rbp - 0x70], xmm1
shr rax, 0x20
shr eax, 1
cvtsi2ss xmm8, rax
call fcn.14003e140
cmp eax, 0xffffffff
je 0x14003efd4
imul eax, eax, 0xdc0
movsxd rcx, eax
add rcx, 0x288
add rcx, rdi
cmp rcx, rsi
je 0x14003efd4
call fcn.14003cb30
mov rbx, rax
test rax, rax
je 0x14003efd4
mov r8d, dword [reloc.WS2_32.dll_getsockname]
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.14003c640
lea rcx, [rsp + 0x40]
call fcn.14003b940
test al, al
je 0x14003efd4
movss xmm7, dword [rsp + 0x40]
comiss xmm7, xmm6
movaps xmmword [rsp + 0xb0], xmm10
jbe 0x14003ed51
subss xmm7, xmm6
jmp 0x14003ed58
subss xmm6, xmm7
movaps xmm7, xmm6
movss xmm6, dword [rsp + 0x44]
comiss xmm6, xmm8
jbe 0x14003ed6b
subss xmm6, xmm8
jmp 0x14003ed74
subss xmm8, xmm6
movaps xmm6, xmm8
mov r8d, dword [reloc.WS2_32.dll_getsockname]
lea rdx, [rsp + 0x70]
mov rcx, rbx
call fcn.14003c640
call fcn.140037a30
xorps xmm8, xmm8
movss dword [rbp + 0x30], xmm8
movaps xmm10, xmm8
mov r10, qword [rax + 8]
cmp r10, 0xffffffffffffffff
je 0x14003ee00
mov ecx, dword [rax]
lea r8, [rbp - 0x80]
mov eax, dword [rax + 4]
mov r9d, reloc.WLDAP32.dll_Ordinal_32
mov dword [rbp - 0x7c], eax
mov edx, 0x220404
mov qword [rsp + 0x38], r15
lea rax, [r14 + 0x830]
mov qword [rbp - 0x78], rax
lea rax, [rbp + 0x30]
mov qword [rbp - 0x70], rax
lea rax, [rbp + 0x38]
mov qword [rsp + 0x30], rax
mov dword [rbp - 0x80], ecx
mov rcx, r10
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
mov dword [rbp - 0x68], 4
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm10, dword [rbp + 0x30]
call fcn.140037a30
movss dword [rbp + 0x30], xmm8
mov r10, qword [rax + 8]
cmp r10, 0xffffffffffffffff
je 0x14003ee70
mov ecx, dword [rax]
lea r8, [rbp - 0x80]
mov eax, dword [rax + 4]
mov r9d, reloc.WLDAP32.dll_Ordinal_32
mov dword [rbp - 0x7c], eax
mov edx, 0x220404
mov qword [rsp + 0x38], r15
lea rax, [r14 + 0x82c]
mov qword [rbp - 0x78], rax
lea rax, [rbp + 0x30]
mov qword [rbp - 0x70], rax
lea rax, [rbp + 0x38]
mov qword [rsp + 0x30], rax
mov dword [rbp - 0x80], ecx
mov rcx, r10
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
mov dword [rbp - 0x68], 4
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm8, dword [rbp + 0x30]
movsd xmm0, qword [rsp + 0x50]
lea r8, [rsp + 0x40]
mov eax, dword [rsp + 0x58]
lea rdx, [rsp + 0x60]
movsd qword [rsp + 0x60], xmm0
lea rcx, [rbp - 0x80]
movsd xmm0, qword [rsp + 0x70]
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x78]
movsd qword [rbp - 0x80], xmm0
mov dword [rbp - 0x78], eax
call fcn.14003bbf0
movsd xmm0, qword [rsp + 0x40]
lea r8, [rsp + 0x40]
mov eax, dword [rsp + 0x48]
lea rdx, [rbp - 0x80]
mulss xmm8, dword [0x1400a7d58]
lea rcx, [rsp + 0x70]
mov dword [rbp - 0x78], eax
mov eax, r15d
mulss xmm10, dword [0x1400a7d58]
movaps xmm3, xmm11
mov dword [rsp + 0x68], r15d
movsd qword [rbp - 0x80], xmm0
movaps xmm0, xmm8
movss dword [rsp + 0x20], xmm9
unpcklps xmm0, xmm10
movsd qword [rsp + 0x70], xmm0
mov dword [rsp + 0x78], eax
call fcn.14003ba50
movss xmm0, dword [rsp + 0x40]
movss xmm1, dword [0x1400a7d68]
comiss xmm0, xmm1
movss xmm3, dword [0x1400a7de0]
movaps xmm10, xmmword [rsp + 0xb0]
jbe 0x14003ef3f
nop dword [rax]
addss xmm0, xmm3
comiss xmm0, xmm1
ja 0x14003ef30
movss dword [rsp + 0x40], xmm0
movss xmm1, dword [0x1400a7dd8]
comiss xmm1, xmm0
movss xmm2, dword [0x1400a7d7c]
jbe 0x14003ef63
addss xmm0, xmm2
comiss xmm1, xmm0
ja 0x14003ef54
movss dword [rsp + 0x40], xmm0
movss xmm1, dword [rsp + 0x44]
comiss xmm1, xmm2
jbe 0x14003ef85
movss xmm0, dword [0x1400a7de4]
addss xmm1, xmm0
comiss xmm1, xmm2
ja 0x14003ef76
movss dword [rsp + 0x44], xmm1
comiss xmm3, xmm1
jbe 0x14003efa1
movss xmm0, dword [0x1400a7d94]
addss xmm1, xmm0
comiss xmm3, xmm1
ja 0x14003ef92
movss dword [rsp + 0x44], xmm1
mulss xmm6, xmm6
mov dword [rsp + 0x48], r15d
mulss xmm7, xmm7
addss xmm6, xmm7
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movd xmm1, dword [reloc.WLDAP32.dll_Ordinal_50]
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm0
jb 0x14003efd4
lea rcx, [rsp + 0x40]
call fcn.14003df30
movaps xmm8, xmmword [rsp + 0xd0]
movaps xmm6, xmmword [rsp + 0xf0]
movaps xmm7, xmmword [rsp + 0xe0]
mov r15, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x140]
mov rsi, qword [rsp + 0x118]
mov rdi, qword [rsp + 0x110]
movaps xmm9, xmmword [rsp + 0xc0]
movaps xmm11, xmmword [rsp + 0xa0]
add rsp, 0x120
pop rbp
ret