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

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0xf8
movaps xmmword [rsp + 0xe0], xmm6
mov rsi, rcx
mov rax, qword [0x140061030]
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 0x1400203e3
mov rcx, rax
call fcn.14001f220
mov rcx, qword [0x140061d80]
xor eax, eax
lea r8, [rsp + 0x50]
mov qword [r8], rax
lea rdx, [rsp + 0x58]
mov qword [rdx], rax
mov qword [rsp + 0x30], rdx
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 4
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x38], 2
mov rdx, 0xffffffffffffffff
xor r9d, r9d
call sub.ntdll.dll_NtMapViewOfSection
test eax, eax
jns 0x1400201c2
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 0x14002045d
xorps xmm6, xmm6
movups xmmword [rsp + 0xc8], xmm6
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
and rax, 0xfffffffffffffffc
je 0x140020414
movzx ecx, word [rax]
cmp ecx, 0x5a4d
jne 0x140020414
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
je 0x140020489
cmp dword [rcx], 0x4550
jne 0x140020489
movzx edx, word [rcx + 0x18]
cmp edx, 0x20b
jne 0x140020489
cmp dword [rcx + 0x50], 0x147
jbe 0x140020489
cmp dword [rcx + 0x84], 0
je 0x140020489
mov edx, dword [rcx + 0x88]
test rdx, rdx
je 0x140020489
mov ecx, dword [rcx + 0x8c]
test ecx, ecx
je 0x140020489
mov r10, rax
add r10, rdx
je 0x140020489
cmp dword [r10 + 0x14], 0
je 0x140020489
add ecx, edx
lea r14, [rsp + 0xc0]
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rax
mov r8d, dword [r10 + 0x10]
mov dword [rsp + 0x68], r8d
mov dword [rsp + 0x6c], edx
mov dword [rsp + 0x70], ecx
mov edx, dword [r10 + 0x14]
mov r9d, dword [r10 + 0x1c]
add r9, rax
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x80], r9
mov r11d, 0x3fffffff
and rdx, r11
mov qword [rsp + 0x88], rdx
mov r8d, dword [r10 + 0x18]
mov ebx, dword [r10 + 0x20]
add rbx, rax
mov qword [rsp + 0x90], r14
mov qword [rsp + 0x98], rbx
and r8, r11
mov qword [rsp + 0xa0], r8
mov r11d, dword [r10 + 0x18]
mov r10d, dword [r10 + 0x24]
add r10, rax
mov qword [rsp + 0xa8], r14
mov qword [rsp + 0xb0], r10
and r11d, 0x7fffffff
mov qword [rsp + 0xb8], r11
xor eax, eax
test al, al
jne 0x1400204d3
test ecx, ecx
je 0x1400204d3
test r9, r9
je 0x1400204d3
test rdx, rdx
je 0x1400204d3
test rbx, rbx
je 0x1400204d3
test r8, r8
je 0x1400204d3
test r10, r10
je 0x1400204d3
test r11, r11
je 0x1400204d3
lea rdx, [0x140055f01]
lea rcx, [rsp + 0x58]
call fcn.140027820
test rax, rax
je 0x1400204d3
mov eax, dword [rax]
mov qword [rdi + 8], rax
lea rdx, [0x140056530]
lea rcx, [rsp + 0x58]
call fcn.140027820
test rax, rax
je 0x1400204d3
mov eax, dword [rax]
mov qword [rdi + 0x10], rax
lea rdx, [0x1400556cd]
lea rcx, [rsp + 0x58]
call fcn.140027820
test rax, rax
je 0x1400204d3
mov eax, dword [rax]
mov qword [rdi + 0x18], rax
lea rdx, [0x1400551b3]
lea rcx, [rsp + 0x58]
call fcn.140027820
test rax, rax
je 0x1400204d3
mov eax, dword [rax]
mov qword [rdi + 0x20], rax
jmp 0x1400204d3
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], 0x9e
mov dword [rsi + 0xc], ecx
jmp 0x140020506
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
movups xmmword [rsp + 0x98], xmm6
mov qword [rsp + 0xa8], rax
movups xmmword [rsp + 0xb0], xmm6
jmp 0x1400204d3
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], 0xa8
mov dword [rsi + 0xc], ecx
mov al, 1
jmp 0x1400204db
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
movups xmmword [rsp + 0xb0], xmm0
mov dword [rdi], 1
xor eax, eax
mov byte [rsi + 0x10], al
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x140020506
mov rcx, 0xffffffffffffffff
call sub.ntdll.dll_NtUnmapViewOfSection
test eax, eax
jns 0x140020506
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.14002b660
movaps xmm6, xmmword [rsp + 0xe0]
add rsp, 0xf8
pop rbx
pop rdi
pop rsi
pop r14
ret