Function at 0x140017a70
Capabilities:
Move file
Read file on windows

Disassembly:
push rdi
sub rsp, 0x90
mov rdx, qword [0x140071040]
lea r8, [0x140074058]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rcx], xmm0
mov rdi, rcx
movups xmmword [rcx + 0x10], xmm0
movups xmmword [rcx + 0x20], xmm0
mov qword [rcx + 0x30], rax
lea rcx, [rsp + 0xa0]
call fcn.14003f6cc
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x140017e98
mov qword [rsp + 0x88], rbx
xor edx, edx
mov qword [rsp + 0x80], rbp
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x68], r13
lea r8d, [rdx + 2]
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x58], r15
call fcn.14003b010
mov rcx, qword [rsp + 0xa0]
call fcn.14003a830
mov rcx, qword [rsp + 0xa0]
movsxd rbx, eax
call fcn.140042890
test ebx, ebx
jle 0x140017e5d
mov rcx, rbx
call fcn.140038534
mov rbp, rax
test rax, rax
je 0x140017e5d
mov r9, qword [rsp + 0xa0]
mov r8, rbx
mov edx, 1
mov rcx, rax
call fcn.1400427c8
cmp rax, rbx
jne 0x140017e55
lea r9, [rsp + 0xb0]
mov qword [rsp + 0xb0], 0
xor r8d, r8d
mov rdx, rbx
mov rcx, rbp
call fcn.14000e240
test rax, rax
je 0x140017ea4
mov rax, qword [rsp + 0xb0]
lea rdx, [0x140074060]
mov rcx, rax
mov qword [rsp + 0xb8], rax
call fcn.140036f5c
lea rdx, [0x140074064]
mov rcx, rax
mov r14, rax
call fcn.140036f5c
lea rdx, [0x14007406c]
mov rcx, rax
mov r15, rax
call fcn.140036f5c
lea rdx, [0x140074074]
mov rcx, rax
mov r13, rax
call fcn.140036f5c
lea rdx, [0x14007407c]
mov rcx, rax
mov r12, rax
call fcn.140036f5c
lea rdx, [0x140074084]
mov qword [rsp + 0x48], rax
mov rcx, rax
mov rbx, rax
call fcn.140036f5c
mov rcx, qword [rsp + 0xb8]
mov rsi, rax
test rcx, rcx
je 0x140017ea4
test r14, r14
je 0x140017ea4
test r15, r15
je 0x140017ea4
test r13, r13
je 0x140017ea4
test r12, r12
je 0x140017ea4
test rbx, rbx
je 0x140017ea4
test rax, rax
je 0x140017ea4
mov rax, r14
sub rax, rcx
mov rcx, r15
sub rcx, r14
sub rax, 5
sub rcx, 4
mov qword [rsp + 0x20], rax
mov qword [rsp + 0xa8], rcx
mov rcx, r13
sub rcx, r15
sub rcx, 5
mov qword [rsp + 0x28], rcx
mov rcx, r12
sub rcx, r13
sub rcx, 5
mov qword [rsp + 0x30], rcx
mov rcx, rbx
sub rcx, r12
sub rcx, 5
mov qword [rsp + 0x38], rcx
mov rcx, rsi
sub rcx, rbx
mov rbx, 0xffffffffffffffff
sub rcx, 5
mov qword [rsp + 0x40], rcx
cmp byte [rsi + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x140017ca1
mov rcx, rax
call fcn.140038534
mov rcx, qword [rsp + 0xa8]
mov qword [rdi], rax
call fcn.140038534
mov rcx, qword [rsp + 0x28]
mov qword [rdi + 8], rax
call fcn.140038534
mov rcx, qword [rsp + 0x30]
mov qword [rdi + 0x10], rax
call fcn.140038534
mov rcx, qword [rsp + 0x38]
mov qword [rdi + 0x18], rax
call fcn.140038534
mov rcx, qword [rsp + 0x40]
mov qword [rdi + 0x20], rax
call fcn.140038534
lea rcx, [rbx - 4]
mov qword [rdi + 0x28], rax
call fcn.140038534
mov rcx, qword [rdi]
mov qword [rdi + 0x30], rax
test rcx, rcx
je 0x140017e48
cmp qword [rdi + 8], 0
je 0x140017e48
cmp qword [rdi + 0x10], 0
je 0x140017e48
cmp qword [rdi + 0x18], 0
je 0x140017e48
cmp qword [rdi + 0x20], 0
je 0x140017e48
cmp qword [rdi + 0x28], 0
je 0x140017e48
test rax, rax
je 0x140017e48
mov r8, qword [rsp + 0x20]
mov rdx, qword [rsp + 0xb8]
dec r8
add rdx, 5
call fcn.140041760
mov rax, qword [rdi]
lea rdx, [r14 + 4]
mov rcx, qword [rsp + 0x20]
mov r8, qword [rsp + 0xa8]
dec r8
mov byte [rax + rcx - 1], 0
mov rcx, qword [rdi + 8]
call fcn.140041760
mov rax, qword [rdi + 8]
lea rdx, [r15 + 5]
mov rcx, qword [rsp + 0xa8]
mov r14, qword [rsp + 0x28]
mov byte [rcx + rax - 1], 0
mov rcx, qword [rdi + 0x10]
lea r8, [r14 - 1]
call fcn.140041760
mov rax, qword [rdi + 0x10]
lea rdx, [r13 + 5]
mov rcx, qword [rdi + 0x18]
mov byte [rax + r14 - 1], 0
mov r14, qword [rsp + 0x30]
lea r8, [r14 - 1]
call fcn.140041760
mov rax, qword [rdi + 0x18]
lea rdx, [r12 + 5]
mov rcx, qword [rdi + 0x20]
mov byte [r14 + rax - 1], 0
mov r14, qword [rsp + 0x38]
lea r8, [r14 - 1]
call fcn.140041760
mov rax, qword [rdi + 0x20]
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rdi + 0x28]
add rdx, 5
mov byte [rax + r14 - 1], 0
mov r14, qword [rsp + 0x40]
lea r8, [r14 - 1]
call fcn.140041760
mov rax, qword [rdi + 0x28]
lea r8, [rbx - 5]
mov rcx, qword [rdi + 0x30]
lea rdx, [rsi + 5]
mov byte [r14 + rax - 1], 0
call fcn.140041760
mov rax, qword [rdi + 0x30]
mov byte [rax + rbx - 5], 0
mov rcx, qword [rsp + 0xb0]
call fcn.140038520
mov rcx, rbp
call fcn.140038520
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x140017e6f
call fcn.14003ada4
mov r14, qword [rsp + 0x60]
mov r13, qword [rsp + 0x68]
mov r12, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x88]
mov r15, qword [rsp + 0x58]
mov rax, rdi
add rsp, 0x90
pop rdi
ret
mov rcx, qword [rsp + 0xa0]
call fcn.14003ada4
mov rax, qword [0x140071040]
mov rbx, 0xffffffffffffffff
mov rcx, rbx
inc rcx
cmp word [rax + rcx*2], 0
jne 0x140017ec2
add rcx, 4
mov edx, 2
call fcn.14003853c
mov rsi, rax
test rax, rax
je 0x140017e6f
mov rdx, qword [0x140071040]
mov r8, rax
sub r8, rdx
nop
movzx ecx, word [rdx]
mov word [r8 + rdx], cx
lea rdx, [rdx + 2]
test cx, cx
jne 0x140017ef0
add rax, 0xfffffffffffffffe
cmp word [rax + 2], 0
lea rax, [rax + 2]
jne 0x140017f05
movsd xmm0, qword [0x140074090]
mov rdx, rsi
mov rcx, qword [0x140071040]
movsd qword [rax], xmm0
call fcn.140042954
mov rax, qword [0x140071040]
cmp word [rax + rbx*2 + 2], 0
lea rbx, [rbx + 1]
jne 0x140017f32
lea r8, [rbx + 3]
xor edx, edx
mov rcx, rsi
call fcn.1400376d0
mov rcx, rsi
call fcn.140038520
jmp 0x140017e6f