Function at 0x18013ae9c
Capabilities:
Get file size
Read file on windows

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rax - 0x368]
sub rsp, 0x440
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov rax, qword [0x1802240e0]
xor rax, rsp
mov qword [rbp + 0x330], rax
mov r15d, r8d
mov r14, rdx
mov rbx, rcx
call fcn.18013b37c
call fcn.18012b268
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.180125008
nop
call fcn.18012b270
mov rcx, rax
call fcn.180125b04
test al, al
je 0x18013b005
mov rdx, r14
lea rcx, [rsp + 0x50]
call fcn.180125334
lea rcx, [rsp + 0x50]
call fcn.1800b6970
mov rcx, rax
and qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r14, rax
cmp rax, 0xffffffffffffffff
jne 0x18013af5f
lea rdx, str.Error_opening_file
jmp 0x18013b08d
xor edx, edx
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
test eax, eax
jne 0x18013af7c
lea rdx, str.File_is_empty
jmp 0x18013b08d
cmp edi, 0x400000
jbe 0x18013af90
lea rdx, str.File_too_large
jmp 0x18013b08d
and dword [rsp + 0x40], 0
mov rcx, rdi
call fcn.18017e210
mov rsi, rax
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x40]
mov r8d, edi
mov rdx, rax
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [rsp + 0x40], edi
je 0x18013afe5
mov rcx, rsi
call fcn.18017df04
mov rcx, rbx
call fcn.18013b37c
lea rdx, str.Could_not_read_file
jmp 0x18013b08d
mov r9d, r15d
mov r8d, edi
mov rdx, rsi
mov rcx, rbx
call fcn.18013b1e8
mov bl, al
mov rcx, rsi
call fcn.18017df04
jmp 0x18013b1b3
call fcn.18012b270
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.18012530c
call fcn.18012b5a4
test al, al
je 0x18013b02a
call fcn.18012b278
mov rdi, rax
jmp 0x18013b081
call fcn.18012b280
mov rdx, rax
lea rcx, [rbp + 0x70]
call fcn.180125008
nop
lea rcx, [rbp + 0x70]
call fcn.1800b6970
mov rcx, rax
xor edx, edx
call fcn.1801311c0
mov rsi, rax
lea rcx, [rsp + 0x50]
call fcn.1800b6970
mov rcx, rax
mov rdx, rsi
call fcn.180154f90
mov rdi, rax
test rsi, rsi
je 0x18013b078
mov rcx, rsi
call fcn.18017df04
nop
lea rcx, [rbp + 0x70]
call fcn.180125164
test rdi, rdi
jne 0x18013b09f
lea rdx, str.Error_opening_zip_file
xor r8d, r8d
mov rcx, rbx
call fcn.18013b3b8
mov bl, al
jmp 0x18013b1b3
and dword [rsp + 0x40], 0
or r8d, 0xffffffff
mov rdx, r14
lea rcx, [rbp - 0x20]
call fcn.180125038
nop
lea r8, [0x1801bc5e4]
lea rdx, [0x1801b1a1c]
lea rcx, [rbp - 0x20]
call fcn.180125d84
lea rcx, [rbp - 0x20]
call fcn.1800b6970
mov rdx, rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
mov r8b, 1
mov rcx, rdi
call fcn.180154990
test eax, eax
je 0x18013b101
lea rdx, str.Could_not_find_ziped_file
jmp 0x18013b16d
mov esi, dword [rbp + 0x32c]
test esi, esi
jne 0x18013b114
lea rdx, str.File_is_empty
jmp 0x18013b16d
cmp esi, 0x400000
jbe 0x18013b125
lea rdx, str.File_too_large
jmp 0x18013b16d
mov rcx, rsi
call fcn.18017e210
mov r14, rax
mov r9d, esi
mov r8, rax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call fcn.18015548c
test eax, eax
je 0x18013b17c
cmp eax, 0x600
je 0x18013b17c
mov rcx, r14
call fcn.18017df04
call fcn.18012b5a4
test al, al
jne 0x18013b166
mov rcx, rdi
call fcn.1801546d0
lea rdx, str.Could_not_unzip_file
xor r8d, r8d
mov rcx, rbx
call fcn.18013b3b8
mov bl, al
jmp 0x18013b1a9
call fcn.18012b5a4
test al, al
jne 0x18013b18d
mov rcx, rdi
call fcn.1801546d0
mov r9d, r15d
mov r8d, esi
mov rdx, r14
mov rcx, rbx
call fcn.18013b1e8
mov bl, al
mov rcx, r14
call fcn.18017df04
nop
lea rcx, [rbp - 0x20]
call fcn.180125164
nop
lea rcx, [rsp + 0x50]
call fcn.180125164
mov al, bl
mov rcx, qword [rbp + 0x330]
xor rcx, rsp
call fcn.18017dee0
mov rbx, qword [rsp + 0x480]
add rsp, 0x440
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret