Function at 0x1400e8864
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 [0x14031f2d0]
xor rax, rsp
mov qword [rbp + 0x330], rax
mov r15d, r8d
mov r14, rdx
mov rbx, rcx
call fcn.1400e8d44
call fcn.1400d1b14
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.1400ce5b8
nop
call fcn.1400d1b1c
mov rcx, rax
call fcn.1400cf128
test al, al
je 0x1400e89cd
mov rdx, r14
lea rcx, [rsp + 0x50]
call fcn.1400ce980
lea rcx, [rsp + 0x50]
call fcn.1400ce874
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 0x1400e8927
lea rdx, str.Error_opening_file
jmp 0x1400e8a55
xor edx, edx
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
test eax, eax
jne 0x1400e8944
lea rdx, str.File_is_empty
jmp 0x1400e8a55
cmp edi, 0x400000
jbe 0x1400e8958
lea rdx, str.File_too_large
jmp 0x1400e8a55
and dword [rsp + 0x40], 0
mov rcx, rdi
call fcn.1400cd718
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 0x1400e89ad
mov rcx, rsi
call fcn.14013aa70
mov rcx, rbx
call fcn.1400e8d44
lea rdx, str.Could_not_read_file
jmp 0x1400e8a55
mov r9d, r15d
mov r8d, edi
mov rdx, rsi
mov rcx, rbx
call fcn.1400e8bb0
mov bl, al
mov rcx, rsi
call fcn.14013aa70
jmp 0x1400e8b7b
call fcn.1400d1b1c
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.1400ce958
call fcn.1400d1eb0
test al, al
je 0x1400e89f2
call fcn.1400d1b24
mov rdi, rax
jmp 0x1400e8a49
call fcn.1400d1b2c
mov rdx, rax
lea rcx, [rbp + 0x70]
call fcn.1400ce5b8
nop
lea rcx, [rbp + 0x70]
call fcn.1400ce874
mov rcx, rax
xor edx, edx
call fcn.1400d7298
mov rsi, rax
lea rcx, [rsp + 0x50]
call fcn.1400ce874
mov rcx, rax
mov rdx, rsi
call fcn.140103350
mov rdi, rax
test rsi, rsi
je 0x1400e8a40
mov rcx, rsi
call fcn.14013aa70
nop
lea rcx, [rbp + 0x70]
call fcn.1400ce724
test rdi, rdi
jne 0x1400e8a67
lea rdx, str.Error_opening_zip_file
xor r8d, r8d
mov rcx, rbx
call fcn.1400e8d7c
mov bl, al
jmp 0x1400e8b7b
and dword [rsp + 0x40], 0
or r8d, 0xffffffff
mov rdx, r14
lea rcx, [rbp - 0x20]
call fcn.1400ce5e8
nop
lea r8, [0x140264c24]
lea rdx, [0x1402c65bc]
lea rcx, [rbp - 0x20]
call fcn.1400cf354
lea rcx, [rbp - 0x20]
call fcn.1400ce874
mov rdx, rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
mov r8b, 1
mov rcx, rdi
call fcn.140102d44
test eax, eax
je 0x1400e8ac9
lea rdx, str.Could_not_find_ziped_file
jmp 0x1400e8b35
mov esi, dword [rbp + 0x32c]
test esi, esi
jne 0x1400e8adc
lea rdx, str.File_is_empty
jmp 0x1400e8b35
cmp esi, 0x400000
jbe 0x1400e8aed
lea rdx, str.File_too_large
jmp 0x1400e8b35
mov rcx, rsi
call fcn.1400cd718
mov r14, rax
mov r9d, esi
mov r8, rax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call fcn.14010384c
test eax, eax
je 0x1400e8b44
cmp eax, 0x600
je 0x1400e8b44
mov rcx, r14
call fcn.14013aa70
call fcn.1400d1eb0
test al, al
jne 0x1400e8b2e
mov rcx, rdi
call fcn.140102a84
lea rdx, str.Could_not_unzip_file
xor r8d, r8d
mov rcx, rbx
call fcn.1400e8d7c
mov bl, al
jmp 0x1400e8b71
call fcn.1400d1eb0
test al, al
jne 0x1400e8b55
mov rcx, rdi
call fcn.140102a84
mov r9d, r15d
mov r8d, esi
mov rdx, r14
mov rcx, rbx
call fcn.1400e8bb0
mov bl, al
mov rcx, r14
call fcn.14013aa70
nop
lea rcx, [rbp - 0x20]
call fcn.1400ce724
nop
lea rcx, [rsp + 0x50]
call fcn.1400ce724
mov al, bl
mov rcx, qword [rbp + 0x330]
xor rcx, rsp
call fcn.14013a450
mov rbx, qword [rsp + 0x480]
add rsp, 0x440
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret