Function at 0x1009c290
Capabilities:
Log keystrokes

Disassembly:
push ecx
push esi
mov esi, dword [esp + 0x10]
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x1009c2a4
pop esi
pop ecx
ret
mov eax, dword [esp + 0x14]
test eax, eax
push ebx
push ebp
push edi
jne 0x1009c2c4
push eax
push eax
push 0x10
push esi
call fcn.10067900
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 1
jne 0x1009c330
push esi
call fcn.10052340
mov esi, eax
push 4
push esi
call fcn.100677f0
push 5
push esi
call fcn.100677f0
push 3
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push esi
call fcn.10067810
mov ebp, dword [sym.imp.USER32.dll_SetForegroundWindow]
add esp, 0x30
push esi
call ebp
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push 0
push esi
mov edi, eax
call fcn.100678d0
add esp, 8
push 1
mov ebx, eax
push ebx
push edi
call dword [sym.imp.USER32.dll_AttachThreadInput]
push esi
call ebp
push 0
push ebx
push edi
call dword [sym.imp.USER32.dll_AttachThreadInput]
jmp 0x1009c432
cmp eax, 2
jne 0x1009c34b
push 7
push esi
call fcn.100677f0
add esp, 8
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 3
jne 0x1009c370
push 0
push 0xf020
push 0x112
push esi
call fcn.10067860
add esp, 0x10
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 4
jne 0x1009c38b
push 3
push esi
call fcn.100677f0
add esp, 8
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 5
jne 0x1009c3a6
push 4
push esi
call fcn.100677f0
add esp, 8
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 6
jne 0x1009c3c1
push 0
push esi
call fcn.100677f0
add esp, 8
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 7
jne 0x1009c3dc
push 5
push esi
call fcn.100677f0
add esp, 8
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 8
jne 0x1009c417
push 0xffffffffffffffec
push esi
call dword [sym.imp.USER32.dll_GetWindowLongA]
or eax, 8
push eax
push 0xffffffffffffffec
push esi
call dword [sym.imp.USER32.dll_SetWindowLongA]
push 3
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push esi
call fcn.10067810
add esp, 0x1c
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 9
jne 0x1009c452
push 0xffffffffffffffec
push esi
call dword [sym.imp.USER32.dll_GetWindowLongA]
and eax, 0xfffffff7
push eax
push 0xffffffffffffffec
push esi
call dword [sym.imp.USER32.dll_SetWindowLongA]
push 3
push 0
push 0
push 0
push 0
push 0xfffffffffffffffe
push esi
call fcn.10067810
add esp, 0x1c
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 0xa
jne 0x1009c46b
push 0
push esi
call dword [sym.imp.USER32.dll_EnableWindow]
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 0xb
jne 0x1009c484
push 1
push esi
call dword [sym.imp.USER32.dll_EnableWindow]
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 0xc
jne 0x1009c4e5
push esi
call fcn.10052340
mov esi, eax
mov eax, dword [esp + 0x1c]
push esi
push eax
call fcn.1009c0c0
mov ebp, dword [sym.imp.USER32.dll_SetForegroundWindow]
add esp, 0xc
push esi
call ebp
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push 0
mov edi, eax
call dword [sym.imp.USER32.dll_GetForegroundWindow]
push eax
call fcn.100678d0
add esp, 8
push 1
mov ebx, eax
push ebx
push edi
call dword [sym.imp.USER32.dll_AttachThreadInput]
push esi
call ebp
push 0
push ebx
push edi
call dword [sym.imp.USER32.dll_AttachThreadInput]
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 0xd
jne 0x1009c534
lea ecx, [esp + 0x10]
push ecx
push esi
call fcn.100678d0
mov edx, dword [esp + 0x18]
push 0
push 0
push edx
push 0
push 1
call fcn.10067370
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x1009c52c
push 0
push esi
call fcn.10067450
push esi
call fcn.1004c470
add esp, 0xc
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
pop edi
pop ebp
pop ebx
xor eax, eax
pop esi
pop ecx
ret
cmp eax, 0xe
jne 0x1009c557
push esi
call fcn.10052340
push 0
push 0
push eax
call fcn.1009c190
add esp, 0x10
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 0xf
jne 0x1009c58a
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push 0
push esi
mov edi, eax
call fcn.100678d0
mov ebp, dword [sym.imp.USER32.dll_AttachThreadInput]
add esp, 8
push 1
mov ebx, eax
push ebx
push edi
call ebp
push esi
call dword [sym.imp.USER32.dll_SetFocus]
push 0
push ebx
push edi
call ebp
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret