Function at 0x401200
Capabilities:
Enumerate process modules
Execute command
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x498
mov eax, dword [0x405008]
xor eax, esp
mov dword [esp + 0x494], eax
mov ax, word [0x403244]
movups xmm0, xmmword [str.Left_4_Dead_2___Direct3D_9]
push esi
mov esi, dword [sym.imp.USER32.dll_FindWindowA]
mov word [esp + 0x484], ax
mov al, byte [0x403246]
push edi
mov byte [esp + 0x48a], al
lea eax, [esp + 0x470]
movups xmmword [esp + 0x470], xmm0
push eax
movq xmm0, qword [0x40323c]
push 0
movq qword [esp + 0x488], xmm0
call esi
mov dword [0x405434], eax
test eax, eax
jne 0x401336
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov edx, str.L4D2_Window_not_found__n
call fcn.00401800
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov edx, str.Enter_L4D2_window_name_manually:
call fcn.00401800
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
lea eax, [esp + 0x470]
push eax
call fcn.00401af0
add esp, 4
lea eax, [esp + 0x470]
push eax
push 0
call esi
mov dword [0x405434], eax
test eax, eax
jne 0x401336
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov edx, str.Window_not_found__closing_in_3_seconds_n_n
call fcn.00401800
lea ecx, [esp + 0x10]
call fcn.00401150
mov ecx, dword [esp + 0x14]
cmp ecx, 0x7fffffff
jg 0x401314
mov eax, dword [esp + 0x10]
jl 0x4012f2
cmp eax, 0x4d2fa1ff
jae 0x401314
add eax, 0xb2d05e00
mov dword [esp + 0x460], eax
adc ecx, 0
mov dword [esp + 0x464], ecx
lea ecx, [esp + 0x460]
jmp 0x4016b9
mov dword [esp + 0x460], 0xffffffff
lea ecx, [esp + 0x460]
mov dword [esp + 0x464], 0x7fffffff
jmp 0x4016b9
push 0x405430
push eax
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
push dword [0x405430]
push 0
push 0x1fffff
call dword [sym.imp.KERNEL32.dll_OpenProcess]
push dword [0x405430]
mov dword [0x40543c], eax
xor edi, edi
push 0x18
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov esi, eax
cmp esi, 0xffffffff
je 0x4013b5
lea eax, [esp + 0x38]
mov dword [esp + 0x38], 0x428
push eax
push esi
call dword [sym.imp.KERNEL32.dll_Module32FirstW]
test eax, eax
je 0x4013b5
mov edi, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
nop
lea eax, [esp + 0x58]
push str.client.dll
push eax
call edi
add esp, 8
test eax, eax
je 0x4013d6
lea eax, [esp + 0x38]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_Module32NextW]
test eax, eax
jne 0x401390
xor edi, edi
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [0x405438], edi
test edi, edi
jne 0x4013dc
mov edx, str.Client.dll_not_found__Closing_in_3_seconds_n_n
jmp 0x4012cb
mov edi, dword [esp + 0x4c]
jmp 0x4013b5
mov edx, str.______________________________________________n______________________________________n________________________________________n_____________________________________n__________________________________________n___________________________________________n________________________________________n___________________________________________n_____________________________________n________________________n__________________________n__________________________n_n
mov byte [esp + 0xb], 1
mov byte [esp + 0xc], 0
mov byte [esp + 0xd], 0
mov dword [esp + 0x468], 4
mov dword [esp + 0x46c], 5
call fcn.00401800
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov edx, str._Dm_https:__discordapp.com_users_717369125965398027_if_you_find_any_bugs_or_it_doesnt_work_n_n
call fcn.00401800
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov edx, str._Press_insert_to_enable___disable_bhop_n_n
call fcn.00401800
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov edx, str._Bhop_Enabled__Y_N_:_Y
call fcn.00401800
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
mov edi, dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
nop word [eax + eax]
mov al, byte [esp + 0xb]
push 0x2d
mov byte [esp + 0x12], al
call esi
test ax, ax
push 0x2d
setne byte [esp + 0x13]
call esi
test ax, ax
je 0x4014d8
cmp byte [esp + 0xd], 0
jne 0x4014d8
cmp byte [esp + 0xb], 0
push 0x403574
sete byte [esp + 0xf]
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
add esp, 4
mov edx, str.______________________________________________n______________________________________n________________________________________n_____________________________________n__________________________________________n___________________________________________n________________________________________n___________________________________________n_____________________________________n________________________n__________________________n__________________________n_n
call fcn.00401800
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov edx, str._Dm_https:__discordapp.com_users_717369125965398027_if_you_find_any_bugs_or_it_doesnt_work_n_n
call fcn.00401800
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov edx, str._Press_insert_to_enable___disable_bhop_n_n
call fcn.00401800
cmp byte [esp + 0xe], 0
mov edx, str._Bhop_Enabled__Y_N_:_Y
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
je 0x4014d3
mov edx, str._Bhop_Enabled__Y_N_:_N
call fcn.00401800
cmp byte [esp + 0xb], 0
mov al, byte [esp + 0xf]
mov byte [esp + 0xd], al
jne 0x401545
lea ecx, [esp + 0x28]
call fcn.00401150
mov ecx, dword [esp + 0x2c]
cmp ecx, 0x7fffffff
jg 0x401527
mov eax, dword [esp + 0x28]
jl 0x401509
cmp eax, 0xffd2393f
jae 0x401527
add eax, 0x2dc6c0
mov dword [esp + 0x20], eax
adc ecx, 0
mov dword [esp + 0x24], ecx
lea ecx, [esp + 0x20]
call fcn.00401ca0
jmp 0x401450
lea ecx, [esp + 0x20]
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x24], 0x7fffffff
call fcn.00401ca0
jmp 0x401450
lea eax, [esp + 0x470]
push eax
push 0
call dword [sym.imp.USER32.dll_FindWindowA]
test eax, eax
je 0x401661
push 0
push 4
lea eax, [esp + 0x3c]
push eax
mov eax, dword [0x405438]
add eax, 0x724b58
push eax
push dword [0x40543c]
call edi
cmp byte [esp + 0xc], 0
je 0x4015a3
push 0
push 4
lea eax, [esp + 0x470]
push eax
mov eax, dword [0x405438]
add eax, 0x757df0
push eax
push dword [0x40543c]
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
push 0x20
call esi
test ax, ax
je 0x4015fe
push 0
push 4
lea eax, [esp + 0x468]
push eax
mov eax, dword [esp + 0x40]
add eax, 0xf0
push eax
push dword [0x40543c]
call edi
test byte [esp + 0x460], 1
je 0x4015fe
push 0
push 4
lea eax, [esp + 0x474]
push eax
mov eax, dword [0x405438]
add eax, 0x757df0
push eax
push dword [0x40543c]
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov byte [esp + 0xc], 1
jmp 0x401603
mov byte [esp + 0xc], 0
lea ecx, [esp + 0x18]
call fcn.00401150
mov ecx, dword [esp + 0x1c]
cmp ecx, 0x7fffffff
jg 0x401643
mov eax, dword [esp + 0x18]
jl 0x401625
cmp eax, 0xffd2393f
jae 0x401643
add eax, 0x2dc6c0
mov dword [esp + 0x10], eax
adc ecx, 0
mov dword [esp + 0x14], ecx
lea ecx, [esp + 0x10]
call fcn.00401ca0
jmp 0x401450
lea ecx, [esp + 0x10]
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0x14], 0x7fffffff
call fcn.00401ca0
jmp 0x401450
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov edx, str._nL4D2_Closed__closing_in_3_seconds
call fcn.00401800
lea ecx, [esp + 0x18]
call fcn.00401150
mov ecx, dword [esp + 0x1c]
cmp ecx, 0x7fffffff
jg 0x4016a5
mov eax, dword [esp + 0x18]
jl 0x401693
cmp eax, 0x4d2fa1ff
jae 0x4016a5
add eax, 0xb2d05e00
mov dword [esp + 0x10], eax
adc ecx, 0
mov dword [esp + 0x14], ecx
jmp 0x4016b5
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0x14], 0x7fffffff
lea ecx, [esp + 0x10]
call fcn.00401ca0
mov ecx, dword [esp + 0x49c]
pop edi
pop esi
xor ecx, esp
call fcn.00401e55
mov esp, ebp
pop ebp
ret