Function at 0x180007d10
Capabilities:
Get file size
Get process image filename
Read file via mapping
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xca0
mov rax, qword [0x180080920]
xor rax, rsp
mov qword [rsp + 0xc90], rax
mov rdi, rdx
mov rbx, rcx
xor edx, edx
mov r8d, 0x800
lea rcx, [rsp + 0x490]
call fcn.18004c900
xor edx, edx
mov r8d, 0x400
lea rcx, [rsp + 0x90]
call fcn.18004c900
mov r8d, 0x400
lea rdx, [rsp + 0x490]
mov rcx, rbx
call qword [sym.imp.PSAPI.DLL_GetProcessImageFileNameW]
lea rcx, [rsp + 0x490]
call sym.TitanEngine.dll_TranslateNativeNameW
mov r14, rax
mov qword [rsp + 0x58], rax
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.180007000
test al, al
je 0x18000826a
lea r8, [rsp + 0x90]
mov rdx, r14
mov rcx, rdi
call fcn.1800072f0
test al, al
je 0x18000826a
xor edx, edx
mov r8d, 0x8000
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_VirtualFree]
xor ebx, ebx
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], pe_nt_image_headers64
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [rbx + 1]
lea rcx, [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r15, rax
cmp rax, 0xffffffffffffffff
je 0x18000826a
mov qword [rsp + 0x88], rax
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov r12d, eax
mov dword [rsp + 0x50], eax
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], eax
xor r9d, r9d
xor edx, edx
lea r8d, [rbx + 2]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov r13, rax
mov qword [rsp + 0x70], rax
test rax, rax
je 0x180008248
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x20], rbx
xor r9d, r9d
xor r8d, r8d
lea edx, [rbx + 4]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov rsi, rax
test rax, rax
je 0x180008248
mov qword [rsp + 0x78], rax
mov byte [rsp + 0x20], 1
mov r9, rax
xor r8d, r8d
mov rdx, r15
call fcn.180007830
test al, al
je 0x18000826a
movsxd r8, dword [rsi + 0x3c]
lea rdi, [rsi + r8]
movzx eax, word [rdi + 0x18]
mov ecx, 0x10b
cmp ax, cx
jne 0x180007ec2
mov edx, ebx
jmp 0x180007ed5
mov ecx, 0x20b
cmp ax, cx
jne 0x180008235
mov edx, 1
movzx eax, word [rdi + 6]
lea ecx, [rax + rax*4]
movzx eax, word [rdi + 0x14]
lea eax, [rax + rcx*8]
mov dword [rsp + 0x40], eax
lea eax, [rax + 0x18]
test edx, edx
jne 0x180008077
cmp dword [rdi + 0x78], ebx
je 0x180008222
lea ecx, [rax + r8]
mov edx, dword [rdi + 0x7c]
add edx, 0x1000
add edx, ecx
xor ecx, ecx
lea r9d, [rcx + 4]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov qword [rsp + 0x48], rax
test rax, rax
je 0x180008222
mov r14d, dword [rsp + 0x40]
add r14d, 0x18
add r14d, dword [rsi + 0x3c]
test r14d, 0xfff
je 0x180007f4e
and r14d, 0xfffff000
add r14d, 0x1000
mov r9d, dword [rdi + 0x78]
mov r8d, dword [rdi + 0x34]
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
mov edx, r12d
mov rcx, rsi
call sym.TitanEngine.dll_ConvertVAtoFileOffsetEx
mov qword [rsp + 0x60], rax
mov rcx, qword [rsp + 0x48]
test rax, rax
je 0x180008028
mov r13d, r14d
add r13, rcx
mov r8d, dword [rsp + 0x40]
add r8d, 0x18
add r8d, dword [rsi + 0x3c]
mov rdx, rsi
call fcn.18004c130
mov r8d, dword [rdi + 0x7c]
mov rdx, qword [rsp + 0x60]
mov rcx, r13
call fcn.18004c130
mov eax, r14d
sub eax, dword [rdi + 0x78]
add dword [r13 + 0x1c], eax
mov eax, r14d
sub eax, dword [rdi + 0x78]
add dword [r13 + 0x24], eax
mov eax, r14d
sub eax, dword [rdi + 0x78]
add dword [r13 + 0x20], eax
mov edx, dword [r13 + 0x20]
mov eax, r14d
sub eax, dword [rdi + 0x78]
add dword [r13 + 0xc], eax
mov rcx, qword [rsp + 0x48]
add rdx, rcx
mov qword [rsp + 0x68], rdx
mov dword [rsp + 0x54], ebx
cmp ebx, dword [r13 + 0x18]
jge 0x180008002
mov eax, r14d
sub eax, dword [rdi + 0x78]
add dword [rdx], eax
add rdx, 4
mov qword [rsp + 0x68], rdx
inc ebx
jmp 0x180007fe3
movsxd rax, dword [rcx + 0x3c]
mov dword [rax + rcx + 0x78], r14d
mov r9, rsi
mov r8, qword [rsp + 0x70]
mov edx, r12d
mov rcx, r15
call fcn.18000dc30
mov rax, qword [rsp + 0x48]
jmp 0x18000827d
xor edx, edx
mov r8d, 0x8000
call qword [sym.imp.KERNEL32.dll_VirtualFree]
mov r14, qword [rsp + 0x58]
jmp 0x180008222
cmp dword [rdi + 0x88], ebx
je 0x180008222
lea ecx, [rax + r8]
mov edx, dword [rdi + 0x8c]
add edx, 0x1000
add edx, ecx
xor ecx, ecx
lea r9d, [rcx + 4]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov qword [rsp + 0x48], rax
test rax, rax
je 0x180008222
mov r14d, dword [rsp + 0x40]
add r14d, 0x18
add r14d, dword [rsi + 0x3c]
test r14d, 0xfff
je 0x1800080d9
and r14d, 0xfffff000
add r14d, 0x1000
mov r9d, dword [rdi + 0x88]
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
mov r8, qword [rdi + 0x30]
mov edx, r12d
mov rcx, rsi
call sym.TitanEngine.dll_ConvertVAtoFileOffsetEx
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x48]
test rax, rax
je 0x1800081db
mov eax, r14d
add rax, rcx
mov qword [rsp + 0x60], rax
mov r8d, dword [rsp + 0x40]
add r8d, 0x18
add r8d, dword [rdi + 0x8c]
mov rdx, rsi
call fcn.18004c130
mov r8d, dword [rsp + 0x40]
add r8d, 0x18
add r8d, dword [rsi + 0x3c]
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
call fcn.18004c130
mov eax, r14d
sub eax, dword [rdi + 0x88]
mov r8, qword [rsp + 0x60]
add dword [r8 + 0x1c], eax
mov eax, r14d
sub eax, dword [rdi + 0x88]
add dword [r8 + 0x24], eax
mov eax, r14d
sub eax, dword [rdi + 0x88]
add dword [r8 + 0x20], eax
mov edx, dword [r8 + 0x20]
mov eax, r14d
sub eax, dword [rdi + 0x88]
add dword [r8 + 0xc], eax
mov rcx, qword [rsp + 0x48]
add rdx, rcx
mov qword [rsp + 0x68], rdx
mov dword [rsp + 0x54], ebx
cmp ebx, dword [r8 + 0x18]
jge 0x1800081b4
mov eax, r14d
sub eax, dword [rdi + 0x78]
add dword [rdx], eax
add rdx, 4
mov qword [rsp + 0x68], rdx
inc ebx
jmp 0x180008195
movsxd rax, dword [rcx + 0x3c]
mov dword [rax + rcx + 0x88], r14d
mov r9, rsi
mov r8, r13
mov edx, r12d
mov rcx, r15
call fcn.18000dc30
mov rax, qword [rsp + 0x48]
jmp 0x18000827d
xor edx, edx
mov r8d, 0x8000
call qword [sym.imp.KERNEL32.dll_VirtualFree]
mov r14, qword [rsp + 0x58]
jmp 0x180008222
mov r9, rsi
mov r8, r13
mov edx, r12d
mov rcx, r15
call fcn.18000dc30
jmp 0x18000826a
mov r9, rsi
mov r8, r13
mov edx, r12d
mov rcx, r15
call fcn.18000dc30
jmp 0x18000827b
lea rdx, [rsp + 0x50]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetHandleInformation]
test eax, eax
je 0x18000826a
test byte [rsp + 0x50], 2
jne 0x18000826a
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor edx, edx
mov r8d, 0x8000
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_VirtualFree]
xor eax, eax
mov rcx, qword [rsp + 0xc90]
xor rcx, rsp
call fcn.180049ad0
lea r11, [rsp + 0xca0]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret