Function at 0x140025880
Capabilities:
Read file on windows

Disassembly:
test rcx, rcx
je 0x140025c4c
mov qword [rsp + 0x10], rdx
push rbx
sub rsp, 0x60
mov rbx, rcx
test rdx, rdx
je 0x140025c47
mov qword [rsp + 0x50], rsi
mov rcx, 0xffffffffffffffff
nop dword [rax + rax]
inc rcx
cmp byte [rbx + rcx], 0
jne 0x1400258b0
add rcx, 0xc
call fcn.140038534
mov qword [rsp + 0x88], rax
mov rsi, rax
test rax, rax
je 0x140025c42
mov rdx, rax
mov qword [rsp + 0x48], rdi
sub rdx, rbx
mov qword [rsp + 0x28], r15
nop word [rax + rax]
movzx ecx, byte [rbx]
mov byte [rdx + rbx], cl
lea rbx, [rbx + 1]
test cl, cl
jne 0x1400258f0
lea rdx, [0x140074b78]
mov rcx, rsi
call fcn.140009060
xor r15d, r15d
lea r8, [0x14005e78c]
mov rdx, rsi
mov qword [rsp + 0x80], r15
lea rcx, [rsp + 0x70]
mov edi, r15d
call fcn.14003f724
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x140025c30
xor edx, edx
lea r8d, [r15 + 2]
call fcn.14003b010
mov rcx, qword [rsp + 0x70]
call fcn.14003a830
mov rcx, qword [rsp + 0x70]
movsxd rbx, eax
call fcn.140042890
test ebx, ebx
jle 0x1400259a9
lea rcx, [rbx + 1]
call fcn.140038534
mov r9, qword [rsp + 0x70]
lea edx, [r15 + 1]
mov r8, rbx
mov qword [rsp + 0x80], rax
mov rcx, rax
mov rdi, rax
call fcn.1400427c8
cmp rax, rbx
je 0x1400259a5
mov rcx, rdi
call fcn.140038520
mov edi, r15d
mov qword [rsp + 0x80], r15
jmp 0x1400259a9
mov byte [rbx + rdi], r15b
mov rcx, qword [rsp + 0x70]
call fcn.14003ada4
test rdi, rdi
je 0x140025c30
mov qword [rsp + 0x40], r12
lea rdx, [0x140074b88]
mov rcx, rdi
mov qword [rsp + 0x38], r13
call fcn.1400091c0
lea rdx, [0x140074ba0]
mov rcx, rdi
mov r13, rax
call fcn.1400091c0
mov r12, rax
test r13, r13
je 0x140025c1e
mov qword [rsp + 0x58], rbp
mov qword [rsp + 0x30], r14
nop dword [rax]
lea rcx, [r13 + 0x12]
mov edx, 0x22
call fcn.140036edc
mov rbx, rax
test rax, rax
je 0x140025bd4
inc rbx
mov edx, 0x22
mov rcx, rbx
call fcn.140036edc
mov rdi, rax
test rax, rax
je 0x140025bd4
sub rdi, rbx
lea rcx, [rdi + 1]
call fcn.140038534
mov r14, rax
test rax, rax
je 0x140025bd4
mov r8, rdi
mov rdx, rbx
mov rcx, rax
call fcn.140041760
mov rcx, r14
mov byte [r14 + rdi], 0
call fcn.1400251d0
mov rbx, rax
test rax, rax
je 0x140025bcc
mov rcx, rax
call fcn.140008b20
mov rbp, rax
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x140025a90
xor edx, edx
mov rcx, rbx
call fcn.1400376d0
mov rcx, rbx
call fcn.140038520
test rbp, rbp
je 0x140025bcc
mov rcx, rbp
call fcn.140020290
test al, al
je 0x140025bc4
mov edx, 0x20
lea ecx, [rdx - 0x1f]
call fcn.14003853c
mov rbx, rax
test rax, rax
je 0x140025bc4
mov r8d, dword [0x140071050]
mov rcx, rbp
mov rdx, qword [0x140071058]
call fcn.14000f300
mov qword [rbx], rax
test rax, rax
je 0x140025bbc
mov dword [rbx + 0x18], 1
mov qword [rbx + 8], r15
test r12, r12
je 0x140025ba6
lea rcx, [r12 + 9]
mov edx, 0x22
call fcn.140036edc
mov rdi, rax
test rax, rax
je 0x140025ba6
inc rdi
mov edx, 0x22
mov rcx, rdi
call fcn.140036edc
mov rsi, rax
test rax, rax
je 0x140025ba6
sub rsi, rdi
lea rcx, [rsi + 1]
call fcn.140038534
mov r15, rax
test rax, rax
je 0x140025ba3
mov r8, rsi
mov rdx, rdi
mov rcx, rax
call fcn.140041760
mov rcx, r15
mov byte [r15 + rsi], 0
call fcn.140008b20
mov rcx, r15
mov rdi, rax
call fcn.140038520
lea rcx, [0x140074b68]
call fcn.140008e10
mov rdx, rax
mov rcx, rdi
call fcn.140037860
test rax, rax
mov r15d, 0
cmove rdi, r15
jmp 0x140025ba9
xor r15d, r15d
mov rdi, r15
mov rcx, qword [rsp + 0x78]
mov rdx, rbx
mov qword [rbx + 0x10], rdi
call fcn.140004950
jmp 0x140025bc4
mov rcx, rbx
call fcn.140038520
mov rcx, rbp
call fcn.140038520
mov rcx, r14
call fcn.140038520
lea rcx, [r13 + 1]
lea rdx, [0x140074b88]
call fcn.1400091c0
lea rcx, [r12 + 1]
mov r13, rax
lea rdx, [0x140074ba0]
call fcn.1400091c0
mov r12, rax
test r13, r13
jne 0x140025a00
mov rdi, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x88]
mov r14, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x58]
mov rcx, rdi
call fcn.140038520
mov r13, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
mov rcx, rsi
call fcn.140038520
mov r15, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x60
pop rbx
ret