Function at 0x1401ad794
Capabilities:
Encode data using xor

Disassembly:
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xc0
mov qword [rbp + 7], 0xfffffffffffffffe
mov edx, ecx
lea rcx, [rbp + 0xf]
call fcn.1401ad648
nop
lea rdx, [rbp + 0xf]
lea rcx, [rbp + 0x2f]
call fcn.1400ac788
mov r8, rax
mov dword [rbp - 0x49], 0x53
mov ecx, dword [rbp - 0x49]
xor cx, 0x5b
mov word [rbp - 0x45], cx
mov ecx, dword [rbp - 0x49]
mov r9d, 1
add cx, r9w
xor cx, 0x2e
mov word [rbp - 0x43], cx
mov ecx, dword [rbp - 0x49]
add cx, 2
xor cx, 0x5d
mov word [rbp - 0x41], cx
mov eax, dword [rbp - 0x49]
add ax, 3
mov cx, 0x20
xor ax, cx
mov word [rbp - 0x3f], ax
mov eax, dword [rbp - 0x49]
add ax, 4
xor ax, 0x50
mov word [rbp - 0x3d], ax
mov eax, dword [rbp - 0x49]
add ax, 5
xor ax, 0x61
mov word [rbp - 0x3b], ax
mov eax, dword [rbp - 0x49]
add ax, 6
xor ax, 0x67
mov word [rbp - 0x39], ax
mov eax, dword [rbp - 0x49]
add ax, 7
xor ax, 0x65
mov word [rbp - 0x37], ax
mov eax, dword [rbp - 0x49]
add ax, 8
xor ax, cx
mov word [rbp - 0x35], ax
mov eax, dword [rbp - 0x49]
add ax, 9
xor ax, 0x70
mov word [rbp - 0x33], ax
mov eax, dword [rbp - 0x49]
add ax, 0xa
xor ax, 0x72
mov word [rbp - 0x31], ax
mov eax, dword [rbp - 0x49]
add ax, 0xb
xor ax, 0x6f
mov word [rbp - 0x2f], ax
mov eax, dword [rbp - 0x49]
add ax, 0xc
xor ax, 0x74
mov word [rbp - 0x2d], ax
mov eax, dword [rbp - 0x49]
add ax, 0xd
xor ax, 0x65
mov word [rbp - 0x2b], ax
mov eax, dword [rbp - 0x49]
add ax, 0xe
xor ax, 0x63
mov word [rbp - 0x29], ax
mov eax, dword [rbp - 0x49]
add ax, 0xf
xor ax, 0x74
mov word [rbp - 0x27], ax
mov eax, dword [rbp - 0x49]
add ax, 0x10
xor ax, 0x69
mov word [rbp - 0x25], ax
mov eax, dword [rbp - 0x49]
add ax, 0x11
xor ax, 0x6f
mov word [rbp - 0x23], ax
mov eax, dword [rbp - 0x49]
add ax, 0x12
xor ax, 0x6e
mov word [rbp - 0x21], ax
mov eax, dword [rbp - 0x49]
add ax, 0x13
xor ax, cx
mov word [rbp - 0x1f], ax
mov eax, dword [rbp - 0x49]
add ax, 0x14
xor ax, 0x66
mov word [rbp - 0x1d], ax
mov eax, dword [rbp - 0x49]
add ax, 0x15
xor ax, 0x6c
mov word [rbp - 0x1b], ax
mov eax, dword [rbp - 0x49]
add ax, 0x16
xor ax, 0x61
mov word [rbp - 0x19], ax
mov eax, dword [rbp - 0x49]
add ax, 0x17
xor ax, 0x67
mov word [rbp - 0x17], ax
mov eax, dword [rbp - 0x49]
add ax, 0x18
xor ax, 0x73
mov word [rbp - 0x15], ax
mov eax, dword [rbp - 0x49]
add ax, 0x19
xor ax, cx
mov word [rbp - 0x13], ax
mov eax, dword [rbp - 0x49]
add ax, 0x1a
xor ax, 0x74
mov word [rbp - 0x11], ax
mov eax, dword [rbp - 0x49]
add ax, 0x1b
xor ax, 0x6f
mov word [rbp - 0xf], ax
mov eax, dword [rbp - 0x49]
add ax, 0x1c
xor ax, cx
mov word [rbp - 0xd], ax
mov eax, dword [rbp - 0x49]
add ax, 0x1d
xor ax, 0x75
mov word [rbp - 0xb], ax
mov eax, dword [rbp - 0x49]
add ax, 0x1e
xor ax, 0x73
mov word [rbp - 9], ax
mov eax, dword [rbp - 0x49]
add ax, 0x1f
xor ax, 0x65
mov word [rbp - 7], ax
mov eax, dword [rbp - 0x49]
add ax, cx
xor ax, 0x3a
mov word [rbp - 5], ax
mov eax, dword [rbp - 0x49]
add ax, 0x21
xor ax, cx
mov word [rbp - 3], ax
xor eax, eax
mov word [rbp - 1], ax
movzx eax, word [rbp - 0x45]
xor r10d, r10d
mov edx, r10d
movzx eax, word [rbp + rdx*2 - 0x45]
mov ecx, dword [rbp - 0x49]
add cx, dx
xor cx, ax
mov word [rbp + rdx*2 - 0x45], cx
add rdx, r9
cmp rdx, 0x22
jb 0x1401ad9da
mov word [rbp - 1], r10w
mov rdx, r8
lea rcx, [rbp - 0x45]
call fcn.14015d2b8
nop
xor edx, edx
lea r8d, [rdx + 0x46]
lea rcx, [rbp - 0x45]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
lea rcx, [rbp + 0xf]
call fcn.1400ac668
add rsp, 0xc0
pop rbp
ret