Function at 0x140025830
Capabilities:
Map section object
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0xf8
movaps xmmword [rsp + 0xe0], xmm6
mov rsi, rcx
mov rax, qword [0x140062018]
xor rax, rsp
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x1000
mov rcx, 0xffffffffffffffff
xor edx, edx
mov r8d, 4
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileMappingW]
test rax, rax
je 0x140025b66
mov rdi, rax
mov rbx, qword [0x140062dc8]
test rbx, rbx
je 0x1400258d6
mov qword [0x140062dc8], 0
lea rcx, [0x140062dd0]
call sub.ntdll.dll_RtlRunOnceInitialize
mov rcx, 0xffffffffffffffff
mov rdx, rbx
call sub.ntdll.dll_NtUnmapViewOfSection
test eax, eax
jns 0x1400258d6
mov ecx, eax
call sub.ntdll.dll_RtlNtStatusToDosError
mov ecx, eax
call sub.ntdll.dll_RtlSetLastWin32Error
mov rcx, qword [0x140062dc0]
cmp rcx, rdi
je 0x1400258f4
test rcx, rcx
je 0x1400258ed
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [0x140062dc0], rdi
xor eax, eax
lea r8, [rsp + 0x50]
mov qword [r8], rax
lea rcx, [rsp + 0x58]
mov qword [rcx], rax
mov qword [rsp + 0x30], rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 4
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x38], 2
mov rcx, rdi
mov rdx, 0xffffffffffffffff
xor r9d, r9d
call sub.ntdll.dll_NtMapViewOfSection
test eax, eax
jns 0x14002594f
mov ecx, eax
call sub.ntdll.dll_RtlNtStatusToDosError
mov ecx, eax
call sub.ntdll.dll_RtlSetLastWin32Error
mov rdi, qword [rsp + 0x50]
test rdi, rdi
je 0x140025bd4
xorps xmm6, xmm6
movups xmmword [rsp + 0xc8], xmm6
lea rcx, [0x140059cfc]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
and rax, 0xfffffffffffffffc
je 0x140025b97
movzx ecx, word [rax]
cmp ecx, 0x5a4d
jne 0x140025b97
movsxd rdx, dword [rax + 0x3c]
add rdx, rax
je 0x140025c00
cmp dword [rdx], 0x4550
jne 0x140025c00
movzx ecx, word [rdx + 0x18]
cmp ecx, 0x20b
jne 0x140025c00
cmp dword [rdx + 0x50], 0x147
jbe 0x140025c00
cmp dword [rdx + 0x84], 0
je 0x140025c00
mov ecx, dword [rdx + 0x88]
test rcx, rcx
je 0x140025c00
mov r12d, dword [rdx + 0x8c]
test r12d, r12d
je 0x140025c00
mov rbx, rax
add rbx, rcx
je 0x140025c00
cmp dword [rbx + 0x14], 0
je 0x140025c00
lea r9, [rsp + 0xc0]
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x60], rax
mov edx, dword [rbx + 0x10]
mov dword [rsp + 0x68], edx
mov dword [rsp + 0x6c], ecx
lea edx, [r12 + rcx]
mov dword [rsp + 0x70], edx
mov r8d, dword [rbx + 0x14]
mov r14d, dword [rbx + 0x1c]
add r14, rax
mov qword [rsp + 0x78], r9
mov qword [rsp + 0x80], r14
mov edx, 0x3fffffff
and r8, rdx
mov qword [rsp + 0x88], r8
mov r10d, dword [rbx + 0x18]
mov r15d, dword [rbx + 0x20]
add r15, rax
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x98], r15
and r10, rdx
mov qword [rsp + 0xa0], r10
mov r11d, dword [rbx + 0x18]
mov ebx, dword [rbx + 0x24]
add rbx, rax
and r11d, 0x7fffffff
mov qword [rsp + 0xa8], r9
mov qword [rsp + 0xb0], rbx
mov qword [rsp + 0xb8], r11
add r12d, ecx
je 0x140025c42
test r14, r14
je 0x140025c42
test r8d, r8d
je 0x140025c42
test r15, r15
je 0x140025c42
test r10d, r10d
je 0x140025c42
test rbx, rbx
je 0x140025c42
test r11d, r11d
je 0x140025c42
lea rdx, [0x1400578d6]
lea rcx, [rsp + 0x58]
call fcn.14002a320
test rax, rax
je 0x140025c42
mov eax, dword [rax]
mov qword [rdi + 8], rax
lea rdx, [0x140057f7a]
lea rcx, [rsp + 0x58]
call fcn.14002a320
test rax, rax
je 0x140025c42
mov eax, dword [rax]
mov qword [rdi + 0x10], rax
lea rdx, [0x14005706f]
lea rcx, [rsp + 0x58]
call fcn.14002a320
test rax, rax
je 0x140025c42
mov eax, dword [rax]
mov qword [rdi + 0x18], rax
lea rdx, [0x140056b4d]
lea rcx, [rsp + 0x58]
call fcn.14002a320
test rax, rax
je 0x140025c42
mov eax, dword [rax]
mov qword [rdi + 0x20], rax
jmp 0x140025c42
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov byte [rsi + 0x10], 1
lea rax, str._builds_worker_checkouts_gecko_browser_app_winlauncher_freestanding_SharedSection.cpp
mov qword [rsi], rax
mov dword [rsi + 8], 0x9c
mov dword [rsi + 0xc], ecx
jmp 0x140025c75
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x58], rax
movups xmmword [rsp + 0x60], xmm6
mov dword [rsp + 0x70], 0
mov qword [rsp + 0x78], rax
movups xmmword [rsp + 0x80], xmm6
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], 0
jmp 0x140025c42
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
lea rax, str._builds_worker_checkouts_gecko_browser_app_winlauncher_freestanding_SharedSection.cpp
mov qword [rsi], rax
mov dword [rsi + 8], 0xa6
mov dword [rsi + 0xc], ecx
mov al, 1
jmp 0x140025c4a
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x58], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x70], 0
mov qword [rsp + 0x78], rax
movups xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x90], rax
movups xmmword [rsp + 0x98], xmm0
mov qword [rsp + 0xa8], rax
mov dword [rdi], 1
xor eax, eax
mov byte [rsi + 0x10], al
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x140025c75
mov rcx, 0xffffffffffffffff
call sub.ntdll.dll_NtUnmapViewOfSection
test eax, eax
jns 0x140025c75
mov ecx, eax
call sub.ntdll.dll_RtlNtStatusToDosError
mov ecx, eax
call sub.ntdll.dll_RtlSetLastWin32Error
mov rcx, qword [rsp + 0xd8]
xor rcx, rsp
call fcn.14002fae0
mov rax, rsi
movaps xmm6, xmmword [rsp + 0xe0]
add rsp, 0xf8
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret