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

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x68
xor r8d, r8d
xor edx, edx
call fcn.18000653c
mov rcx, qword [0x1801747e8]
xor r12d, r12d
xor edx, edx
mov qword [0x1801747d8], r12
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov rcx, qword [0x1801747e8]
lea r9d, [r12 + 1]
xor r8d, r8d
xor edx, edx
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
sub ebx, eax
mov r14d, 0x19000
cmp ebx, r14d
mov edi, eax
cmovb r14d, ebx
mov ecx, r14d
mov dword [rbp - 0x30], r14d
call fcn.180021c94
mov r13, rax
test rax, rax
je 0x18000be94
mov eax, 0x88888889
xor r8d, r8d
mul ebx
shr edx, 4
call fcn.18000653c
xor ecx, ecx
mov dword [rbp + 0x50], r12d
mov dword [0x180174818], ecx
lea r9, [rbp + 0x48]
mov dword [rbp + 0x48], ecx
mov ebx, r12d
mov qword [rsp + 0x20], rcx
mov r8d, r14d
mov rcx, qword [0x1801747e8]
mov rdx, r13
mov esi, r12d
mov dword [rbp + 0x58], ebx
mov dword [rbp - 0x38], edi
mov r15d, edi
call qword [sym.imp.KERNEL32.dll_ReadFile]
jmp 0x18000be4a
cmp dword [rbp + 0x48], r14d
mov eax, edx
mov r14d, edx
setb al
add dword [rbp + 0x48], esi
mov dword [rbp + 0x60], eax
je 0x18000be54
jmp 0x18000bcc6
mov ebx, dword [rbp + 0x58]
mov eax, dword [rbp + 0x60]
mov esi, dword [rbp + 0x48]
sub esi, r14d
cmp esi, 4
jae 0x18000bcd9
test eax, eax
je 0x18000be0d
test esi, esi
je 0x18000bd7e
mov rcx, qword [0x1801747f0]
lea r9, [rbp - 0x28]
mov qword [rsp + 0x20], r9
lea r9, [rbp - 0x34]
mov edx, r14d
mov r8d, esi
add rdx, r13
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rdx, qword [rbp - 0x28]
lea rcx, [rdx - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x18000bd6f
add r14d, eax
add edi, eax
cmp rdx, 1
jne 0x18000bd4c
mov eax, dword [rbp - 0x34]
cmp ax, 0xd
je 0x18000bd2c
cmp ax, 0xa
jne 0x18000bd4c
xor edx, edx
mov ecx, 1
test r12w, r12w
je 0x18000bd46
cmp r12w, ax
je 0x18000bd46
mov r12d, edx
mov eax, ecx
jmp 0x18000bd85
movzx r12d, ax
jmp 0x18000bd83
add dword [rbp + 0x50], edx
inc ebx
xor edx, edx
mov dword [rbp + 0x58], ebx
cmp ebx, 0x12c
mov ecx, edx
movzx r12d, dx
mov eax, edx
sete cl
mov r15d, edi
lea ebx, [rdx + 1]
jmp 0x18000bd87
inc r14d
inc edi
inc r15d
xor edx, edx
jmp 0x18000bcc3
mov ecx, 1
mov eax, edx
mov ebx, edx
test ecx, ecx
je 0x18000bcc0
test eax, eax
jne 0x18000bdfa
mov ecx, dword [rbp - 0x38]
mov r8b, 1
mov rdx, qword [0x1801747d8]
sub r15d, ecx
mov eax, dword [rbp + 0x50]
inc rdx
mov dword [rbp - 0x20], ecx
mov dword [rbp - 0x18], eax
mov dword [rbp - 0x14], r15d
call fcn.18000653c
mov rcx, qword [0x1801747d8]
movups xmm0, xmmword [rbp - 0x20]
lea rdx, [rcx + rcx*4]
lea rax, [rcx + 1]
mov qword [0x1801747d8], rax
mov rax, qword [0x1801747d0]
movups xmmword [rax + rdx*4], xmm0
mov dword [rax + rdx*4 + 0x10], ebx
mov eax, dword [0x180174818]
cmp eax, r15d
cmovb eax, r15d
xor edx, edx
mov dword [0x180174818], eax
test esi, esi
je 0x18000be54
mov r15d, edi
mov dword [rbp - 0x38], edi
mov ebx, edx
mov dword [rbp + 0x58], edx
mov dword [rbp + 0x50], edx
jmp 0x18000bcc3
mov edx, r14d
mov rcx, r13
add rdx, r13
mov r8d, esi
call fcn.180025930
mov r14d, dword [rbp - 0x30]
lea rdx, [rsi + r13]
xor ecx, ecx
lea r9, [rbp + 0x48]
sub r14d, esi
mov dword [rbp + 0x48], ecx
mov qword [rsp + 0x20], rcx
mov r8d, r14d
mov rcx, qword [0x1801747e8]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov ebx, dword [rbp + 0x58]
xor edx, edx
test eax, eax
jne 0x18000bca6
mov rcx, r13
call fcn.180021cd4
mov eax, dword [0x180174818]
mov ecx, 0x9c40
add eax, 4
mov dword [0x180174818], eax
cmp eax, ecx
jae 0x18000be7c
mov dword [0x180174818], ecx
mov eax, ecx
mov ecx, eax
call fcn.180021c94
mov qword [0x180174820], rax
test rax, rax
jne 0x18000be94
call fcn.18000bb74
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret