Function at 0x46049b
Capabilities:
Log keystrokes via polling

Disassembly:
push 0xffffffffffffffff
push 0x52a20b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x7c
mov eax, dword [str.GBURNER]
mov edx, dword [0x6596bc]
push ebx
push ebp
mov ebp, dword [sym.imp.USER32.dll_GetKeyState]
push esi
mov esi, ecx
push edi
mov ecx, dword [0x6596b8]
push 0x11
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edx
call ebp
mov di, ax
push 8
and edi, 0xffff8000
call ebp
mov ebx, dword [esp + 0x9c]
and eax, 0xffff8000
cmp ebx, 0x61
jne 0x4604da
mov ebx, 0x41
jmp 0x4604f0
cmp ebx, 0x63
jne 0x4604e6
mov ebx, 0x43
jmp 0x4604f0
cmp ebx, 0x76
jne 0x4604f0
mov ebx, 0x56
test di, di
je 0x4605d4
mov ecx, ebx
sub ecx, 0x41
je 0x46059d
sub ecx, 2
je 0x46055b
sub ecx, 0x13
jne 0x4605d4
mov eax, dword [esi + 0x48c8]
cmp eax, 1
je 0x460522
cmp eax, 2
jne 0x460538
mov ecx, dword [esi + 0x30e4]
test ecx, ecx
je 0x460538
mov ecx, esi
call fcn.004455c0
jmp 0x460613
cmp eax, 3
jne 0x460613
mov eax, dword [esi + 0x30e8]
test eax, eax
je 0x460613
mov ecx, esi
call fcn.00445ae0
jmp 0x460613
mov eax, dword [esi + 0x48c8]
cmp eax, 1
je 0x46056b
cmp eax, 2
jne 0x460581
mov ecx, dword [esi + 0x30e4]
test ecx, ecx
je 0x460581
mov ecx, esi
call fcn.004455a0
jmp 0x460613
cmp eax, 3
jne 0x460613
mov eax, dword [esi + 0x30e8]
test eax, eax
je 0x460613
mov ecx, esi
call fcn.004459e0
jmp 0x460613
mov eax, dword [esi + 0x48c8]
cmp eax, 1
je 0x4605ad
cmp eax, 2
jne 0x4605be
mov ecx, dword [esi + 0x30e4]
test ecx, ecx
je 0x4605be
call fcn.0046fbe0
jmp 0x460613
cmp eax, 3
jne 0x460613
mov ecx, dword [esi + 0x30e8]
test ecx, ecx
je 0x460613
call fcn.0046fbe0
jmp 0x460613
cmp ebx, 0x2e
jne 0x460613
test ax, ax
jne 0x460613
mov eax, dword [esi + 0x48c8]
cmp eax, 1
jne 0x4605f0
call fcn.0043fed0
jmp 0x460613
cmp eax, 2
jne 0x460609
mov eax, dword [esi + 0x30e4]
add eax, 0x7c
push eax
call fcn.0043f990
add esp, 4
jmp 0x460613
cmp eax, 3
jne 0x460613
call fcn.0043fc30
push 0xa0
mov dword [esi + 0x48c8], 0
call ebp
test ax, ax
jne 0x460635
push 0xa1
call ebp
test ax, ax
je 0x46063f
cmp bl, 0x38
jne 0x46063f
mov ebx, 0x2a
push 0xa0
call ebp
test ax, ax
jne 0x460657
push 0xa1
call ebp
test ax, ax
je 0x460661
cmp bl, 0x33
jne 0x460661
mov ebx, 0x23
mov eax, dword [0x6c7b38]
cmp bl, byte [esp + eax + 0x14]
jne 0x460742
mov cl, byte [esp + eax + 0x15]
inc eax
test cl, cl
mov dword [0x6c7b38], eax
jne 0x460751
mov eax, dword [0x717d4c]
xor esi, esi
cmp eax, esi
mov dword [0x6c7b38], esi
jne 0x4606da
push esi
lea ecx, [esp + 0x24]
call fcn.004dd250
lea ecx, [esp + 0x20]
mov dword [esp + 0x94], esi
call fcn.0050ea9c
lea ecx, [esp + 0x88]
mov dword [esp + 0x94], 1
call fcn.0050dfa8
lea ecx, [esp + 0x20]
mov dword [esp + 0x94], 0xffffffff
call fcn.004a7820
jmp 0x460751
mov ecx, dword [0x66f704]
mov dword [esp + 0x10], ecx
push str.Do_you_want_to_close_log_file_
push 0x26ac
mov dword [esp + 0x9c], 2
call fcn.004dd120
push eax
push 0x717d58
lea edx, [esp + 0x20]
push 0x60e094
push edx
call fcn.0050b108
mov eax, dword [esp + 0x28]
push 0x44
push eax
call fcn.004b4a10
add esp, 0x20
cmp eax, 6
jne 0x46072c
call fcn.004dd6a0
lea ecx, [esp + 0x10]
mov dword [esp + 0x94], 0xffffffff
call fcn.0050dfa8
jmp 0x460751
cmp ebx, 0x10
je 0x460751
mov dword [0x6c7b38], 0
mov ecx, dword [esp + 0x8c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x88
ret 0xc