Function at 0x18008ff68
Capabilities:
Log keystrokes via polling

Disassembly:
jmp 0x18014a900
push rbp
push rdi
sub rsp, 0x198
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0x2e
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rax, qword [0x18023b1c0]
xor rax, rbp
mov qword [rbp + 0x168], rax
lea rcx, [0x180256320]
call fcn.1800910cf
call fcn.180090526
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov rcx, qword [rax + 0xa0]
call fcn.180090481
movzx eax, al
test eax, eax
je 0x18014a969
lea rax, str.Font_atlas_not_built__It_is_generally_built_by_the_renderer_back_end._Missing_call_to_renderer__NewFrame___function__e.g._ImGui_ImplOpenGL3_NewFrame__.
test rax, rax
jne 0x18014a98b
mov eax, dword [0x18020c56c]
add eax, 2
mov r8d, eax
lea rdx, str.C:UsersAdam_Hossam_MohamedDownloadsIl2CPP_Base_mainIl2CPP_Base_mainImGui_DirectX_11_Kiero_Hookimguiimgui_impl_win32.cpp
lea rcx, str.io.Fonts__IsBuilt_____Font_atlas_not_built__It_is_generally_built_by_the_renderer_back_end._Missing_call_to_renderer__NewFrame___function__e.g._ImGui_ImplOpenGL3_NewFrame__._
call qword [sym.imp.ucrtbased.dll__wassert]
xor eax, eax
lea rdx, [rbp + 0x28]
mov rcx, qword [0x180242860]
call qword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [rbp + 0x2c]
mov ecx, dword [rbp + 0x34]
sub ecx, eax
mov eax, ecx
cvtsi2ss xmm0, eax
mov eax, dword [rbp + 0x28]
mov ecx, dword [rbp + 0x30]
sub ecx, eax
mov eax, ecx
cvtsi2ss xmm1, eax
movaps xmm2, xmm0
lea rcx, [rbp + 0x154]
call fcn.18008feaf
mov rax, qword [rax]
mov rcx, qword [rbp + 8]
mov qword [rcx + 8], rax
lea rcx, [rbp + 0x58]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [0x180242868]
mov rcx, qword [rbp + 0x58]
sub rcx, rax
mov rax, rcx
cvtsi2ss xmm0, rax
cvtsi2ss xmm1, qword [0x180242870]
divss xmm0, xmm1
mov rax, qword [rbp + 8]
movss dword [rax + 0x10], xmm0
mov rax, qword [rbp + 0x58]
mov qword [0x180242868], rax
mov ecx, 0x11
call qword [sym.imp.USER32.dll_GetKeyState]
cwde
and eax, 0x8000
test eax, eax
je 0x18014aa34
mov dword [rbp + 0x164], 1
jmp 0x18014aa3e
mov dword [rbp + 0x164], 0
mov rax, qword [rbp + 8]
movzx ecx, byte [rbp + 0x164]
mov byte [rax + 0x140], cl
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetKeyState]
cwde
and eax, 0x8000
test eax, eax
je 0x18014aa70
mov dword [rbp + 0x164], 1
jmp 0x18014aa7a
mov dword [rbp + 0x164], 0
mov rax, qword [rbp + 8]
movzx ecx, byte [rbp + 0x164]
mov byte [rax + 0x141], cl
mov ecx, 0x12
call qword [sym.imp.USER32.dll_GetKeyState]
cwde
and eax, 0x8000
test eax, eax
je 0x18014aaac
mov dword [rbp + 0x164], 1
jmp 0x18014aab6
mov dword [rbp + 0x164], 0
mov rax, qword [rbp + 8]
movzx ecx, byte [rbp + 0x164]
mov byte [rax + 0x142], cl
mov rax, qword [rbp + 8]
mov byte [rax + 0x143], 0
call fcn.18014b6a0
mov rax, qword [rbp + 8]
movzx eax, byte [rax + 0xc0]
test eax, eax
je 0x18014aaf2
mov dword [rbp + 0x164], 0xffffffff
jmp 0x18014aafd
call fcn.18008faf4
mov dword [rbp + 0x164], eax
mov eax, dword [rbp + 0x164]
mov dword [rbp + 0x74], eax
mov eax, dword [rbp + 0x74]
cmp dword [0x18020c564], eax
je 0x18014ab1f
mov eax, dword [rbp + 0x74]
mov dword [0x18020c564], eax
call fcn.18014b510
call fcn.18014ac20
lea rcx, [rbp - 0x20]
lea rdx, reloc.XINPUT1_4.dll_Ordinal_2
call fcn.180090873
mov rcx, qword [rbp + 0x168]
xor rcx, rbp
call fcn.18008f743
lea rsp, [rbp + 0x178]
pop rdi
pop rbp
ret