Function at 0x180002b1e
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0xa0
mov rsi, rcx
lea rdi, [rsp + 0x52]
movabs rax, 0x51005500580030
mov qword [rdi - 2], rax
mov dword [rdi + 6], 0x300054
mov word [rdi + 0x12], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x30
inc rax
cmp rax, 0xa
jne 0x180002b50
mov word [rsp + 0x64], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180002b8e
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180002b8e
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x180019550], rax
movabs rax, 0x400040007d002f
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x58], 0x2f005b
mov word [rsp + 0x64], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x2f
inc rax
cmp rax, 0xa
jne 0x180002bd2
mov word [rsp + 0x64], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180002c10
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180002c10
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x180019558], rax
movaps xmm0, xmmword [0x180015250]
movaps xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x60], 0x60
mov word [rsp + 0x70], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x60
inc rax
cmp rax, 0x10
jne 0x180002c50
mov word [rsp + 0x70], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180002c8e
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180002c8e
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x180019560], rax
movaps xmm0, xmmword [0x180015260]
movaps xmmword [rsp + 0x50], xmm0
movabs rax, 0x20004c007f0045
mov qword [rsp + 0x60], rax
mov word [rsp + 0x7c], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x20
inc rax
cmp rax, 0x16
jne 0x180002cd6
mov word [rsp + 0x7c], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180002d14
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180002d14
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x180019568], rax
movaps xmm0, xmmword [0x180015270]
movaps xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x60], 0x78004b
mov word [rsp + 0x74], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x78
inc rax
cmp rax, 0x12
jne 0x180002d55
mov word [rsp + 0x74], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180002d93
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180002d93
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x180019570], rax
movaps xmm0, xmmword [0x180015280]
movaps xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x6c], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x49
inc rax
cmp rax, 0xe
jne 0x180002dcc
mov word [rsp + 0x6c], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180002e0a
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180002e0a
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x180019578], rax
movaps xmm0, xmmword [0x180015290]
movaps xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x60], 0x400073
mov word [rsp + 0x74], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x40
inc rax
cmp rax, 0x12
jne 0x180002e4b
mov word [rsp + 0x74], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180002e89
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180002e89
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x180019570], rax
movaps xmm0, xmmword [0x1800152a0]
movaps xmmword [rsp + 0x50], xmm0
movabs rax, 0x3d005100620050
mov qword [rsp + 0x60], rax
mov word [rsp + 0x7c], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x3d
inc rax
cmp rax, 0x16
jne 0x180002ed1
mov word [rsp + 0x7c], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180002f0f
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180002f0f
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x180019580], rax
movaps xmm0, xmmword [0x1800152b0]
movaps xmmword [rsp + 0x50], xmm0
movabs rax, 0x700002002f001d
mov qword [rsp + 0x60], rax
mov word [rsp + 0x7c], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x70
inc rax
cmp rax, 0x16
jne 0x180002f57
mov word [rsp + 0x7c], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180002f95
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180002f95
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x180019588], rax
movaps xmm0, xmmword [str.E_2_7_7]
movaps xmmword [rsp + 0x50], xmm0
movabs rax, 0x450029001a0028
mov qword [rsp + 0x60], rax
mov word [rsp + 0x7c], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x45
inc rax
cmp rax, 0x16
jne 0x180002fdd
mov word [rsp + 0x7c], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x18000301b
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x18000301b
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x180019590], rax
movaps xmm0, xmmword [0x1800152d0]
movaps xmmword [rsp + 0x50], xmm0
movabs rax, 0x1700650048007a
mov qword [rsp + 0x60], rax
mov word [rsp + 0x7c], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x17
inc rax
cmp rax, 0x16
jne 0x180003063
mov word [rsp + 0x7c], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x1800030a1
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x1800030a1
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x180019598], rax
movaps xmm0, xmmword [0x1800152e0]
movaps xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x6c], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x5d
inc rax
cmp rax, 0xe
jne 0x1800030da
mov word [rsp + 0x6c], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180003118
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180003118
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x1800195a0], rax
movaps xmm0, xmmword [0x1800152f0]
movaps xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x6c], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x12
inc rax
cmp rax, 0xe
jne 0x180003151
mov word [rsp + 0x6c], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x18000318f
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x18000318f
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x1800195a8], rax
movaps xmm0, xmmword [0x180015300]
movaps xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x60], 0x19
mov word [rsp + 0x70], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x19
inc rax
cmp rax, 0x10
jne 0x1800031cf
mov word [rsp + 0x70], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x18000320d
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x18000320d
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x1800195b0], rax
movaps xmm0, xmmword [0x180015310]
movaps xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x60], 0x54
mov word [rsp + 0x70], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x54
inc rax
cmp rax, 0x10
jne 0x18000324d
mov word [rsp + 0x70], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x18000328b
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x18000328b
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x1800195b8], rax
movaps xmm0, xmmword [0x180015320]
movaps xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x6c], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x6b
inc rax
cmp rax, 0xe
jne 0x1800032c4
mov word [rsp + 0x6c], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180003302
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180003302
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x1800195c0], rax
movaps xmm0, xmmword [0x180015330]
movaps xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x6c], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x20
inc rax
cmp rax, 0xe
jne 0x18000333b
mov word [rsp + 0x6c], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180003379
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180003379
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x1800195c8], rax
movaps xmm0, xmmword [0x180015340]
movaps xmmword [rsp + 0x50], xmm0
movaps xmm0, xmmword [0x180015350]
movaps xmmword [rsp + 0x60], xmm0
mov word [rsp + 0x70], 0x48
mov word [rsp + 0x90], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x48
inc rax
cmp rax, 0x20
jne 0x1800033c8
mov word [rsp + 0x90], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180003409
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180003409
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x1800195d0], rax
movaps xmm0, xmmword [0x180015360]
movaps xmmword [rsp + 0x50], xmm0
movaps xmm0, xmmword [0x180015370]
movaps xmmword [rsp + 0x60], xmm0
mov word [rsp + 0x70], 0x76
mov word [rsp + 0x90], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x76
inc rax
cmp rax, 0x20
jne 0x180003458
mov word [rsp + 0x90], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180003499
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180003499
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x1800195d8], rax
movaps xmm0, xmmword [str.b_v_t]
movaps xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x60], 0xe003d
mov word [rsp + 0x64], 0x62
mov word [rsp + 0x78], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x62
inc rax
cmp rax, 0x14
jne 0x1800034e1
mov word [rsp + 0x78], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x18000351f
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x18000351f
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x1800195e0], rax
movaps xmm0, xmmword [0x180015390]
movaps xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x60], 0x180035
mov word [rsp + 0x64], 0x6a
mov word [rsp + 0x78], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x6a
inc rax
cmp rax, 0x14
jne 0x180003567
mov word [rsp + 0x78], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x1800035a5
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x1800035a5
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x1800195e8], rax
movaps xmm0, xmmword [str._OLAArA_]
movaps xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x6c], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 0x2d
inc rax
cmp rax, 0xe
jne 0x1800035de
mov word [rsp + 0x6c], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x18000361c
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x18000361c
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rbx, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180013374
mov rax, qword [rbx]
mov qword [0x1800195f0], rax
movaps xmm0, xmmword [0x1800153b0]
movaps xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x6c], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x50], 6
inc rax
cmp rax, 0xe
jne 0x180003655
mov word [rsp + 0x6c], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
cmp word [rsp + 0x52], 0
je 0x180003693
mov rcx, rdi
call fcn.180013e7b
inc eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
je 0x180003693
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x2f]
lea rdi, [rsp + 0x48]
lea r8, [rsp + 0x30]
mov rdx, rdi
call fcn.180013374
mov rax, qword [rdi]
mov qword [0x1800195f8], rax
mov byte [rsi + 1], 1
mov al, 1
add rsp, 0xa0
pop rbx
pop rdi
pop rsi
ret