Function at 0x180213a1c
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 [0x18032a080]
xor rax, rsp
mov qword [rbp + 0x330], rax
mov r15d, r8d
mov r14, rdx
mov rbx, rcx
call fcn.180213efc
call fcn.1801dc1a8
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.1801e2ed8
nop
call fcn.1801dc1b0
mov rcx, rax
call fcn.1801e3a78
test al, al
je 0x180213b85
mov rdx, r14
lea rcx, [rsp + 0x50]
call fcn.1801e32a8
lea rcx, [rsp + 0x50]
call fcn.180087940
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 0x180213adf
lea rdx, str.Error_opening_file
jmp 0x180213c0d
xor edx, edx
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
test eax, eax
jne 0x180213afc
lea rdx, str.File_is_empty
jmp 0x180213c0d
cmp edi, 0x400000
jbe 0x180213b10
lea rdx, str.File_too_large
jmp 0x180213c0d
and dword [rsp + 0x40], 0
mov rcx, rdi
call fcn.18022afbc
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 0x180213b65
mov rcx, rsi
call fcn.18022acec
mov rcx, rbx
call fcn.180213efc
lea rdx, str.Could_not_read_file
jmp 0x180213c0d
mov r9d, r15d
mov r8d, edi
mov rdx, rsi
mov rcx, rbx
call fcn.180213d68
mov bl, al
mov rcx, rsi
call fcn.18022acec
jmp 0x180213d33
call fcn.1801dc1b0
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.1801e3280
call fcn.1801dc4e4
test al, al
je 0x180213baa
call fcn.1801dc1b8
mov rdi, rax
jmp 0x180213c01
call fcn.1801dc1c0
mov rdx, rax
lea rcx, [rbp + 0x70]
call fcn.1801e2ed8
nop
lea rcx, [rbp + 0x70]
call fcn.180087940
mov rcx, rax
xor edx, edx
call fcn.1801e1fc4
mov rsi, rax
lea rcx, [rsp + 0x50]
call fcn.180087940
mov rcx, rax
mov rdx, rsi
call fcn.1802046b8
mov rdi, rax
test rsi, rsi
je 0x180213bf8
mov rcx, rsi
call fcn.18022acec
nop
lea rcx, [rbp + 0x70]
call fcn.1801e3048
test rdi, rdi
jne 0x180213c1f
lea rdx, str.Error_opening_zip_file
xor r8d, r8d
mov rcx, rbx
call fcn.180213f38
mov bl, al
jmp 0x180213d33
and dword [rsp + 0x40], 0
or r8d, 0xffffffff
mov rdx, r14
lea rcx, [rbp - 0x20]
call fcn.1801e2f08
nop
lea r8, [0x1802898dc]
lea rdx, [0x18026cd74]
lea rcx, [rbp - 0x20]
call fcn.1801e3cb4
lea rcx, [rbp - 0x20]
call fcn.180087940
mov rdx, rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
mov r8b, 1
mov rcx, rdi
call fcn.1802040b8
test eax, eax
je 0x180213c81
lea rdx, str.Could_not_find_ziped_file
jmp 0x180213ced
mov esi, dword [rbp + 0x32c]
test esi, esi
jne 0x180213c94
lea rdx, str.File_is_empty
jmp 0x180213ced
cmp esi, 0x400000
jbe 0x180213ca5
lea rdx, str.File_too_large
jmp 0x180213ced
mov rcx, rsi
call fcn.18022afbc
mov r14, rax
mov r9d, esi
mov r8, rax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call fcn.180204bb4
test eax, eax
je 0x180213cfc
cmp eax, 0x600
je 0x180213cfc
mov rcx, r14
call fcn.18022acec
call fcn.1801dc4e4
test al, al
jne 0x180213ce6
mov rcx, rdi
call fcn.180203df8
lea rdx, str.Could_not_unzip_file
xor r8d, r8d
mov rcx, rbx
call fcn.180213f38
mov bl, al
jmp 0x180213d29
call fcn.1801dc4e4
test al, al
jne 0x180213d0d
mov rcx, rdi
call fcn.180203df8
mov r9d, r15d
mov r8d, esi
mov rdx, r14
mov rcx, rbx
call fcn.180213d68
mov bl, al
mov rcx, r14
call fcn.18022acec
nop
lea rcx, [rbp - 0x20]
call fcn.1801e3048
nop
lea rcx, [rsp + 0x50]
call fcn.1801e3048
mov al, bl
mov rcx, qword [rbp + 0x330]
xor rcx, rsp
call fcn.18022a7d0
mov rbx, qword [rsp + 0x480]
add rsp, 0x440
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret