Get my source code and do another advanced trainer.
NOTE: Be Careful ! This hack is now DETECTED.You need use another project.


VirusTotal: 13/57 (I do not know why.Really :S)
(I think , GetAsyncKeyState() causes this problem)
VirusTotal Link: [HTML]http s://www .virustotal .c om/tr/file/331fbaf60e2ef56c620e74fd4df958f13aad6cb473979a4162 0d16a1898fd68b/analysis/1422285515/[/HTML]
(Remove Spaces)

Code:
Public Class Form1

    Public Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Int32) As Int16
    Dim Left4Dead2Open As Boolean
    Private Sub CheckWrite_Tick(sender As Object, e As EventArgs) Handles Check.Tick
        Dim Left4Dead2Check As Process() = Process.GetProcessesByName("left4dead2")
        If Left4Dead2Check.Length = 0 Then
            If My.Settings.Language = "EN" Then
                Label22.Text = "Search..."
            ElseIf My.Settings.Language = "TR" Then
                Label22.Text = "Aranıyor..."
            End If
            Label22.ForeColor = Color.Blue
            Left4Dead2Open = False

            CheckBox1.Enabled = False
            CheckBox2.Enabled = False
            CheckBox3.Enabled = False
            CheckBox4.Enabled = False
            CheckBox5.Enabled = False
            CheckBox6.Enabled = False
            CheckBox7.Enabled = False
            CheckBox8.Enabled = False
            CheckBox9.Enabled = False
        Else
            If My.Settings.Language = "EN" Then
                Label22.Text = "FOUND !"
            ElseIf My.Settings.Language = "TR" Then
                Label22.Text = "Bulundu !"
            End If
            Label22.ForeColor = Color.Lime
            Left4Dead2Open = True

            CheckBox1.Enabled = True
            CheckBox2.Enabled = True
            CheckBox3.Enabled = True
            CheckBox4.Enabled = True
            CheckBox5.Enabled = True
            CheckBox6.Enabled = True
            CheckBox7.Enabled = True
            CheckBox8.Enabled = True
            CheckBox9.Enabled = True
        End If
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim px As Process = Process.GetProcessesByName("left4dead2")(0)
        For Each moz As System.Diagnostics.ProcessModule In px.Modules
            If moz.FileName.IndexOf("server.dll") <> -1 Then
                Dim adres As Long = moz.BaseAddress.ToInt32 + &H7B4C04
                WriteDMAInteger("left4dead2", adres, Offsets:={&HEC}, Value:=NumericUpDown1.Value, Level:=1, nsize:=4)
            End If
        Next
    End Sub

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        Dim px As Process = Process.GetProcessesByName("left4dead2")(0)
        For Each moz As System.Diagnostics.ProcessModule In px.Modules
            If moz.FileName.IndexOf("server.dll") <> -1 Then
                Dim adres As Long = moz.BaseAddress.ToInt32 + &H7B4C14
                WriteDMAInteger("left4dead2", adres, Offsets:={&HEC}, Value:=NumericUpDown2.Value, Level:=1, nsize:=4)
            End If
        Next
    End Sub

    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
        Dim px As Process = Process.GetProcessesByName("left4dead2")(0)
        For Each moz As System.Diagnostics.ProcessModule In px.Modules
            If moz.FileName.IndexOf("server.dll") <> -1 Then
                Dim adres As Long = moz.BaseAddress.ToInt32 + &H7B4C24
                WriteDMAInteger("left4dead2", adres, Offsets:={&HEC}, Value:=NumericUpDown3.Value, Level:=1, nsize:=4)
            End If
        Next
    End Sub

    Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
        Dim px As Process = Process.GetProcessesByName("left4dead2")(0)
        For Each moz As System.Diagnostics.ProcessModule In px.Modules
            If moz.FileName.IndexOf("server.dll") <> -1 Then
                Dim adres As Long = moz.BaseAddress.ToInt32 + &H7B4C34
                WriteDMAInteger("left4dead2", adres, Offsets:={&HEC}, Value:=NumericUpDown4.Value, Level:=1, nsize:=4)
            End If
        Next
    End Sub
    Private Sub px_Tick(sender As Object, e As EventArgs) Handles px.Tick
        If Left4Dead2Open = False Then
            Exit Sub
        End If
        Dim px As Process = Process.GetProcessesByName("left4dead2")(0)
        For Each moz As System.Diagnostics.ProcessModule In px.Modules
            If moz.FileName.IndexOf("server.dll") <> -1 Then
                Dim adres As Long = moz.BaseAddress.ToInt32 + &H7B4C04
                If Left4Dead2Open = False Then
                    Exit Sub
                End If
                Label4.Text = "%" & ReadDMAInteger("left4dead2", adres, Offsets:={&HEC}, Level:=1, nsize:=4)
            End If
        Next
    End Sub

    Private Sub px1_Tick(sender As Object, e As EventArgs) Handles px1.Tick
        If Left4Dead2Open = False Then
            Exit Sub
        End If
        Dim px1 As Process = Process.GetProcessesByName("left4dead2")(0)
        For Each moz As System.Diagnostics.ProcessModule In px1.Modules
            If moz.FileName.IndexOf("server.dll") <> -1 Then
                Dim adres As Long = moz.BaseAddress.ToInt32 + &H7B4C14
                If Left4Dead2Open = False Then
                    Exit Sub
                End If
                Label7.Text = "%" & ReadDMAInteger("left4dead2", adres, Offsets:={&HEC}, Level:=1, nsize:=4)
            End If
        Next
    End Sub

    Private Sub px2_Tick(sender As Object, e As EventArgs) Handles px2.Tick
        If Left4Dead2Open = False Then
            Exit Sub
        End If
        Dim px2 As Process = Process.GetProcessesByName("left4dead2")(0)
        For Each moz As System.Diagnostics.ProcessModule In px2.Modules
            If moz.FileName.IndexOf("server.dll") <> -1 Then
                Dim adres As Long = moz.BaseAddress.ToInt32 + &H7B4C24
                If Left4Dead2Open = False Then
                    Exit Sub
                End If
                Label12.Text = "%" & ReadDMAInteger("left4dead2", adres, Offsets:={&HEC}, Level:=1, nsize:=4)
            End If
        Next
    End Sub

    Private Sub px3_Tick(sender As Object, e As EventArgs) Handles px3.Tick
        If Left4Dead2Open = False Then
            Exit Sub
        End If
        Dim px3 As Process = Process.GetProcessesByName("left4dead2")(0)
        For Each moz As System.Diagnostics.ProcessModule In px3.Modules
            If moz.FileName.IndexOf("server.dll") <> -1 Then
                Dim adres As Long = moz.BaseAddress.ToInt32 + &H7B4C34
                If Left4Dead2Open = False Then
                    Exit Sub
                End If
                Label17.Text = "%" & ReadDMAInteger("left4dead2", adres, Offsets:={&HEC}, Level:=1, nsize:=4)
            End If
        Next
    End Sub

    Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox1.CheckedChanged
        If CheckBox1.Checked = True Then
            Dim l4d2 As Process() = Process.GetProcessesByName("left4dead2")
            Dim hexL4D2 As Long = l4d2(0).MainModule.BaseAddress.ToInt32 + &H7A0A58
            Dim p As Process = Process.GetProcessesByName("left4dead2")(0)
            For Each moz As System.Diagnostics.ProcessModule In p.Modules
                If moz.FileName.IndexOf("client.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &H7A0A58
                    WriteInteger("left4dead2", adres, Value:=2, nsize:=4)
                End If
            Next
        Else
            Dim l4d2 As Process() = Process.GetProcessesByName("left4dead2")
            Dim hexL4D2 As Long = l4d2(0).MainModule.BaseAddress.ToInt32 + &H7A0A58
            Dim p As Process = Process.GetProcessesByName("left4dead2")(0)
            For Each moz As System.Diagnostics.ProcessModule In p.Modules
                If moz.FileName.IndexOf("client.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &H7A0A58
                    WriteInteger("left4dead2", adres, Value:=1, nsize:=4)
                End If
            Next
        End If
    End Sub

    Private Sub CheckBox4_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox4.CheckedChanged
        Try
            If CheckBox4.Checked = True Then
                Dim l4d2 As Process() = Process.GetProcessesByName("left4dead2")
                Dim p As Process = Process.GetProcessesByName("left4dead2")(0)
                For Each moz As System.Diagnostics.ProcessModule In p.Modules
                    If moz.FileName.IndexOf("client.dll") <> -1 Then
                        Dim adres As Long = moz.BaseAddress.ToInt32 + &H7D14D0
                        WriteInteger("left4dead2", adres, Value:=1, nsize:=4)
                    End If
                Next
            Else
                Dim l4d2 As Process() = Process.GetProcessesByName("left4dead2")
                Dim p As Process = Process.GetProcessesByName("left4dead2")(0)
                For Each moz As System.Diagnostics.ProcessModule In p.Modules
                    If moz.FileName.IndexOf("client.dll") <> -1 Then
                        Dim adres As Long = moz.BaseAddress.ToInt32 + &H7D14D0
                        WriteInteger("left4dead2", adres, Value:=0, nsize:=4)
                    End If
                Next
            End If
        Catch ex As Exception

        End Try
    End Sub

    Private Sub CheckBox7_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox7.CheckedChanged
        If CheckBox7.Checked = True Then
            Dim l4d2 As Process() = Process.GetProcessesByName("left4dead2")
            Dim p As Process = Process.GetProcessesByName("left4dead2")(0)
            For Each moz As System.Diagnostics.ProcessModule In p.Modules
                If moz.FileName.IndexOf("server.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &H828588
                    WriteInteger("left4dead2", adres, Value:=1, nsize:=4)
                End If
            Next
            For Each moz As System.Diagnostics.ProcessModule In p.Modules
                If moz.FileName.IndexOf("client.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &H828588
                    WriteInteger("left4dead2", adres, Value:=1, nsize:=4)
                End If
            Next
        Else
            Dim l4d2 As Process() = Process.GetProcessesByName("left4dead2")
            Dim p As Process = Process.GetProcessesByName("left4dead2")(0)
            For Each moz As System.Diagnostics.ProcessModule In p.Modules
                If moz.FileName.IndexOf("server.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &H828588
                    WriteInteger("left4dead2", adres, Value:=0, nsize:=4)
                End If
            Next
            For Each moz As System.Diagnostics.ProcessModule In p.Modules
                If moz.FileName.IndexOf("client.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &H828588
                    WriteInteger("left4dead2", adres, Value:=0, nsize:=4)
                End If
            Next
        End If
    End Sub

    Private Sub CheckBox2_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox2.CheckedChanged
        If CheckBox2.Checked = True Then
            Dim p As Process = Process.GetProcessesByName("left4dead2")(0)
            For Each moz As System.Diagnostics.ProcessModule In p.Modules
                If moz.FileName.IndexOf("materialsystem.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &HFE3F0
                    WriteInteger("left4dead2", adres, Value:=1, nsize:=4)
                End If
            Next
        Else
            Dim p As Process = Process.GetProcessesByName("left4dead2")(0)
            For Each moz As System.Diagnostics.ProcessModule In p.Modules
                If moz.FileName.IndexOf("materialsystem.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &HFE3F0
                    WriteInteger("left4dead2", adres, Value:=0, nsize:=4)
                End If
            Next
        End If
    End Sub

    Private Sub CheckBox5_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox5.CheckedChanged
        If CheckBox5.Checked = True Then
            Dim p As Process = Process.GetProcessesByName("left4dead2")(0)
            For Each moz As System.Diagnostics.ProcessModule In p.Modules
                If moz.FileName.IndexOf("client.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &H8197B0
                    WriteInteger("left4dead2", adres, Value:=1, nsize:=4)
                End If
            Next
        Else
            Dim p As Process = Process.GetProcessesByName("left4dead2")(0)
            For Each moz As System.Diagnostics.ProcessModule In p.Modules
                If moz.FileName.IndexOf("client.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &H8197B0
                    WriteInteger("left4dead2", adres, Value:=0, nsize:=4)
                End If
            Next
        End If
    End Sub

    Private Sub CheckBox6_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox6.CheckedChanged
        If CheckBox6.Checked = True Then
            Dim p As Process = Process.GetProcessesByName("left4dead2")(0)
            For Each moz As System.Diagnostics.ProcessModule In p.Modules
                If moz.FileName.IndexOf("client.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &H8183D0
                    WriteInteger("left4dead2", adres, Value:=1, nsize:=4)
                End If
            Next
        Else
            Dim p As Process = Process.GetProcessesByName("left4dead2")(0)
            For Each moz As System.Diagnostics.ProcessModule In p.Modules
                If moz.FileName.IndexOf("client.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &H8183D0
                    WriteInteger("left4dead2", adres, Value:=0, nsize:=4)
                End If
            Next
        End If
    End Sub

    Private Sub CheckBox3_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox3.CheckedChanged
        If CheckBox3.Checked = True Then
            Dim px As Process = Process.GetProcessesByName("left4dead2")(0)
            For Each moz As System.Diagnostics.ProcessModule In px.Modules
                If moz.FileName.IndexOf("client.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &H79F398
                    WriteInteger("left4dead2", adres, Value:=1, nsize:=4)
                End If
            Next
        Else
            Dim px As Process = Process.GetProcessesByName("left4dead2")(0)
            For Each moz As System.Diagnostics.ProcessModule In px.Modules
                If moz.FileName.IndexOf("client.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &H79F398
                    WriteInteger("left4dead2", adres, Value:=0, nsize:=4)
                End If
            Next
        End If
    End Sub
    Private Sub CheckBox8_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox8.CheckedChanged
        If CheckBox8.Checked = True Then
            Me.TopMost = True
        Else
            Me.TopMost = False
        End If
    End Sub

    Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
        If ComboBox1.Text = "EN" Then
            My.Settings.Language = "EN"
            My.Settings.Save()
            TranslateEN()
            MsgBox("Settings Saved !", vbInformation, "Info")
        ElseIf ComboBox1.Text = "TR" Then
            My.Settings.Language = "TR"
            My.Settings.Save()
            TranslateTR()
            MsgBox("Değişiklikler Kaydedildi !", vbInformation, "Bilgi")
        End If
    End Sub

    Private Sub TranslateEN()
        CheckBox1.Text = "Draw Model"
        CheckBox7.Text = "God Mode"
        CheckBox2.Text = "Brightness %100"
        CheckBox6.Text = "Show Info"
        CheckBox3.Text = "Inf. Ammo"
        CheckBox8.Text = "Top Most"
        Label1.Text = "Language:"
        Label21.Text = "Game :"
        TabPage2.Text = "Players"

        Label3.Text = "Health:"
        Label8.Text = "Health:"
        Label13.Text = "Health:"
        Label18.Text = "Health:"

        Label5.Text = "Change Health:"
        Label6.Text = "Change Health:"
        Label11.Text = "Change Health:"
        Label16.Text = "Change Health:"

        Label2.Text = "You (Player 4)"
        Label9.Text = "Player 1"
        Label14.Text = "Player 2"
        Label19.Text = "Player 3"
        Button6.Text = "Copy"
        CheckBox9.Text = "Double Jump"
    End Sub
    Private Sub TranslateTR()
        CheckBox1.Text = "Model Çiz"
        CheckBox7.Text = "Ölümsüzlük"
        CheckBox2.Text = "Parlaklık %100"
        CheckBox6.Text = "Bilgi Göster"
        CheckBox3.Text = "Sınırsız Mermi"
        CheckBox8.Text = "En Üstte Kalsın"
        Label1.Text = "Dil:"
        Label21.Text = "Oyun Durumu:"
        TabPage2.Text = "Oyuncular"

        Label3.Text = "Sağlık:"
        Label8.Text = "Sağlık:"
        Label13.Text = "Sağlık:"
        Label18.Text = "Sağlık:"

        Label5.Text = "Sağlık Değiştir:"
        Label6.Text = "Sağlık Değiştir:"
        Label11.Text = "Sağlık Değiştir:"
        Label16.Text = "Sağlık Değiştir:"

        Label2.Text = "Sensin (Oyuncu 4)"
        Label9.Text = "Oyuncu 1"
        Label14.Text = "Oyuncu 2"
        Label19.Text = "Oyuncu 3"
        Button6.Text = "Kopyala"
        CheckBox9.Text = "Çift Zıpla"
    End Sub

    Private Sub Form1_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
    End Sub

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        If My.Settings.Language = "EN" Then
            TranslateEN()
        ElseIf My.Settings.Language = "TR" Then
            TranslateTR()
        End If
    End Sub

    Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
        Const CoordSplit As String = ":"
        Dim Coords() As String
        Coords = Split(TextBox1.Text, CoordSplit)
        If Left4Dead2Open = False Then
            Exit Sub
        End If
        Dim px As Process = Process.GetProcessesByName("left4dead2")(0)
        For Each moz As System.Diagnostics.ProcessModule In px.Modules
            If moz.FileName.IndexOf("server.dll") <> -1 Then
                Dim adres As Long = moz.BaseAddress.ToInt32 + &H7B4C04
                On Error Resume Next
                WriteDMAInteger("left4dead2", adres, Offsets:={&H2CC}, Value:=Coords(0), Level:=1, nsize:=4)
                WriteDMAInteger("left4dead2", adres, Offsets:={&H2D4}, Value:=Coords(1), Level:=1, nsize:=4)
                WriteDMAInteger("left4dead2", adres, Offsets:={&H2D0}, Value:=Coords(2), Level:=1, nsize:=4)
            End If
        Next
    End Sub

    Private Sub SetX_Tick(sender As Object, e As EventArgs) Handles SetCoord.Tick
        If Left4Dead2Open = False Then
            Exit Sub
        End If
        Dim px As Process = Process.GetProcessesByName("left4dead2")(0)
        For Each moz As System.Diagnostics.ProcessModule In px.Modules
            If moz.FileName.IndexOf("server.dll") <> -1 Then
                Dim adres As Long = moz.BaseAddress.ToInt32 + &H7B4C04
                Label10.Text = ReadDMAInteger("left4dead2", adres, Offsets:={&H2CC}, Level:=1, nsize:=4)
                Label15.Text = ReadDMAInteger("left4dead2", adres, Offsets:={&H2D4}, Level:=1, nsize:=4)
                Label20.Text = ReadDMAInteger("left4dead2", adres, Offsets:={&H2D0}, Level:=1, nsize:=4)
            End If
        Next
    End Sub

    Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
        TextBox1.Text = Label10.Text & ":" & Label15.Text & ":" & Label20.Text
    End Sub
    Private Sub AsyncKeyState_Tick(sender As Object, e As EventArgs) Handles AsyncKeyState.Tick
        If Left4Dead2Open = False Then
            Exit Sub
        End If
        If GetAsyncKeyState(Keys.F1) Then
            Const CoordSplit As String = ":"
            Dim Coords() As String
            Coords = Split(TextBox1.Text, CoordSplit)
            If Left4Dead2Open = False Then
                Exit Sub
            End If
            Dim px As Process = Process.GetProcessesByName("left4dead2")(0)
            For Each moz As System.Diagnostics.ProcessModule In px.Modules
                If moz.FileName.IndexOf("server.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &H7B4C04
                    On Error Resume Next
                    WriteDMAInteger("left4dead2", adres, Offsets:={&H2CC}, Value:=Coords(0), Level:=1, nsize:=4)
                    WriteDMAInteger("left4dead2", adres, Offsets:={&H2D4}, Value:=Coords(1), Level:=1, nsize:=4)
                    WriteDMAInteger("left4dead2", adres, Offsets:={&H2D0}, Value:=Coords(2), Level:=1, nsize:=4)
                End If
            Next
        End If
        If GetAsyncKeyState(Keys.Space) Then
            If CheckBox9.Checked = False Then
                Exit Sub
            End If
            Threading.Thread.Sleep(150)
            Dim px As Process = Process.GetProcessesByName("left4dead2")(0)
            For Each moz As System.Diagnostics.ProcessModule In px.Modules
                If moz.FileName.IndexOf("server.dll") <> -1 Then
                    Dim adres As Long = moz.BaseAddress.ToInt32 + &H7B4C04
                    On Error Resume Next
                    Dim NewInt As Integer = ReadDMAInteger("left4dead2", adres, Offsets:={&H2D4}, Level:=1, nsize:=4) + 4000000
                    WriteDMAInteger("left4dead2", adres, Offsets:={&H2D4}, Value:=NewInt, Level:=1, nsize:=4)
                End If
            Next
        End If
    End Sub
End Class