Function at 0x10039140
Capabilities:
Log keystrokes via polling

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x18
push esi
push edi
lea eax, [ebp - 0x14]
mov dword [ebp - 4], ecx
push eax
mov edi, edx
call dword [sym.imp.USER32.dll_GetCursorPos]
movd xmm0, dword [ebp - 0x14]
movd xmm1, dword [ebp - 0x10]
mov esi, dword [0x1010a000]
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
movss dword [ebp - 8], xmm0
movss dword [ebp - 0xc], xmm1
test esi, esi
jne 0x100391b5
push 0xbe3
push str.C:UsersPCDesktopAurora_UEFunctionsimguiimgui.cpp
push str.GImGui___0___No_current_context._Did_you_call_ImGui::CreateContext___or_ImGui::SetCurrentContext____
call fcn.100b97ae
mov esi, dword [0x1010a000]
add esp, 0xc
movss xmm0, dword [ebp - 8]
movss xmm1, dword [ebp - 0xc]
push 1
movss dword [esi + 0xe0], xmm0
movss dword [esi + 0xe4], xmm1
call dword [sym.imp.USER32.dll_GetKeyState]
shr ax, 0xf
and al, 1
mov byte [esi + 0xe8], al
cmp edi, 0x201
ja 0x1003942a
je case.0x10039440.515
add edi, 0xffffffe0
cmp edi, 0xe5
ja case.0x10039440.523
movzx eax, byte [edi + 0x10039514]
jmp dword [eax*4 + 0x10039500]
mov eax, dword [ebx + 8]
cmp eax, 0x100
jae case.0x10039440.523
mov byte [esi + eax + 0xfc], 1
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, dword [ebx + 8]
cmp eax, 0x100
jae case.0x10039440.523
mov byte [esi + eax + 0xfc], 0
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, dword [ebx + 8]
test eax, eax
je case.0x10039440.523
cmp eax, 0x10000
jae case.0x10039440.523
mov ecx, dword [esi + 0x14f0]
add esi, 0x14f0
movzx eax, ax
mov dword [ebp - 0xc], eax
mov edi, dword [esi + 4]
cmp ecx, edi
jne 0x1003929d
inc ecx
test edi, edi
je 0x10039289
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x1003928e
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.10010de0
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [ebp - 0xc]
mov word [eax + ecx*2], dx
inc dword [esi]
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp word [ebx + 0xc], 1
jne case.0x10039440.523
mov eax, dword [0x1010a000]
test eax, eax
jne 0x100392e4
push 0xbe3
push str.C:UsersPCDesktopAurora_UEFunctionsimguiimgui.cpp
push str.GImGui___0___No_current_context._Did_you_call_ImGui::CreateContext___or_ImGui::SetCurrentContext____
call fcn.100b97ae
mov eax, dword [0x1010a000]
add esp, 0xc
test byte [eax + 8], 0x20
jne case.0x10039440.523
mov ecx, dword [eax + 0x1c64]
cmp ecx, 0xffffffff
je 0x10039414
cmp byte [eax + 0xac], 0
jne 0x10039414
mov eax, 0x7f00
cmp ecx, 7
ja case.0x10039318.0
jmp dword [ecx*4 + 0x100395fc]
mov eax, 0x7f01
push eax
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov eax, 1
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, 0x7f86
push eax
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov eax, 1
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, 0x7f84
push eax
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov eax, 1
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, 0x7f85
push eax
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov eax, 1
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, 0x7f83
push eax
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov eax, 1
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, 0x7f82
push eax
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov eax, 1
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, 0x7f89
push eax
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov eax, 1
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push 0
call dword [sym.imp.USER32.dll_SetCursor]
mov eax, 1
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
add edi, 0xfffffdfe
cmp edi, 0xc
ja case.0x10039440.523
movzx eax, byte [edi + 0x10039630]
jmp dword [eax*4 + 0x1003961c]
call fcn.1001e560
test al, al
jne case.0x10039440.523
call dword [sym.imp.USER32.dll_GetCapture]
test eax, eax
jne case.0x10039440.523
push dword [ebp - 4]
call dword [sym.imp.USER32.dll_SetCapture]
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.1001e560
test al, al
jne case.0x10039440.523
call dword [sym.imp.USER32.dll_GetCapture]
cmp eax, dword [ebp - 4]
jne case.0x10039440.523
call dword [sym.imp.USER32.dll_ReleaseCapture]
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, dword [ebx + 8]
shr eax, 0x10
cwde
movd xmm0, eax
xor eax, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x100fdb44]
addss xmm0, dword [esi + 0xf0]
movss dword [esi + 0xf0], xmm0
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, dword [ebx + 8]
shr eax, 0x10
cwde
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x100fdb44]
addss xmm0, dword [esi + 0xf4]
movss dword [esi + 0xf4], xmm0
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret