Function at 0x180179540
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x60]
sub rsp, 0x160
mov rsi, r8
mov rbx, rdx
mov r13, rcx
mov r9, rdx
cmp qword [rdx + 0x18], 0xf
jbe 0x180179577
mov r9, qword [rdx]
mov edi, 0x84222325
movzx eax, byte [r9]
test al, al
je 0x1801795a7
nop dword [rax]
nop dword [rax + rax]
movsx eax, al
xor eax, edi
imul edi, eax, 0x1b3
lea r9, [r9 + 1]
movzx eax, byte [r9]
test al, al
jne 0x180179590
vmovss xmm1, dword [r8 + 0xc]
lea rcx, [rbp - 0x20]
call fcn.18017b970
mov r12, rax
vmovss xmm1, dword [rsi + 8]
lea rcx, [rbp - 0x40]
call fcn.18017b970
mov r15, rax
vmovss xmm1, dword [rsi + 4]
lea rcx, [rbp - 0x60]
call fcn.18017b970
mov r14, rax
vmovss xmm1, dword [rsi]
lea rcx, [rbp - 0x80]
call fcn.18017b970
mov rsi, rax
mov rdx, qword [rax + 0x10]
mov r8, qword [rax + 0x18]
cmp rdx, r8
jae 0x180179611
lea rcx, [rdx + 1]
mov qword [rax + 0x10], rcx
cmp r8, 0xf
jbe 0x180179609
mov rax, qword [rax]
mov word [rax + rdx], 0x3b
jmp 0x180179629
mov r9b, 0x3b
movzx r8d, byte [rbp + 0xa8]
mov edx, 1
mov rcx, rsi
call fcn.180177b90
vmovups ymm0, ymmword [rsi]
vmovups ymmword [rsp + 0x60], ymm0
mov qword [rsi + 0x10], 0
mov qword [rsi + 0x18], 0xf
mov byte [rsi], 0
mov r9, r14
lea r8, [rsp + 0x60]
movzx edx, byte [rbp + 0xa8]
lea rcx, [rsp + 0x20]
vzeroupper
call fcn.180179c70
nop
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
cmp rcx, rdx
jae 0x180179692
lea rax, [rcx + 1]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x20]
cmp rdx, 0xf
cmova rax, qword [rsp + 0x20]
mov word [rax + rcx], 0x3b
jmp 0x1801796ac
mov r9b, 0x3b
movzx r8d, byte [rbp + 0xa8]
mov edx, 1
lea rcx, [rsp + 0x20]
call fcn.180177b90
vmovups ymm0, ymmword [rsp + 0x20]
vmovups ymmword [rbp + 0x20], ymm0
vmovdqu xmm1, xmmword [0x1800aa1a0]
vmovdqu xmmword [rsp + 0x30], xmm1
mov byte [rsp + 0x20], 0
mov r9, r15
lea r8, [rbp + 0x20]
movzx edx, byte [rbp + 0xa8]
lea rcx, [rsp + 0x40]
vzeroupper
call fcn.180179c70
nop
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
cmp rcx, rdx
jae 0x180179715
lea rax, [rcx + 1]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x40]
cmp rdx, 0xf
cmova rax, qword [rsp + 0x40]
mov word [rax + rcx], 0x3b
jmp 0x18017972f
mov r9b, 0x3b
movzx r8d, byte [rbp + 0xa8]
mov edx, 1
lea rcx, [rsp + 0x40]
call fcn.180177b90
vmovups ymm0, ymmword [rsp + 0x40]
vmovups ymmword [rbp], ymm0
vmovdqu xmm1, xmmword [0x1800aa1a0]
vmovdqu xmmword [rsp + 0x50], xmm1
mov byte [rsp + 0x40], 0
mov r9, r12
lea r8, [rbp]
movzx edx, byte [rbp + 0xa8]
lea rcx, [rbp + 0x40]
vzeroupper
call fcn.180179c70
nop
mov rdx, qword [rbp + 0x18]
cmp rdx, 0xf
jbe 0x1801797a4
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18017979e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180179a12
call fcn.180182790
nop
mov rdx, qword [rbp + 0x38]
cmp rdx, 0xf
jbe 0x1801797e0
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801797da
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180179a18
call fcn.180182790
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x18017981e
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180179818
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180179a1e
call fcn.180182790
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x180179859
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180179854
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180179a24
call fcn.180182790
vmovdqu xmm0, xmmword [0x1800aa1a0]
vmovdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], 0
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x1801798a5
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801798a0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180179a2a
call fcn.180182790
vmovdqu xmm0, xmmword [0x1800aa1a0]
vmovdqu xmmword [rbp - 0x50], xmm0
mov byte [rbp - 0x60], 0
mov rdx, qword [rbp - 0x28]
cmp rdx, 0xf
jbe 0x1801798f1
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801798ec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180179a30
call fcn.180182790
vmovdqu xmm0, xmmword [0x1800aa1a0]
vmovdqu xmmword [rbp - 0x30], xmm0
mov byte [rbp - 0x40], 0
mov rdx, qword [rbp - 8]
cmp rdx, 0xf
jbe 0x18017993d
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180179938
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180179a36
call fcn.180182790
vmovdqu xmm0, xmmword [0x1800aa1a0]
vmovdqu xmmword [rbp - 0x10], xmm0
mov byte [rbp - 0x20], 0
lea rdx, [rbp + 0x40]
lea rcx, [rsp + 0x60]
call fcn.1800e2dc0
mov r8, rax
mov edx, edi
mov rcx, r13
call fcn.18017a9c0
nop
mov rdx, qword [rbp + 0x58]
cmp rdx, 0xf
jbe 0x1801799a2
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18017999c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180179a06
call fcn.180182790
nop
mov rdx, qword [rbx + 0x18]
cmp rdx, 0xf
jbe 0x1801799d8
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x1801799d3
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180179a0c
mov rcx, r8
call fcn.180182790
mov qword [rbx + 0x10], 0
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rbx, qword [rsp + 0x1a0]
add rsp, 0x160
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1800e6e30
nop
call fcn.1800e6e30
nop
call fcn.1800e6e30
nop
call fcn.1800e6e30
nop
call fcn.1800e6e30
nop
call fcn.1800e6e30
nop
call fcn.1800e6e30
nop
call fcn.1800e6e30
nop
call fcn.1800e6e30
int3