Function at 0x140118510
Capabilities:
Encode data using xor

Disassembly:
xchg rcx, rsp
mov rax, rcx
xchg rcx, rsp
xchg r11, rbx
mov qword [rax + 0x10], r11
xchg rbx, r11
xchg rdi, rsi
mov qword [rax + 0x18], rdi
xchg rdi, rsi
mov qword [rax + 0x20], rdi
nop
sub rsp, 8
mov qword [rsp], rbp
nop
mov qword [rsp - 8], r12
sub rsp, 8
push r12
mov qword [rsp], r13
nop
sub rsp, 8
mov qword [rsp], r14
nop
push 0x4978d81
mov qword [rsp], r15
lea rbp, [rax - 0x198]
sub rsp, 0x270
xor r15d, r15d
mov dword [rsp - 0x18], 0x40d321bf
mov dword [rsp + 0x30], 0xfe7493
xor dword [rsp + 0x30], 0x13645974
add dword [rsp + 0x30], 0x704a7b7
xor dword [rsp + 0x30], 0x7b8321
sub dword [rsp + 0x30], 0x1aa455d6
mov eax, 0x12c358d7
add eax, 0x5ff52a50
sub eax, 0x256ce50b
xor eax, 0x4d4b9ed7
mov dword [rbp + 0x1a0], r15d
mov dword [rsp - 0x18], 0x668635b
mov word [rsp + 0x48], ax
mov esi, r15d
mov dword [rsp + 0x34], 0x2d9b8ac8
xor dword [rsp + 0x34], 0x74248d2a
sub dword [rsp + 0x34], 0x450c687d
sub dword [rsp + 0x34], 0x14af9ebb
mov r14d, 0x5dc4b5a4
sub r14d, 0x1c9e053b
sub r14d, 0x17a9ec0f
add r14d, 0x53523c15
sub r14d, 0x1c09ccb6
mov dword [rsp + 0x38], 0x19502297
add dword [rsp + 0x38], 0x375b6728
xor dword [rsp + 0x38], 0x3bccb3d
sub dword [rsp + 0x38], 0x52d741a6
lea r13d, [r15 + 3]
mov dword [rsp + 0x3c], 0x43035a41
add dword [rsp + 0x3c], 0x2d8aa1a3
xor dword [rsp + 0x3c], 0x7050300a
add dword [rsp + 0x3c], 0x5bd82145
sub dword [rsp + 0x3c], 0x5c8dec7d
lea ebx, [r15 + 1]
mov r8, r8
mov dword [rsp + 0x40], 0x453c30fb
sub dword [rsp + 0x40], 0x3b9c834f
add dword [rsp + 0x40], 0x186c86d1
add dword [rsp + 0x40], 0x5cdb5a04
sub dword [rsp + 0x40], 0x7e978da9
mov dword [rsp + 0x44], 0x3d20a11a
xor dword [rsp + 0x44], 0x12fa6e0c
xor dword [rsp + 0x44], 0x5b05f038
xor dword [rsp + 0x44], 0x136bd99
sub dword [rsp + 0x44], 0x75e48209
mov qword [rbp + 0x1a0], r15
mov rax, qword [rbp + 0x1a0]
mov rcx, qword [rbp + 0x1a0]
mov dword [rsp - 0x3c], 0x6c7be226
mov rax, qword [rbp + 0x1a0]
and cl, r13b
shl cl, 3
mov dword [rsp - 0x30], esp
movzx edx, word [rsp + rax*2 + 0x30]
mov eax, r14d
shr eax, cl
mov r14, r14
movzx ecx, al
xchg r8, rax
mov r8, qword [rbp + 0x1a0]
xchg r8, rax
xor cx, dx
mov rdx, rdx
mov word [rbp + rax*2 + 0x80], cx
mov rax, qword [rbp + 0x1a0]
add rax, rbx
xchg rbx, rax
mov qword [rbp + 0x1a0], rbx
xchg rbx, rax
mov rax, qword [rbp + 0x1a0]
xchg r15, r15
cmp rax, 0xd
jb 0x1401186bc
lea rax, [rbp + 0x80]
xchg r8, r8
mov word [rbp + 0x9a], r15w
xorps xmm0, xmm0
xchg r8, rax
mov qword [rbp - 0x68], r8
xchg r8, rax
lea r9, [rbp + 0x50]
mov dword [rsp - 0x10], 0x1a19fb86
mov dword [rbp - 0x70], 0x26f81f5c
xor dword [rbp - 0x70], 0x1b2df859
add dword [rbp - 0x70], 0x1b222ff3
sub dword [rbp - 0x70], 0x25074e21
xor dword [rbp - 0x70], 0x33ecc8cd
lea r8, [rbp - 0x70]
mov dword [rsp + 0x20], r15d
xor edx, edx
xchg rbp, rbp
xor ecx, ecx
xchg rbp, rsp
movups xmmword [rsp + 0x50], xmm0
xchg rsp, rbp
call fcn.140133170
mov dword [rsp - 0x18], 0x3a01df33
xchg r15, rax
mov rdi, r15
xchg r15, rax
test rax, rax
mov dword [rsp - 0x34], esi
je 0x1401187e0
mov rcx, rax
call fcn.14010e968
test al, al
xchg rbx, rbx
je 0x1401187e0
lea rdx, [rbp - 0x70]
mov rcx, rdi
call fcn.14010d880
mov r10, r10
test al, al
jne 0x140119068
mov eax, 0x5beb0a89
sub eax, 0x53a0e3b7
xor eax, 0x1b8105f7
sub eax, 0x13cb2285
mov dword [rsp + 0x68], 0x4be92f1b
add dword [rsp + 0x68], 0x24d348cb
sub dword [rsp + 0x68], 0x5e19a072
sub dword [rsp + 0x68], 0x1250d680
mov word [rbp - 0x74], ax
mov dword [rsp + 0x6c], 0x382b1664
add dword [rsp + 0x6c], 0x118b7fc
add dword [rsp + 0x6c], 0x661dab3
xor dword [rsp + 0x6c], 0x3faba9bf
mov dword [rsp + 0x70], 0x7fab10de
sub dword [rsp + 0x70], 0x1118ceb7
sub dword [rsp + 0x70], 0x5aeac38d
xor dword [rsp + 0x70], 0x2a65edaa
sub dword [rsp + 0x70], 0x39689242
mov dword [rsp + 0x74], 0x60cd1934
sub dword [rsp + 0x74], 0x18472d60
add dword [rsp + 0x74], 0x3487209a
add dword [rsp + 0x74], 0x2c73592
xor dword [rsp + 0x74], 0x7fd042ab
mov dword [rsp + 0x78], 0x15a93823
add dword [rsp + 0x78], 0x1ade684e
xor dword [rsp + 0x78], 0x129ba22e
xor dword [rsp + 0x78], 0x5a9cca46
xor dword [rsp + 0x78], 0x78c4c8cf
mov dword [rsp + 0x7c], 0x59d7e857
sub dword [rsp + 0x7c], 0x30baf516
sub dword [rsp + 0x7c], 0x2297962d
add dword [rsp + 0x7c], 0x32fe68f6
sub dword [rsp + 0x7c], 0x3977c584
mov dword [rbp - 0x80], 0x4def6e9a
sub dword [rbp - 0x80], 0x2ad6c3
xor dword [rbp - 0x80], 0x4ff84a51
add dword [rbp - 0x80], 0x33f5c05d
sub dword [rbp - 0x80], 0x35f29d0b
mov dword [rbp - 0x7c], 0x7a571e6d
xor dword [rbp - 0x7c], 0x6e208efe
add dword [rbp - 0x7c], 0x23df43d0
xor dword [rbp - 0x7c], 0x167f3b95
sub dword [rbp - 0x7c], 0x2dfbef40
mov dword [rbp - 0x78], 0x16e74865
add dword [rbp - 0x78], 0x46a7c61a
sub dword [rbp - 0x78], 0x1034220f
sub dword [rbp - 0x78], 0x4cfceb98
xchg r15, rcx
mov qword [rbp + 0x1a0], rcx
xchg rcx, r15
xchg r15, rax
mov r15, qword [rbp + 0x1a0]
xchg r15, rax
xchg rcx, r9
mov r9, qword [rbp + 0x1a0]
xchg r9, rcx
xchg rsp, rax
mov rsp, qword [rbp + 0x1a0]
xchg rsp, rax
and cl, r13b
shl cl, 1
shl cl, 1
shl cl, 1
movzx edx, word [rsp + rax*2 + 0x68]
mov dword [rsp - 0x28], edx
mov eax, r14d
shr eax, cl
movzx ecx, al
xchg r13, rax
mov r13, qword [rbp + 0x1a0]
xchg r13, rax
xor cx, dx
mov word [rbp + rax*2 + 0xc0], cx
mov rax, qword [rbp + 0x1a0]
mov dword [rsp - 0x44], 0x69d279ba
add rax, rbx
xchg r12, rax
mov qword [rbp + 0x1a0], r12
xchg r12, rax
xchg r8, rax
mov r8, qword [rbp + 0x1a0]
xchg r8, rax
cmp rax, 0x13
jb 0x140118952
mov r10, r10
lea rax, [rbp + 0xc0]
mov word [rbp + 0xe6], r15w
lea r9, [rbp + 0x50]
xchg r12, rax
mov qword [rbp - 0x58], r12
xchg r12, rax
lea r8, [rbp - 0x60]
mov rbx, rbx
mov dword [rbp - 0x60], 0x310d4797
xor dword [rbp - 0x60], 0x1e444541
xor dword [rbp - 0x60], 0x508adfc9
sub dword [rbp - 0x60], 0x75907db7
sub dword [rbp - 0x60], 0xa0b5f42
xor edx, edx
mov dword [rsp - 0x14], esi
mov dword [rsp + 0x20], r15d
xor ecx, ecx
call fcn.140133170
xchg rdi, rax
mov rax, rdi
xchg rdi, rax
mov r14d, 0x63222a9
xor r14d, 0x6885ecaa
xor r14d, 0x7fa6e993
xor r14d, 0x337dd6a1
sub r14d, 0x226cf11f
test rax, rax
je 0x140118d7e
mov dword [rsp - 0x18], 0x33f7707f
xchg rbp, rax
mov rcx, rbp
xchg rbp, rax
call fcn.14010e968
test al, al
mov dword [rsp - 0x38], ebp
je 0x140118d7e
lea rdx, [rbp - 0x60]
xchg rcx, rsi
mov rsi, rdi
xchg rsi, rcx
call fcn.14010d880
test al, al
mov dword [rsp - 0x44], 0x36fc3627
je 0x140118d7e
xor edx, edx
lea r8d, [r14 + 0x6e]
lea rcx, [rbp + 0xf0]
mov r15, r15
call fcn.140098f00
mov rax, qword [0x1401411f8]
lea r8d, [r14 + 0x2e]
not rax
mov dword [rsp - 0x40], 0x27b5f466
lea rdx, [rbp + 0xf0]
movabs rcx, 0x1f31d69f61670494
xor rcx, 0x2ee03e06
add rcx, 0x28dc60a7
sub rcx, 0x297d5528
add rcx, 0x7ed48339
xor rax, rcx
mov r13, r13
movabs rcx, 0x55c8c266d486487
sub rcx, 0x1c6611c7
xor rcx, 0x611bd78d
add rcx, 0x546bc433
rol rax, 3
rol rax, 8
rol rax, 1
rol rax, 2
rol rax, 1
rol rax, 1
xor rax, rcx
mov r13, r13
xchg r11, rdi
mov rcx, r11
xchg r11, rdi
not rax
mov r13, r13
call rax
lea r12d, [r14 - 3]
test eax, eax
mov dword [rsp - 0x10], 0x7dbe4b3a
je 0x140118d43
mov eax, 0x7d52127a
xor eax, 0x2c300219
sub eax, 0x1fc28422
sub eax, 0x319f8b8a
mov dword [rsp + 0x4a], 0xc033f29
xor dword [rsp + 0x4a], 0x7a570de0
sub dword [rsp + 0x4a], 0x3429514b
add dword [rsp + 0x4a], 0x29908072
xor dword [rsp + 0x4a], 0x6bf1611a
mov word [rsp + 0x66], ax
mov dword [rsp + 0x4e], 0x7748d7da
sub dword [rsp + 0x4e], 0x522c780e
sub dword [rsp + 0x4e], 0xa82d8de
xor dword [rsp + 0x4e], 0x1a8d8658
mov dword [rsp + 0x52], 0x41a5a756
xor dword [rsp + 0x52], 0x5b2c1579
xor dword [rsp + 0x52], 0x7c21db47
sub dword [rsp + 0x52], 0xf21ed7a
xor dword [rsp + 0x52], 0x57d87b32
mov dword [rsp + 0x56], 0x1ea1efa9
sub dword [rsp + 0x56], 0x13ac38a0
add dword [rsp + 0x56], 0x59c769b8
xor dword [rsp + 0x56], 0x64942024
mov dword [rsp + 0x5a], 0x1640cf32
add dword [rsp + 0x5a], 0x5609b5f2
sub dword [rsp + 0x5a], 0x2e455788
add dword [rsp + 0x5a], 0x1287c3ab
sub dword [rsp + 0x5a], 0x5037f070
mov dword [rsp + 0x5e], 0x5c445f4e
xor dword [rsp + 0x5e], 0x3794f5e8
sub dword [rsp + 0x5e], 0x3efe5468
xor dword [rsp + 0x5e], 0x2cc05694
mov dword [rsp + 0x62], 0x51e7328e
xor dword [rsp + 0x62], 0x45fc858f
add dword [rsp + 0x62], 0x9638bb0
sub dword [rsp + 0x62], 0xad274f8
sub dword [rsp + 0x62], 0x1256cce5
mov qword [rbp + 0x1a0], r15
mov r11, r11
mov rax, qword [rbp + 0x1a0]
xchg r12, rcx
mov r12, qword [rbp + 0x1a0]
xchg r12, rcx
xchg rsp, rax
mov rsp, qword [rbp + 0x1a0]
xchg rsp, rax
and cl, r13b
mov rcx, rcx
shl cl, 2
shl cl, 1
movzx edx, word [rsp + rax*2 + 0x4a]
mov dword [rsp - 0x2c], ebp
mov eax, 0x94fc7f
xor eax, 0x6b212d38
sub eax, 0x1b90977f
sub eax, 0x2ef962c8
add eax, 0x3f995cb9
shr eax, cl
movzx ecx, al
mov rax, qword [rbp + 0x1a0]
mov dword [rsp - 0x18], 0x6549eb25
xor cx, dx
mov word [rbp + rax*2 + 0xa0], cx
xchg rsp, rax
mov rsp, qword [rbp + 0x1a0]
xchg rsp, rax
add rax, rbx
mov qword [rbp + 0x1a0], rax
mov dword [rsp - 0x34], esp
mov rax, qword [rbp + 0x1a0]
cmp rax, r12
jb 0x140118c81
mov r8, r12
mov rsp, rsp
mov word [rbp + 0xbe], r15w
lea rdx, [rbp + 0xf0]
mov esi, ebx
lea rcx, [rbp + 0xa0]
mov dword [rsp - 0x24], edx
call fcn.140099710
mov dl, bl
test eax, eax
mov dword [rsp - 0x10], edx
je 0x140118d46
mov dl, r15b
test bl, sil
mov dword [rsp - 0x20], 0x619484e3
je 0x140118d76
and esi, 0xfffffffe
lea rdi, [rbp + 0xa0]
xor eax, eax
mov dword [rsp - 0x20], edi
xchg r15, rcx
mov r15, r12
xchg rcx, r15
rep stosb byte [rdi], al
mov dword [rsp - 0x34], esp
test dl, dl
jne 0x140119057
movdqa xmm0, xmmword [0x140014710]
lea rdx, [rbp - 8]
mov dword [rsp - 0x2c], 0x2bc67f68
xchg rbp, rsp
movdqa xmmword [rsp + 0x60], xmm0
xchg rsp, rbp
lea rcx, [rbp - 8]
mov dword [rsp - 0x2c], ebx
mov byte [rbp + 0x70], 0x2b
xor byte [rbp + 0x70], 0x1a
xor byte [rbp + 0x70], 0x3a
add byte [rbp + 0x70], 0xbf
xorps xmm0, xmm0
mov dword [rsp - 0x38], esp
xchg r14, rdx
mov qword [rbp - 0x10], r14
xchg rdx, r14
mov eax, 0x3035b7fd
add eax, 0x20cacc48
sub eax, 0x4749dba3
xor eax, 0x9b6a8b3
mov qword [rbp + 0x28], rax
mov rsi, rsi
xchg rbp, r11
movups xmmword [r11 - 8], xmm0
xchg rbp, r11
movups xmmword [rbp + 8], xmm0
mov dword [rsp - 0x3c], 0x6dc50649
xchg rbp, rcx
movups xmmword [rcx + 0x18], xmm0
xchg rbp, rcx
cmp rdx, rcx
je 0x140118e25
xchg rdx, r11
mov rcx, r11
xchg r11, rdx
call fcn.140098930
xchg r13, r13
xchg r9, rax
mov r9, qword [rbp + 0x28]
xchg r9, rax
lea rdx, [rbp - 8]
xorps xmm0, xmm0
mov qword [rbp - 0x10], rdx
mov r14, r14
xchg r9, rcx
mov r9, r15
xchg rcx, r9
xchg rbp, r10
movups xmmword [r10 - 8], xmm0
xchg rbp, r10
xchg rbp, r12
movups xmmword [r12 + 8], xmm0
xchg rbp, r12
movups xmmword [rbp + 0x18], xmm0
mov dword [rsp - 0x40], edx
test rax, rax
je 0x140118e80
movzx eax, byte [rbp + rcx + 0x60]
xchg rdx, rdx
mov word [rdx + rcx*2], ax
add rcx, rbx
cmp rcx, qword [rbp + 0x28]
jb 0x140118e64
mov r8, r8
lea rcx, [rbp - 0x10]
or esi, 2
call fcn.14008a630
test al, al
mov dword [rsp - 0x44], 0x7f76f047
jne 0x140118fa5
movdqa xmm0, xmmword [0x140014700]
lea rcx, [rbp - 0x48]
xchg rbp, rcx
movdqa xmmword [rcx + 0x30], xmm0
xchg rcx, rbp
lea rax, [rbp - 0x48]
mov rbx, rbx
mov word [rbp + 0x40], 0x1b19
add word [rbp + 0x40], 0x14a4
add word [rbp + 0x40], 0x242e
sub word [rbp + 0x40], 0x3262
xor word [rbp + 0x40], 0x6149
xorps xmm0, xmm0
xchg rcx, r10
mov qword [rbp - 0x50], r10
xchg rcx, r10
xchg r14, r11
mov qword [rbp - 0x18], r11
xchg r11, r14
xchg r15, rbp
movups xmmword [r15 - 0x48], xmm0
xchg rbp, r15
xchg rsp, rbp
movups xmmword [rsp - 0x38], xmm0
xchg rsp, rbp
xchg rbp, r13
movups xmmword [r13 - 0x28], xmm0
xchg r13, rbp
cmp rcx, rax
je 0x140118f2b
xchg r9, r9
call fcn.140098930
xchg r14, rbx
mov rbx, qword [rbp - 0x18]
xchg rbx, r14
lea rdx, [rbp - 0x48]
mov rbp, rbp
xorps xmm0, xmm0
mov qword [rbp - 0x50], rdx
mov rcx, r15
xchg r8, r8
xchg rbp, r8
movups xmmword [r8 - 0x48], xmm0
xchg rbp, r8
xchg rbx, rbp
movups xmmword [rbx - 0x38], xmm0
xchg rbp, rbx
movups xmmword [rbp - 0x28], xmm0
test r14, r14
je 0x140118f87
mov dword [rsp - 0x40], 0x5d428b0b
movzx eax, byte [rbp + rcx + 0x30]
mov word [rdx + rcx*2], ax
add rcx, rbx
cmp rcx, qword [rbp - 0x18]
mov dword [rsp - 0x24], 0x21c41431
jb 0x140118f69
lea rcx, [rbp - 0x50]
or esi, 4
mov dword [rsp - 0x18], ebp
call fcn.14008a630
mov r14b, r15b
test al, al
je 0x140118fa8
xchg rdi, rdi
mov r14b, bl
mov r12d, 0x17091d8c
add r12d, 0x46c7b817
add r12d, 0x1ae521d0
sub r12d, 0x28d162c0
sub r12d, 0x4fe49483
test sil, 4
mov dword [rsp - 0x30], edx
je 0x14011900d
mov rcx, qword [rbp - 0x50]
lea rax, [rbp - 0x48]
cmp rcx, rax
mov dword [rsp - 0xc], 0x72e3812b
jne 0x140119005
lea rdi, [rbp - 0x48]
xor eax, eax
mov ecx, r12d
mov dword [rsp - 0x30], esi
rep stosb byte [rdi], al
jmp 0x14011900d
call fcn.140098930
mov r13, r13
mov rcx, qword [rbp - 0x10]
lea rax, [rbp - 8]
cmp rcx, rax
mov dword [rsp - 0x1c], ecx
jne 0x140119043
lea rdi, [rbp - 8]
xor eax, eax
xchg r14, r14
xchg rcx, r13
mov r13, r12
xchg rcx, r13
rep stosb byte [rdi], al
mov dword [rsp - 0x38], 0x6cee7978
jmp 0x140119048
call fcn.140098930
test r14b, r14b
mov rdi, rdi
jne 0x140119057
mov bl, r15b
xor eax, eax
lea rdi, [rbp + 0xc0]
mov rbp, rbp
lea ecx, [rax + 0x13]
rep stosb byte [rdi], al
xor eax, eax
lea r11, [rsp + 0x270]
mov r9, r9
xchg rbx, rsi
mov rbx, qword [r11 + 0x40]
xchg rbx, rsi
lea rdi, [rbp + 0x80]
mov rsp, rsp
lea ecx, [rax + 0xd]
rep stosb byte [rdi], al
mov rdi, qword [r11 + 0x48]
xchg r14, r14
mov al, bl
xchg rbx, r14
mov r14, qword [r11 + 0x38]
xchg r14, rbx
xchg r11, rsp
mov r11, rsp
xchg rsp, r11
pop r15
xchg r12, r12
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
mov r13, qword [rsp]
add rsp, 8
pop r12
xchg rcx, rcx
nop
mov rbp, qword [rsp]
add rsp, 8
ret