Function at 0x67855690
Capabilities:
Log keystrokes via polling

Disassembly:
push esi
mov esi, ecx
mov eax, dword [esi]
call dword [eax + 0x78]
test eax, eax
je case.0x67855712.19
cmp dword [esi + 0x204], 0xffffffff
jne 0x678556e6
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x90]
test eax, eax
je 0x678556e6
mov eax, dword [esp + 8]
cmp eax, 0xd
je 0x678556c9
cmp eax, 0x20
jne case.0x67855712.19
mov eax, dword [esi + 0x84]
mov ecx, dword [esi + 0x108]
push 0
push eax
call sym.MfcHlpr520.dll_public:_int___thiscall_CMHPCommandBar::SetPopuped_int__int_
mov eax, 1
pop esi
ret 8
mov edx, dword [esi + 0x108]
lea ecx, [esp + 8]
push ecx
push edx
call sym.MfcHlpr520.dll_public:_static_void___cdecl_CMHPDrawHelpers::KeyToLayout_class_CWnd___unsigned_int__
mov eax, dword [esp + 0x10]
add esp, 8
add eax, 0xfffffff7
cmp eax, 0x1f
ja case.0x67855712.19
xor ecx, ecx
mov cl, byte [eax + 0x67855910]
jmp dword [ecx*4 + 0x678558e4]
push 1
push 0xffffffffffffffff
mov ecx, esi
call sym.MfcHlpr520.dll_public:_long_int___thiscall_CMHPControlGallery::GetNext_long_int__int_const
push eax
mov ecx, esi
call sym.MfcHlpr520.dll_public:_void___thiscall_CMHPControlGallery::SetSelectedItem_int_
mov eax, 1
pop esi
ret 8
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, esi
call sym.MfcHlpr520.dll_public:_long_int___thiscall_CMHPControlGallery::GetNext_long_int__int_const
push eax
mov ecx, esi
call sym.MfcHlpr520.dll_public:_void___thiscall_CMHPControlGallery::SetSelectedItem_int_
mov eax, 1
pop esi
ret 8
mov edx, dword [esi + 0x204]
push 0xffffffffffffffff
push edx
mov ecx, esi
call sym.MfcHlpr520.dll_public:_long_int___thiscall_CMHPControlGallery::GetNextInRow_long_int__int_const
push eax
mov ecx, esi
call sym.MfcHlpr520.dll_public:_void___thiscall_CMHPControlGallery::SetSelectedItem_int_
mov eax, 1
pop esi
ret 8
mov eax, dword [esi + 0x204]
push 1
push eax
mov ecx, esi
call sym.MfcHlpr520.dll_public:_long_int___thiscall_CMHPControlGallery::GetNextInRow_long_int__int_const
push eax
mov ecx, esi
call sym.MfcHlpr520.dll_public:_void___thiscall_CMHPControlGallery::SetSelectedItem_int_
mov eax, 1
pop esi
ret 8
mov ecx, dword [esi + 0x204]
push 0xffffffffffffffff
push ecx
mov ecx, esi
call sym.MfcHlpr520.dll_public:_long_int___thiscall_CMHPControlGallery::GetNextInColumn_long_int__int_const
cmp eax, 0xffffffff
jne 0x67855862
mov edx, dword [esi + 0x84]
mov ecx, dword [esi + 0x100]
push 1
push 0
push 1
push eax
push edx
call sym.MfcHlpr520.dll_public:_long_int___thiscall_CMHPControls::GetNext_long_int__int__int__int__int_const
cmp eax, dword [esi + 0x84]
jne case.0x67855712.19
push 0xffffffffffffffff
jmp 0x67855854
mov eax, dword [esi + 0x204]
push 0xffffffffffffffff
push eax
mov ecx, esi
call sym.MfcHlpr520.dll_public:_long_int___thiscall_CMHPControlGallery::GetNextInPage_long_int__int_const
push eax
mov ecx, esi
call sym.MfcHlpr520.dll_public:_void___thiscall_CMHPControlGallery::SetSelectedItem_int_
mov eax, 1
pop esi
ret 8
mov ecx, dword [esi + 0x204]
push 1
push ecx
mov ecx, esi
call sym.MfcHlpr520.dll_public:_long_int___thiscall_CMHPControlGallery::GetNextInPage_long_int__int_const
push eax
mov ecx, esi
call sym.MfcHlpr520.dll_public:_void___thiscall_CMHPControlGallery::SetSelectedItem_int_
mov eax, 1
pop esi
ret 8
mov edx, dword [esi + 0x204]
push 1
push edx
mov ecx, esi
call sym.MfcHlpr520.dll_public:_long_int___thiscall_CMHPControlGallery::GetNextInColumn_long_int__int_const
cmp eax, 0xffffffff
jne 0x67855862
mov eax, dword [esi + 0x84]
mov ecx, dword [esi + 0x100]
push 1
push 0
push 1
push 1
push eax
call sym.MfcHlpr520.dll_public:_long_int___thiscall_CMHPControls::GetNext_long_int__int__int__int__int_const
cmp eax, dword [esi + 0x84]
jne case.0x67855712.19
push 1
push 0xffffffffffffffff
mov ecx, esi
call sym.MfcHlpr520.dll_public:_long_int___thiscall_CMHPControlGallery::GetNext_long_int__int_const
cmp eax, 0xffffffff
je case.0x67855712.19
push eax
mov ecx, esi
call sym.MfcHlpr520.dll_public:_void___thiscall_CMHPControlGallery::SetSelectedItem_int_
mov eax, 1
pop esi
ret 8
push 0x10
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jl 0x678558a9
mov ecx, dword [esi + 0x204]
push 1
push ecx
mov ecx, esi
call sym.MfcHlpr520.dll_public:_long_int___thiscall_CMHPControlGallery::GetNext_long_int__int_const
cmp eax, dword [esi + 0x204]
jle case.0x67855712.19
push eax
mov ecx, esi
call sym.MfcHlpr520.dll_public:_void___thiscall_CMHPControlGallery::SetSelectedItem_int_
mov eax, 1
pop esi
ret 8
mov edx, dword [esi + 0x204]
push 0xffffffffffffffff
push edx
mov ecx, esi
call sym.MfcHlpr520.dll_public:_long_int___thiscall_CMHPControlGallery::GetNext_long_int__int_const
cmp eax, dword [esi + 0x204]
jge case.0x67855712.19
push eax
mov ecx, esi
call sym.MfcHlpr520.dll_public:_void___thiscall_CMHPControlGallery::SetSelectedItem_int_
mov eax, 1
pop esi
ret 8
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x9c]
xor eax, eax
pop esi
ret 8