Function at 0x140071e70
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x208
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x170], xmm6
mov qword [rbp + 0x168], 0xfffffffffffffffe
mov rsi, rcx
movzx eax, byte [0x140563f15]
add al, byte [rcx + 0x878]
movzx ecx, byte [0x140563d10]
sub cl, byte [0x1404f14d8]
add cl, al
add cl, 0x3b
mov eax, ecx
xor al, 0x5e
and cl, 0x5e
add cl, cl
add cl, al
jne 0x14007276f
mov r11d, dword [0x1404f14e8]
mov eax, r11d
xor eax, 0xdab323d3
mov ecx, r11d
and ecx, 0x5ab323d3
lea eax, [rax + rcx*2]
xor eax, dword [rsi + 0x87c]
xor eax, 0x20
add r11d, 0xdab323f4
and r11d, eax
mov rcx, qword [0x1404f0030]
movsxd rax, dword [rcx]
mov r8d, dword [0x140563c9c]
cmp r8d, 0x5b
jge 0x140071f50
mov r8d, dword [0x140563c9c]
mov r9d, dword [0x1404f14e8]
mov r10d, r9d
xor r10d, 0xc4585eda
and r9d, 0x44585eda
lea r9d, [r10 + r9*2]
add r9d, 0x165ac54e
cmp r8d, r9d
jl 0x140071f5f
nop word cs:[rax + rax]
mov r8d, dword [0x140563c9c]
cmp r8d, 0x13
jge 0x140071f50
jmp 0x140071f15
add rax, rcx
mov ecx, dword [0x140563c9c]
cmp ecx, 0x16
jg 0x140071f90
mov ecx, dword [0x140563c98]
lea r8d, [rcx - 1]
imul r8d, ecx
and r8d, 1
mov ecx, 0xdab323d4
add ecx, dword [0x1404f14e8]
cmp r8d, ecx
je 0x140071fa6
nop
mov ecx, dword [0x140563c98]
lea r8d, [rcx - 1]
imul r8d, ecx
test r8b, 1
jne 0x140071f90
jmp 0x140071f6d
xor r8d, r8d
nop dword [rax]
test r8b, r8b
jne 0x140071fc8
mov ecx, dword [0x140426700]
mov r9d, dword [0x140563c9c]
cmp r9d, 0x2f
jle 0x140071fe6
mov ecx, dword [0x140426700]
mov ecx, dword [0x140563c98]
mov r9d, ecx
not r9d
imul r9d, ecx
test r9b, 1
jne 0x140071fb0
jmp 0x140071fb5
test r11d, r11d
je 0x140072768
mov r8, qword [0x140566be8]
mov qword [rbp + 0x158], r8
mov r10d, dword [0x1404f0010]
xor r8d, r8d
nop word [rax + rax]
mov r9d, dword [0x140563c9c]
cmp r9d, 0x5f
jg 0x140072022
test r8b, r8b
je 0x140072031
mov r9d, dword [0x140563c9c]
cmp r9d, 0x4b
jge 0x140072010
jmp 0x14007201d
lea r12d, [r10 + 1]
nop word cs:[rax + rax]
mov r8d, dword [0x1404f14e8]
mov r9d, r8d
xor r9d, 0xdee7246e
and r8d, 0x5ee7246e
lea r8d, [r9 + r8*2]
cmp r8d, 0x434009a
je 0x140072083
mov dword [0x1404f0010], r12d
mov r9d, dword [0x140563c98]
mov r8d, r9d
not r8d
imul r8d, r9d
test r8b, 1
jne 0x140072040
mov qword [rbp + 0x120], rdx
mov dword [0x1404f0010], r12d
mov qword [rbp + 0x128], r10
test r10d, r12d
je 0x1400720a2
xor r13d, r13d
jmp 0x1400720b3
xor r8d, r8d
mov r13d, 0
test ecx, ecx
jg 0x1400722ac
cmp qword [rbp + 0x158], 0
jne 0x140072106
mov ecx, 0xffff73ec
mov eax, dword [0x1404f0450]
add eax, ecx
cdqe
add rax, qword [0x1404f0488]
mov ecx, 0x900
mov edx, 0xb76036ff
mov r8d, 0x82cd26c4
call qword [0x1404ee420]
mov qword [rbp + 0x158], rax
mov rcx, rax
call fcn.140084e30
mov rax, qword [rbp + 0x158]
mov qword [0x140566be8], rax
mov rax, qword [0x140566be8]
mov qword [rbp + 0x150], rax
cmp qword [rax + 0x4c8], 0
je 0x14007276f
cmp qword [0x1405640b0], 0
jne 0x140072194
mov eax, 0xffff73ec
add eax, dword [0x1404f0450]
cdqe
add rax, qword [0x1404f0488]
mov ecx, 0xe8
mov edx, 0xb76036ff
mov r8d, 0x82cd26c4
call qword [0x1404ee420]
lea rcx, [0x140426ab8]
mov qword [rax], rcx
mov qword [rax + 0x28], 0
mov qword [rax + 0x30], 0xf
mov byte [rax + 0x18], 0
lea rcx, [0x140426b18]
mov qword [rax + 0x10], rcx
mov dword [rax + 8], 0
xorps xmm0, xmm0
movups xmmword [rax + 0x38], xmm0
mov qword [0x1405640b0], rax
mov rax, qword [0x1405640b0]
movzx eax, word [rax + 0xa]
cmp eax, 0x5ff
ja 0x1400721b7
mov eax, 0xdb3323d4
add eax, dword [0x1404f14e8]
or dword [0x140563733], eax
mov dword [rbp + 0x164], 0
xorps xmm6, xmm6
movaps xmmword [rbp + 0x130], xmm6
mov qword [rbp + 0x140], 0
movaps xmmword [rbp - 0x50], xmm6
movaps xmmword [rbp], xmm6
movaps xmmword [rbp - 0x10], xmm6
movaps xmmword [rbp - 0x20], xmm6
movaps xmmword [rbp - 0x30], xmm6
movaps xmmword [rbp - 0x40], xmm6
mov qword [rbp + 0x10], 0
mov dword [rbp - 0x50], 0x68
mov ebx, dword [0x1405637ea]
mov edx, dword [0x1405637e6]
mov eax, dword [0x1404f0468]
mov ecx, dword [0x1404f14e8]
add eax, ecx
add eax, 0xdab297c0
cdqe
add rax, qword [0x1404f0498]
mov rcx, qword [rbp + 0x120]
mov r8d, 0xe670fe03
mov r9d, 0xd7bf32f3
call qword [0x1404ee420]
movups xmmword [rbp + 0xc8], xmm6
mov byte [rbp + 0xd8], 1
mov dword [rbp + 0xdc], 1
movups xmmword [rbp + 0xe0], xmm6
mov qword [rbp + 0xf0], 0
test rbx, rbx
je 0x1400722a5
mov r14, rax
mov rcx, rbx
call fcn.1403e3fb4
mov rdi, rax
mov qword [rbp + 0xd0], rbx
mov qword [rbp + 0xc8], rbx
mov rcx, rax
test r14, r14
je 0x1400723bd
mov rdx, r14
mov r8, rbx
call fcn.14040bf30
jmp 0x1400723c7
xor edi, edi
jmp 0x1400723c7
mov r9d, 0x1d73d569
lea r10, [fcn.140071e70]
lea r11d, [r10 + r10]
add r11d, 0x3b00
xor ebx, ebx
xor r13d, r13d
jmp 0x1400722d8
cmp ebx, ecx
jge 0x1400720b3
mov r14d, dword [0x1404f14e8]
add r14d, r9d
mov edx, r14d
xor edx, 0xbd3f4e6c
and r14d, 0x3d3f4e6c
lea edx, [rdx + r14*2]
movsxd rbx, ebx
test r11d, edx
je 0x140072328
nop
movzx edx, word [rax + rbx]
mov edx, dword [0x140563c9c]
mov edi, dword [0x1404f14e8]
mov r14d, edi
xor r14d, 0xdab32436
and edi, 0x5ab32436
lea edi, [r14 + rdi*2]
cmp edx, edi
jge 0x140072300
movzx edx, word [rax + rbx]
not edx
mov r14d, r13d
and r14d, edx
or edx, r13d
not edx
or edx, r14d
neg ebx
mov r13d, edx
test r8b, r8b
mov r14d, dword [0x140563d08]
mov edx, dword [0x140563c9c]
cmp edx, 0x10
jg 0x140072344
add ebx, 0xfffffffe
mov edx, r14d
not edx
mov edi, ebx
not edi
mov r15d, r14d
and r15d, edi
and edi, edx
and edx, ebx
or r15d, edx
xor ebx, r14d
or edi, ebx
not edi
lea ebx, [r15 + rdi*2]
neg ebx
test r8b, r8b
jne 0x1400723b0
nop word cs:[rax + rax]
lea edx, [r10 + r10]
add edx, 0x3520
mov edi, edx
not edi
test edi, edx
je 0x1400722d0
nop word cs:[rax + rax]
mov edx, dword [0x140563c9c]
cmp edx, 0x4b
jge 0x1400723b0
jmp 0x140072390
xor edx, edx
mov r8, rbx
call fcn.14040c5e0
mov qword [rbp + 0xc0], rdi
lea rax, [0x1404289c8]
mov qword [rbp + 0xb8], rax
movups xmmword [rbp + 0x60], xmm6
mov qword [rbp + 0x70], 0
mov byte [rbp + 0x78], 1
mov dword [rbp + 0x7c], 1
movups xmmword [rbp + 0x80], xmm6
mov qword [rbp + 0x90], 0
mov qword [rbp + 0x58], rax
lea rcx, [rbp + 0xb8]
lea rdi, [rbp + 0x58]
mov rdx, rdi
call fcn.1402c9bd0
lea rax, [rbp + 0x164]
mov qword [rbp + 0xf8], rax
lea rax, [rbp + 0x150]
mov qword [rbp + 0x100], rax
lea rax, [rbp - 0x50]
mov qword [rbp + 0x108], rax
lea rax, [rbp + 0x130]
mov qword [rbp + 0x110], rax
mov qword [rbp + 0x118], rdi
lea rcx, [rbp + 0x98]
call fcn.140072a10
mov rax, qword [rbp + 0xa8]
mov rdx, qword [rbp + 0x128]
and edx, r12d
xor ecx, ecx
cmp edx, 1
sbb ecx, ecx
movzx r8d, word [0x14042673c]
movsx ecx, cx
mov edx, ecx
not edx
nop dword [rax + rax]
mov r9d, dword [0x140563c9c]
cmp r9d, 0x1f
jg 0x1400724a9
cmp dword [0x1404f14e8], 0x254cdc2c
je 0x1400724c0
mov r9d, dword [0x140563c98]
lea r10d, [r9 - 1]
imul r10d, r9d
test r10b, 1
jne 0x140072490
jmp 0x14007249d
mov r9d, dword [0x1404f14ec]
sub r9d, r13d
add r8d, r9d
add r8d, 0xffffbb47
xor ecx, r8d
not r8d
and r8d, edx
or ecx, r8d
not ecx
mov edx, ecx
shr edx, 8
or dl, cl
add dl, byte [0x140563f15]
mov ecx, dword [0x140563c9c]
cmp ecx, 0x32
jg 0x140072520
jmp 0x1400724fc
mov byte [0x140563f15], dl
mov ecx, dword [0x140563c98]
lea r8d, [rcx - 1]
imul r8d, ecx
test r8b, 1
je 0x140072533
nop word cs:[rax + rax]
mov byte [0x140563f15], dl
mov ecx, dword [0x140563c9c]
cmp ecx, 0x1d
jge 0x140072520
jmp 0x1400724fc
test rax, rax
je 0x140072550
lea rcx, [rbp + 0xf8]
lea rdx, [rbp + 0x98]
call fcn.140072d20
jmp 0x1400725e8
mov eax, 0xffff73ec
add eax, dword [0x1404f045c]
cdqe
add rax, qword [0x1404f0480]
mov dword [rsp + 0x20], 0xa72eabd4
xor ecx, ecx
xor edx, edx
xor r8d, r8d
mov r9d, 0x28800e13
call qword [0x1404ee420]
mov rax, qword [rbp + 0x118]
mov qword [rbp + 0x40], rax
movups xmm0, xmmword [rbp + 0xf8]
movups xmm1, xmmword [rbp + 0x108]
movups xmmword [rbp + 0x30], xmm1
movups xmmword [rbp + 0x20], xmm0
lea rax, [0x140428a38]
mov qword [rbp + 0x18], rax
lea r8, [rbp + 0x18]
mov qword [rbp + 0x50], r8
mov rdx, qword [rbp + 0x68]
mov rcx, rdx
test rdx, rdx
je 0x1400725c3
mov rcx, qword [rbp + 0x60]
call fcn.1401c2df0
mov rcx, qword [rbp + 0x50]
test rcx, rcx
je 0x1400725e8
lea rax, [rbp + 0x18]
cmp rcx, rax
setne dl
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x1404ee420]
mov edi, dword [rbp + 0x164]
test edi, edi
je 0x140072685
mov eax, dword [rbp + 0x140]
mov dword [rsi + 0x898], eax
mov rax, qword [rbp + 0x150]
mov rax, qword [rax + 0x348]
mov rcx, qword [rbp + 0x138]
call qword [0x1404ee420]
mov rax, qword [rbp + 0x150]
mov rax, qword [rax + 0x348]
mov rcx, qword [rbp + 0x130]
call qword [0x1404ee420]
xor ebx, ebx
mov r14d, 0xdab323d4
cmp ebx, 0x1387
ja 0x140072685
nop dword [rax + rax]
mov rax, qword [rbp + 0x150]
mov rax, qword [rax + 0x2f0]
call qword [0x1404ee420]
mov ecx, dword [0x1404f14e8]
add ecx, r14d
cmp eax, ecx
jne 0x140072685
mov ecx, 1
call fcn.140073d70
inc ebx
cmp ebx, 0x1387
jbe 0x140072650
mov rdx, qword [rbp + 0xb0]
cmp rdx, 8
jb 0x140072727
mov rcx, qword [rbp + 0x98]
lea rax, [rdx + rdx]
mov r8, qword [0x1404f14e0]
movabs r9, 0xc2f631336470ce2f
xor r9, rax
movabs r10, 0xe17b1899b2386717
and r10, rdx
lea r9, [r9 + r10*4]
sub r9, r8
movabs rdx, 0xd076d04615be81e1
add rdx, r9
movabs r9, 0x6c92fe8685d0bff1
add r9, r8
cmp rdx, r9
jbe 0x140072707
mov r8, qword [rcx - 8]
sub rcx, r8
add rcx, 0xfffffffffffffff8
cmp rcx, 0x20
jae 0x14007278a
add rax, 0x29
mov rdx, rax
mov rcx, r8
mov eax, dword [0x1404f0458]
sub eax, dword [0x1404f14e8]
add eax, 0x254c5018
cdqe
add rax, qword [0x1404f0490]
call qword [0x1404ee420]
mov ebx, 0xffff73ec
mov eax, dword [0x1404f0454]
add eax, ebx
cdqe
add rax, qword [0x1404f04a0]
lea rcx, [rbp + 0x58]
call qword [0x1404ee420]
add ebx, dword [0x1404f0454]
movsxd rax, ebx
add rax, qword [0x1404f04a0]
lea rcx, [rbp + 0xb8]
call qword [0x1404ee420]
test edi, edi
je 0x14007276f
mov byte [rsi + 0x878], 1
movaps xmm6, xmmword [rbp + 0x170]
add rsp, 0x208
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.1403c3cac
int3