Function at 0x180150790
Capabilities:
Log keystrokes via polling

Disassembly:
sub rsp, 0x68
movaps xmmword [rsp + 0x50], xmm6
mov ecx, 0x6b
movaps xmmword [rsp + 0x40], xmm7
movaps xmmword [rsp + 0x30], xmm8
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1801507dd
xorps xmm0, xmm0
mov qword [0x1805eded0], 0
movaps xmmword [0x1805edee0], xmm0
mov dword [0x1805ededc], 0
mov dword [0x1805edef0], 0
mov ecx, 0x6d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movss xmm6, dword [0x180507cf0]
test ax, ax
jns 0x18015082b
movaps xmm0, xmmword [0x18050a1a0]
movaps xmmword [0x1805edee0], xmm0
mov dword [0x1805eded0], 0xc37f0000
mov dword [0x1805eded4], 0xc37f0000
mov dword [0x1805ededc], 0xc37f0000
mov dword [0x1805edef0], 0xc37f0000
lea rcx, str.For_All_to__255_Press__
call fcn.1801ddc30
test al, al
je 0x180150871
movaps xmm0, xmmword [0x18050a1a0]
movaps xmmword [0x1805edee0], xmm0
mov dword [0x1805eded0], 0xc37f0000
mov dword [0x1805eded4], 0xc37f0000
mov dword [0x1805ededc], 0xc37f0000
mov dword [0x1805edef0], 0xc37f0000
lea rcx, str.For_All_To_0_Press_
call fcn.1801ddc30
test al, al
je 0x1801508aa
xorps xmm0, xmm0
mov qword [0x1805eded0], 0
movaps xmmword [0x1805edee0], xmm0
mov dword [0x1805ededc], 0
mov dword [0x1805edef0], 0
lea rcx, str.Left_Street_Pattern
call fcn.1801ddc30
test al, al
je 0x180150908
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805edecc]
mov rcx, qword [rax + 0xd0]
movss dword [rcx], xmm0
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805eded0]
mov rcx, qword [rax + 0xd8]
movss dword [rcx], xmm0
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805eded8]
mov rcx, qword [rax + 0xe8]
movss dword [rcx], xmm0
movss xmm8, dword [0x180505c48]
lea rdx, [0x1805eded0]
movss xmm7, dword [0x180504208]
lea rcx, str.leftstreet
movaps xmm3, xmm8
movss dword [rsp + 0x20], xmm7
movaps xmm2, xmm6
call fcn.1801e14f0
movaps xmm3, xmm8
movss dword [rsp + 0x20], xmm7
movaps xmm2, xmm6
lea rdx, [0x1805eded4]
lea rcx, str.rightstreet
call fcn.1801e14f0
lea rcx, str.Left_Street_Pattern
call fcn.1801ddc30
test al, al
je 0x1801509b7
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805edecc]
mov rcx, qword [rax + 0xd0]
movss dword [rcx], xmm0
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805eded0]
mov rcx, qword [rax + 0xd8]
movss dword [rcx], xmm0
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805eded8]
mov rcx, qword [rax + 0xe8]
movss dword [rcx], xmm0
lea rcx, str.Right_Street_Pattern
call fcn.1801ddc30
test al, al
je 0x180150a15
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805edecc]
mov rcx, qword [rax + 0xd0]
movss dword [rcx], xmm0
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805eded4]
mov rcx, qword [rax + 0xe0]
movss dword [rcx], xmm0
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805eded8]
mov rcx, qword [rax + 0xe8]
movss dword [rcx], xmm0
lea rcx, str.change_Speed_Left_Street
call fcn.1801ddc30
test al, al
je 0x180150a67
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805eded0]
mov dword [rax + 0x1e33230], ecx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805eded0]
mov dword [rax + 0x1e33270], ecx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805eded0]
mov dword [rax + 0x1e33260], ecx
lea rcx, str.change_Speed_Right_Street
call fcn.1801ddc30
test al, al
je 0x180150ab9
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805eded4]
mov dword [rax + 0x1e33230], ecx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805eded4]
mov dword [rax + 0x1e33270], ecx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805eded4]
mov dword [rax + 0x1e33240], ecx
lea rcx, str.Reset_Traffic
call fcn.1801ddc30
test al, al
je 0x180150b4d
xor ecx, ecx
mov dword [0x1805edecc], 0x14
mov dword [0x1805eded0], 0x3ba3d709
mov dword [0x1805eded4], 0x1010101
mov dword [0x1805eded8], 0x3d23d70a
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edecc]
mov dword [rax + 0x1e33270], ecx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805eded0]
mov dword [rax + 0x1e33260], ecx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805eded4]
mov dword [rax + 0x1e33240], ecx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805eded8]
mov dword [rax + 0x1e33230], ecx
lea rcx, str.Reset_Traffic_Pattern
call fcn.1801ddc30
test al, al
je 0x180150beb
mov rax, qword [0x18058c9e8]
mov dword [0x1805eded0], 0x3ba3d709
mov dword [0x1805eded4], 0x1010101
mov dword [0x1805eded8], 0x3d23d70a
mov dword [0x1805edecc], 0x14
mov rax, qword [rax + 0xd0]
mov dword [rax], 0x14
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805eded0]
mov rcx, qword [rax + 0xd8]
movss dword [rcx], xmm0
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805eded4]
mov rcx, qword [rax + 0xe0]
movss dword [rcx], xmm0
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805eded8]
mov rcx, qword [rax + 0xe8]
movss dword [rcx], xmm0
movaps xmm3, xmm8
movss dword [rsp + 0x20], xmm7
movaps xmm2, xmm6
lea rdx, [0x1805edef0]
lea rcx, str.Traffic_Freeze_Pattern
call fcn.1801e14f0
lea rcx, str.Traffic_Freeze
call fcn.1801ddc30
test al, al
je 0x180150c31
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si edx, dword [0x1805edef0]
mov dword [rax + 0x19b7188], edx
lea rcx, str.Traffic_Freeze_Pattern
call fcn.1801ddc30
test al, al
je 0x180150c5b
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805edef0]
mov rcx, qword [rax + 0x118]
movss dword [rcx], xmm0
lea rcx, str.Traffic_Freeze__255
call fcn.1801ddc30
test al, al
je 0x180150c8b
xor ecx, ecx
mov dword [0x1805edef0], 0xc37f0000
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edef0]
mov dword [rax + 0x19b7188], ecx
lea rcx, str.Freeze_Traffic__255_Pattern
call fcn.1801ddc30
test al, al
je 0x180150cb9
mov rax, qword [0x18058c9e8]
mov dword [0x1805edef0], 0xc37f0000
mov rax, qword [rax + 0x118]
mov dword [rax], 0xc37f0000
lea rcx, str.Traffic_Freeze_Reset0
call fcn.1801ddc30
test al, al
je 0x180150ce9
xor ecx, ecx
mov dword [0x1805edef0], 0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edef0]
mov dword [rax + 0x19b7188], ecx
lea rcx, str.UnFreeze_Traffic_Reset0_Pattern
call fcn.1801ddc30
test al, al
je 0x180150d17
mov rax, qword [0x18058c9e8]
mov dword [0x1805edef0], 0
mov rax, qword [rax + 0x118]
mov dword [rax], 0
movaps xmm3, xmm8
movss dword [rsp + 0x20], xmm7
movaps xmm2, xmm6
lea rdx, [0x1805ededc]
lea rcx, str.pedspeed
call fcn.1801e14f0
lea rcx, str.Ped_Pattern
call fcn.1801ddc30
test al, al
je 0x180150d61
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805ededc]
mov rcx, qword [rax + 0xf0]
movss dword [rcx], xmm0
lea rcx, str.change_Speed_Ped
call fcn.1801ddc30
test al, al
je 0x180150d87
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805ededc]
mov dword [rax + 0x1e33310], ecx
lea rcx, str.Reset_Ped
call fcn.1801ddc30
test al, al
je 0x180150db7
xor ecx, ecx
mov dword [0x1805ededc], 0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805ededc]
mov dword [rax + 0x1e33310], ecx
lea rcx, str.Reset_Pattern
call fcn.1801ddc30
test al, al
je 0x180150de5
mov rax, qword [0x18058c9e8]
mov dword [0x1805ededc], 0
mov rax, qword [rax + 0xf0]
mov dword [rax], 0
movaps xmm3, xmm8
movss dword [rsp + 0x20], xmm7
movaps xmm2, xmm6
lea rdx, [0x1805edee0]
lea rcx, str.potatoe0
call fcn.1801e14f0
lea rcx, str.Potatoe_0
call fcn.1801ddc30
test al, al
je 0x180150e2b
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edee0]
mov dword [rax + 0x19b1db0], ecx
lea rcx, str.Potatoe_Pattern_0
call fcn.1801ddc30
test al, al
je 0x180150e55
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805edee0]
mov rcx, qword [rax + 0xf8]
movss dword [rcx], xmm0
movaps xmm3, xmm8
movss dword [rsp + 0x20], xmm7
movaps xmm2, xmm6
lea rdx, [0x1805edee4]
lea rcx, str.potatoe1
call fcn.1801e14f0
lea rcx, str.Potatoe_1
call fcn.1801ddc30
test al, al
je 0x180150e9b
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edee4]
mov dword [rax + 0x19b1db1], ecx
lea rcx, str.Potatoe_Pattern_1
call fcn.1801ddc30
test al, al
je 0x180150ec5
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805edee4]
mov rcx, qword [rax + 0x100]
movss dword [rcx], xmm0
movaps xmm3, xmm8
movss dword [rsp + 0x20], xmm7
movaps xmm2, xmm6
lea rdx, [0x1805edee8]
lea rcx, str.potatoe2
call fcn.1801e14f0
lea rcx, str.Potatoe_2
call fcn.1801ddc30
test al, al
je 0x180150f0b
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edee8]
mov dword [rax + 0x19b1db2], ecx
lea rcx, str.Potatoe_Pattern_2
call fcn.1801ddc30
test al, al
je 0x180150f35
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805edee8]
mov rcx, qword [rax + 0x108]
movss dword [rcx], xmm0
movaps xmm3, xmm8
movss dword [rsp + 0x20], xmm7
movaps xmm2, xmm6
lea rdx, [0x1805edeec]
lea rcx, str.potatoe3
call fcn.1801e14f0
lea rcx, str.Potatoe_3
call fcn.1801ddc30
test al, al
je 0x180150f7b
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edeec]
mov dword [rax + 0x19b1db3], ecx
lea rcx, str.Potatoe_Pattern_3
call fcn.1801ddc30
test al, al
je 0x180150fa5
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805edeec]
mov rcx, qword [rax + 0x110]
movss dword [rcx], xmm0
lea rcx, str.Potatoe__255
call fcn.1801ddc30
test al, al
je 0x18015101b
movaps xmm0, xmmword [0x18050a1a0]
xor ecx, ecx
movaps xmmword [0x1805edee0], xmm0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edee0]
mov dword [rax + 0x19b1db0], ecx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edee4]
mov dword [rax + 0x19b1db1], ecx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edee8]
mov dword [rax + 0x19b1db2], ecx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edeec]
mov dword [rax + 0x19b1db3], ecx
lea rcx, str.Reset_Potatoe
call fcn.1801ddc30
test al, al
je 0x180151091
movaps xmm0, xmmword [0x18050a000]
xor ecx, ecx
movaps xmmword [0x1805edee0], xmm0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edee0]
mov dword [rax + 0x19b1db0], ecx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edee4]
mov dword [rax + 0x19b1db1], ecx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edee8]
mov dword [rax + 0x19b1db2], ecx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cvttss2si ecx, dword [0x1805edeec]
mov dword [rax + 0x19b1db3], ecx
lea rcx, str.Reset_Potatoe_Pattern
call fcn.1801ddc30
test al, al
je 0x180151111
mov rax, qword [0x18058c9e8]
movaps xmm0, xmmword [0x18050a000]
movaps xmmword [0x1805edee0], xmm0
mov rax, qword [rax + 0xf8]
mov dword [rax], 0x3fc00000
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805edee4]
mov rcx, qword [rax + 0x100]
movss dword [rcx], xmm0
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805edee8]
mov rcx, qword [rax + 0x108]
movss dword [rcx], xmm0
mov rax, qword [0x18058c9e8]
movss xmm0, dword [0x1805edeec]
mov rcx, qword [rax + 0x110]
movss dword [rcx], xmm0
movaps xmm6, xmmword [rsp + 0x50]
xor eax, eax
movaps xmm7, xmmword [rsp + 0x40]
movaps xmm8, xmmword [rsp + 0x30]
add rsp, 0x68
ret