Function at 0x7fffb6db6da4
Capabilities:
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 ebx, ebx
mov r14, r8
mov r13, rdx
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x8000000
xor r9d, r9d
mov edx, 0x80000000
mov qword [rbp - 0x10], rbx
mov rcx, qword [r14 + 0x28]
lea r8d, [rbx + 5]
mov esi, ebx
mov qword [rbp + 0x60], rbx
mov r12d, ebx
mov dword [rbp + 0x48], ebx
mov qword [rbp - 0x18], rbx
mov dword [rbp + 0x50], ebx
mov dword [rsp + 0x20], 3
call qword [sym.imp.KernelBase.dll_CreateFileW]
mov r15, rax
cmp rax, 0xffffffffffffffff
jne 0x7fffb6db6e6b
mov rax, qword [r14 + 0x28]
lea r9, [0x7fffb6de1478]
lea r8, str.DpxIoLocal::RetrieveAsset
mov qword [rsp + 0x20], rax
mov edx, 0x6bb
lea rcx, str.onecore_basecompressdpxinviolocal.cpp
call fcn.7fffb6d96d30
call qword [sym.imp.KernelBase.dll_GetLastError]
test eax, eax
jns 0x7fffb6db6e4b
call qword [sym.imp.KernelBase.dll_GetLastError]
mov edi, eax
jmp 0x7fffb6db6e5a
call qword [sym.imp.KernelBase.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
mov r8d, edi
mov edx, 0x28719
mov cl, 2
call fcn.7fffb6dc60a0
jmp 0x7fffb6db6ec0
mov rcx, rax
call fcn.7fffb6db7138
mov rcx, qword [r14 + 0x10]
mov rsi, rax
cmp rax, rcx
je 0x7fffb6db6ebe
mov qword [rsp + 0x28], rax
lea r9, str.Asset_Expected_size:__I64u_byte_s__Asset_Actual_size:__I64u_byte_s_
mov qword [rsp + 0x20], rcx
lea r8, str.DpxIoLocal::RetrieveAsset
lea rcx, str.onecore_basecompressdpxinviolocal.cpp
mov edx, 0x6ca
call fcn.7fffb6d96d30
mov edi, 0x80004005
mov edx, 0x28718
mov r8d, edi
mov cl, 2
call fcn.7fffb6dc60a0
jmp 0x7fffb6db6ec4
mov edi, ebx
test edi, edi
jns 0x7fffb6db6ed3
mov r8d, edi
mov edx, 0x28726
mov cl, 2
call fcn.7fffb6dc60a0
mov r10, qword [r13 + 0x20]
lea rcx, [rbp + 0x48]
mov rdx, qword [r14 + 8]
lea r8, [rbp - 0x10]
mov qword [rsp + 0x30], rcx
mov r9d, edi
lea rcx, [rbp + 0x60]
mov rax, qword [r10]
mov qword [rsp + 0x28], rcx
mov rcx, qword [r14 + 0x10]
mov qword [rsp + 0x20], rcx
mov rcx, r10
mov rax, qword [rax]
call qword [sym.imp.____1]
mov ebx, eax
test eax, eax
jns 0x7fffb6db6f26
mov edx, 0x28727
mov r8d, eax
mov cl, 2
call fcn.7fffb6dc60a0
jmp 0x7fffb6db70ea
test edi, edi
js 0x7fffb6db70ea
mov rax, qword [rbp + 0x60]
neg rax
sbb ecx, ecx
and dword [rbp + 0x48], ecx
test rsi, rsi
je 0x7fffb6db70e8
mov al, byte [r13 + 0x28]
mov ecx, 0x40000
test al, al
jne 0x7fffb6db70d4
mov edi, dword [rbp + 0x48]
cmp edi, ecx
cmova edi, ecx
mov eax, edi
cmp rax, rsi
cmova edi, esi
test edi, edi
je 0x7fffb6db6f98
mov rdx, qword [rbp + 0x60]
lea r9, [rbp + 0x58]
and dword [rbp + 0x58], 0
mov r8d, edi
and qword [rsp + 0x20], 0
mov rcx, r15
call qword [sym.imp.KernelBase.dll_ReadFile]
cmp eax, 1
jne 0x7fffb6db7061
cmp dword [rbp + 0x58], edi
jne 0x7fffb6db7025
mov r10, qword [r13 + 0x20]
lea rcx, [rbp + 0x50]
and qword [rbp - 0x18], 0
mov r9, r12
and dword [rbp + 0x50], 0
mov r8, qword [rbp - 0x10]
mov rax, qword [r10]
mov rdx, qword [r14 + 8]
mov qword [rsp + 0x38], rcx
lea rcx, [rbp - 0x18]
mov qword [rsp + 0x30], rcx
mov rcx, qword [rbp + 0x60]
mov rax, qword [rax + 8]
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rcx
mov rcx, r10
call qword [sym.imp.____1]
mov ebx, eax
test eax, eax
js 0x7fffb6db70ca
mov rdx, qword [rbp - 0x18]
mov rax, rdx
neg rax
sbb ecx, ecx
and ecx, dword [rbp + 0x50]
mov dword [rbp + 0x50], ecx
test rsi, rsi
je 0x7fffb6db7011
test edi, edi
jne 0x7fffb6db7011
cmp dword [rbp + 0x48], edi
jne 0x7fffb6db7011
test ecx, ecx
je 0x7fffb6db70b9
mov eax, edi
add r12, rax
mov qword [rbp + 0x60], rdx
sub rsi, rax
mov dword [rbp + 0x48], ecx
jmp 0x7fffb6db6f3d
mov rax, qword [r14 + 0x28]
lea r9, str.Error_reading_Asset_file:__s
mov edi, 0x80004005
mov qword [rsp + 0x20], rax
lea r8, str.DpxIoLocal::RetrieveAsset
mov edx, 0x731
lea rcx, str.onecore_basecompressdpxinviolocal.cpp
mov ebx, edi
call fcn.7fffb6d96d30
mov r8d, edi
mov edx, 0x2871b
jmp 0x7fffb6db6f1a
call qword [sym.imp.KernelBase.dll_GetLastError]
test eax, eax
jns 0x7fffb6db7075
call qword [sym.imp.KernelBase.dll_GetLastError]
mov ebx, eax
jmp 0x7fffb6db7084
call qword [sym.imp.KernelBase.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
mov rax, qword [r14 + 0x28]
lea r9, str.Error_reading_Asset_file:__s
lea r8, str.DpxIoLocal::RetrieveAsset
mov qword [rsp + 0x20], rax
mov edx, 0x724
lea rcx, str.onecore_basecompressdpxinviolocal.cpp
call fcn.7fffb6d96d30
mov r8d, ebx
mov edx, 0x2871a
jmp 0x7fffb6db6f1a
mov eax, 0x80004005
mov edx, 0x28717
mov ebx, eax
jmp 0x7fffb6db6f17
mov edx, 0x28728
jmp 0x7fffb6db6f17
mov edx, 0x80004004
mov ebx, edx
mov r8d, edx
mov edx, 0x28725
jmp 0x7fffb6db6f1a
xor ebx, ebx
cmp r15, 0xffffffffffffffff
je 0x7fffb6db70f9
mov rcx, r15
call qword [sym.imp.KernelBase.dll_CloseHandle]
mov rcx, qword [r13 + 0x20]
mov r9d, ebx
mov r8, qword [rbp - 0x10]
mov rdx, qword [r14 + 8]
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [sym.imp.____1]
mov ecx, 0x80004004
cmp ebx, ecx
cmove eax, ecx
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret