Function at 0x100513a0
Capabilities:
Log keystrokes
Log keystrokes via polling

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0xc8
mov eax, dword [0x10084040]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov edi, dword [sym.imp.USER32.dll_MapVirtualKeyA]
push 1
push 0x11
call edi
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
push eax
call esi
test ax, ax
jns 0x100514ff
mov eax, dword [0x1008a124]
mov eax, dword [eax + 0x138ab0]
mov eax, dword [eax + 0x74]
mov dword [ebp - 0x98], eax
movss xmm1, dword [eax + 0x44]
subss xmm1, dword [eax + 0x14]
movss xmm2, dword [eax + 0x40]
subss xmm2, dword [eax + 0x10]
movss xmm3, dword [eax + 0x48]
subss xmm3, dword [eax + 0x18]
movaps xmm0, xmm1
movss dword [ebp - 0xa0], xmm1
mulss xmm0, xmm1
movaps xmm1, xmm2
movss dword [ebp - 0x9c], xmm2
mulss xmm1, xmm2
movss dword [ebp - 0x94], xmm3
addss xmm0, xmm1
movaps xmm1, xmm3
mulss xmm1, xmm3
addss xmm0, xmm1
call fcn.10001cf0
ucomiss xmm0, dword [0x1007d148]
movss xmm3, dword [ebp - 0x9c]
movss xmm4, dword [ebp - 0xa0]
movss xmm5, dword [ebp - 0x94]
lahf
test ah, 0x44
jnp 0x10051483
divss xmm3, xmm0
divss xmm4, xmm0
divss xmm5, xmm0
mov eax, dword [ebp - 0x98]
movaps xmm2, xmm4
movaps xmm7, xmm5
movaps xmm6, xmm3
movss xmm1, dword [eax + 0x9c]
mulss xmm2, xmm1
movaps xmm0, xmm1
mulss xmm0, xmm6
addss xmm2, dword [eax + 0x14]
mulss xmm1, xmm7
addss xmm0, dword [eax + 0x10]
addss xmm1, dword [eax + 0x18]
movss dword [eax + 0x14], xmm2
movss dword [eax + 0x10], xmm0
movss dword [eax + 0x18], xmm1
movss xmm2, dword [eax + 0x9c]
movaps xmm1, xmm2
movaps xmm0, xmm2
mulss xmm1, xmm3
mulss xmm0, xmm4
addss xmm1, dword [eax + 0x40]
mulss xmm2, xmm5
addss xmm0, dword [eax + 0x44]
addss xmm2, dword [eax + 0x48]
movss dword [eax + 0x40], xmm1
movss dword [eax + 0x44], xmm0
movss dword [eax + 0x48], xmm2
push 1
push 0x1f
call edi
push eax
call esi
test ax, ax
jns 0x10051672
mov eax, dword [0x1008a124]
mov eax, dword [eax + 0x138ab0]
mov eax, dword [eax + 0x74]
mov dword [ebp - 0x98], eax
movss xmm2, dword [eax + 0x14]
movss xmm1, dword [eax + 0x44]
movss xmm0, dword [eax + 0x10]
subss xmm1, xmm2
movss xmm3, dword [eax + 0x40]
movss xmm4, dword [eax + 0x18]
subss xmm3, xmm0
movss dword [ebp - 0xa4], xmm0
movss dword [ebp - 0xa8], xmm2
movss xmm2, dword [eax + 0x48]
movaps xmm0, xmm1
mulss xmm0, xmm1
subss xmm2, xmm4
movss dword [ebp - 0xa0], xmm1
movaps xmm1, xmm3
mulss xmm1, xmm3
movss dword [ebp - 0xac], xmm4
movss dword [ebp - 0x94], xmm3
addss xmm0, xmm1
movss dword [ebp - 0x9c], xmm2
movaps xmm1, xmm2
mulss xmm1, xmm2
addss xmm0, xmm1
call fcn.10001cf0
ucomiss xmm0, dword [0x1007d148]
movss xmm3, dword [ebp - 0x94]
movss xmm5, dword [ebp - 0xa0]
movss xmm4, dword [ebp - 0x9c]
lahf
test ah, 0x44
jnp 0x100515d2
divss xmm3, xmm0
divss xmm5, xmm0
divss xmm4, xmm0
mov eax, dword [ebp - 0x98]
movaps xmm2, xmm3
movaps xmm6, xmm5
movaps xmm7, xmm4
movss xmm1, dword [eax + 0x9c]
movaps xmm0, xmm1
mulss xmm0, xmm2
movss xmm2, dword [ebp - 0xa4]
subss xmm2, xmm0
movaps xmm0, xmm1
mulss xmm0, xmm6
movss xmm6, dword [ebp - 0xa8]
mulss xmm1, xmm7
subss xmm6, xmm0
movss dword [eax + 0x10], xmm2
movss xmm0, dword [ebp - 0xac]
subss xmm0, xmm1
movss dword [eax + 0x14], xmm6
movss dword [eax + 0x18], xmm0
movss xmm2, dword [eax + 0x9c]
movss xmm1, dword [eax + 0x44]
movaps xmm0, xmm2
mulss xmm0, xmm3
movss xmm3, dword [eax + 0x40]
mulss xmm4, xmm2
subss xmm3, xmm0
movaps xmm0, xmm2
mulss xmm0, xmm5
subss xmm1, xmm0
movss xmm0, dword [eax + 0x48]
subss xmm0, xmm4
movss dword [eax + 0x40], xmm3
movss dword [eax + 0x44], xmm1
movss dword [eax + 0x48], xmm0
push 1
push 0x1e
call edi
push eax
call esi
test ax, ax
jns 0x10051693
mov eax, dword [0x1008a124]
mov ecx, dword [eax + 0x138ab0]
mov ecx, dword [ecx + 0x74]
call fcn.10049df0
push 1
push 0x20
call edi
push eax
call esi
test ax, ax
jns 0x100516b4
mov eax, dword [0x1008a124]
mov ecx, dword [eax + 0x138ab0]
mov ecx, dword [ecx + 0x74]
call fcn.10049fa0
push 1
push 0x39
call edi
push eax
call esi
test ax, ax
jns 0x100516d5
mov eax, dword [0x1008a124]
mov ecx, dword [eax + 0x138ab0]
mov ecx, dword [ecx + 0x74]
call fcn.1004a120
push 1
push 0x2a
call edi
push eax
call esi
test ax, ax
jns 0x100516f6
mov eax, dword [0x1008a124]
mov ecx, dword [eax + 0x138ab0]
mov ecx, dword [ecx + 0x74]
call fcn.1004a3f0
push 1
push 0x17
call edi
push eax
call esi
test ax, ax
jns 0x10051717
mov eax, dword [0x1008a124]
mov ecx, dword [eax + 0x138ab0]
mov ecx, dword [ecx + 0x74]
call fcn.1004a700
push 1
push 0x25
call edi
push eax
call esi
test ax, ax
jns 0x10051738
mov eax, dword [0x1008a124]
mov ecx, dword [eax + 0x138ab0]
mov ecx, dword [ecx + 0x74]
call fcn.1004a940
push 1
push 0x24
call edi
push eax
call esi
test ax, ax
jns 0x10051761
mov eax, dword [0x1008a124]
movss xmm1, dword [0x1007d33c]
mov ecx, dword [eax + 0x138ab0]
mov ecx, dword [ecx + 0x74]
call fcn.1004b060
push 1
push 0x26
call edi
push eax
call esi
test ax, ax
jns 0x1005178a
mov eax, dword [0x1008a124]
movss xmm1, dword [0x1007d188]
mov ecx, dword [eax + 0x138ab0]
mov ecx, dword [ecx + 0x74]
call fcn.1004b060
push 1
push 0x27
call edi
push eax
call esi
movss xmm1, dword [0x1007d1a0]
test ax, ax
jns 0x100517c5
mov eax, dword [0x1008a124]
mov eax, dword [eax + 0x138ab0]
mov eax, dword [eax + 0x74]
movss xmm0, dword [eax + 0x64]
subss xmm0, xmm1
comiss xmm0, dword [0x1007d148]
jbe 0x100517c5
movss dword [eax + 0x64], xmm0
push 1
push 0x19
call edi
push eax
call esi
test ax, ax
jns 0x10051800
mov eax, dword [0x1008a124]
movss xmm0, dword [0x1007d284]
mov eax, dword [eax + 0x138ab0]
mov eax, dword [eax + 0x74]
movss xmm1, dword [eax + 0x64]
addss xmm1, dword [0x1007d1a0]
comiss xmm0, xmm1
jbe 0x10051800
movss dword [eax + 0x64], xmm1
push 1
push 0x4e
call edi
push eax
call esi
movss xmm0, dword [0x1007d1b0]
test ax, ax
jns 0x10051845
mov eax, dword [0x1008a124]
mov eax, dword [eax + 0x138ab0]
mov eax, dword [eax + 0x74]
movss xmm1, dword [eax + 0x9c]
addss xmm1, xmm0
movss xmm0, dword [0x1007d2bc]
comiss xmm0, xmm1
jbe 0x10051845
movss dword [eax + 0x9c], xmm1
push 1
push 0x4a
call edi
push eax
call esi
test ax, ax
jns 0x10051882
mov eax, dword [0x1008a124]
mov eax, dword [eax + 0x138ab0]
mov eax, dword [eax + 0x74]
movss xmm0, dword [eax + 0x9c]
subss xmm0, dword [0x1007d1b0]
comiss xmm0, dword [0x1007d148]
jbe 0x10051882
movss dword [eax + 0x9c], xmm0
cmp dword [0x1008a044], 0
je 0x10051ba8
push 2
call esi
test ax, ax
jns 0x10051ba8
mov ecx, dword [0x10089f58]
mov esi, dword [0x1008a124]
movss xmm0, dword [ecx + 0xe8]
mov eax, dword [esi + 0x138ab0]
movss dword [ebp - 0xb0], xmm0
movss xmm0, dword [ecx + 0xec]
movss dword [ebp - 0xac], xmm0
mov edi, dword [eax + 0x74]
test ecx, ecx
jne 0x100518f9
push 0xc80
push str.C:UsersUser_source_reposLANRedTrainerLANRedTrainerimguiimgui.cpp
push str.GImGui___0___No_current_context._Did_you_call_ImGui::CreateContext___and_ImGui::SetCurrentContext_____
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov esi, dword [0x1008a124]
add esp, 0xc
mov ecx, dword [0x10089f58]
push dword [ebp - 0xac]
cvttss2si eax, dword [ecx + 0x14]
push dword [ebp - 0xb0]
push ecx
mov dword [esp], 0x42c80000
push eax
cvttss2si eax, dword [ecx + 0x10]
mov ecx, edi
push eax
lea eax, [ebp - 0xb4]
push eax
call fcn.1004ab80
mov eax, dword [esi + 0x138ab0]
mov eax, dword [eax + 0x74]
movups xmm0, xmmword [eax + 0x10]
mov eax, dword [0x1008a044]
mov dword [ebp - 0x14], 0x3f800000
movups xmmword [ebp - 0x30], xmm0
movss xmm0, dword [ebp - 0xb4]
movss dword [ebp - 0x20], xmm0
movss xmm0, dword [ebp - 0xb0]
movss dword [ebp - 0x1c], xmm0
movss xmm0, dword [ebp - 0xac]
movss dword [ebp - 0x18], xmm0
cmp eax, 1
jne 0x10051a79
mov eax, dword [esi + 0x138a94]
mov dword [ebp - 0xa4], eax
lea eax, [ebp - 0x30]
mov dword [ebp - 0xac], eax
lea eax, [ebp - 0x20]
mov dword [ebp - 0xa8], eax
mov eax, dword [0x10089f68]
add eax, 0x6d8e20
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x98], eax
push dword [ebp - 0xac]
push dword [ebp - 0xa8]
mov eax, dword [ebp - 0xa4]
call dword [ebp - 0x98]
mov dword [ebp - 0x94], eax
mov edx, dword [ebp - 0x94]
mov dword [0x1008a000], edx
test edx, edx
je 0x10051a4b
mov ecx, dword [edx + 0xec]
mov eax, dword [0x1008a124]
add eax, 0x25cf8
cmp dword [ecx + 8], eax
jne 0x10051a4b
lea eax, [edx + 0x80]
cmp eax, 0x10089330
je 0x10051a27
movups xmm0, xmmword [eax]
movups xmmword [0x10089330], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [0x10089340], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [0x10089350], xmm0
movups xmm0, xmmword [eax + 0x30]
movups xmmword [0x10089360], xmm0
mov eax, dword [0x1008a044]
mov dword [0x1008a040], eax
mov al, 1
mov byte [0x10089f53], al
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1006c1ab
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
xor al, al
mov dword [0x1008a000], 0
mov dword [0x1008a040], 0
mov byte [0x10089f53], al
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1006c1ab
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp eax, 2
jne 0x10051ba8
mov eax, dword [esi + 0x138a9c]
xorps xmm0, xmm0
mov dword [ebp - 0xa8], eax
lea eax, [ebp - 0x30]
mov dword [ebp - 0xa4], eax
lea eax, [ebp - 0x20]
push 0x50
mov dword [ebp - 0xac], eax
lea eax, [ebp - 0x80]
push 0
push eax
movaps xmmword [ebp - 0x90], xmm0
call sub.VCRUNTIME140.dll_memset
lea eax, [ebp - 0x90]
mov dword [ebp - 0xb8], 2
mov dword [ebp - 0xc4], eax
add esp, 0xc
mov dword [ebp - 0xc0], eax
lea eax, [ebp + 0x2370]
mov dword [ebp - 0xbc], eax
mov eax, dword [0x10089f68]
add eax, 0x14c700
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x98], eax
push 0
push 1
push dword [ebp - 0xac]
push 0
push dword [ebp - 0xa8]
mov ecx, dword [ebp - 0xa4]
lea edx, [ebp - 0xc4]
call dword [ebp - 0x98]
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x60]
mov dword [0x10089ffc], eax
test eax, eax
je 0x10051b8d
add eax, 0x1a0
cmp eax, 0x10089330
je 0x10051b69
movups xmm0, xmmword [eax]
movups xmmword [0x10089330], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [0x10089340], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [0x10089350], xmm0
movups xmm0, xmmword [eax + 0x30]
movups xmmword [0x10089360], xmm0
mov eax, dword [0x1008a044]
mov dword [0x1008a040], eax
mov byte [0x10089f53], 1
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1006c1ab
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov dword [0x1008a000], 0
mov dword [0x1008a040], 0
mov byte [0x10089f53], 0
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.1006c1ab
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret