Function at 0x1401179cc
Capabilities:
Encode data using xor

Disassembly:
xchg rsi, rsp
mov rax, rsi
xchg rsp, rsi
xchg r12, rbx
mov qword [rax + 0x10], r12
xchg r12, rbx
xchg r12, rsi
mov qword [rax + 0x18], r12
xchg rsi, r12
mov qword [rax + 0x20], rdi
nop
sub rsp, 8
mov qword [rsp], rbp
push r13
mov r12, r12
push r14
lea rbp, [rax - 0xa8]
add rsp, 0xfffffffffffffe70
xor esi, esi
mov dword [rsp - 0x1c], esi
mov dword [rsp + 0x30], 0x7dcdbc99
sub dword [rsp + 0x30], 0x18414993
xor dword [rsp + 0x30], 0x57f3702e
xor dword [rsp + 0x30], 0x323a03eb
mov dword [rsp + 0x34], 0xc9f1fe0
add dword [rsp + 0x34], 0x6cf89395
sub dword [rsp + 0x34], 0x1586c493
sub dword [rsp + 0x34], 0x185dd85a
xor dword [rsp + 0x34], 0x4bd0165d
mov dword [rsp + 0x38], 0x7e36dba3
sub dword [rsp + 0x38], 0x105e83d8
xor dword [rsp + 0x38], 0x5b960bf9
xor dword [rsp + 0x38], 0x36085ce5
xchg rsi, rdi
mov qword [rbp + 0xb0], rdi
xchg rdi, rsi
xchg r9, rax
mov r9, qword [rbp + 0xb0]
xchg r9, rax
lea ebx, [rsi + 1]
mov dword [rsp - 0x20], 0x71d666f5
lea r14d, [rsi + 6]
xchg rcx, r12
mov r12, qword [rbp + 0xb0]
xchg r12, rcx
mov rax, qword [rbp + 0xb0]
mov dword [rsp - 0x44], esi
and cl, 3
shl cl, 3
movzx edx, word [rsp + rax*2 + 0x30]
mov eax, 0xd29deba
xor eax, 0x7270bef3
sub eax, 0x47b7eaaa
sub eax, 0x347e4110
add eax, 0x51c44251
shr eax, cl
movzx ecx, al
mov rax, qword [rbp + 0xb0]
mov dword [rsp - 0x40], 0x695f9138
xor cx, dx
mov word [rbp + rax*2 - 0x10], cx
xchg r13, rax
mov r13, qword [rbp + 0xb0]
xchg r13, rax
add rax, rbx
mov qword [rbp + 0xb0], rax
mov dword [rsp - 0x14], ebp
xchg r11, rax
mov r11, qword [rbp + 0xb0]
xchg r11, rax
cmp rax, r14
xchg r15, r15
jb 0x140117aa0
lea rax, [rbp - 0x10]
mov word [rbp - 4], si
mov qword [rbp - 0x38], rax
mov r8, r8
mov r13d, 0x314ea4ba
sub r13d, 0xf67ec20
xor r13d, 0x366253ea
xor r13d, 0x45d03982
sub r13d, 0x5254d2db
mov eax, 0x1289ef36
xor eax, 0x6a84c5f1
xor eax, 0x798043fc
add eax, 0x7a9c1395
sub eax, 0x7c297c13
mov dword [rbp - 0x40], 0x4108ea44
sub dword [rbp - 0x40], 0x1bd1c254
add dword [rbp - 0x40], 0x1ab84a25
add dword [rbp - 0x40], 0x2db71edc
sub dword [rbp - 0x40], 0x6d9890e5
mov word [rbp - 0x46], ax
mov dword [rsp + 0x6a], 0x14a18de0
xor dword [rsp + 0x6a], 0x5ec0044a
add dword [rsp + 0x6a], 0x16d75ff3
xor dword [rsp + 0x6a], 0x612be916
mov dword [rsp + 0x6e], 0x58c4967a
sub dword [rsp + 0x6e], 0x29660c73
add dword [rsp + 0x6e], 0xcf3df2
xor dword [rsp + 0x6e], 0x304dc728
mov dword [rsp + 0x72], 0x1f13fc1f
sub dword [rsp + 0x72], 0xeae4d9a
add dword [rsp + 0x72], 0x6f953769
sub dword [rsp + 0x72], 0x7ff6e548
mov dword [rsp + 0x76], 0x62e396b8
sub dword [rsp + 0x76], 0x15382cb
sub dword [rsp + 0x76], 0xaeb341
xor dword [rsp + 0x76], 0x4612a084
xor dword [rsp + 0x76], 0x26c2c0aa
mov dword [rsp + 0x7a], 0x55bb97fe
xor dword [rsp + 0x7a], 0x6a14f165
add dword [rsp + 0x7a], 0x113ec405
sub dword [rsp + 0x7a], 0x2d6aeb96
sub dword [rsp + 0x7a], 0x23563e4a
mov dword [rsp + 0x7e], 0x161b1d22
add dword [rsp + 0x7e], 0x21152049
add dword [rsp + 0x7e], 0x219f6af9
sub dword [rsp + 0x7e], 0x58afa7d5
mov dword [rbp - 0x7e], 0x3a57e9e7
sub dword [rbp - 0x7e], 0x1b691c9d
xor dword [rbp - 0x7e], 0x6729fbb
xor dword [rbp - 0x7e], 0x59523f73
sub dword [rbp - 0x7e], 0x41c86cee
mov dword [rbp - 0x7a], 0x31bdf727
add dword [rbp - 0x7a], 0x37137e95
sub dword [rbp - 0x7a], 0x6879eccb
add dword [rbp - 0x7a], 0x442702ff
xor dword [rbp - 0x7a], 0x44108b64
mov dword [rbp - 0x76], 0x646bf916
xor dword [rbp - 0x76], 0x1415984b
xor dword [rbp - 0x76], 0x698f7235
xor dword [rbp - 0x76], 0x6261ae7c
xor dword [rbp - 0x76], 0x7bc9bddb
mov dword [rbp - 0x72], 0x3a1f104b
sub dword [rbp - 0x72], 0x28398f5d
sub dword [rbp - 0x72], 0x7d1929a
xor dword [rbp - 0x72], 0x77eba7bd
xor dword [rbp - 0x72], 0x7dc54969
mov dword [rbp - 0x6e], 0x5083bcae
xor dword [rbp - 0x6e], 0x30cbd89c
xor dword [rbp - 0x6e], 0x73a54e4e
xor dword [rbp - 0x6e], 0x13f32ae8
mov dword [rbp - 0x6a], 0x7840ea81
xor dword [rbp - 0x6a], 0x42f123cc
xor dword [rbp - 0x6a], 0x2ccd7174
xor dword [rbp - 0x6a], 0x47e02908
sub dword [rbp - 0x6a], 0x5166909f
mov dword [rbp - 0x66], 0x6d1c4dda
sub dword [rbp - 0x66], 0x17dcef33
sub dword [rbp - 0x66], 0x34d88828
add dword [rbp - 0x66], 0x4e3e262
xor dword [rbp - 0x66], 0x255fb82f
mov dword [rbp - 0x62], 0x21ef904d
sub dword [rbp - 0x62], 0x204d33ce
xor dword [rbp - 0x62], 0x260854ac
add dword [rbp - 0x62], 0x871969e
sub dword [rbp - 0x62], 0x2fe29ee9
mov dword [rbp - 0x5e], 0x6e6357da
xor dword [rbp - 0x5e], 0x11f42cf9
sub dword [rbp - 0x5e], 0x2f18ac89
xor dword [rbp - 0x5e], 0x5069ce55
mov dword [rbp - 0x5a], 0x65b57a45
xor dword [rbp - 0x5a], 0x256b8982
add dword [rbp - 0x5a], 0x1535d296
xor dword [rbp - 0x5a], 0x5629c6d6
mov dword [rbp - 0x56], 0x6f8a3669
sub dword [rbp - 0x56], 0x62b33ecb
add dword [rbp - 0x56], 0x1be1f3a4
sub dword [rbp - 0x56], 0x289deab4
mov dword [rbp - 0x52], 0x2b3903cd
xor dword [rbp - 0x52], 0x1c68c016
add dword [rbp - 0x52], 0x1294fc04
xor dword [rbp - 0x52], 0x296a42e0
sub dword [rbp - 0x52], 0x6011fcb4
mov dword [rbp - 0x4e], 0x4290731e
sub dword [rbp - 0x4e], 0x40989573
add dword [rbp - 0x4e], 0x132b1a74
add dword [rbp - 0x4e], 0x2eca93bc
sub dword [rbp - 0x4e], 0x43da8b50
mov dword [rbp - 0x4a], 0x2ab80a6b
xor dword [rbp - 0x4a], 0x2ba45bd5
add dword [rbp - 0x4a], 0x634f735b
sub dword [rbp - 0x4a], 0x3cd138dd
sub dword [rbp - 0x4a], 0x273a8b6b
xchg rsi, rdx
mov qword [rbp + 0xb0], rdx
xchg rsi, rdx
mov rax, qword [rbp + 0xb0]
xchg rdx, rdx
mov rcx, qword [rbp + 0xb0]
xchg rbx, rax
mov rbx, qword [rbp + 0xb0]
xchg rbx, rax
and cl, 3
shl cl, 3
xchg r12, r12
movzx edx, word [rsp + rax*2 + 0x6a]
mov eax, 0x3a692ceb
xor eax, 0x6e75c459
sub eax, 0xbd61b8
sub eax, 0x27c2dc6c
add eax, 0x294acc52
shr eax, cl
movzx ecx, al
mov rax, qword [rbp + 0xb0]
mov rdi, rdi
xor cx, dx
mov word [rbp + rax*2 + 0x30], cx
xchg r9, rax
mov r9, qword [rbp + 0xb0]
xchg r9, rax
add rax, rbx
xchg rsi, rax
mov qword [rbp + 0xb0], rsi
xchg rsi, rax
xchg r9, rax
mov r9, qword [rbp + 0xb0]
xchg r9, rax
cmp rax, 0x29
jb 0x140117e4e
mov dword [rsp - 0x40], edx
lea rax, [rbp + 0x30]
mov word [rbp + 0x82], si
lea r9, [rbp - 0x30]
xchg r8, rax
mov qword [rbp - 0x28], r8
xchg r8, rax
lea r8, [rbp - 0x40]
mov dword [rbp - 0x30], 0x537da389
xor dword [rbp - 0x30], 0x6a22940b
add dword [rbp - 0x30], 0x1ef045eb
sub dword [rbp - 0x30], 0x3f1e17a7
sub dword [rbp - 0x30], 0x18dd6574
xor edx, edx
mov dword [rsp + 0x20], esi
xchg r8, r8
xor ecx, ecx
call fcn.1401335d0
xchg rdi, rax
mov rax, rdi
xchg rdi, rax
test rax, rax
je 0x140117f7d
mov rcx, rax
mov r8, r8
call fcn.14010f330
test al, al
je 0x140117f7d
mov rsp, rsp
lea rdx, [rbp - 0x40]
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
call fcn.14010e2c4
mov r9, r9
test al, al
je 0x140117f7d
lea rdx, [rbp - 0x30]
mov rcx, rdi
mov dword [rsp - 0x10], 0xd173f5
call fcn.14010f1f4
test al, al
jne 0x14011828a
mov eax, 0x3e01083a
sub eax, 0xa576aa8
xor eax, 0x1c5d4869
xor eax, 0x2ff4d52e
mov dword [rsp + 0x3c], 0xb1d91e1
add dword [rsp + 0x3c], 0xa2ad97a
add dword [rsp + 0x3c], 0x2c0fe179
xor dword [rsp + 0x3c], 0x319bc813
sub dword [rsp + 0x3c], 0x70b0843c
mov word [rsp + 0x68], ax
mov dword [rsp + 0x40], 0x1c926ab3
add dword [rsp + 0x40], 0x5fe7627b
sub dword [rsp + 0x40], 0x672eb854
sub dword [rsp + 0x40], 0x14eb1409
mov dword [rsp + 0x44], 0x3eb6e0d8
add dword [rsp + 0x44], 0x467a7b6
xor dword [rsp + 0x44], 0x7953940d
xor dword [rsp + 0x44], 0x2f6eacda
sub dword [rsp + 0x44], 0x14fcaf99
mov dword [rsp + 0x48], 0x39dabadb
add dword [rsp + 0x48], 0x4183746c
xor dword [rsp + 0x48], 0x740a5c25
add dword [rsp + 0x48], 0xd449d2b
sub dword [rsp + 0x48], 0x1c250fd7
mov dword [rsp + 0x4c], 0x6edbb23
add dword [rsp + 0x4c], 0x5d1070fb
sub dword [rsp + 0x4c], 0x40ce2890
sub dword [rsp + 0x4c], 0x232c02e7
mov dword [rsp + 0x50], 0x7ac835a3
sub dword [rsp + 0x50], 0x725a7341
xor dword [rsp + 0x50], 0x3e1ecd7c
sub dword [rsp + 0x50], 0x36520e96
mov dword [rsp + 0x54], 0x1d9726c2
xor dword [rsp + 0x54], 0x630b84a9
sub dword [rsp + 0x54], 0x4522d5c1
sub dword [rsp + 0x54], 0x392dcc1a
mov dword [rsp + 0x58], 0x24bb02
xor dword [rsp + 0x58], 0x3eff03f3
sub dword [rsp + 0x58], 0x17732e2b
xor dword [rsp + 0x58], 0x270e8a19
mov dword [rsp + 0x5c], 0x10e307fd
xor dword [rsp + 0x5c], 0x5372e546
sub dword [rsp + 0x5c], 0x65fafef
add dword [rsp + 0x5c], 0x3e0788c4
sub dword [rsp + 0x5c], 0x7af5babe
mov dword [rsp + 0x60], 0x1b86dd4a
add dword [rsp + 0x60], 0x56706264
sub dword [rsp + 0x60], 0x585bca05
sub dword [rsp + 0x60], 0x193874d7
mov dword [rsp + 0x64], 0x1c150673
sub dword [rsp + 0x64], 0x14d5dc53
add dword [rsp + 0x64], 0x528a07ac
sub dword [rsp + 0x64], 0x597a30f9
mov qword [rbp + 0xb0], rsi
xchg rcx, rax
mov rcx, qword [rbp + 0xb0]
xchg rcx, rax
mov rcx, qword [rbp + 0xb0]
xchg rsp, rax
mov rsp, qword [rbp + 0xb0]
xchg rsp, rax
and cl, 3
mov r14, r14
shl cl, 1
shl cl, 1
shl cl, 1
movzx edx, word [rsp + rax*2 + 0x3c]
mov eax, 0x6b82dc10
xor eax, 0x4c1df41
sub eax, 0x27c07656
add eax, 0xd64e9e5
shr eax, cl
mov r9, r9
movzx ecx, al
xchg r11, rax
mov r11, qword [rbp + 0xb0]
xchg r11, rax
xor cx, dx
mov word [rbp + rax*2], cx
mov dword [rsp - 0x10], ecx
xchg r12, rax
mov r12, qword [rbp + 0xb0]
xchg r12, rax
add rax, rbx
mov r8, r8
xchg rcx, rax
mov qword [rbp + 0xb0], rcx
xchg rcx, rax
mov rax, qword [rbp + 0xb0]
mov r8, r8
cmp rax, r13
jb 0x140118128
lea rax, [rbp]
mov word [rbp + 0x2e], si
xchg r8, r8
lea r9, [rbp - 0x20]
mov qword [rbp - 0x18], rax
lea r8, [rbp - 0x40]
mov dword [rbp - 0x20], 0x22d42a21
add dword [rbp - 0x20], 0x498a3584
sub dword [rbp - 0x20], 0x1eabdbb8
sub dword [rbp - 0x20], 0x2c3db649
sub dword [rbp - 0x20], 0x2144cd76
xor edx, edx
mov r11, r11
mov dword [rsp + 0x20], esi
xor ecx, ecx
call fcn.1401335d0
mov dword [rsp - 0xc], 0x33694915
mov rdi, rax
test rax, rax
je 0x14011826a
mov dword [rsp - 0x28], 0x775dcf4c
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
call fcn.14010f330
test al, al
mov dword [rsp - 0x18], edi
je 0x14011826a
lea rdx, [rbp - 0x40]
xchg rdi, rcx
mov rdi, rcx
xchg rdi, rcx
call fcn.14010e2c4
test al, al
xchg r12, r12
je 0x14011826a
lea rdx, [rbp - 0x20]
xchg r8, rdi
mov rcx, r8
xchg rdi, r8
call fcn.14010f1f4
test al, al
mov dword [rsp - 0x34], 0x2b4bbecb
jne 0x14011826d
mov bl, sil
lea rdi, [rbp]
xor eax, eax
mov dword [rsp - 0x28], esi
xchg rsp, r13
mov rcx, rsp
xchg r13, rsp
rep stosb byte [rdi], al
mov dword [rsp - 0xc], 0x11df8a84
xor eax, eax
lea r11, [rsp + 0x190]
mov rsi, qword [r11 + 0x30]
lea rdi, [rbp + 0x30]
mov dword [rsp - 0x34], 0x2508d620
lea ecx, [rax + 0x29]
rep stosb byte [rdi], al
lea rdi, [rbp - 0x10]
xchg rbp, rbp
xchg r14, rbp
mov rcx, rbp
xchg rbp, r14
rep stosb byte [rdi], al
mov r13, r13
xchg r12, rdi
mov r12, qword [r11 + 0x38]
xchg rdi, r12
mov al, bl
mov rdi, rdi
mov rbx, qword [r11 + 0x28]
xchg r11, rsp
mov r11, rsp
xchg r11, rsp
pop r14
nop
mov r13, qword [rsp]
add rsp, 8
pop rbp
ret