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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x60
imul eax, edx, 0x3f9
mov r14, r9
mov ebp, edx
mov rdi, rcx
mov esi, edx
mov dword [rsp + 0x48], eax
cmp edx, eax
ja 0x180073b78
mov r12, qword [rsp + 0x50]
xor edx, edx
mov r13d, dword [rsp + 0xa8]
movzx r15d, byte [rsp + 0xa8]
cmp esi, 0x53b8
ja 0x1800739c1
je 0x180073990
mov eax, esi
sub eax, 0x72
je 0x180073b14
sub eax, 0x36
je 0x180073947
sub eax, 0x14
je 0x18007393a
cmp eax, 0x4a14
jne 0x180073b03
mov dword [rsp + 0x44], edx
mov rcx, r12
xor edx, edx
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov r13d, eax
jmp 0x180073b01
mov rcx, qword [r14]
call fcn.1800ce6a4
jmp 0x180073b01
cmp qword [r14 + 0x18], 8
mov rcx, r14
jb 0x180073954
mov rcx, qword [r14]
mov qword [rsp + 0x30], rdx
xor r9d, r9d
mov dword [rsp + 0x28], 0x80
mov edx, 0x80000000
mov dword [rsp + 0x20], 3
lea r8d, [r9 + 3]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x180073b73
mov r15b, 1
jmp 0x180073b01
mov rcx, qword [r14 + 8]
call fcn.1800ce6a4
mov rcx, qword [r14 + 0x18]
call fcn.1800ce6a4
mov rcx, qword [r14 + 0x20]
call fcn.1800ce6a4
mov rcx, qword [r14 + 0x10]
call fcn.1800ce6a4
mov rcx, r14
call fcn.1800ce6a4
jmp 0x180073b01
cmp esi, 0x94f8
je 0x180073a2b
cmp esi, 0xdf20
je 0x1800739f4
cmp esi, 0x12948
je 0x1800739ea
cmp esi, 0x17370
je 0x180073b78
jmp 0x180073b03
mov byte [rsp + 0x40], 1
jmp 0x180073b03
cmp r13d, dword [rsp + 0x44]
jne 0x180073b62
test r15b, r15b
je 0x180073b03
mov rcx, qword [rsp + 0x50]
xor edx, edx
mov r8d, 0x80
call qword [sym.imp.KERNEL32.dll_GlobalReAlloc]
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GlobalFree]
jmp 0x180073b01
mov edx, 8
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rdx, qword [rdi + 0x10]
mov rbx, rax
mov ecx, r13d
mov qword [rsp + 0x50], rax
cmp rcx, rdx
ja 0x180073a63
mov qword [rdi + 0x10], rcx
mov rdx, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x180073a5d
mov rdx, qword [rdi]
mov byte [rdx + rcx], 0
jmp 0x180073ac1
mov r8, qword [rdi + 0x18]
mov rbp, rcx
mov rax, r8
sub rbp, rdx
sub rax, rdx
cmp rbp, rax
ja 0x180073aa4
mov qword [rdi + 0x10], rcx
mov rax, rdi
cmp r8, 0x10
jb 0x180073a88
mov rax, qword [rdi]
lea rbx, [rax + rdx]
mov r8, rbp
mov rcx, rbx
xor edx, edx
call fcn.1800ca170
mov byte [rbx + rbp], 0
mov rbx, qword [rsp + 0x50]
jmp 0x180073aba
mov r9, rbp
mov byte [rsp + 0x20], 0
xor r8d, r8d
mov rdx, rbp
mov rcx, rdi
call fcn.180002a70
mov ebp, dword [rsp + 0xa8]
xor edx, edx
mov rcx, rdi
call fcn.180005ea0
mov rdx, rax
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x44]
mov r8d, r13d
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_ReadFile]
test rbx, rbx
movzx r15d, r15b
mov eax, 0
mov rcx, r12
cmove r15d, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor edx, edx
imul eax, ebp, 0x71
add esi, eax
cmp esi, dword [rsp + 0x48]
jbe 0x1800738f1
jmp 0x180073b78
mov rax, qword [rsp + 0xb0]
lea rcx, [0x180114740]
mov dword [rsp + 0x50], edx
mov dword [rsp + 0x54], 0x40
mov dword [rsp + 0x58], 0x80
mov dword [rsp + 0x5c], 0x100
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [0x180114740], xmm0
mov eax, dword [rax]
and eax, 3
mov eax, dword [rcx + rax*4]
imul eax, dword [rdi]
mov ecx, dword [r14]
shl ecx, 7
add eax, ecx
add eax, eax
jmp 0x180073b7c
mov qword [rdi + 0x10], rdx
cmp qword [rdi + 0x18], 0x10
jb 0x180073b70
mov rdi, qword [rdi]
mov byte [rdi], 0
mov byte [rsp + 0x40], 0
mov eax, dword [rsp + 0x40]
mov rbx, qword [rsp + 0xa0]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret