Function at 0x10083dc0
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10173781
mov eax, dword fs:[0]
push eax
sub esp, 8
push esi
mov eax, dword [0x101bd92c]
xor eax, esp
push eax
lea eax, [esp + 0x10]
mov dword fs:[0], eax
mov ecx, dword [0x101ed6cc]
test ecx, ecx
jne 0x10083e14
push 4
call fcn.10092352
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x10083e0c
mov dword [ecx], vtable.CShareConfigManager.0
jmp 0x10083e0e
xor ecx, ecx
mov dword [0x101ed6cc], ecx
mov eax, dword [ecx]
push 0x7a
call dword [eax + 0x44]
test eax, eax
jne 0x10084012
cmp dword [0x101ed6b8], eax
jne 0x10083e5a
push 0x14
call fcn.10092352
add esp, 4
test eax, eax
je 0x10083e53
mov byte [eax], 1
mov dword [eax + 4], 0
mov dword [eax + 8], 1
mov dword [eax + 0x10], 0
jmp 0x10083e55
xor eax, eax
mov dword [0x101ed6b8], eax
cmp dword [0x101ed740], 0
jne 0x10083e95
push 0x44
call fcn.10092352
add esp, 4
mov dword [esp + 8], eax
mov dword [esp + 0x18], 0
test eax, eax
je 0x10083e86
mov ecx, eax
call fcn.10064b50
jmp 0x10083e88
xor eax, eax
mov dword [esp + 0x18], 0xffffffff
mov dword [0x101ed740], eax
call fcn.10008aa0
mov ecx, eax
call fcn.1005f9e0
call fcn.10065fc0
mov eax, dword [0x101ed758]
test eax, eax
jne 0x10083ed0
push 0x128
call fcn.10092352
add esp, 4
test eax, eax
je 0x10083ec9
mov ecx, eax
call fcn.10084880
jmp 0x10083ecb
xor eax, eax
mov dword [0x101ed758], eax
mov ecx, eax
call fcn.10084e00
cmp dword [0x101ed6b8], 0
jne 0x10083f0f
push 0x14
call fcn.10092352
add esp, 4
test eax, eax
je 0x10083f08
mov byte [eax], 1
mov dword [eax + 4], 0
mov dword [eax + 8], 1
mov dword [eax + 0x10], 0
jmp 0x10083f0a
xor eax, eax
mov dword [0x101ed6b8], eax
cmp dword [0x101ed740], 0
jne 0x10083f4a
push 0x44
call fcn.10092352
add esp, 4
mov dword [esp + 8], eax
mov dword [esp + 0x18], 1
test eax, eax
je 0x10083f3b
mov ecx, eax
call fcn.10064b50
jmp 0x10083f3d
xor eax, eax
mov dword [esp + 0x18], 0xffffffff
mov dword [0x101ed740], eax
call fcn.10008aa0
mov ecx, eax
call fcn.10060470
call fcn.10065fc0
mov eax, dword [0x101ed758]
test eax, eax
jne 0x10083f85
push 0x128
call fcn.10092352
add esp, 4
test eax, eax
je 0x10083f7e
mov ecx, eax
call fcn.10084880
jmp 0x10083f80
xor eax, eax
mov dword [0x101ed758], eax
mov ecx, eax
call fcn.10084e00
call fcn.10008b70
mov ecx, eax
call fcn.10086c60
call fcn.10008b70
mov dword [eax + 0x4c], 1
call fcn.10008b70
mov ecx, eax
call fcn.10086d80
cmp dword [0x101ed6a8], 0
jne 0x10083fc8
push 1
call fcn.10092352
add esp, 4
mov dword [0x101ed6a8], eax
mov eax, dword [0x101ed724]
test eax, eax
jne 0x10084006
push 0x1d4
call fcn.10092352
add esp, 4
mov dword [esp + 8], eax
mov dword [esp + 0x18], 2
test eax, eax
je 0x10083ff7
mov ecx, eax
call fcn.1002c6b0
jmp 0x10083ff9
xor eax, eax
mov dword [esp + 0x18], 0xffffffff
mov dword [0x101ed724], eax
mov ecx, eax
call fcn.10038eb0
jmp 0x100840a3
call fcn.10008b70
cmp dword [eax + 0x4c], 0
jne 0x10084037
call fcn.10008b70
mov dword [eax + 0x4c], 1
call fcn.10008b70
mov ecx, eax
call fcn.10086d80
jmp 0x100840a3
push 0x14
call dword [sym.imp.USER32.dll_GetKeyState]
cmp al, 1
jne 0x10084056
call fcn.10008aa0
mov ecx, eax
call fcn.1005fd10
call fcn.10065fc0
jmp 0x1008406e
call fcn.10006890
push 1
call fcn.1006a060
call fcn.10006890
push 4
call fcn.1006a060
call fcn.10008b70
mov dword [eax + 0x4c], 0
call fcn.10008b70
mov ecx, eax
call fcn.10086cc0
cmp dword [0x101ed6a8], 0
jne 0x1008409e
push 1
call fcn.10092352
add esp, 4
mov dword [0x101ed6a8], eax
call fcn.1003bdd0
mov esi, dword [0x101ed778]
test esi, esi
jne 0x100840ce
push 0x38
call fcn.10092352
add esp, 4
test eax, eax
je 0x100840c6
mov ecx, eax
call fcn.10089fe0
mov esi, eax
jmp 0x100840c8
xor esi, esi
mov dword [0x101ed778], esi
mov ecx, dword [0x101ed6cc]
test ecx, ecx
jne 0x100840f8
push 4
call fcn.10092352
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x100840f0
mov dword [ecx], vtable.CShareConfigManager.0
jmp 0x100840f2
xor ecx, ecx
mov dword [0x101ed6cc], ecx
mov eax, dword [ecx]
push 0x7a
call dword [eax + 0x44]
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x1008410c
mov edx, dword [ecx]
push eax
call dword [edx + 0x40]
mov ecx, dword [esp + 0x10]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret