Function at 0x1400025b0
Capabilities:
Parse pe header
Read file on windows

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
mov eax, 0x10158
call fcn.1400c12cc
sub rsp, rax
movaps xmmword [rsp + 0x10140], xmm6
mov r14, qword [0x1400f6380]
mov rax, qword [r14]
xor rax, rsp
mov qword [rsp + 0x10138], rax
test rcx, rcx
je 0x140002a22
mov rsi, rcx
xorps xmm6, xmm6
movups xmmword [rsp + 0x11c], xmm6
mov byte [rsp + 0x12c], 0
movups xmmword [rsp + 0x107], xmm6
mov byte [rsp + 0x117], 0
movaps xmmword [rsp + 0x40], xmm6
mov qword [rsp + 0x50], 0
movups xmmword [rsp + 0x30], xmm6
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov ecx, 0xfde9
xor edx, edx
mov r8, rsi
mov r9d, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
je 0x1400026c1
mov edi, eax
movsxd rdx, eax
lea rcx, [rsp + 0x40]
xor r8d, r8d
call fcn.140079430
test byte [rsp + 0x40], 1
je 0x140002670
mov rax, qword [rsp + 0x50]
jmp 0x140002675
lea rax, [rsp + 0x41]
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rax
mov ecx, 0xfde9
xor edx, edx
mov r8, rsi
mov r9d, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
cmp eax, edi
je 0x1400026c1
test byte [rsp + 0x40], 1
jne 0x1400026b0
mov word [rsp + 0x40], 0
jmp 0x1400026c1
mov rax, qword [rsp + 0x50]
mov byte [rax], 0
mov qword [rsp + 0x48], 0
lea rax, str.ReadAheadLib
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x68], 1
mov dword [rsp + 0x70], 0
movups xmm0, xmmword [rsp + 0x118]
movups xmmword [rsp + 0x74], xmm0
mov rax, qword [rsp + 0x125]
mov qword [rsp + 0x81], rax
mov word [rsp + 0x89], 1
movups xmm0, xmmword [rsp + 0x102]
movups xmmword [rsp + 0x8b], xmm0
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x99], rax
mov word [rsp + 0xa1], 1
mov eax, dword [rsp + 0x5b]
mov dword [rsp + 0xa3], eax
mov al, byte [rsp + 0x5f]
mov byte [rsp + 0xa7], al
mov byte [rsp + 0xa8], 0
mov dword [rsp + 0xb0], 0
lea rcx, [rsp + 0xd0]
movups xmmword [rsp + 0xb8], xmm6
mov qword [rsp + 0xc8], 0
lea rdx, [rsp + 0x40]
call fcn.140077490
cmp byte [rsp + 0x89], 0
je 0x140002847
lea rcx, [rsp + 0xe8]
mov dl, 1
call qword [method.mozilla::TimeStamp.NowUnfuzzed_bool_]
xorps xmm0, xmm0
movups xmmword [rsp + 0x148], xmm0
mov byte [rsp + 0x158], 0
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x140], rax
movups xmm0, xmmword [rsp + 0xe8]
movups xmmword [rsp + 0x78], xmm0
mov rax, qword [rsp + 0x149]
mov qword [rsp + 0x91], rax
mov eax, dword [rsp + 0x151]
mov dword [rsp + 0x99], eax
movzx eax, word [rsp + 0x155]
mov word [rsp + 0x9d], ax
mov al, byte [rsp + 0x157]
mov byte [rsp + 0x9f], al
mov al, byte [rsp + 0x158]
mov byte [rsp + 0xa0], al
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x90], rax
mov word [rsp + 0xa1], 1
mov byte [rsp + 0xa8], 0
test byte [rsp + 0x40], 1
je 0x140002858
mov rcx, qword [rsp + 0x50]
call sub.mozglue.dll_free
call fcn.140002fb0
test al, al
je 0x140002960
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x8000000
mov dword [rsp + 0x20], 3
mov rcx, rsi
mov edx, 0xa0000000
mov r8d, 1
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileW]
lea rbx, [rax + 1]
cmp rbx, 2
jb 0x140002a18
mov rsi, rax
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
mov rcx, rax
xor edx, edx
mov r8d, 0x1000020
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileMappingA]
lea rdi, [rax + 1]
cmp rdi, 2
jb 0x140002951
mov r12, rax
mov qword [rsp + 0x20], 0
mov rcx, rax
mov edx, 0x1000024
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
test rax, rax
je 0x140002942
mov r15, rax
movzx eax, word [rax]
cmp eax, 0x5a4d
jne 0x140002939
movsxd rax, dword [r15 + 0x3c]
cmp dword [r15 + rax], 0x4550
jne 0x140002939
movzx ecx, word [r15 + rax + 0x18]
cmp ecx, 0x20b
jne 0x140002939
mov edx, dword [r15 + rax + 0x50]
cmp rdx, 0x148
jb 0x140002939
mov rcx, r15
call fcn.140003020
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
cmp rdi, 2
jb 0x140002951
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rbx, 2
jb 0x140002a18
jmp 0x140002a0f
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x8000000
mov dword [rsp + 0x20], 3
mov rcx, rsi
mov edx, 0x80000000
mov r8d, 1
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
je 0x140002a18
mov rsi, rax
lea r8, [rsp + 0xe8]
mov rcx, rax
xor edx, edx
mov r9d, 1
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
test eax, eax
je 0x140002a0f
lea r15, [rsp + 0x130]
lea rbx, [rsp + 0x40]
mov rdi, qword [sym.imp.KERNEL32.dll_ReadFile]
nop
mov qword [rsp + 0x20], 0
mov rcx, rsi
mov rdx, r15
mov r8d, 0x10000
mov r9, rbx
call rdi
test eax, eax
je 0x1400029f8
cmp dword [rsp + 0x40], 0x10000
je 0x1400029d0
mov rdx, qword [rsp + 0xe8]
mov rcx, rsi
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0x60]
call fcn.140002b10
mov rax, qword [rsp + 0x10138]
xor rax, rsp
mov rcx, qword [r14]
cmp rcx, rax
jne 0x140002a4e
movaps xmm6, xmmword [rsp + 0x10140]
add rsp, 0x10158
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
call fcn.140072349
int3