Function at 0x140118e04
Capabilities:
Encode data using xor

Disassembly:
xchg rsp, rdi
mov rax, rdi
xchg rdi, rsp
mov qword [rax + 0x10], rbx
xchg rsi, r14
mov qword [rax + 0x18], r14
xchg r14, rsi
xchg r11, rdi
mov qword [rax + 0x20], r11
xchg r11, rdi
push rbp
mov rdi, rdi
push r9
mov qword [rsp], r12
push r11
mov qword [rsp], r13
push r14
push r15
xchg r9, r9
lea rbp, [rax - 0x198]
add rsp, 0xfffffffffffffd90
xor r15d, r15d
mov dword [rsp + 0x30], 0x3f0cf3b3
xor dword [rsp + 0x30], 0x7ef69c02
add dword [rsp + 0x30], 0x27241252
xor dword [rsp + 0x30], 0x5177457f
sub dword [rsp + 0x30], 0x3838c71d
mov dword [rbp + 0x1a0], r15d
mov esi, r15d
mov dword [rsp - 0x1c], ebx
mov dword [rsp + 0x34], 0x540db537
xor dword [rsp + 0x34], 0x2830f1ff
sub dword [rsp + 0x34], 0x6ec25854
sub dword [rsp + 0x34], 0xd2cec3a
mov r14d, 0x187a82f4
xor r14d, 0x29534697
xor r14d, 0x68bf8c8b
xor r14d, 0x7ec891b2
add r14d, 0x5f669b5
mov dword [rsp + 0x38], 0x56dd5e50
xor dword [rsp + 0x38], 0x236d519d
xor dword [rsp + 0x38], 0x2b4776c2
sub dword [rsp + 0x38], 0x365bb02e
sub dword [rsp + 0x38], 0x286bc877
lea eax, [r15 + 0x7d]
mov dword [rsp + 0x3c], 0x17d57c59
xor dword [rsp + 0x3c], 0x6f54f90b
sub dword [rsp + 0x3c], 0x69d75c5a
sub dword [rsp + 0x3c], 0xe4528d2
mov word [rsp + 0x48], ax
mov rsp, rsp
lea r12d, [r15 + 0x30]
mov dword [rsp + 0x40], 0x5d1ee323
sub dword [rsp + 0x40], 0x1b669ec6
add dword [rsp + 0x40], 0x2b0df752
sub dword [rsp + 0x40], 0x6ca63b41
lea ebx, [r15 + 1]
mov dword [rsp + 0x44], 0x23420cdf
add dword [rsp + 0x44], 0x29f775a4
xor dword [rsp + 0x44], 0x3560e0d8
sub dword [rsp + 0x44], 0x33f7057b
sub dword [rsp + 0x44], 0x441a5ca2
mov qword [rbp + 0x1a0], r15
xchg r10, rax
mov r10, qword [rbp + 0x1a0]
xchg r10, rax
mov rcx, qword [rbp + 0x1a0]
mov dword [rsp - 0x38], esi
mov rax, qword [rbp + 0x1a0]
and cl, 3
shl cl, 2
shl cl, 1
movzx edx, word [rsp + rax*2 + 0x30]
mov dword [rsp - 0x30], 0x5a9394ac
mov eax, r14d
shr eax, cl
movzx ecx, al
mov rax, qword [rbp + 0x1a0]
mov r13, r13
xor cx, dx
mov word [rbp + rax*2 + 0x80], cx
mov rax, qword [rbp + 0x1a0]
add rax, rbx
mov dword [rsp - 0x30], 0x280a3f56
xchg r14, rax
mov qword [rbp + 0x1a0], r14
xchg r14, rax
xchg r8, rax
mov r8, qword [rbp + 0x1a0]
xchg r8, rax
cmp rax, 0xd
mov r14, r14
jb 0x140118f7b
lea rax, [rbp + 0x80]
mov word [rbp + 0x9a], r15w
xchg r8, r8
xorps xmm0, xmm0
xchg r13, rax
mov qword [rbp - 0x68], r13
xchg r13, rax
lea r9, [rbp + 0x50]
mov dword [rbp - 0x70], 0x3342412
add dword [rbp - 0x70], 0x131233f5
xor dword [rbp - 0x70], 0x3e4b9a3e
sub dword [rbp - 0x70], 0x43ef3
xor dword [rbp - 0x70], 0x2815835c
lea r8, [rbp - 0x70]
mov r14, r14
mov dword [rsp + 0x20], r15d
xor edx, edx
xor ecx, ecx
mov rdi, rdi
xchg rdi, rbp
movups xmmword [rdi + 0x50], xmm0
xchg rdi, rbp
call fcn.1401340d0
mov dword [rsp - 0x24], 0x49cc26be
mov rdi, rax
test rax, rax
je 0x1401190a5
mov rcx, rcx
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
call fcn.14010f270
test al, al
je 0x1401190a5
mov r12, r12
lea rdx, [rbp - 0x70]
xchg r11, rcx
mov r11, rdi
xchg rcx, r11
call fcn.14010e0ec
mov r9, r9
test al, al
jne 0x14011991f
mov dword [rsp + 0x68], 0x402df115
xor dword [rsp + 0x68], 0x286183c4
add dword [rsp + 0x68], 0x8ce8345
sub dword [rsp + 0x68], 0x68940429
xor dword [rsp + 0x68], 0x8a4f1af
mov dword [rsp + 0x6c], 0x7c5d957
sub dword [rsp + 0x6c], 0x475d683
add dword [rsp + 0x6c], 0x36a0d95a
xor dword [rsp + 0x6c], 0x6326cd7e
sub dword [rsp + 0x6c], 0x5a931114
mov dword [rsp + 0x70], 0x37c9ee49
sub dword [rsp + 0x70], 0x17b29860
add dword [rsp + 0x70], 0x4baa7ceb
xor dword [rsp + 0x70], 0x6bebd28c
mov dword [rsp + 0x74], 0x57d30345
xor dword [rsp + 0x74], 0x6d82fe4a
sub dword [rsp + 0x74], 0x39bddd55
add dword [rsp + 0x74], 0x43179edb
sub dword [rsp + 0x74], 0x4362be5a
mov dword [rsp + 0x78], 0x67db9230
xor dword [rsp + 0x78], 0x49d410ab
xor dword [rsp + 0x78], 0x7c41b0eb
sub dword [rsp + 0x78], 0xad8b54b
xor dword [rsp + 0x78], 0x47417d45
mov dword [rsp + 0x7c], 0x63880192
xor dword [rsp + 0x7c], 0x21e3486
xor dword [rsp + 0x7c], 0x327d15e4
sub dword [rsp + 0x7c], 0x53aa20da
mov dword [rbp - 0x80], 0x702d215e
sub dword [rbp - 0x80], 0x4bc0c2d6
xor dword [rbp - 0x80], 0x41af6a96
sub dword [rbp - 0x80], 0x659333b0
mov dword [rbp - 0x7c], 0x14bfe6ce
xor dword [rbp - 0x7c], 0x6c147644
sub dword [rbp - 0x7c], 0x2a769bad
add dword [rbp - 0x7c], 0x2005310b
sub dword [rbp - 0x7c], 0x6dd725c2
mov dword [rbp - 0x78], 0xb6dcc4f
add dword [rbp - 0x78], 0x4666c521
sub dword [rbp - 0x78], 0x250e02bb
sub dword [rbp - 0x78], 0x2c988e47
mov word [rbp - 0x74], r12w
xchg r12, r12
xchg rcx, r15
mov qword [rbp + 0x1a0], rcx
xchg r15, rcx
xchg rbx, rax
mov rbx, qword [rbp + 0x1a0]
xchg rbx, rax
mov rcx, qword [rbp + 0x1a0]
xchg rdx, rdx
xchg r8, rax
mov r8, qword [rbp + 0x1a0]
xchg r8, rax
and cl, 3
shl cl, 2
shl cl, 1
movzx edx, word [rsp + rax*2 + 0x68]
mov eax, r14d
shr eax, cl
mov dword [rsp - 0x40], edi
movzx ecx, al
xchg rdi, rax
mov rdi, qword [rbp + 0x1a0]
xchg rdi, rax
xor cx, dx
xchg r9, r9
mov word [rbp + rax*2 + 0xc0], cx
xchg r11, rax
mov r11, qword [rbp + 0x1a0]
xchg r11, rax
add rax, rbx
xchg rbx, rbx
mov qword [rbp + 0x1a0], rax
xchg r9, rax
mov r9, qword [rbp + 0x1a0]
xchg r9, rax
cmp rax, 0x13
jb 0x140119200
lea rax, [rbp + 0xc0]
mov dword [rsp - 0x14], ebp
mov word [rbp + 0xe6], r15w
lea r9, [rbp + 0x50]
mov qword [rbp - 0x58], rax
lea r8, [rbp - 0x60]
mov r10, r10
mov dword [rbp - 0x60], 0x377f6348
sub dword [rbp - 0x60], 0x12a4a894
xor dword [rbp - 0x60], 0x6a277288
xor dword [rbp - 0x60], 0x4385adb3
sub dword [rbp - 0x60], 0xd506569
xor edx, edx
mov dword [rsp + 0x20], r15d
mov dword [rsp - 0x34], ecx
xor ecx, ecx
call fcn.1401340d0
mov rdi, rax
xchg r11, r11
test rax, rax
je 0x14011963a
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
call fcn.14010f270
mov dword [rsp - 0x28], esp
test al, al
je 0x14011963a
lea rdx, [rbp - 0x60]
xchg rcx, rdi
mov rdi, rcx
xchg rcx, rdi
call fcn.14010e0ec
test al, al
mov r11, r11
je 0x14011963a
xor edx, edx
lea rcx, [rbp + 0xf0]
mov rcx, rcx
mov r8d, 0x634ac5f9
sub r8d, 0x2ec3875
xor r8d, 0x2c6f5098
sub r8d, 0x4c31dc9c
call fcn.1400990e0
xchg rdi, rdi
movabs rax, 0x1fab7194057b75c8
xor rax, 0x3f80ce93
sub rax, 0x1b09d355
add rax, 0x7fffffff
add rax, 0x51558fe8
lea rdx, [rbp + 0xf0]
xchg r9, r9
movabs rcx, 0xe5abada57a932c1c
sub rcx, 0x5d4299ac
add rcx, 0x98caee6
add rcx, 0x4e42e6fc
add rcx, 0x7fffffff
add rcx, 0x1ecdf1d
mov r8d, 0x50450d69
xor r8d, 0xa406dd9
sub r8d, 0x16c7de4b
xor r8d, 0x177064cb
sub r8d, 0x544de66e
add rcx, qword [0x1401421f8]
mov dword [rsp - 0x18], edi
rol rcx, 0x1d
rol rcx, 0xb
rol rcx, 2
rol rcx, 1
not rcx
add rcx, rax
xchg rcx, rcx
movabs rax, 0x75023bfa5dae6b02
add rax, 0x1fa054fa
xor rax, 0x62128780
add rax, 0x7fffffff
xor rax, 0x752d62d9
rol rcx, 0x10
rol rcx, 0x17
add rax, rcx
mov rcx, rdi
mov r14, r14
call rax
mov r14d, 0xe0c2b6a
add r14d, 0xa3aaf20
add r14d, 0x5ec62326
sub r14d, 0x770cfda1
test eax, eax
je 0x140119609
lea eax, [r14 + 0x18]
mov r14, r14
mov dword [rsp + 0x4a], 0x423df362
add dword [rsp + 0x4a], 0x3c5daf3e
sub dword [rsp + 0x4a], 0x4089dfc7
xor dword [rsp + 0x4a], 0x3e2bc285
mov word [rsp + 0x66], ax
mov dword [rsp + 0x4e], 0x137cf378
add dword [rsp + 0x4e], 0x4017fd74
add dword [rsp + 0x4e], 0xc90d1d8
sub dword [rsp + 0x4e], 0x5fccc29e
mov dword [rsp + 0x52], 0x79fc9c9
xor dword [rsp + 0x52], 0x54f4d36
xor dword [rsp + 0x52], 0x736da964
sub dword [rsp + 0x52], 0x326edc29
sub dword [rsp + 0x52], 0x3f205108
mov dword [rsp + 0x56], 0x6ec13ae
add dword [rsp + 0x56], 0x54a68ba0
sub dword [rsp + 0x56], 0x4f8346ab
add dword [rsp + 0x56], 0x3f6f1b6d
xor dword [rsp + 0x56], 0x4b1a7465
mov dword [rsp + 0x5a], 0x7efda8a1
xor dword [rsp + 0x5a], 0x658ddf01
xor dword [rsp + 0x5a], 0x35742572
sub dword [rsp + 0x5a], 0x2ddf5271
mov dword [rsp + 0x5e], 0xe552985
xor dword [rsp + 0x5e], 0x11a346b0
xor dword [rsp + 0x5e], 0x7e5d3411
add dword [rsp + 0x5e], 0x1922f395
xor dword [rsp + 0x5e], 0x7a914e83
mov dword [rsp + 0x62], 0x10a710c1
add dword [rsp + 0x62], 0x8202ed4
xor dword [rsp + 0x62], 0x21ae543
sub dword [rsp + 0x62], 0x1ab7da74
mov qword [rbp + 0x1a0], r15
mov r13, r13
xchg r12, rax
mov r12, qword [rbp + 0x1a0]
xchg r12, rax
mov rcx, qword [rbp + 0x1a0]
mov dword [rsp - 0x1c], ebx
mov rax, qword [rbp + 0x1a0]
and cl, 3
shl cl, 3
mov r8, r8
movzx edx, word [rsp + rax*2 + 0x4a]
mov eax, 0x593cbd36
add eax, 0x5eb9c0
sub eax, 0x27b26cc1
add eax, 0x1ba050bb
sub eax, 0x203417e1
shr eax, cl
movzx ecx, al
xchg rcx, rax
mov rcx, qword [rbp + 0x1a0]
xchg rcx, rax
xor cx, dx
mov r11, r11
mov word [rbp + rax*2 + 0xa0], cx
mov rax, qword [rbp + 0x1a0]
add rax, rbx
xchg rsp, rsp
xchg rdx, rax
mov qword [rbp + 0x1a0], rdx
xchg rdx, rax
mov rax, qword [rbp + 0x1a0]
mov rbp, rbp
cmp rax, r14
jb 0x14011954d
xchg r14, r9
mov r8, r9
xchg r9, r14
mov word [rbp + 0xbe], r15w
mov r13, r13
lea rdx, [rbp + 0xf0]
mov esi, ebx
lea rcx, [rbp + 0xa0]
xchg rdx, rdx
call fcn.140099920
mov dl, bl
test eax, eax
je 0x14011960c
mov dword [rsp - 0x10], edx
mov dl, r15b
test bl, sil
je 0x140119632
xchg rdi, rdi
and esi, 0xfffffffe
lea rdi, [rbp + 0xa0]
xor eax, eax
xchg r15, r14
mov rcx, r15
xchg r14, r15
rep stosb byte [rdi], al
xchg rcx, rcx
test dl, dl
jne 0x14011990d
movdqa xmm0, xmmword [0x1400146f0]
mov dword [rsp - 0xc], 0x2f02baf7
lea rcx, [rbp - 8]
xchg r8, rbp
movdqa xmmword [r8 + 0x60], xmm0
xchg r8, rbp
lea rdx, [rbp - 8]
mov rbx, rbx
mov byte [rbp + 0x70], 0x53
sub byte [rbp + 0x70], 0x51
add byte [rbp + 0x70], 0x24
add byte [rbp + 0x70], 0x56
xorps xmm0, xmm0
mov dword [rsp - 0x2c], ecx
xchg r14, rcx
mov qword [rbp - 0x10], r14
xchg r14, rcx
mov eax, 0x776148e4
sub eax, 0x1c1db56e
sub eax, 0x384d07f8
sub eax, 0x3b23fa1
sub eax, 0x1f444bcc
mov qword [rbp + 0x28], rax
mov r8, r8
xchg rbp, r15
movups xmmword [r15 - 8], xmm0
xchg r15, rbp
movups xmmword [rbp + 8], xmm0
xchg rdx, rdx
xchg rbp, rsp
movups xmmword [rsp + 0x18], xmm0
xchg rsp, rbp
cmp rcx, rdx
je 0x1401196dd
call fcn.140098ac0
mov dword [rsp - 0x20], 0x1e31a92f
xchg rdi, rax
mov rdi, qword [rbp + 0x28]
xchg rdi, rax
lea rdx, [rbp - 8]
mov rdx, rdx
xorps xmm0, xmm0
xchg rdx, rbx
mov qword [rbp - 0x10], rbx
xchg rdx, rbx
xchg rcx, r14
mov r14, r15
xchg r14, rcx
xchg rbp, rdi
movups xmmword [rdi - 8], xmm0
xchg rbp, rdi
xchg rbp, r9
movups xmmword [r9 + 8], xmm0
xchg rbp, r9
xchg rbp, r9
movups xmmword [r9 + 0x18], xmm0
xchg r9, rbp
test rax, rax
mov dword [rsp - 0x40], 0x2bc5a67d
je 0x140119744
movzx eax, byte [rbp + rcx + 0x60]
mov word [rdx + rcx*2], ax
add rcx, rbx
xchg rsi, rsi
cmp rcx, qword [rbp + 0x28]
jb 0x14011972b
lea rcx, [rbp - 0x10]
or esi, 2
xchg r10, r10
call fcn.14008a970
test al, al
jne 0x140119884
movdqa xmm0, xmmword [0x140014710]
mov dword [rsp - 0x40], edx
lea rcx, [rbp - 0x48]
xchg rbp, r11
movdqa xmmword [r11 + 0x30], xmm0
xchg rbp, r11
lea rdx, [rbp - 0x48]
mov word [rbp + 0x40], 0x9b6
add word [rbp + 0x40], 0x18ca
add word [rbp + 0x40], 0x4223
sub word [rbp + 0x40], 0x342d
xorps xmm0, xmm0
mov dword [rsp - 0x2c], 0x7799b03e
xchg r9, rcx
mov qword [rbp - 0x50], r9
xchg r9, rcx
mov eax, 0x2773c9f0
add eax, 0x1780cef1
sub eax, 0x34f244fe
sub eax, 0xa0253d1
xchg r14, rax
mov qword [rbp - 0x18], r14
xchg r14, rax
xchg rbp, r10
movups xmmword [r10 - 0x48], xmm0
xchg r10, rbp
movups xmmword [rbp - 0x38], xmm0
mov dword [rsp - 0x2c], 0x2d937490
xchg rbp, r13
movups xmmword [r13 - 0x28], xmm0
xchg rbp, r13
cmp rcx, rdx
mov dword [rsp - 0x3c], 0x719b66b
je 0x140119804
call fcn.140098ac0
mov rax, qword [rbp - 0x18]
mov dword [rsp - 0x28], edi
lea rdx, [rbp - 0x48]
xorps xmm0, xmm0
mov qword [rbp - 0x50], rdx
mov dword [rsp - 0x30], edi
xchg r15, r14
mov rcx, r14
xchg r14, r15
xchg r9, rbp
movups xmmword [r9 - 0x48], xmm0
xchg r9, rbp
xchg rbp, r10
movups xmmword [r10 - 0x38], xmm0
xchg r10, rbp
xchg rbp, r11
movups xmmword [r11 - 0x28], xmm0
xchg r11, rbp
test rax, rax
je 0x140119867
movzx eax, byte [rbp + rcx + 0x30]
mov r8, r8
mov word [rdx + rcx*2], ax
add rcx, rbx
cmp rcx, qword [rbp - 0x18]
mov dword [rsp - 0x18], 0x6901f43c
jb 0x140119846
lea rcx, [rbp - 0x50]
or esi, 4
call fcn.14008a970
mov rbx, rbx
mov r14b, r15b
test al, al
je 0x140119887
xchg rcx, rcx
mov r14b, bl
test sil, 4
je 0x1401198c6
xchg r9, rcx
mov r9, qword [rbp - 0x50]
xchg r9, rcx
lea rax, [rbp - 0x48]
cmp rcx, rax
xchg r13, r13
jne 0x1401198c1
lea rdi, [rbp - 0x48]
xor eax, eax
xchg rsi, r12
mov rcx, rsi
xchg r12, rsi
rep stosb byte [rdi], al
jmp 0x1401198c6
call fcn.140098ac0
mov rcx, qword [rbp - 0x10]
mov dword [rsp - 0x20], ecx
lea rax, [rbp - 8]
cmp rcx, rax
jne 0x1401198f8
mov dword [rsp - 0x18], esp
lea rdi, [rbp - 8]
xor eax, eax
xchg rbx, rcx
mov rbx, r12
xchg rcx, rbx
rep stosb byte [rdi], al
mov rbp, rbp
jmp 0x1401198fd
call fcn.140098ac0
test r14b, r14b
mov dword [rsp - 0x24], ebx
jne 0x14011990d
mov bl, r15b
xor eax, eax
lea rdi, [rbp + 0xc0]
mov dword [rsp - 0x2c], esi
lea ecx, [rax + 0x13]
rep stosb byte [rdi], al
xor eax, eax
xchg rdx, rdx
lea r11, [rsp + 0x270]
xchg r15, rsi
mov r15, qword [r11 + 0x40]
xchg rsi, r15
lea rdi, [rbp + 0x80]
lea ecx, [rax + 0xd]
rep stosb byte [rdi], al
xchg r15, r15
xchg r15, rdi
mov r15, qword [r11 + 0x48]
xchg r15, rdi
mov al, bl
xchg rbx, rdi
mov rdi, qword [r11 + 0x38]
xchg rbx, rdi
xchg r13, r11
mov rsp, r13
xchg r13, r11
nop
add rsp, 8
mov r15, qword [rsp - 8]
nop
add rsp, 8
mov r14, qword [rsp - 8]
pop r13
xchg rdi, rdi
nop
mov r12, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rbp, qword [rsp - 8]
ret