Function at 0x140042fb0
Capabilities:
Log keystrokes via polling

Disassembly:
sub rsp, 0x28
mov ecx, reloc.WLDAP32.dll_Ordinal_27
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140042fb4
mov ecx, reloc.WS2_32.dll_WSASetLastError
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043c5c
mov ecx, WSACleanup
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043c49
mov ecx, WSACleanup
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043c36
mov ecx, reloc.WS2_32.dll_WSAStartup
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043c23
mov ecx, reloc.WS2_32.dll_WSACleanup
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043c10
mov ecx, 0x75
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043bfd
mov ecx, 0x76
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043bea
mov ecx, 0x77
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043bd4
mov ecx, 0x78
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043bbe
mov ecx, 0x79
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043ba8
mov ecx, 0x7a
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043b92
mov ecx, 0x7b
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043b7c
mov ecx, 9
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043b66
mov ecx, reloc.WS2_32.dll_sendto
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043b50
mov ecx, reloc.WS2_32.dll_recv
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043b3a
mov ecx, reloc.WS2_32.dll_recvfrom
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043b24
mov ecx, reloc.WS2_32.dll_select
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043b0e
mov ecx, 0xa3
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043af8
mov ecx, 0xa1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043ae2
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043acc
mov ecx, reloc.WLDAP32.dll_Ordinal_33
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043ab6
mov ecx, Ordinal_35
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043aa0
mov ecx, reloc.WLDAP32.dll_Ordinal_35
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043a8a
mov ecx, 0x24
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043a74
mov ecx, Ordinal_41
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043a5e
mov ecx, Ordinal_41
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043a48
mov ecx, Ordinal_41
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043a32
mov ecx, Ordinal_41
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043a1c
mov ecx, reloc.WLDAP32.dll_Ordinal_45
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043a06
mov ecx, reloc.WLDAP32.dll_Ordinal_46
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400439f0
mov ecx, 0x60
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400439da
mov ecx, 0x61
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400439c4
mov ecx, 0x62
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400439ae
mov ecx, 0x63
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043998
mov ecx, 0x64
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043982
mov ecx, 0x65
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x14004396c
mov ecx, 0x66
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043956
mov ecx, 0x67
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043940
mov ecx, 0x68
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x14004392a
mov ecx, 0x69
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043914
mov ecx, 0x6a
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400438fe
mov ecx, WSAGetLastError
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400438e8
mov ecx, WSASetLastError
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400438d2
mov ecx, WSASetLastError
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400438bc
mov ecx, WSASetLastError
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400438a6
mov ecx, reloc.WS2_32.dll_WSAGetLastError
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043890
mov ecx, 0x90
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x14004387a
mov ecx, 0x91
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043864
mov ecx, 0xbb
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x14004384e
mov ecx, 0xbc
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043838
mov ecx, 0xbd
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043822
mov ecx, 0xbe
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x14004380c
mov ecx, 0x51
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400437f6
mov ecx, 0x57
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400437e0
mov ecx, 0x45
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400437ca
mov ecx, 0x52
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400437b4
mov ecx, 0x54
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x14004379e
mov ecx, 0x59
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043788
mov ecx, 0x55
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043772
mov ecx, 0x49
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x14004375c
mov ecx, reloc.WLDAP32.dll_Ordinal_79
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043746
mov ecx, 0x50
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043730
mov ecx, 0x41
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x14004371a
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043704
mov ecx, 0x44
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400436ee
mov ecx, 0x46
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400436d8
mov ecx, 0x47
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400436c2
mov ecx, 0x48
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400436ac
mov ecx, 0x4a
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043696
mov ecx, Ordinal_79
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043680
mov ecx, Ordinal_79
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x14004366a
mov ecx, 0x5a
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043654
mov ecx, 0x58
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x14004363e
mov ecx, 0x43
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043628
mov ecx, 0x56
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140043612
mov ecx, 0x42
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400435fc
mov ecx, Ordinal_79
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400435e6
mov ecx, Ordinal_79
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x140042fb4
mov dword [0x1400e7140], 0x4d
lea rax, [0x1400cc08c]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x4e
lea rax, [0x1400cc090]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x42
lea rax, [0x1400cc060]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x56
lea rax, [0x1400cc0b0]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x43
lea rax, [0x1400cc064]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x58
lea rax, [0x1400cc0b8]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x5a
lea rax, [0x1400cc0c0]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x4c
lea rax, [0x1400cc088]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x4b
lea rax, [0x1400cc084]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x4a
lea rax, [0x1400cc080]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x48
lea rax, [0x1400cc078]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x47
lea rax, [0x1400cc074]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x46
lea rax, [0x1400cc070]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x44
lea rax, [0x1400cc068]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x53
lea rax, [0x1400cc0a4]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x41
lea rax, [0x1400cc05c]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x50
lea rax, [0x1400cc098]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x4f
lea rax, [0x1400cc094]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x49
lea rax, [0x1400cc07c]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x55
lea rax, [0x1400cc0ac]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x59
lea rax, [0x1400cc0bc]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x54
lea rax, [0x1400cc0a8]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x52
lea rax, [0x1400cc0a0]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x45
lea rax, [0x1400cc06c]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x57
lea rax, [0x1400cc0b4]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x51
lea rax, [0x1400cc09c]
jmp 0x140043c6d
mov dword [0x1400e7140], 0xbe
lea rax, [0x1400d2608]
jmp 0x140043c6d
mov dword [0x1400e7140], 0xbd
lea rax, [0x1400d2604]
jmp 0x140043c6d
mov dword [0x1400e7140], 0xbc
lea rax, [0x1400d2600]
jmp 0x140043c6d
mov dword [0x1400e7140], 0xbb
lea rax, [0x1400d25fc]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x91
lea rax, str.SCROLL_LOCK
jmp 0x140043c6d
mov dword [0x1400e7140], 0x90
lea rax, str.NUM_LOCK
jmp 0x140043c6d
mov dword [0x1400e7140], 0x6f
lea rax, str.DIVIDE
jmp 0x140043c6d
mov dword [0x1400e7140], 0x6e
lea rax, str.DECIMAL
jmp 0x140043c6d
mov dword [0x1400e7140], 0x6d
lea rax, str.SUBTRACT
jmp 0x140043c6d
mov dword [0x1400e7140], 0x6c
lea rax, str.SEPARATOR
jmp 0x140043c6d
mov dword [0x1400e7140], 0x6b
lea rax, [0x1400d25ac]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x6a
lea rax, str.MULTIPLY
jmp 0x140043c6d
mov dword [0x1400e7140], 0x69
lea rax, str.NUMPAD9
jmp 0x140043c6d
mov dword [0x1400e7140], 0x68
lea rax, str.NUMPAD8
jmp 0x140043c6d
mov dword [0x1400e7140], 0x67
lea rax, str.NUMPAD7
jmp 0x140043c6d
mov dword [0x1400e7140], 0x66
lea rax, str.NUMPAD6
jmp 0x140043c6d
mov dword [0x1400e7140], 0x65
lea rax, str.NUMPAD5
jmp 0x140043c6d
mov dword [0x1400e7140], 0x64
lea rax, str.NUMPAD4
jmp 0x140043c6d
mov dword [0x1400e7140], 0x63
lea rax, str.NUMPAD3
jmp 0x140043c6d
mov dword [0x1400e7140], 0x62
lea rax, str.NUMPAD2
jmp 0x140043c6d
mov dword [0x1400e7140], 0x61
lea rax, str.NUMPAD1
jmp 0x140043c6d
mov dword [0x1400e7140], 0x60
lea rax, str.NUMPAD0
jmp 0x140043c6d
mov dword [0x1400e7140], 0x2e
lea rax, str.DELETE
jmp 0x140043c6d
mov dword [0x1400e7140], 0x2d
lea rax, str.INSERT
jmp 0x140043c6d
mov dword [0x1400e7140], 0x28
lea rax, str.DOWN_ARROW
jmp 0x140043c6d
mov dword [0x1400e7140], 0x27
lea rax, str.RIGHT_ARROW
jmp 0x140043c6d
mov dword [0x1400e7140], 0x26
lea rax, str.UP_ARROW
jmp 0x140043c6d
mov dword [0x1400e7140], 0x25
lea rax, str.LEFT_ARROW
jmp 0x140043c6d
mov dword [0x1400e7140], 0x24
lea rax, str.HOME
jmp 0x140043c6d
mov dword [0x1400e7140], 0x23
lea rax, [0x1400d250c]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x22
lea rax, str.PAGE_DOWN
jmp 0x140043c6d
mov dword [0x1400e7140], 0x21
lea rax, str.PAGE_UP
jmp 0x140043c6d
mov dword [0x1400e7140], 0x20
lea rax, str.SPACE
jmp 0x140043c6d
mov dword [0x1400e7140], 0xa1
lea rax, str.RIGHT_SHIFT
jmp 0x140043c6d
mov dword [0x1400e7140], 0xa3
lea rax, str.RIGHT_CONTROL
jmp 0x140043c6d
mov dword [0x1400e7140], 0x12
lea rax, [0x1400d24cc]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x11
lea rax, str.CTRL
jmp 0x140043c6d
mov dword [0x1400e7140], 0x10
lea rax, str.SHIFT
jmp 0x140043c6d
mov dword [0x1400e7140], 0x14
lea rax, str.CAPS
jmp 0x140043c6d
mov dword [0x1400e7140], 9
lea rax, [0x1400d24b0]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x7b
lea rax, [0x1400cc0f0]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x7a
lea rax, [0x1400cc0ec]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x79
lea rax, [0x1400cc0e8]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x78
lea rax, [0x1400cc0e4]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x77
lea rax, [0x1400cc0e0]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x76
lea rax, [0x1400cc0dc]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x75
lea rax, [0x1400cc0d8]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x74
lea rax, [0x1400cc0d4]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x73
lea rax, [0x1400cc0d0]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x72
lea rax, [0x1400cc0cc]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x71
lea rax, [0x1400cc0c8]
jmp 0x140043c6d
mov dword [0x1400e7140], 0x70
lea rax, [0x1400cc0c4]
mov ecx, 0xa
mov qword [str.NUMPAD0], rax
add rsp, 0x28
jmp qword [sym.imp.KERNEL32.dll_Sleep]