Function at 0x14001e180
Capabilities:
Access pe header
Get file size
Read file on windows

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x60
mov rax, qword [0x1400af080]
xor rax, rsp
mov qword [rsp + 0x58], rax
mov rax, rdx
mov r14, rcx
xor edi, edi
xor r9d, r9d
mov qword [rsp + 0x30], rdi
xor r8d, r8d
mov dword [rsp + 0x28], pe_nt_image_headers64
mov edx, 0x80000000
mov rcx, rax
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rsi, rax
cmp rax, 0xffffffffffffffff
jne 0x14001e1e2
mov r15d, edi
mov qword [rsp + 0x48], rdi
jmp 0x14001e24e
xor edx, edx
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetFileSize]
xor ecx, ecx
mov edx, eax
mov r8d, 0x3000
mov ebx, eax
lea r9d, [rcx + 4]
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
xor r9d, r9d
mov qword [rsp + 0x20], rdi
mov rdx, rax
mov qword [rsp + 0x48], rax
mov r8d, ebx
mov rcx, rsi
mov r15, rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x14001e22f
cmp dword [r15], 0x905a4d
je 0x14001e240
xor edx, edx
mov r8d, 0x8000
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_VirtualFree]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r15, r15
jne 0x14001e25a
lea rcx, str.invalid_dll_n
call fcn.14001aa90
mov rcx, r15
call qword [sym.imp.ntdll.dll_RtlImageNtHeader]
mov rbp, rax
test rax, rax
jne 0x14001e277
lea rcx, str.pe:_invalid_pe_header_n
call fcn.14001aa90
mov dword [rsp + 0x50], edi
nop dword [rax + rax]
xor edx, edx
mov rcx, r14
call qword [sym.imp.USER32.dll_FindWindowA]
mov rcx, rax
lea rdx, [rsp + 0x50]
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov ecx, reloc.WS2_32.dll_sendto
mov r12d, eax
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ebx, dword [rsp + 0x50]
test ebx, ebx
je 0x14001e280
lea rcx, str.injecting..._n
call fcn.14001aa90
test r12d, r12d
je 0x14001e58c
mov rcx, qword gs:[0x58]
mov r14d, 4
mov qword [rsp + 0xb0], r13
add r14, qword [rcx]
mov eax, dword [r14]
cmp dword [0x1400cc0cc], eax
jle 0x14001e316
lea rcx, [0x1400cc0cc]
call fcn.1400892d8
cmp dword [0x1400cc0cc], 0xffffffff
jne 0x14001e316
lea rcx, [0x14008c480]
call fcn.140089694
lea rcx, [0x1400cc0cc]
call fcn.14008926c
mov r8d, dword [rbp + 0x50]
mov rdx, rbx
mov r13, rbx
call fcn.14001d770
mov r8, rbp
mov qword [rsp + 0x40], rax
mov rdx, r15
mov rcx, rax
mov rbx, rax
call fcn.14001ddb0
test eax, eax
jne 0x14001e38e
mov ecx, dword [r14]
cmp dword [0x1400cc0cc], ecx
jle 0x14001e377
lea rcx, [0x1400cc0cc]
call fcn.1400892d8
cmp dword [0x1400cc0cc], 0xffffffff
jne 0x14001e377
lea rcx, [0x14008c480]
call fcn.140089694
lea rcx, [0x1400cc0cc]
call fcn.14008926c
mov r8, rbx
mov rdx, r13
call fcn.14001d820
lea rcx, str.reloc_failed_n
call fcn.14001aa90
mov r9, rbp
mov r8, r15
mov edx, r12d
mov rcx, r13
call fcn.14001df40
test eax, eax
jne 0x14001e3f2
mov eax, dword [r14]
cmp dword [0x1400cc0cc], eax
jle 0x14001e3db
lea rcx, [0x1400cc0cc]
call fcn.1400892d8
cmp dword [0x1400cc0cc], 0xffffffff
jne 0x14001e3db
lea rcx, [0x14008c480]
call fcn.140089694
lea rcx, [0x1400cc0cc]
call fcn.14008926c
mov r8, rbx
mov rdx, r13
call fcn.14001d820
lea rcx, str.import_failed_n
call fcn.14001aa90
movzx ebx, word [rbp + 0x14]
movzx esi, di
add rbx, 0x2c
cmp di, word [rbp + 6]
jae 0x14001e473
mov rdi, qword [rsp + 0x40]
add rbx, rbp
nop dword [rax + rax]
mov eax, dword [r14]
cmp dword [0x1400cc0cc], eax
jle 0x14001e448
lea rcx, [0x1400cc0cc]
call fcn.1400892d8
cmp dword [0x1400cc0cc], 0xffffffff
jne 0x14001e448
lea rcx, [0x14008c480]
call fcn.140089694
lea rcx, [0x1400cc0cc]
call fcn.14008926c
mov r9d, dword [rbx]
mov rdx, r13
mov r8d, dword [rbx - 8]
add r9, r15
mov eax, dword [rbx - 4]
add r8, rdi
mov dword [rsp + 0x20], eax
call fcn.14001d6b0
inc si
add rbx, 0x28
cmp si, word [rbp + 6]
jb 0x14001e410
xor edi, edi
lea rcx, str.injecting..._almost_done_n
call fcn.14001aa90
mov r8, qword [rsp + 0x40]
mov r9, rbp
mov edx, r12d
mov rcx, r13
call fcn.14001db40
movzx ebx, word [rbp + 0x14]
add rbx, 0x28
cmp di, word [rbp + 6]
jae 0x14001e551
mov r15, qword [rsp + 0x40]
add rbx, rbp
nop dword [rax]
mov eax, dword [rbx]
test eax, eax
je 0x14001e53b
test dword [rbx + 0x14], 0x2000000
je 0x14001e53b
xor ecx, ecx
mov edx, eax
mov r8d, 0x3000
lea r9d, [rcx + 4]
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov ecx, dword [r14]
mov rsi, rax
cmp dword [0x1400cc0cc], ecx
jle 0x14001e512
lea rcx, [0x1400cc0cc]
call fcn.1400892d8
cmp dword [0x1400cc0cc], 0xffffffff
jne 0x14001e512
lea rcx, [0x14008c480]
call fcn.140089694
lea rcx, [0x1400cc0cc]
call fcn.14008926c
mov r8d, dword [rbx - 4]
mov r9, rsi
mov eax, dword [rbx]
add r8, r15
mov rdx, r13
mov dword [rsp + 0x20], eax
call fcn.14001d6b0
xor edx, edx
mov r8d, 0x8000
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_VirtualFree]
inc di
add rbx, 0x28
cmp di, word [rbp + 6]
jb 0x14001e4b0
mov r15, qword [rsp + 0x48]
xor edx, edx
mov r8d, 0x8000
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_VirtualFree]
lea rcx, str.inject_success__n
call fcn.14001aa90
mov rcx, qword [0x14008d5d0]
lea rdx, [0x140023790]
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 r13, qword [rsp + 0xb0]
jmp 0x14001e598
lea rcx, str.process_not_found__n
call fcn.14001aa90
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.140089210
add rsp, 0x60
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret