Function at 0x10081990
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 0x100819a4
pop esi
pop ecx
ret
mov eax, dword [esp + 0x14]
test eax, eax
push ebx
push ebp
push edi
jne 0x100819c4
push eax
push eax
push 0x10
push esi
call fcn.10051590
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 1
jne 0x10081a30
push esi
call fcn.1003c3a0
mov esi, eax
push 4
push esi
call fcn.10051480
push 5
push esi
call fcn.10051480
push 3
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push esi
call fcn.100514a0
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.10051560
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 0x10081b32
cmp eax, 2
jne 0x10081a4b
push 7
push esi
call fcn.10051480
add esp, 8
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 3
jne 0x10081a70
push 0
push 0xf020
push 0x112
push esi
call fcn.100514f0
add esp, 0x10
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 4
jne 0x10081a8b
push 3
push esi
call fcn.10051480
add esp, 8
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 5
jne 0x10081aa6
push 4
push esi
call fcn.10051480
add esp, 8
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 6
jne 0x10081ac1
push 0
push esi
call fcn.10051480
add esp, 8
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 7
jne 0x10081adc
push 5
push esi
call fcn.10051480
add esp, 8
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 8
jne 0x10081b17
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.100514a0
add esp, 0x1c
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 9
jne 0x10081b52
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.100514a0
add esp, 0x1c
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 0xa
jne 0x10081b6b
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 0x10081b84
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 0x10081be5
push esi
call fcn.1003c3a0
mov esi, eax
mov eax, dword [esp + 0x1c]
push esi
push eax
call fcn.100817c0
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.10051560
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 0x10081c34
lea ecx, [esp + 0x10]
push ecx
push esi
call fcn.10051560
mov edx, dword [esp + 0x18]
push 0
push 0
push edx
push 0
push 1
call fcn.10051000
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x10081c2c
push 0
push esi
call fcn.100510e0
push esi
call fcn.10037190
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 0x10081c57
push esi
call fcn.1003c3a0
push 0
push 0
push eax
call fcn.10081890
add esp, 0x10
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
pop ecx
ret
cmp eax, 0xf
jne 0x10081c8a
call dword [sym.imp.KERNEL32.DLL_GetCurrentThreadId]
push 0
push esi
mov edi, eax
call fcn.10051560
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