Function at 0x1006b46b
Capabilities:
Log keystrokes via polling

Disassembly:
mov eax, 0x100bec5a
call fcn.100a0664
sub esp, 0x20
push ebx
push esi
mov esi, dword [ebp + 8]
xor ebx, ebx
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 4], ebx
cmp dword [esi + 0x12d4], ebx
je 0x1006b679
call fcn.100575ef
cmp byte [eax], bl
je 0x1006b679
call fcn.100575ef
mov byte [eax], bl
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 8]
mov dword [ebp - 0x14], eax
mov eax, dword [esi + 0x12d4]
lea ecx, [eax + 0x54]
mov eax, dword [ecx + 0x10]
sub eax, dword [ecx + 0xc]
sar eax, 2
cmp ebx, eax
jae 0x1006b584
push ebx
call fcn.1000b27e
mov ecx, dword [eax]
mov eax, dword [ecx]
push 0x100c503c
push str.type
call dword [eax + 0xc]
mov edi, eax
push str.Combo
push edi
mov dword [ebp + 8], edi
call fcn.1009fb99
pop ecx
pop ecx
test eax, eax
je 0x1006b56d
push str.Edit
push edi
call fcn.1009fb99
pop ecx
pop ecx
test eax, eax
je 0x1006b56d
push str.Password
push edi
call fcn.1009fb99
pop ecx
pop ecx
test eax, eax
je 0x1006b56d
mov ecx, dword [esi + 0x12d4]
push ebx
add ecx, 0x54
lea edi, [esi + 0xb8]
call fcn.1000b27e
mov ecx, dword [eax]
mov eax, dword [ecx]
push edi
call dword [eax + 0x20]
test al, al
je 0x1006b56d
push dword [ebp + 8]
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0xa8]
call fcn.100575ef
mov byte [eax], 1
mov ecx, dword [esi + 0x12d4]
push ebx
add ecx, 0x54
call fcn.1000b27e
push dword [ebp + 0xc]
mov ecx, dword [eax]
mov eax, dword [ecx]
push edi
call dword [eax + 0x4c]
jmp 0x1006b67c
push dword [ebp + 8]
lea ecx, [esi + 0xb8]
mov eax, dword [ecx]
call dword [eax + 0xa8]
inc ebx
jmp 0x1006b4af
cmp dword [ebp - 0x14], 9
jne 0x1006b6e0
mov eax, dword [ebp + 0xc]
cmp dword [eax + 4], 0x100
jne 0x1006b6e0
lea ecx, [esi + 0xe4]
call fcn.10058142
xor ebx, ebx
mov byte [ebp + 0xf], al
mov dword [ebp - 0x14], ebx
mov dword [ebp + 8], ebx
mov eax, dword [esi + 0x12d4]
lea ecx, [eax + 0x6c]
mov eax, dword [ecx + 0x10]
sub eax, dword [ecx + 0xc]
sar eax, 2
cmp dword [ebp + 8], eax
jae 0x1006b698
push dword [ebp + 8]
call fcn.1000b27e
cmp byte [ebp + 0xf], 0
mov edi, dword [eax]
je 0x1006b5f6
test ebx, ebx
jne 0x1006b5f6
push edi
lea ecx, [esi + 0xe4]
call fcn.100585b8
test al, al
je 0x1006b5f6
mov dword [ebp - 0x14], edi
mov eax, dword [edi]
lea ebx, [esi + 0xb8]
push ebx
mov ecx, edi
call dword [eax + 0x20]
test al, al
je 0x1006b68d
push 0x10
call dword [sym.imp.USER32.dll_GetKeyState]
test al, al
jns 0x1006b61d
dec dword [ebp + 8]
jmp 0x1006b620
inc dword [ebp + 8]
mov eax, dword [esi + 0x12d4]
lea ecx, [eax + 0x6c]
mov eax, dword [ecx + 0x10]
sub eax, dword [ecx + 0xc]
sar eax, 2
cmp dword [ebp + 8], eax
jae 0x1006b65e
push dword [ebp + 8]
call fcn.1000b27e
mov ecx, dword [eax]
mov eax, dword [ecx]
call dword [eax + 0x78]
mov eax, dword [ebx]
push 1
mov ecx, ebx
call dword [eax + 0xc0]
call fcn.100575ef
mov byte [eax], 1
xor eax, eax
jmp 0x1006b67c
cmp byte [ebp + 0xf], 0
je 0x1006b671
push 0
lea ecx, [esi + 0xe4]
call fcn.10058614
call fcn.100575ef
mov byte [eax], 1
xor eax, eax
inc eax
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret 8
inc dword [ebp + 8]
mov ebx, dword [ebp - 0x14]
jmp 0x1006b5b4
mov ecx, dword [esi + 0x12d4]
mov eax, dword [ecx + 0x7c]
sub eax, dword [ecx + 0x78]
add ecx, 0x6c
test eax, 0xfffffffc
je 0x1006b652
cmp byte [ebp + 0xf], 0
je 0x1006b6cd
test ebx, ebx
je 0x1006b6be
mov eax, dword [ebx]
mov ecx, ebx
jmp 0x1006b6d8
push 0
lea ecx, [esi + 0xe4]
call fcn.10058614
jmp 0x1006b652
push 0
call fcn.1000b27e
mov ecx, dword [eax]
mov eax, dword [ecx]
call dword [eax + 0x74]
jmp 0x1006b652
xor ebx, ebx
mov eax, dword [esi + 0x12d4]
lea ecx, [eax + 0x6c]
mov eax, dword [ecx + 0x10]
sub eax, dword [ecx + 0xc]
sar eax, 2
cmp ebx, eax
jae 0x1006b72f
push ebx
lea edi, [esi + 0xb8]
call fcn.1000b27e
mov ecx, dword [eax]
mov eax, dword [ecx]
push edi
call dword [eax + 0x20]
test al, al
je 0x1006b72c
call fcn.100575ef
mov byte [eax], 1
mov ecx, dword [esi + 0x12d4]
push ebx
add ecx, 0x6c
call fcn.1000b27e
jmp 0x1006b55d
inc ebx
jmp 0x1006b6e2
or dword [ebp - 4], 0xffffffff
jmp 0x1006b671