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

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push r14
lea rbp, [rsp - 0x47]
sub rsp, 0xc0
xor r14d, r14d
mov rcx, rdx
xor r9d, r9d
mov qword [rsp + 0x30], r14
lea r8d, [r14 + 1]
mov edx, 0x80000000
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rbx, rax
cmp rax, 0xffffffffffffffff
jne 0x14006a0c9
or eax, eax
add rsp, 0xc0
pop r14
pop rbx
pop rbp
ret
mov qword [rsp + 0xe8], rsi
mov qword [rsp + 0xf0], rdi
xor edx, edx
mov rcx, rax
mov qword [rsp + 0xf8], r12
mov qword [rsp + 0xb8], r13
call qword [sym.imp.KERNEL32.dll_GetFileSize]
movsxd rdi, eax
lea r12d, [rdi + rdi*4]
movsxd rsi, r12d
mov rcx, rsi
call fcn.140089b68
lea r9, [rbp + 0x67]
mov r8d, edi
mov rcx, rbx
mov rdx, rax
mov qword [rsp + 0x20], r14
mov qword [0x140139a18], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, edi
mov r9, r14
cdq
mov rbx, rdi
sub eax, edx
sar eax, 1
movsxd r10, eax
test eax, eax
jle 0x14006a185
nop word [rax + rax]
mov rdx, qword [0x140139a18]
mov rax, rbx
movzx r8d, byte [r9 + rdx]
sub rax, r9
movzx eax, byte [rax + rdx - 1]
mov byte [r9 + rdx], al
mov rax, qword [0x140139a18]
mov rdx, rbx
sub rdx, r9
inc r9
mov byte [rdx + rax - 1], r8b
cmp r9, r10
jl 0x14006a150
mov rcx, rsi
call fcn.140089b68
mov r9, r14
mov r13, rax
test edi, edi
jle 0x14006a1e7
nop word [rax + rax]
mov rcx, qword [0x140139a18]
inc r9
movzx edx, byte [r9 + rcx - 1]
movzx r8d, dl
movzx eax, dl
movzx ecx, dl
and r8b, 6
shr al, 1
and cl, 0xf1
add r8b, r8b
and al, 0x30
and dl, 0x8f
or r8b, cl
or al, dl
shl r8b, 3
shr al, 3
or r8b, al
not r8b
mov byte [r9 + r13 - 1], r8b
cmp r9, rbx
jl 0x14006a1a0
xor edx, edx
lea rcx, [rbp - 0x29]
lea r8d, [rdx + 0x58]
call fcn.140091e20
mov eax, r12d
or eax, edi
cmp eax, 0xffffffff
ja 0x14006a2c0
mov rax, qword [0x140139a18]
mov r9, qword [rbp + 7]
lea rcx, [0x14001bf30]
mov qword [rbp - 0x19], rax
test r9, r9
lea rax, [0x14001bf20]
cmove r9, rax
mov rax, qword [rbp + 0xf]
mov edx, 1
test rax, rax
mov r8d, 0xab10
mov qword [rbp - 0x29], r13
cmove rax, rcx
mov rcx, qword [rbp + 0x17]
mov dword [rbp - 0x21], edi
mov dword [rbp - 0x11], r12d
mov qword [rbp + 0x1f], r14
mov qword [rbp - 9], r14
mov dword [rbp - 0x1d], r14d
mov dword [rbp - 0xd], r14d
mov dword [rbp + 0x27], r14d
mov qword [rbp + 7], r9
mov qword [rbp + 0xf], rax
call r9
test rax, rax
je 0x14006a2c0
lea rcx, [rbp - 0x29]
mov qword [rbp - 1], rax
mov dword [rax], r14d
mov qword [rax + 0x2af8], r14
mov dword [rax + 0xab0c], 1
mov qword [rax + 0x2b00], 1
mov dword [rax + 0x2b08], 0xf
call fcn.14001bf40
mov rdx, qword [rbp - 1]
cmp eax, 1
jne 0x14006a2b4
mov r12d, dword [rbp - 0xd]
test rdx, rdx
je 0x14006a2c0
mov rcx, qword [rbp + 0x17]
call qword [rbp + recv]
mov qword [rsp + 0xb0], r15
test r12d, r12d
jle 0x14006a48d
mov rdi, qword [0x140139a18]
movsxd rax, r14d
add r14d, 4
movsxd rsi, dword [rax + rdi]
movsxd rax, r14d
add r14d, 4
mov ecx, dword [rax + rdi]
mov dword [rbp - 0x39], esi
mov dword [rbp - 0x35], ecx
mov rcx, rsi
call fcn.140089b68
movsxd rdx, r14d
mov r8, rsi
mov rcx, rax
add rdx, rdi
mov r15, rax
mov qword [rbp - 0x31], rax
call fcn.1400889a0
mov rcx, qword [0x140139a08]
mov r8, qword [0x140139a00]
lea rax, [rbp - 0x39]
add r14d, esi
cmp rax, rcx
jae 0x14006a3e8
lea rax, [rbp - 0x39]
cmp r8, rax
ja 0x14006a3e8
mov rdx, qword [0x140139a10]
lea rbx, [rbp - 0x39]
sub rbx, r8
cmp rcx, rdx
jne 0x14006a3c6
mov rax, rdx
sub rax, rcx
sar rax, 4
cmp rax, 1
jae 0x14006a3c6
sub rcx, r8
movabs r10, 0xfffffffffffffff
sar rcx, 4
mov rax, r10
sub rax, rcx
cmp rax, 1
jb 0x14006a4d7
sub rdx, r8
lea r9, [rcx + 1]
mov rax, r10
sar rdx, 4
mov rcx, rdx
shr rcx, 1
sub rax, rcx
cmp rax, rdx
jae 0x14006a3a2
xor edx, edx
jmp 0x14006a3a5
add rdx, rcx
cmp rdx, r9
lea rcx, [0x140139a00]
cmovb rdx, r9
call fcn.140046890
mov rcx, qword [0x140139a08]
mov r8, qword [0x140139a00]
and rbx, 0xfffffffffffffff0
test rcx, rcx
je 0x14006a479
mov rax, qword [rbx + r8]
mov qword [rcx], rax
mov rax, qword [rbx + r8 + 8]
mov qword [rcx + 8], rax
jmp 0x14006a472
mov rdx, qword [0x140139a10]
cmp rcx, rdx
jne 0x14006a462
mov rax, rdx
sub rax, rcx
sar rax, 4
cmp rax, 1
jae 0x14006a462
sub rcx, r8
movabs r10, 0xfffffffffffffff
sar rcx, 4
mov rax, r10
sub rax, rcx
cmp rax, 1
jb 0x14006a4e4
sub rdx, r8
lea r9, [rcx + 1]
mov rax, r10
sar rdx, 4
mov rcx, rdx
shr rcx, 1
sub rax, rcx
cmp rax, rdx
jae 0x14006a445
xor edx, edx
jmp 0x14006a448
add rdx, rcx
cmp rdx, r9
lea rcx, [0x140139a00]
cmovb rdx, r9
call fcn.140046890
mov rcx, qword [0x140139a08]
test rcx, rcx
je 0x14006a479
mov rax, qword [rbp - 0x39]
mov qword [rcx], rax
mov qword [rcx + 8], r15
mov rcx, qword [0x140139a08]
add rcx, 0x10
mov qword [0x140139a08], rcx
cmp r14d, r12d
jl 0x14006a2d1
mov rcx, qword [0x140139a18]
call fcn.140089874
mov rcx, r13
call fcn.140089874
mov r15, qword [rsp + 0xb0]
mov r12, qword [rsp + 0xf8]
mov rdi, qword [rsp + 0xf0]
mov rsi, qword [rsp + 0xe8]
mov r13, qword [rsp + 0xb8]
xor eax, eax
add rsp, 0xc0
pop r14
pop rbx
pop rbp
ret
lea rcx, str.vector_T__too_long
call fcn.14006a608
int3
lea rcx, str.vector_T__too_long
call fcn.14006a608
int3