Function at 0x14004faa0
Capabilities:
Create thread
Enumerate processes
Inject dll
Inject thread

Disassembly:
push rbx
sub rsp, 0x170
xor edx, edx
mov dword [rsp + 0x40], pe_nt_image_headers64
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov rbx, rax
cmp rax, 0xffffffffffffffff
jne 0x14004faf6
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
lea rdx, str.Failed_to_create_snapshot_of_running_processes.
call fcn.140057cd0
lea rdx, [0x140057eb0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, str.HD_Player.exe_not_found._Exiting.
jmp 0x14004fb75
lea rdx, [rsp + 0x40]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_Process32First]
test eax, eax
je 0x14004fb37
nop dword [rax + rax]
lea rdx, str.HD_Player.exe
lea rcx, [rsp + 0x6c]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
mov rcx, rbx
test eax, eax
je 0x14004fb49
lea rdx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_Process32Next]
test eax, eax
jne 0x14004fb10
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rdx, str.HD_Player.exe_not_found._Exiting.
jmp 0x14004fb75
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r8d, dword [rsp + 0x48]
test r8d, r8d
je 0x14004fb40
xor edx, edx
mov ecx, 0x1fffff
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rbx, rax
test rax, rax
jne 0x14004fb9f
lea rdx, str.Failed_to_open_target_process.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140057cd0
lea rdx, [0x140057eb0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov eax, 0xffffffff
add rsp, 0x170
pop rbx
ret
mov rax, qword [str.C:_Windows_temp_F4X_NAFIS.dll]
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x188], rdi
inc r8
cmp byte [rax + r8], 0
jne 0x14004fbb5
inc r8
mov dword [rsp + 0x20], 4
xor edx, edx
mov r9d, 0x1000
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov rdi, rax
test rax, rax
jne 0x14004fc25
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
lea rdx, str.Failed_to_allocate_memory_in_target_process.
call fcn.140057cd0
lea rdx, [0x140057eb0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rdi, qword [rsp + 0x188]
mov eax, 0xffffffff
add rsp, 0x170
pop rbx
ret
mov r8, qword [str.C:_Windows_temp_F4X_NAFIS.dll]
mov r9, 0xffffffffffffffff
mov qword [rsp + 0x180], rsi
nop dword [rax + rax]
inc r9
cmp byte [r8 + r9], 0
jne 0x14004fc40
xor esi, esi
inc r9
mov rdx, rdi
mov qword [rsp + 0x20], rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
jne 0x14004fc6d
lea rdx, str.Failed_to_write_to_process_memory.
jmp 0x14004fcc6
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [0x140163878]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
jne 0x14004fc98
lea rdx, str.Failed_to_get_address_of_LoadLibraryA.
jmp 0x14004fcc6
mov qword [rsp + 0x30], rsi
mov r9, rax
mov dword [rsp + 0x28], esi
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x20], rdi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CreateRemoteThread]
mov rsi, rax
test rax, rax
jne 0x14004fd1e
lea rdx, str.Failed_to_create_remote_thread_in_target_process.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140057cd0
lea rdx, [0x140057eb0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov r9d, 0x8000
xor r8d, r8d
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 0xffffffff
mov rsi, qword [rsp + 0x180]
mov rdi, qword [rsp + 0x188]
add rsp, 0x170
pop rbx
ret
mov edx, 0xffffffff
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov r9d, 0x8000
xor r8d, r8d
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp byte [0x14025f94b], 0
jne 0x14004fd6e
mov edx, 0x20001
lea rcx, str.C:WindowsTempF4X1.wav
call qword [sym.imp.WINMM.dll_sndPlaySoundA]
mov r8d, reloc.WS2_32.dll_recvfrom
lea rdx, str.CHAMS_MENU_OPENED
lea rcx, [0x14025e548]
call fcn.140044940
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.DLL_injected_successfully_
call fcn.140057cd0
lea rdx, [0x140057eb0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
xor eax, eax
jmp 0x14004fd05