Function at 0x1401ae1f0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
xchg rsi, r10
mov qword [rsp + 0x10], r10
xchg rsi, r10
xchg r13, rdi
mov qword [rsp + 0x18], r13
xchg r13, rdi
nop
mov qword [rsp - 8], rbp
sub rsp, 8
lea rbp, [rsp - 0x57]
sub rsp, 0xa0
mov rdi, r8
xchg r9, rdx
mov rbx, r9
xchg r9, rdx
xchg rsi, rdx
mov rdx, rcx
xchg rsi, rdx
test r8, r8
je 0x1401ae970
nop
mov dword [rbp - 0x29], 0x7ec4c1c3
sub dword [rbp - 0x29], 0x3e120ee0
sub dword [rbp - 0x29], 0x2323b517
add dword [rbp - 0x29], 0x392d8d1c
sub dword [rbp - 0x29], 0x4e56aaf9
add dword [rbp - 0x29], 0xee911707
mov dword [rbp + 0x16], 0x70a601e8
xor dword [rbp + 0x16], 0x2f7d670a
sub dword [rbp + 0x16], 0x31e58220
xor dword [rbp + 0x16], 0x31c65ee2
xor dword [rbp + 0x16], 0x59c5bf2c
xor dword [rbp + 0x16], 0x7398ed85
add dword [rbp + 0x16], 0x6cd52b1
mov dword [rbp - 0x25], 0x47ea0ac3
add dword [rbp - 0x25], 0xdea0137
add dword [rbp - 0x25], 0x1f056d48
add dword [rbp - 0x25], 0xb136da3
sub dword [rbp - 0x25], 0x45babf8b
sub dword [rbp - 0x25], 0x3700593e
xor dword [rbp - 0x25], 0x56c8c898
xor dword [rbp - 0x25], 0xa30ff072
mov dword [rbp + 0x1a], 0x79a32f9c
sub dword [rbp + 0x1a], 0x4c694069
add dword [rbp + 0x1a], 0x9d6c6f1
sub dword [rbp + 0x1a], 0x2481fe5d
xor dword [rbp + 0x1a], 0x40ffbb73
add dword [rbp + 0x1a], 0x1346f006
xor dword [rbp + 0x1a], 0x376a4d8d
sub dword [rbp + 0x1a], 0x119d71f9
mov dword [rbp - 0x21], 0x163f012c
add dword [rbp - 0x21], 0x3713de16
xor dword [rbp - 0x21], 0x25e720ab
sub dword [rbp - 0x21], 0x5b0c2898
add dword [rbp - 0x21], 0x4d73efb5
add dword [rbp - 0x21], 0x596e0c2
add dword [rbp - 0x21], 0x96424f2e
mov dword [rbp + 0x1e], 0x41580208
sub dword [rbp + 0x1e], 0x3b796a0c
add dword [rbp + 0x1e], 0x1bd9b206
add dword [rbp + 0x1e], 0x32696100
sub dword [rbp + 0x1e], 0x35d8eddc
xor dword [rbp + 0x1e], 0x5203fe64
mov dword [rbp - 0x1d], 0x2af8850c
xor dword [rbp - 0x1d], 0x2a0b5eb5
add dword [rbp - 0x1d], 0x5576712
add dword [rbp - 0x1d], 0x467c202d
xor dword [rbp - 0x1d], 0x247c8a4b
xor dword [rbp - 0x1d], 0x9e4d1e45
mov dword [rbp + 0x22], 0x5e52c25b
sub dword [rbp + 0x22], 0xb75fd9f
sub dword [rbp + 0x22], 0x31abfe29
xor dword [rbp + 0x22], 0x131526a4
add dword [rbp + 0x22], 0x1ffeaa8
xor dword [rbp + 0x22], 0x3ae3c11
add dword [rbp + 0x22], 0x54fcab1
add dword [rbp + 0x22], 0x13738cce
mov dword [rbp - 0x19], 0x2faa7987
add dword [rbp - 0x19], 0x4bd5e93e
sub dword [rbp - 0x19], 0x1cf6371a
sub dword [rbp - 0x19], 0x30a39063
add dword [rbp - 0x19], 0x3fbf1af0
xor dword [rbp - 0x19], 0x9b5340ce
mov dword [rbp + 0x26], 0x7c30e50d
sub dword [rbp + 0x26], 0x7a5f1f6d
xor dword [rbp + 0x26], 0x61241982
sub dword [rbp + 0x26], 0x23427e15
add dword [rbp + 0x26], 0x10bad6f3
sub dword [rbp + 0x26], 0x47d0c5b
add dword [rbp + 0x26], 0xa6229ac
mov dword [rbp - 0x15], 0x2eb60e01
add dword [rbp - 0x15], 0x2163c763
xor dword [rbp - 0x15], 0x480003ed
xor dword [rbp - 0x15], 0x2a6aba07
add dword [rbp - 0x15], 0x3184772d
xor dword [rbp - 0x15], 0x9501154d
mov dword [rbp + 0x2a], 0x710d5dbf
sub dword [rbp + 0x2a], 0x5d4a6efe
sub dword [rbp + 0x2a], 0xf9f22b3
add dword [rbp + 0x2a], 0x4e08bb7b
sub dword [rbp + 0x2a], 0xdc74439
sub dword [rbp + 0x2a], 0x1f504f0d
add dword [rbp + 0x2a], 0x33426212
mov dword [rbp - 0x11], 0x73a1eefa
xor dword [rbp - 0x11], 0x6b969b73
add dword [rbp - 0x11], 0x5d1045e
add dword [rbp - 0x11], 0x132ee05e
add dword [rbp - 0x11], 0x2b76fd88
sub dword [rbp - 0x11], 0x4b3ff60f
add dword [rbp - 0x11], 0xe5889538
mov dword [rbp + 0x2e], 0x29d6b2de
add dword [rbp + 0x2e], 0x31b952d6
sub dword [rbp + 0x2e], 0x4b9ee21d
add dword [rbp + 0x2e], 0x51b287a5
xor dword [rbp + 0x2e], 0x737672d3
xor dword [rbp + 0x2e], 0x6152826d
xor dword [rbp + 0x2e], 0x1befd205
sub dword [rbp + 0x2e], 0x1d4b8f22
xor dword [rbp + 0x2e], 0x1747a03c
mov dword [rbp - 0xd], 0x29f3ac9a
add dword [rbp - 0xd], 0x9142a50
add dword [rbp - 0xd], 0x2aa893d2
xor dword [rbp - 0xd], 0x6d8df9d4
add dword [rbp - 0xd], 0x124dd5d7
add dword [rbp - 0xd], 0x236a9458
add dword [rbp - 0xd], 0x9100f95f
mov dword [rbp + 0x32], 0x165cda77
add dword [rbp + 0x32], 0x3fa02d59
xor dword [rbp + 0x32], 0x3c1aaf46
sub dword [rbp + 0x32], 0x6465736c
add dword [rbp + 0x32], 0x1ebd5c0
add dword [rbp + 0x32], 0x58f15373
mov dword [rbp - 9], 0x1ee4eeb2
xor dword [rbp - 9], 0x1ff5ef2f
add dword [rbp - 9], 0x3682899f
add dword [rbp - 9], 0x42ccb523
sub dword [rbp - 9], 0x342452fe
add dword [rbp - 9], 0xb0bb0995
mov dword [rbp + 0x36], 0x779686e2
sub dword [rbp + 0x36], 0x19ead59e
sub dword [rbp + 0x36], 0x1f2e9bcc
xor dword [rbp + 0x36], 0x6d8bbb31
sub dword [rbp + 0x36], 0x4d60c30d
xor dword [rbp + 0x36], 0x7adaa3ba
sub dword [rbp + 0x36], 0x38fe64e1
xor dword [rbp + 0x36], 0x95ac4d5
xor dword [rbp + 0x36], 0x2e694511
mov dword [rbp - 5], 0x405a3f0d
sub dword [rbp - 5], 0x35390d7b
add dword [rbp - 5], 0x943b43c
sub dword [rbp - 5], 0x9598397
add dword [rbp - 5], 0x59f80b21
sub dword [rbp - 5], 0x359e376
xor dword [rbp - 5], 0x37d7d302
sub dword [rbp - 5], 0x18e6a4f3
xor dword [rbp - 5], 0xcb61431b
mov dword [rbp + 0x3a], 0x5d264124
sub dword [rbp + 0x3a], 0x3084a5ea
add dword [rbp + 0x3a], 0x22215d68
add dword [rbp + 0x3a], 0x201fc9c7
add dword [rbp + 0x3a], 0xd7da5b
add dword [rbp + 0x3a], 0x4d76fac
xor dword [rbp + 0x3a], 0x300c557c
add dword [rbp + 0x3a], 0x29cf135f
mov dword [rbp - 1], 0x5d35b45e
xor dword [rbp - 1], 0x53c17ced
add dword [rbp - 1], 0x4dd0554b
sub dword [rbp - 1], 0x137fbafd
sub dword [rbp - 1], 0x2a04c4bd
sub dword [rbp - 1], 0x1f8c437
xor dword [rbp - 1], 0xebb12cfb
mov dword [rbp + 0x3e], 0x29c91635
add dword [rbp + 0x3e], 0x1171cc86
xor dword [rbp + 0x3e], 0x7f667519
add dword [rbp + 0x3e], 0x16b1bd23
sub dword [rbp + 0x3e], 0x16bde3b4
sub dword [rbp + 0x3e], 0x197221f6
add dword [rbp + 0x3e], 0x47932154
mov dword [rbp + 3], 0x6f1551db
add dword [rbp + 3], 0xb4c59f8
xor dword [rbp + 3], 0x3462c116
xor dword [rbp + 3], 0x4eec65c4
add dword [rbp + 3], 0x16d07a8f
add dword [rbp + 3], 0xdf376d66
mov dword [rbp + 0x42], 0x62ac3da6
sub dword [rbp + 0x42], 0x5b044186
add dword [rbp + 0x42], 0x6b5ba319
sub dword [rbp + 0x42], 0x1ef7c7cb
sub dword [rbp + 0x42], 0xab0f0a7
add dword [rbp + 0x42], 0x213afc35
add dword [rbp + 0x42], 0xa65ba6f
sub dword [rbp + 0x42], 0x62dbaf05
add dword [rbp + 0x42], 0x6455860d
mov dword [rbp + 7], 0x5ebe0573
sub dword [rbp + 7], 0x2339b423
xor dword [rbp + 7], 0x597a3323
sub dword [rbp + 7], 0x308d097e
sub dword [rbp + 7], 0x19e943b6
add dword [rbp + 7], 0xde6ee1b7
mov dword [rbp + 0x46], 0x508ea45f
add dword [rbp + 0x46], 0x8927326
xor dword [rbp + 0x46], 0x4ff2f5d3
add dword [rbp + 0x46], 0x5a3b7fd1
sub dword [rbp + 0x46], 0x39fb1235
sub dword [rbp + 0x46], 0x359a1c03
add dword [rbp + 0x46], 0x592c83a9
sub dword [rbp + 0x46], 0x66547fa
xor dword [rbp + 0x46], 0x2e3817e9
mov dword [rbp + 0xb], 0x6e7cd4b8
sub dword [rbp + 0xb], 0x695c455f
add dword [rbp + 0xb], 0x36a41069
add dword [rbp + 0xb], 0x37388e57
sub dword [rbp + 0xb], 0x64ffe7c2
xor dword [rbp + 0xb], 0x68b82422
sub dword [rbp + 0xb], 0x1bf0f4f2
add dword [rbp + 0xb], 0xada28973
mov dword [rbp + 0x4a], 0x5463d903
sub dword [rbp + 0x4a], 0x475554e6
add dword [rbp + 0x4a], 0x1c72bd54
xor dword [rbp + 0x4a], 0x281b939c
add dword [rbp + 0x4a], 0x72e96f38
sub dword [rbp + 0x4a], 0x59f3a370
add dword [rbp + 0x4a], 0x4250561b
sub dword [rbp + 0x4a], 0x328e228f
add dword [rbp + 0x4a], 0x542aaa3a
mov dword [rbp + 0xf], 0x4619219a
sub dword [rbp + 0xf], 0x605f126
add dword [rbp + 0xf], 0x2edd85ef
add dword [rbp + 0xf], 0xa3364e3
sub dword [rbp + 0xf], 0x47c98502
sub dword [rbp + 0xf], 0x301f1a14
add dword [rbp + 0xf], 0x69022a8a
xor dword [rbp + 0xf], 0x9ccb504c
mov dword [rbp + 0x4e], 0x439344e1
sub dword [rbp + 0x4e], 0x1908d7e3
add dword [rbp + 0x4e], 0x2981612a
sub dword [rbp + 0x4e], 0x3afb0cfa
sub dword [rbp + 0x4e], 0x13581938
xor dword [rbp + 0x4e], 0x87392789
mov word [rbp + 0x13], 0x2eee
sub word [rbp + 0x13], 0x2e1
add word [rbp + 0x13], 0x4311
sub word [rbp + 0x13], 0x6741
add word [rbp + 0x13], 0x57f
add word [rbp + 0x13], 0xe99a
mov word [rbp + 0x52], 0x1bbf
add word [rbp + 0x52], 0xc1e
xor word [rbp + 0x52], 0x84c
xor word [rbp + 0x52], 0x3c7e
add word [rbp + 0x52], 0x2eb2
sub word [rbp + 0x52], 0x375f
add word [rbp + 0x52], 0x7941
xor eax, eax
mov byte [rbp + 0x54], al
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rbp + rax + 0x16]
movzx edx, byte [rbp + rax - 0x29]
add dl, cl
mov byte [rbp + rax + 0x16], dl
mov byte [rbp + rax - 0x29], 0x50
xor byte [rbp + rax - 0x29], 0x69
sub byte [rbp + rax - 0x29], 0x35
add byte [rbp + rax - 0x29], 0x55
add byte [rbp + rax - 0x29], 0xc
sub byte [rbp + rax - 0x29], 0x65
inc rax
cmp rax, 0x3e
jb 0x1401ae897
mov edx, 0x7e90eca8
xor edx, 0x14a7d564
sub edx, 0x29b51ba7
add edx, 0x16da43ab
sub edx, 0x42a4ba6f
add edx, 0x3d1b59bc
sub edx, 0x2ff523d8
xor edx, 0x11f21131
sub edx, 0x302fcc36
xor ecx, ecx
call fcn.1401aff80
movsxd rcx, eax
movzx edx, byte [rbp + rcx + 0x16]
xor eax, eax
nop dword [rax]
nop dword [rax + rax]
mov byte [rbp + rax + 0x16], 7
xor byte [rbp + rax + 0x16], 9
add byte [rbp + rax + 0x16], 0x46
add byte [rbp + rax + 0x16], 0x16
sub byte [rbp + rax + 0x16], 0x27
xor byte [rbp + rax + 0x16], 0x2c
xor byte [rbp + rax + 0x16], 0x27
xor byte [rbp + rax + 0x16], 0x48
inc rax
cmp rax, 0x3e
jb 0x1401ae924
mov byte [rbx], dl
inc rbx
sub rdi, 1
jne 0x1401ae241
mov qword [rsi], rbx
jmp 0x1401ae973
mov qword [rcx], rdx
xchg r11, rax
mov r11, rsi
xchg r11, rax
lea r11, [rsp + 0xa0]
xchg r13, rbx
mov r13, qword [r11 + 0x10]
xchg rbx, r13
mov rsi, qword [r11 + 0x18]
xchg rdi, r15
mov r15, qword [r11 + 0x20]
xchg r15, rdi
mov rsp, r11
push rbx
push rbx
push rcx
push rcx
push rdx
xchg qword [rsp + 0x28], rbp
add rsp, 0x30
nop
add rsp, 8
jmp qword [rsp - 8]