Function at 0x18004491c
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov r13, r9
mov rdi, r8
mov rbx, rdx
mov r15, rcx
mov eax, dword [0x18023c328]
mov r12d, 1
test r12b, al
jne 0x180044985
or eax, r12d
mov dword [0x18023c328], eax
mov r9d, 0x58dee8e2
lea r8, str.m_EconGloves
mov edx, 0x87cce03e
lea rcx, str.C_CSPlayerPawn
call fcn.1800494d8
mov word [0x18023c394], ax
jmp 0x18004498c
movzx eax, word [0x18023c394]
movsx rsi, ax
add rsi, r15
je 0x180044fbe
mov eax, dword [0x18023c33c]
test r12b, al
jne 0x1800449d4
or eax, r12d
mov dword [0x18023c33c], eax
mov r9d, 0xa5bfefb3
lea r8, str.m_iTeamNum
mov edx, 0x8c86dfe9
lea rcx, str.C_BaseEntity
call fcn.1800494d8
mov word [0x18023c2ec], ax
jmp 0x1800449db
movzx eax, word [0x18023c2ec]
movsx rax, ax
movzx edx, byte [rax + rbx]
xor ebx, ebx
test rdi, rdi
jne 0x1800449f8
lea rcx, str.Tried_getting_virtual_function_from_a_null_class._n
call fcn.1800066f0
jmp 0x180044a12
mov rax, qword [rdi]
test rax, rax
jne 0x180044a09
lea rcx, str.Tried_getting_virtual_function_from_a_null_vtable._n
jmp 0x1800449f1
mov r9, qword [rax + 0x40]
test r9, r9
jne 0x180044a23
lea rcx, str.Tried_calling_a_null_virtual_function._n
call fcn.1800066f0
jmp 0x180044fbe
mov r8d, 0x29
mov rcx, rdi
call r9
mov r14, rax
test rax, rax
je 0x180044fbe
mov dil, bl
mov ecx, dword [0x18023c6ac]
mov ebp, 0x8f0ee3c1
test r12b, cl
jne 0x180044ab3
or ecx, r12d
mov dword [0x18023c6ac], ecx
mov ecx, dword [0x18023c398]
test r12b, cl
jne 0x180044a98
or ecx, r12d
mov dword [0x18023c398], ecx
mov r9d, ebp
lea r8, str.m_flLastSpawnTimeIndex
mov edx, 0xabb6d743
lea rcx, str.C_CSPlayerPawnBase
call fcn.1800494d8
movzx edx, ax
mov word [0x18023c338], ax
mov ecx, dword [0x18023c398]
jmp 0x180044a9f
movzx edx, word [0x18023c338]
movsx rax, dx
movss xmm0, dword [rax + r15]
movss dword [0x18023c6a8], xmm0
jmp 0x180044ac0
mov ecx, dword [0x18023c398]
movzx edx, word [0x18023c338]
test r12b, cl
jne 0x180044af9
or ecx, r12d
mov dword [0x18023c398], ecx
mov r9d, ebp
lea r8, str.m_flLastSpawnTimeIndex
mov edx, 0xabb6d743
lea rcx, str.C_CSPlayerPawnBase
call fcn.1800494d8
movzx edx, ax
mov word [0x18023c338], ax
mov ecx, dword [0x18023c398]
movsx rax, dx
movss xmm0, dword [0x18023c6a8]
ucomiss xmm0, dword [rax + r15]
jp 0x180044b0e
je 0x180044b56
test r12b, cl
jne 0x180044b41
or ecx, r12d
mov dword [0x18023c398], ecx
mov r9d, ebp
lea r8, str.m_flLastSpawnTimeIndex
mov edx, 0xabb6d743
lea rcx, str.C_CSPlayerPawnBase
call fcn.1800494d8
movzx edx, ax
mov word [0x18023c338], ax
movsx rax, dx
movss xmm0, dword [rax + r15]
movss dword [0x18023c6a8], xmm0
mov dil, r12b
mov ecx, 0x75
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movzx ebp, dil
test ax, ax
cmovne ebp, r12d
mov edx, dword [0x18023c260]
test r12b, dl
jne 0x180044bb1
or edx, r12d
mov dword [0x18023c260], edx
mov r9d, 0x34b55816
lea r8, str.m_iItemID
mov edx, 0x3753663c
lea rcx, str.C_EconItemView
call fcn.1800494d8
movzx r8d, ax
mov word [0x18023c264], ax
mov edx, dword [0x18023c260]
jmp 0x180044bb9
movzx r8d, word [0x18023c264]
movsx rdi, r8w
test r12b, dl
jne 0x180044bfa
or edx, r12d
mov dword [0x18023c260], edx
mov r9d, 0x34b55816
lea r8, str.m_iItemID
mov edx, 0x3753663c
lea rcx, str.C_EconItemView
call fcn.1800494d8
movzx r8d, ax
mov word [0x18023c264], ax
mov edx, dword [0x18023c260]
movsx rax, r8w
mov rcx, qword [rax + r14]
cmp qword [rdi + rsi], rcx
jne 0x180044c11
test bpl, bpl
je 0x180044ee9
mov byte [0x18023c2d0], 3
mov ecx, dword [0x18023c324]
test r12b, cl
jne 0x180044c6d
or ecx, r12d
mov dword [0x18023c324], ecx
mov r9d, 0xa2ccb41a
lea r8, str.m_iItemDefinitionIndex
mov ebp, 0x3753663c
mov edx, ebp
lea rcx, str.C_EconItemView
call fcn.1800494d8
movzx r9d, ax
mov word [0x18023c330], ax
mov edx, dword [0x18023c260]
movzx r8d, word [0x18023c264]
mov ecx, dword [0x18023c324]
jmp 0x180044c7a
movzx r9d, word [0x18023c330]
mov ebp, 0x3753663c
movsx rax, r9w
movzx edi, word [rax + r14]
test r12b, cl
jne 0x180044cc5
or ecx, r12d
mov dword [0x18023c324], ecx
mov r9d, 0xa2ccb41a
lea r8, str.m_iItemDefinitionIndex
mov edx, ebp
lea rcx, str.C_EconItemView
call fcn.1800494d8
movzx r9d, ax
mov word [0x18023c330], ax
mov edx, dword [0x18023c260]
movzx r8d, word [0x18023c264]
movsx rax, r9w
mov word [rax + rsi], di
test r12b, dl
jne 0x180044d07
or edx, r12d
mov dword [0x18023c260], edx
mov r9d, 0x34b55816
lea r8, str.m_iItemID
mov edx, ebp
lea rcx, str.C_EconItemView
call fcn.1800494d8
movzx r8d, ax
mov word [0x18023c264], ax
mov edx, dword [0x18023c260]
movsx rax, r8w
mov rdi, qword [rax + r14]
test r12b, dl
jne 0x180044d43
or edx, r12d
mov dword [0x18023c260], edx
mov r9d, 0x34b55816
lea r8, str.m_iItemID
mov edx, ebp
lea rcx, str.C_EconItemView
call fcn.1800494d8
movzx r8d, ax
mov word [0x18023c264], ax
movsx rax, r8w
mov qword [rax + rsi], rdi
mov ecx, dword [0x18023c314]
test r12b, cl
jne 0x180044d8c
or ecx, r12d
mov dword [0x18023c314], ecx
mov r9d, 0x373ee446
lea r8, str.m_iItemIDHigh
mov edx, ebp
lea rcx, str.C_EconItemView
call fcn.1800494d8
movzx edx, ax
mov word [0x18023c310], ax
mov ecx, dword [0x18023c314]
jmp 0x180044d93
movzx edx, word [0x18023c310]
movsx rax, dx
mov edi, dword [rax + r14]
test r12b, cl
jne 0x180044dce
or ecx, r12d
mov dword [0x18023c314], ecx
mov r9d, 0x373ee446
lea r8, str.m_iItemIDHigh
mov edx, ebp
lea rcx, str.C_EconItemView
call fcn.1800494d8
movzx edx, ax
mov word [0x18023c310], ax
movsx rax, dx
mov dword [rax + rsi], edi
mov ecx, dword [0x18023c300]
test r12b, cl
jne 0x180044e16
or ecx, r12d
mov dword [0x18023c300], ecx
mov r9d, 0xdf29c2c
lea r8, str.m_iItemIDLow
mov edx, ebp
lea rcx, str.C_EconItemView
call fcn.1800494d8
movzx edx, ax
mov word [0x18023c340], ax
mov ecx, dword [0x18023c300]
jmp 0x180044e1d
movzx edx, word [0x18023c340]
movsx rax, dx
mov edi, dword [rax + r14]
test r12b, cl
jne 0x180044e58
or ecx, r12d
mov dword [0x18023c300], ecx
mov r9d, 0xdf29c2c
lea r8, str.m_iItemIDLow
mov edx, ebp
lea rcx, str.C_EconItemView
call fcn.1800494d8
movzx edx, ax
mov word [0x18023c340], ax
movsx rax, dx
mov dword [rax + rsi], edi
mov ecx, dword [0x18023c308]
test r12b, cl
jne 0x180044ea0
or ecx, r12d
mov dword [0x18023c308], ecx
mov r9d, 0xc65de986
lea r8, str.m_iAccountID
mov edx, ebp
lea rcx, str.C_EconItemView
call fcn.1800494d8
movzx edx, ax
mov word [0x18023c320], ax
mov ecx, dword [0x18023c308]
jmp 0x180044ea7
movzx edx, word [0x18023c320]
movsx rax, dx
mov edi, dword [rax + r14]
test r12b, cl
jne 0x180044ee2
or ecx, r12d
mov dword [0x18023c308], ecx
mov r9d, 0xc65de986
lea r8, str.m_iAccountID
mov edx, ebp
lea rcx, str.C_EconItemView
call fcn.1800494d8
movzx edx, ax
mov word [0x18023c320], ax
movsx rax, dx
mov dword [rax + rsi], edi
cmp byte [0x18023c2d0], bl
jbe 0x180044fbe
mov edx, dword [r13 + 0xf88]
test edx, edx
je 0x180044f24
mov rcx, qword [r13 + 0xf80]
mov eax, ebx
add rax, rax
cmp dword [rcx + rax*8 + 4], 0xf143b82a
je 0x180044f1f
add ebx, r12d
cmp ebx, edx
jb 0x180044f07
jmp 0x180044f24
or dword [rcx + rax*8 + 0xc], 0xffffffff
mov eax, dword [0x18023c2e4]
test r12b, al
jne 0x180044f5f
or eax, r12d
mov dword [0x18023c2e4], eax
mov r9d, 0x710abdd
lea r8, str.m_bInitialized
mov edx, 0x3753663c
lea rcx, str.C_EconItemView
call fcn.1800494d8
mov word [0x18023c38c], ax
jmp 0x180044f66
movzx eax, word [0x18023c38c]
movsx rax, ax
mov byte [rax + rsi], r12b
mov eax, dword [0x18023c388]
test r12b, al
jne 0x180044fa9
or eax, r12d
mov dword [0x18023c388], eax
mov r9d, 0x22bae6fd
lea r8, str.m_bNeedToReApplyGloves
mov edx, 0x87cce03e
lea rcx, str.C_CSPlayerPawn
call fcn.1800494d8
mov word [0x18023c2f0], ax
jmp 0x180044fb0
movzx eax, word [0x18023c2f0]
movsx rax, ax
mov byte [rax + r15], r12b
dec byte [0x18023c2d0]
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret