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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
mov eax, 0x10b0
call fcn.1000044f0
sub rsp, rax
mov rax, qword [0x1000da5c8]
xor rax, rsp
mov qword [rsp + 0x10a0], rax
xor r14d, r14d
mov rcx, rdx
mov r13, r9
mov qword [r8], r14
mov r12, r8
mov rdi, rdx
or rsi, 0xffffffffffffffff
mov dword [rsp + 0x44], 0x824
mov rbp, r14
mov dword [r9], r14d
call qword [sym.imp.SHLWAPI.dll_PathIsURLW]
cmp eax, r14d
je 0x10006c21d
lea edx, [rsi + 4]
mov rcx, rdi
call qword [sym.imp.SHLWAPI.dll_UrlIsW]
mov rcx, rdi
cmp eax, r14d
je 0x10006c166
lea r8, [rsp + 0x44]
lea rdx, [rsp + 0x50]
xor r9d, r9d
call qword [sym.imp.SHLWAPI.dll_PathCreateFromUrlW]
mov ebx, eax
cmp eax, r14d
jmp 0x10006c26a
lea r8, [rsp + 0x40]
xor edx, edx
mov dword [rsp + 0x40], r14d
call qword [sym.imp.WININET.dll_GetUrlCacheEntryInfoW]
cmp eax, r14d
je 0x10006c187
mov ebx, 0x80004005
jmp 0x10006c336
call sub.KERNEL32.dll_GetLastError
mov ebx, 0x7a
cmp eax, ebx
jne 0x10006c349
mov ecx, dword [rsp + 0x40]
call sub.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__
mov rbp, rax
cmp rax, r14
je 0x10006c2d1
lea r8, [rsp + 0x40]
mov rdx, rax
mov rcx, rdi
call qword [sym.imp.WININET.dll_GetUrlCacheEntryInfoW]
cmp eax, r14d
je 0x10006c2f5
mov r8, qword [rbp + 0x10]
mov ecx, 0x825
lea rdx, [rsp + 0x50]
mov ebx, r14d
lea rax, [rcx + 0x7ffff7d9]
cmp rax, r14
je 0x10006c200
movzx eax, word [r8]
cmp ax, r14w
je 0x10006c200
mov word [rdx], ax
add r8, 2
add rdx, 2
sub rcx, 1
jne 0x10006c1d9
cmp rcx, r14
jne 0x10006c20e
sub rdx, 2
mov ebx, 0x8007007a
cmp ebx, r14d
mov word [rdx], r14w
jl 0x10006c315
jmp 0x10006c270
lea rax, [rsp + 0x50]
mov ecx, 0x825
lea rdx, [rsp + 0x50]
sub rdi, rax
mov ebx, r14d
lea rax, [rcx + 0x7ffff7d9]
cmp rax, r14
je 0x10006c255
movzx eax, word [rdi + rdx]
cmp ax, r14w
je 0x10006c255
mov word [rdx], ax
add rdx, 2
sub rcx, 1
jne 0x10006c232
cmp rcx, r14
jne 0x10006c263
sub rdx, 2
mov ebx, 0x8007007a
mov word [rdx], r14w
cmp ebx, r14d
jl 0x10006c336
xor r9d, r9d
mov qword [rsp + 0x30], r14
lea rcx, [rsp + 0x50]
lea r8d, [r9 + 1]
mov edx, 0x80000000
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rsi, rax
cmp rax, 0xffffffffffffffff
jne 0x10006c2ac
mov ebx, 0x80070006
jmp 0x10006c315
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [r13], eax
cmp eax, 0xffffffff
je 0x10006c310
mov ecx, eax
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
mov qword [r12], rax
cmp rax, r14
jne 0x10006c2d8
mov ebx, 0x8007000e
jmp 0x10006c315
mov r8d, dword [r13]
mov r9, r13
mov rdx, rax
mov rcx, rsi
mov qword [rsp + 0x20], r14
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp eax, r14d
jne 0x10006c315
call sub.KERNEL32.dll_GetLastError
cmp eax, r14d
je 0x10006c310
movzx ebx, ax
or ebx, 0x80070000
cmp eax, r14d
cmovle ebx, eax
jmp 0x10006c315
mov ebx, 0x80004005
cmp rbp, r14
je 0x10006c322
mov rcx, rbp
call sub.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_
cmp rsi, 0xffffffffffffffff
je 0x10006c331
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp ebx, r14d
jge 0x10006c349
mov rcx, qword [r12]
cmp rcx, r14
je 0x10006c349
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [r12], r14
mov eax, ebx
mov rcx, qword [rsp + 0x10a0]
xor rcx, rsp
call fcn.1000031d0
add rsp, 0x10b0
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret