Function at 0x1001c110
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc8
mov eax, dword [0x10089040]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [0x100c1f18]
mov edx, dword [0x100c1364]
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
test eax, eax
je 0x1001c18a
cmp byte [eax + 0x48], 0
je 0x1001c184
mov ebx, dword [0x1008b878]
test edx, edx
jne 0x1001c179
mov edx, 0xe80c2f78
mov ecx, 0x10079bc5
call fcn.1000b060
mov edx, 0xc10bf213
mov ecx, 0x10077f85
mov esi, eax
call fcn.1000b060
mov edx, esi
mov ecx, eax
call fcn.1006eeb0
mov edx, eax
mov dword [0x100c1364], edx
mov ecx, dword [edx + ebx]
mov dword [0x100c1f14], ecx
jmp 0x1001c18a
inc dword [0x100c1f14]
mov ecx, dword [0x100c1180]
mov ebx, dword [0x1008b878]
mov dword [0x100c1f18], edi
movss xmm0, dword [ecx + 0x10]
movss dword [0x100c1f04], xmm0
movss xmm0, dword [ecx + 0x14]
movss dword [0x100c1f08], xmm0
mov eax, dword [ecx + 0x1c]
mov dword [0x100c1f0c], eax
test edx, edx
jne 0x1001c1f9
mov edx, 0xe80c2f78
mov ecx, 0x10079bc5
call fcn.1000b060
mov edx, 0xc10bf213
mov ecx, 0x10077f85
mov esi, eax
call fcn.1000b060
mov edx, esi
mov ecx, eax
call fcn.1006eeb0
mov ecx, dword [0x100c1180]
mov edx, eax
mov dword [0x100c1364], edx
mov eax, dword [edx + ebx]
mov esi, dword [0x100c1360]
mov ebx, dword [0x1008b878]
mov dword [0x100c1f10], eax
movzx eax, byte [esi + 8]
mov byte [0x100c1f00], al
movzx eax, byte [esi + 9]
mov byte [0x100c1f01], al
test edx, edx
jne 0x1001c260
mov edx, 0xe80c2f78
mov ecx, 0x10079bc5
call fcn.1000b060
mov edx, 0xc10bf213
mov ecx, 0x10077f85
mov esi, eax
call fcn.1000b060
mov edx, esi
mov ecx, eax
call fcn.1006eeb0
mov ecx, dword [0x100c1180]
mov edx, eax
mov esi, dword [0x100c1360]
mov dword [0x100c1364], edx
movd xmm0, dword [edx + ebx]
mov ebx, dword [0x1008b878]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ecx + 0x20]
movss dword [ecx + 0x10], xmm0
mov ecx, dword [0x100c1180]
mov eax, dword [ecx + 0x20]
mov dword [ecx + 0x14], eax
test edx, edx
jne 0x1001c2bf
mov edx, 0xe80c2f78
mov ecx, 0x10079bc5
call fcn.1000b060
mov edx, 0xc10bf213
mov ecx, 0x10077f85
mov esi, eax
call fcn.1000b060
mov edx, esi
mov ecx, eax
call fcn.1006eeb0
mov esi, dword [0x100c1360]
mov edx, eax
mov dword [0x100c1364], edx
mov eax, dword [0x100c1180]
mov ecx, dword [edx + ebx]
push dword [0x1008b878]
mov dword [eax + 0x1c], ecx
mov ecx, dword [0x100c1358]
mov word [esi + 8], 1
mov eax, dword [ecx]
call dword [eax + 0xc]
mov eax, dword [0x100c1180]
push ecx
movss xmm2, dword [eax + 0x14]
cvtps2pd xmm2, xmm2
call fcn.1001c0e0
mov ecx, dword [0x100c1360]
lea eax, [edi + 0xc]
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 0x34]
call eax
mov ecx, dword [0x100c135c]
push dword [0x1008b878]
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [0x100c1360]
lea edx, [ebp - 0xc4]
xorps xmm0, xmm0
mov dword [ebp - 0xbc], 0
push edx
push dword [0x100c135c]
movq qword [ebp - 0xc4], xmm0
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xac], 0
movups xmmword [ebp - 0xa0], xmm0
mov dword [ebp - 0x88], 0
movq qword [ebp - 0x90], xmm0
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x44], 0
movq qword [ebp - 0x38], xmm0
mov dword [ebp - 0x30], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov eax, dword [ecx]
push edi
push dword [0x1008b878]
mov eax, dword [eax + 0x50]
call eax
push dword [0x1008b66c]
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
call esi
test ax, ax
jne 0x1001c495
push dword [0x1008b67c]
call esi
test ax, ax
jne 0x1001c495
mov ecx, dword [0x100c1178]
push str.sv_min_jump_landing_sound
mov eax, dword [ecx]
call dword [eax + 0x44]
mov ecx, eax
push 0x1007e3ec
mov edx, dword [eax]
mov eax, dword [edx + 0x38]
call eax
jmp 0x1001c4e4
mov ecx, dword [0x100c1178]
push str.sv_min_jump_landing_sound
mov eax, dword [ecx]
call dword [eax + 0x44]
mov ecx, eax
push str.63464578
mov edx, dword [eax]
mov eax, dword [edx + 0x38]
call eax
cmp byte [0x1008abb9], 0
mov eax, dword [ebp - 0xa0]
je 0x1001c4c5
or eax, 4
and eax, 0xfffff9e7
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0
mov dword [ebp - 0xa0], eax
mov ecx, dword [0x100c1358]
lea edx, [ebp - 0xc4]
push edx
push dword [0x1008b878]
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [0x100c1360]
lea edx, [ebp - 0xc4]
push edx
push edi
push dword [0x1008b878]
mov eax, dword [ecx]
mov eax, dword [eax + 0x54]
call eax
mov ecx, dword [0x100c135c]
mov eax, dword [ecx]
call dword [eax + 8]
mov eax, dword [0x100c1364]
mov edi, dword [0x100c1f14]
mov ebx, dword [0x1008b878]
test eax, eax
jne 0x1001c565
mov edx, 0xe80c2f78
mov ecx, 0x10079bc5
call fcn.1000b060
mov edx, 0xc10bf213
mov ecx, 0x10077f85
mov esi, eax
call fcn.1000b060
mov edx, esi
mov ecx, eax
call fcn.1006eeb0
mov dword [0x100c1364], eax
mov ecx, dword [0x100c1360]
mov dword [eax + ebx], edi
movzx eax, byte [0x100c1f00]
pop edi
mov byte [ecx + 8], al
movzx eax, byte [0x100c1f01]
mov byte [ecx + 9], al
mov ecx, dword [ebp - 8]
pop esi
xor ecx, ebp
pop ebx
call fcn.100714c0
mov esp, ebp
pop ebp
ret 4