Function at 0x10025a00
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100fe2fd
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x40
mov eax, dword [0x101d639c]
mov ecx, dword [eax]
call fcn.10010e80
sub esp, 8
movss xmm0, dword [eax + 8]
movss dword [ebp - 0x10], xmm0
fld dword [ebp - 0x10]
fstp qword [esp]
call fcn.100dcab0
mov ecx, dword [0x101d6390]
lea edx, [ebp - 0x18]
add esp, 8
fstp dword [ebp - 0x14]
mov eax, dword [ecx]
push edx
lea edx, [ebp - 0x1c]
push edx
call dword [eax + 0x14]
movss xmm1, dword [0x101044fc]
xorps xmm0, xmm0
movss dword [ebp - 0x10], xmm0
movss xmm0, dword [ebp + 8]
comiss xmm0, xmm1
jae 0x10025d2c
movss xmm0, dword [ebp - 0x14]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x10025d2c
mov eax, dword [0x101d639c]
mov ecx, dword [eax]
call fcn.10076c70
test al, al
je 0x10025d2c
mov eax, dword [0x101d639c]
mov ecx, dword [eax]
call fcn.10077420
cmp eax, 9
je 0x10025d2c
mov eax, dword [0x101d639c]
mov ecx, dword [eax]
call fcn.10077420
cmp eax, 8
je 0x10025d2c
mov eax, dword [0x1020c648]
lea ecx, [ebp - 0x4c]
push edi
inc eax
push eax
push str.eb_s_:
mov dword [0x1020c648], eax
call fcn.1001f2b0
push str.CHudChat
mov dword [ebp - 4], 0
call fcn.1001e360
add esp, 4
mov edi, eax
cmp byte [0x101d68d8], 0
je 0x10025d13
cmp byte [0x101d651f], 0
push esi
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
je 0x10025c27
push dword [0x101d6520]
call esi
test ax, ax
je 0x10025c27
mov eax, dword [0x101d6398]
movss xmm0, dword [eax]
comiss xmm0, dword [0x101016a0]
jbe 0x10025c27
mov ecx, dword [0x101d6390]
push str.play_ui_beep07.wav
mov eax, dword [ecx]
call dword [eax + 0x1b0]
xorps xmm0, xmm0
mov dword [ebp - 0x24], 0
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
push 2
push 0x10104284
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 1
call fcn.100255c0
push 0xc
push str._juxxware_
mov ecx, eax
call fcn.100255c0
push 2
push 0x10104298
mov ecx, eax
call fcn.100255c0
push 9
push str._eb_check
mov ecx, eax
call fcn.100255c0
push 2
push 0x10104298
mov ecx, eax
call fcn.100255c0
cmp dword [eax + 0x14], 0xf
jbe 0x10025bbd
mov eax, dword [eax]
push eax
push 0
push 0
push edi
call fcn.10020820
mov ecx, dword [ebp - 0x20]
add esp, 0x10
mov byte [ebp - 4], 0
cmp ecx, 0xf
jbe 0x10025c03
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10025bf9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10025d43
push ecx
push edx
call fcn.100ce3f5
add esp, 8
mov eax, dword [0x101d6398]
movss xmm0, dword [eax]
cvtps2pd xmm0, xmm0
mov byte [0x1020c625], 1
addsd xmm0, qword [0x10102978]
cvtpd2ps xmm0, xmm0
movss dword [ebp - 0x10], xmm0
push dword [0x101d6530]
call esi
test ax, ax
je 0x10025d12
push dword [0x101d6520]
call esi
test ax, ax
jne 0x10025d12
mov eax, dword [0x101d6398]
movss xmm0, dword [eax]
comiss xmm0, dword [ebp - 0x10]
jbe 0x10025d12
mov ecx, dword [0x101d6390]
push str.play_ui_beep07.wav
mov eax, dword [ecx]
call dword [eax + 0x1b0]
xorps xmm0, xmm0
mov dword [ebp - 0x24], 0
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
push 2
push 0x10104284
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 2
call fcn.100255c0
push 0xc
push str._juxxware_
mov ecx, eax
call fcn.100255c0
push 2
push 0x10104298
mov ecx, eax
call fcn.100255c0
push 9
push str._eb_check
mov ecx, eax
call fcn.100255c0
cmp dword [eax + 0x14], 0xf
jbe 0x10025ccd
mov eax, dword [eax]
push eax
push 0
push 0
push edi
call fcn.10020820
mov ecx, dword [ebp - 0x20]
add esp, 0x10
cmp ecx, 0xf
jbe 0x10025d0b
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10025d01
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10025d48
push ecx
push edx
call fcn.100ce3f5
add esp, 8
mov byte [0x1020c625], 1
pop esi
lea ecx, [ebp - 0x4c]
call fcn.10003a80
pop edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 8
mov ecx, dword [ebp - 0xc]
mov byte [0x1020c625], 0
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 8
call fcn.100d3e9f
call fcn.100d3e9f
int3