Function at 0x140025910
Capabilities:
Read file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xf0
movaps xmmword [rsp + 0xe0], xmm6
mov r14, r8
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x1400e5028]
xor rax, rsp
mov qword [rsp + 0xd8], rax
test rdx, rdx
je 0x14002595b
cmp byte [rsi + 0x17], 0
js 0x140025b5e
xor eax, eax
mov byte [rsi], al
mov byte [rsi + 0x17], al
mov rcx, rdi
call fcn.140045f30
test al, al
jne 0x14002597b
lea rdx, [0x1400cd648]
mov rcx, rdi
call fcn.1400289d0
test rax, rax
jne 0x1400259aa
xor edi, edi
mov rcx, qword [rsp + 0xd8]
xor rcx, rsp
call fcn.14005e850
mov eax, edi
movaps xmm6, xmmword [rsp + 0xe0]
add rsp, 0xf0
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r12, rax
test rsi, rsi
je 0x1400259c3
cmp byte [rsi + 0x17], 0
js 0x140025b71
xor eax, eax
mov byte [rsi], al
mov byte [rsi + 0x17], al
mov rcx, r12
xor edx, edx
xor r8d, r8d
call fcn.1400740d4
movaps xmm0, xmmword [0x1400ca990]
lea rdi, [rsp + 0x80]
movaps xmmword [rdi + 0x40], xmm0
movaps xmmword [rdi + 0x30], xmm0
movaps xmmword [rdi + 0x20], xmm0
movaps xmmword [rdi + 0x10], xmm0
movaps xmmword [rdi], xmm0
lea rdx, str.ReadStreamToStringWithMaxSize
lea r8, str..._.._base_files_file_util.cc
lea rbx, [rsp + 0x40]
mov rcx, rbx
mov r9d, 0xbb
call fcn.14004acb0
mov rcx, rdi
mov rdx, rbx
xor r8d, r8d
call fcn.14004b310
xorps xmm6, xmm6
movaps xmmword [rbx + 0x20], xmm6
movaps xmmword [rbx + 0x10], xmm6
movaps xmmword [rbx], xmm6
mov dword [rbx + 0x30], 0
mov rcx, r12
call fcn.14006d1b8
mov ecx, eax
call fcn.14006d20c
lea rdx, [rsp + 0x40]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileInformationByHandle]
test eax, eax
je 0x140025b84
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x64]
shl rax, 0x20
or rax, rcx
test rax, rax
mov edi, 0xffff
cmovg rdi, rax
cmp rdi, r14
cmova rdi, r14
lea r15, [rsp + 0x20]
movaps xmmword [r15], xmm6
mov qword [r15 + 0x10], 0
inc rdi
xor ebx, ebx
mov rcx, r15
mov rdx, rdi
xor r8d, r8d
call fcn.140043070
mov r13d, 0x10000
cmp byte [rsp + 0x37], 0
mov rcx, r15
jns 0x140025ab6
mov rcx, qword [rsp + 0x20]
add rcx, rbx
mov edx, 1
mov r8, rdi
mov r9, r12
call fcn.140073e54
test rax, rax
je 0x140025af7
mov rcx, r14
sub rcx, rbx
cmp rcx, rax
jb 0x140025b8e
test rbx, rbx
cmove rdi, r13
add rbx, rax
mov rcx, r12
call fcn.140073a00
test eax, eax
je 0x140025b95
mov rcx, r12
call fcn.140073a2c
test eax, eax
sete dil
mov r14, rbx
test rsi, rsi
je 0x140025b3d
movups xmm0, xmmword [rsi]
mov rax, qword [rsi + 0x10]
mov rcx, qword [rsp + 0x30]
mov qword [rsi + 0x10], rcx
movaps xmm1, xmmword [rsp + 0x20]
movups xmmword [rsi], xmm1
movaps xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], rax
mov rcx, rsi
mov rdx, r14
xor r8d, r8d
call fcn.140043070
cmp byte [rsp + 0x37], 0
js 0x140025bab
lea rcx, [rsp + 0x80]
call fcn.14004b4a0
mov rcx, r12
call fcn.140073918
jmp 0x14002597d
mov rax, qword [rsi]
mov byte [rax], 0
mov qword [rsi + 8], 0
jmp 0x14002595b
mov rax, qword [rsi]
mov byte [rax], 0
mov qword [rsi + 8], 0
jmp 0x1400259c3
mov edi, 0xffff
jmp 0x140025a76
xor edi, edi
jmp 0x140025b08
lea rdx, [rbx + rdi]
lea rcx, [rsp + 0x20]
xor r8d, r8d
call fcn.140043070
jmp 0x140025aa7
mov rcx, qword [rsp + 0x20]
call fcn.14005db14
jmp 0x140025b44