Function at 0x1400081e0
Capabilities:
Read file via mapping

Disassembly:
push r12
push r13
push r14
push r15
push rbp
sub rsp, 0x50
mov eax, edx
mov rbp, rcx
pxor xmm0, xmm0
mov dword [rbp + 0x160], eax
mov qword [rbp + 0x168], r8
movups xmmword [rsp + 0x40], xmm0
xor edx, edx
xor r11d, r11d
cmp eax, 1
jle 0x140008364
mov r14, qword [rsp + 0x48]
lea r15d, [rax - 1]
mov ecx, r15d
mov r9, r14
shr ecx, 0x1f
xor r10d, r10d
lea eax, [rax + rcx - 1]
sar eax, 1
test eax, eax
jbe 0x14000848e
lea r12d, [r10 + r10]
movsxd r12, r12d
mov rcx, qword [r8 + r12*8 + 8]
mov r13b, byte [rcx]
cmp r13b, 0x2d
jne 0x14000845f
cmp byte [rcx + 1], 0
jne 0x140008270
mov qword [rsp + 0x40], r9
mov r9, rcx
mov qword [rsp + 0x48], rcx
mov r14, rcx
mov r11d, 2
jmp 0x140008283
cmp dword [rcx + 1], 0x3d786469
jne 0x140008283
cmp r11d, 1
je 0x140008283
movzx edx, word [rcx + 5]
mov r13, qword [r8 + r12*8 + 0x10]
mov r12b, byte [r13]
cmp r12b, 0x2d
jne 0x140008430
cmp byte [r13 + 1], 0
jne 0x1400082b5
mov qword [rsp + 0x40], r9
mov r9, r13
mov qword [rsp + 0x48], r13
mov r14, r13
mov r11d, 2
jmp 0x1400082ca
cmp dword [r13 + 1], 0x3d786469
jne 0x1400082ca
cmp r11d, 1
je 0x1400082ca
movzx edx, word [r13 + 5]
inc r10d
cmp r10d, eax
jb 0x140008239
add r10d, r10d
cmp r10d, r15d
jae 0x140008322
movsxd r10, r10d
mov r8, qword [r8 + r10*8 + 8]
mov al, byte [r8]
cmp al, 0x2d
jne 0x140008408
cmp byte [r8 + 1], 0
jne 0x14000830d
mov qword [rsp + 0x40], r9
mov r14, r8
mov qword [rsp + 0x48], r8
mov r11d, 2
jmp 0x140008327
cmp dword [r8 + 1], 0x3d786469
jne 0x140008322
cmp r11d, 1
je 0x140008327
movzx edx, word [r8 + 5]
test r11d, r11d
je 0x140008364
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x140008364
cmp r11d, 2
jne 0x14000833b
test edx, edx
je 0x140008364
mov dword [rbp + 0x28c], r11d
mov byte [rbp + 0x15c], 0
cmp r11d, 1
je 0x140008376
mov rcx, rbp
add rsp, 0x50
pop rbp
pop r15
pop r14
pop r13
pop r12
jmp 0x1400084a0
xor eax, eax
dec eax
add rsp, 0x50
pop rbp
pop r15
pop r14
pop r13
pop r12
ret
mov rax, rsp
mov edx, 0x80000000
xor r8d, r8d
inc r8d
xor r9d, r9d
mov dword [rax + 0x20], 3
mov dword [rax + 0x28], 0x8000080
mov qword [rax + 0x30], 0
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov r15, rax
mov rax, rsp
mov rcx, r14
mov edx, 0x40000000
xor r8d, r8d
inc r8d
xor r9d, r9d
mov qword [rbp + 0x290], r15
mov dword [rax + 0x20], 2
mov dword [rax + 0x28], 0x80
mov qword [rax + 0x30], 0
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov qword [rbp + 0x298], rax
cmp r15, 0xffffffffffffffff
je 0x140008364
cmp rax, 0xffffffffffffffff
je 0x140008364
xor eax, eax
add rsp, 0x50
pop rbp
pop r15
pop r14
pop r13
pop r12
ret
cmp al, 0x2f
je 0x140008322
cmp al, 0x5c
je 0x140008322
mov qword [rsp + 0x40], r9
mov r14, r8
mov qword [rsp + 0x48], r8
mov r11d, 1
jmp 0x140008327
cmp r12b, 0x2f
je 0x1400082ca
cmp r12b, 0x5c
je 0x1400082ca
mov qword [rsp + 0x40], r9
mov r9, r13
mov qword [rsp + 0x48], r13
mov r14, r13
mov r11d, 1
jmp 0x1400082ca
cmp r13b, 0x2f
je 0x140008283
cmp r13b, 0x5c
je 0x140008283
mov qword [rsp + 0x40], r9
mov r9, rcx
mov qword [rsp + 0x48], rcx
mov r14, rcx
mov r11d, 1
jmp 0x140008283
test r15d, r15d
jne 0x1400082de
jmp 0x140008364
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
push rbp
sub rsp, 0x138
mov esi, edx
lea rdx, [0x140007b08]
mov r8d, 0x80000
lea r9, [0x140007ce0]
mov rbp, rcx
call fcn.1400088a0
mov rbx, rax
mov rcx, rbp
lea rdx, [0x140007b10]
mov r8d, 0x10000
lea r9, [0x140007ce8]
call fcn.1400088a0
mov r15, rax
mov rcx, rbp
lea rdx, [0x140007b25]
mov r8d, 0x10000
lea r9, [0x140007ce0]
mov edi, r15d
call fcn.1400088a0
mov r12, rax
lea rdx, [0x140007b3b]
lea r14, [rsp + 0x30]
mov rcx, r14
mov r13d, r12d
call fcn.140023a80
mov rcx, r14
mov rdx, qword [rbp + 0x170]
call fcn.140023aa0
mov rcx, r14
call fcn.140021e10
mov ecx, 0x1f0003
xor edx, edx
mov r8, r14
mov dword [rsp + rax + 0x30], esi
call qword [sym.imp.KERNEL32.dll_OpenEventA]
mov qword [rbp], rax
test rax, rax
je 0x140008867
mov rcx, r14
lea rdx, [0x140007b44]
call fcn.140023a80
mov rcx, r14
mov rdx, qword [rbp + 0x170]
call fcn.140023aa0
mov rcx, r14
call fcn.140021e10
mov ecx, 0x1f0003
xor edx, edx
mov r8, r14
mov dword [rsp + rax + 0x30], esi
call qword [sym.imp.KERNEL32.dll_OpenEventA]
mov qword [rbp + 8], rax
test rax, rax
je 0x140008833
mov rcx, r14
lea rdx, [0x140007b55]
call fcn.140023a80
mov rcx, r14
mov rdx, qword [rbp + 0x170]
call fcn.140023aa0
mov rcx, r14
call fcn.140021e10
mov ecx, 0xf001f
xor edx, edx
mov r8, r14
mov dword [rsp + rax + 0x30], esi
call qword [sym.imp.KERNEL32.dll_OpenFileMappingA]
mov rcx, rax
mov rax, rsp
xor r8d, r8d
mov edx, 0xf001f
xor r9d, r9d
mov qword [rbp + 0x10], rcx
mov qword [rax + 0x20], 0x100
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov qword [rbp + 0x28], rax
cmp qword [rbp + 0x10], 0
je 0x1400087ff
test rax, rax
je 0x1400087ff
mov rcx, r14
lea rdx, [0x140007b61]
call fcn.140023a80
mov rcx, r14
lea rdx, [0x140007b69]
call fcn.140023aa0
mov rcx, r14
mov rdx, qword [rbp + 0x170]
call fcn.140023aa0
mov rcx, r14
call fcn.140021e10
mov dword [rsp + rax + 0x30], esi
mov rax, rsp
mov rcx, 0xffffffffffffffff
xor edx, edx
mov r8d, 4
xor r9d, r9d
mov dword [rax + 0x20], edi
mov qword [rax + 0x28], r14
call qword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov rcx, rax
mov rax, rsp
xor r8d, r8d
mov edx, 0xf001f
xor r9d, r9d
mov r15d, r15d
mov qword [rbp + 0x18], rcx
mov qword [rax + 0x20], r15
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], r15
cmp qword [rbp + 0x18], 0
je 0x1400087cb
test rax, rax
je 0x1400087cb
mov rcx, r14
lea rdx, [0x140007b61]
call fcn.140023a80
mov rcx, r14
lea rdx, [0x140007b77]
call fcn.140023aa0
mov rcx, r14
mov rdx, qword [rbp + 0x170]
call fcn.140023aa0
mov rcx, r14
call fcn.140021e10
mov dword [rsp + rax + 0x30], esi
mov rax, rsp
mov rcx, 0xffffffffffffffff
xor edx, edx
mov r8d, 4
xor r9d, r9d
mov dword [rax + 0x20], r13d
mov qword [rax + 0x28], r14
call qword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov rcx, rax
mov rax, rsp
xor r8d, r8d
mov edx, 0xf001f
xor r9d, r9d
mov esi, r12d
mov qword [rbp + 0x20], rcx
mov qword [rax + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], rsi
cmp qword [rbp + 0x18], 0
je 0x140008797
cmp qword [rbp + 0x30], 0
je 0x140008797
mov rdx, qword [rbp + 0x28]
mov eax, 0x10000000
cmp ebx, 0x10000000
cmovb eax, ebx
mov dword [rdx], eax
mov dword [rdx + 4], edi
mov dword [rdx + 8], r13d
mov rcx, qword [rbp]
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov rcx, qword [rbp + 8]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
xor eax, eax
add rsp, 0x138
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov r8, qword [rbp + 0x170]
lea rdx, [0x140007d5c]
xor ecx, ecx
mov r9d, 0x10
call qword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
dec eax
add rsp, 0x138
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov r8, qword [rbp + 0x170]
lea rdx, [0x140007d40]
xor ecx, ecx
mov r9d, 0x10
call qword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
dec eax
add rsp, 0x138
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov r8, qword [rbp + 0x170]
lea rdx, [0x140007d28]
xor ecx, ecx
mov r9d, 0x10
call qword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
dec eax
add rsp, 0x138
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov r8, qword [rbp + 0x170]
lea rdx, [0x140007d08]
xor ecx, ecx
mov r9d, 0x10
call qword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
dec eax
add rsp, 0x138
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov r8, qword [rbp + 0x170]
lea rdx, [0x140007cf0]
xor ecx, ecx
mov r9d, 0x10
call qword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
dec eax
add rsp, 0x138
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret