Function at 0x1400113b6
Capabilities:
Check if file exists
Create thread
Get common file path
Get file attributes
Inject thread
Read .ini file
Write file on windows

Disassembly:
jmp 0x1400132f0
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x7f8
lea rbp, [rsp + 0x40]
lea rdi, [rsp + 0x40]
mov ecx, 0x15e
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x818]
mov rax, qword [section..data]
xor rax, rbp
mov qword [rbp + 0x7a8], rax
lea rcx, [0x1400260fb]
call fcn.1400114ce
nop
lea rdx, [rbp + 0x10]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
nop
lea rdx, str.config.ini
lea rcx, [rbp + 0x10]
call fcn.1400112cb
nop
lea rcx, [rbp + 0x10]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [rbp + 0x124], eax
cmp dword [rbp + 0x124], 0xffffffff
je 0x140013394
mov eax, dword [rbp + 0x124]
and eax, 0x10
test eax, eax
je 0x14001342f
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 1
xor r9d, r9d
mov r8d, 2
mov edx, 0x40000000
lea rcx, [rbp + 0x10]
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov qword [rbp + 0x148], rax
cmp qword [rbp + 0x148], 0
je 0x1400133e0
cmp qword [rbp + 0x148], 0xffffffffffffffff
jne 0x1400133f4
lea rdx, str.Config_file_not_found._An_attempt_to_create_a_config_file_was_also_unsuccessful
lea rcx, str.Ini_file
call fcn.140011041
nop
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8d, 0x3d
lea rdx, str._Options__r_nprocess_RobloxPlayerBeta.exe__r_ndll_exploit.dll_
mov rcx, qword [rbp + 0x148]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
lea rdx, str.Config_file_not_found._A_default_config_file_has_been_created_in_the_current_directory.
lea rcx, str.Ini_file
call fcn.140011041
nop
lea rax, [rbp + 0x10]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xff
lea r9, [rbp + 0x170]
xor r8d, r8d
lea rdx, str.process
lea rcx, str.Options
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
nop
lea rax, [rbp + 0x10]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xff
lea r9, [rbp + 0x290]
xor r8d, r8d
lea rdx, [0x14001d47c]
lea rcx, str.Options
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
nop
lea rax, [0x14001d2e3]
lea rcx, [rbp + 0x170]
cmp rcx, rax
jne 0x1400134b6
lea rdx, str.Process_name_in_config_file_is_blank
lea rcx, str.Config
call fcn.140011041
nop
lea rax, [0x14001d2e3]
lea rcx, [rbp + 0x290]
cmp rcx, rax
jne 0x1400134dd
lea rdx, str.DLL_name_in_config_file_is_blank
lea rcx, str.Config
call fcn.140011041
nop
lea rcx, [rbp + 0x170]
call fcn.1400114ec
mov dword [rbp + 0x3a4], eax
cmp dword [rbp + 0x3a4], 0
jne 0x14001350c
lea rdx, str.Process_ID_not_found
lea rcx, str.ProcessID
call fcn.140011041
nop
xor r9d, r9d
lea r8, [rbp + 0x3d0]
mov edx, 0x104
lea rcx, [rbp + 0x290]
call qword [sym.imp.KERNEL32.dll_GetFullPathNameA]
mov dword [rbp + 0x4f4], eax
cmp dword [rbp + 0x4f4], 0
jne 0x14001354b
lea rdx, [0x14001d2e3]
lea rcx, str.GetFullPathName
call fcn.140011041
nop
cmp dword [rbp + 0x4f4], 0x104
jbe 0x14001356b
lea rdx, str.Path_Length_too_short
lea rcx, str.GetFullPathName
call fcn.140011041
nop
lea rcx, [rbp + 0x3d0]
call fcn.140011104
test eax, eax
jne 0x14001358f
lea rdx, str.Dll_to_inject_does_not_exist
lea rcx, str.FileExists
call fcn.140011041
nop
lea rdx, [rbp + 0x290]
mov ecx, dword [rbp + 0x3a4]
call fcn.14001146a
test rax, rax
je 0x1400135ba
lea rdx, str.Dll_already_injected
lea rcx, str.GrabModule
call fcn.140011041
nop
mov r8d, dword [rbp + 0x3a4]
xor edx, edx
mov ecx, 0x1fffff
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov qword [rbp + 0x518], rax
cmp qword [rbp + 0x518], 0
jne 0x1400135f3
lea rdx, [0x14001d2e3]
lea rcx, str.OpenProcess
call fcn.140011041
nop
mov dword [rsp + 0x20], 4
mov r9d, 0x3000
mov r8d, 0x104
xor edx, edx
mov rcx, qword [rbp + 0x518]
call qword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov qword [rbp + 0x538], rax
cmp qword [rbp + 0x538], 0
jne 0x14001363b
lea rdx, [0x14001d2e3]
lea rcx, str.VirtualAllocEx
call fcn.140011041
nop
mov qword [rsp + 0x20], 0
mov r9d, 0x104
lea r8, [rbp + 0x3d0]
mov rdx, qword [rbp + 0x538]
mov rcx, qword [rbp + 0x518]
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
jne 0x14001367d
lea rdx, [0x14001d2e3]
lea rcx, str.WriteProcessMemory
call fcn.140011041
nop
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov rax, qword [rbp + 0x538]
mov qword [rsp + 0x20], rax
mov r9, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
xor r8d, r8d
xor edx, edx
mov rcx, qword [rbp + 0x518]
call qword [sym.imp.KERNEL32.dll_CreateRemoteThread]
mov qword [rbp + 0x558], rax
cmp qword [rbp + 0x558], 0
jne 0x1400136d8
lea rdx, [0x14001d2e3]
lea rcx, str.CreateRemoteThread
call fcn.140011041
nop
mov rcx, qword [rbp + 0x518]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [rbp + 0x538]
mov rcx, qword [rbp + 0x518]
call qword [sym.imp.KERNEL32.dll_VirtualFreeEx]
nop
mov r9d, 0x40
lea r8, str.Ninja_Injector__Discord:_dev.ro0ti
lea rdx, str.File_successfully_injected
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
nop
xor eax, eax
mov edi, eax
lea rcx, [rbp - 0x40]
lea rdx, [0x14001ccd0]
call fcn.140011442
mov eax, edi
mov rcx, qword [rbp + 0x7a8]
xor rcx, rbp
call fcn.140011271
lea rsp, [rbp + 0x7b8]
pop rdi
pop rbp
ret