Function at 0x1400dd840
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov rsi, rsi
xchg r13, rsi
mov qword [rsp + 0x18], r13
xchg rsi, r13
push rbx
mov qword [rsp], rbp
push rdi
mov rsp, rsp
push r12
push r14
nop
mov qword [rsp - 8], r15
sub rsp, 8
lea rbp, [rsp - 0x170]
mov r10, r10
sub rsp, 0x33173e1d
add rsp, 0x33173bad
xor r15d, r15d
mov rdx, rdx
mov dword [rsp + 0x30], 0x14c05735
add dword [rsp + 0x30], 0x260b28ed
xor dword [rsp + 0x30], 0xfe17271
xor dword [rsp + 0x30], 0x354df271
mov dword [rbp + 0x1a0], r15d
xchg r11, r11
mov esi, r15d
mov word [rsp + 0x48], r15w
mov r14d, 0x4734c982
add r14d, 0x99d725f
xor r14d, 0x7b49fdb4
xor r14d, 0x7fccfad7
xor r14d, 0x641529f0
mov dword [rsp + 0x34], 0x10ec3bd4
xor dword [rsp + 0x34], 0x7c0d9036
sub dword [rsp + 0x34], 0x12918082
xor dword [rsp + 0x34], 0x5a032b4d
mov dword [rsp + 0x38], 0x35c6613d
sub dword [rsp + 0x38], 0x14af4256
add dword [rsp + 0x38], 0x1d34a657
sub dword [rsp + 0x38], 0x3de5c527
lea r12d, [r15 + 0x13]
mov dword [rsp + 0x3c], 0x30e415bf
xor dword [rsp + 0x3c], 0x7c61e31e
xor dword [rsp + 0x3c], 0xa49428d
sub dword [rsp + 0x3c], 0x3a3d46da
sub dword [rsp + 0x3c], 0xc176d21
lea ebx, [r15 + 1]
mov dword [rsp + 0x40], 0x2f515674
add dword [rsp + 0x40], 0x1517717c
sub dword [rsp + 0x40], 0x15670d5e
xor dword [rsp + 0x40], 0x72f15ec8
xor dword [rsp + 0x40], 0x5d86e449
mov dword [rsp + 0x44], 0x6177a71a
sub dword [rsp + 0x44], 0x2afe7270
add dword [rsp + 0x44], 0x15db3583
xor dword [rsp + 0x44], 0x2c2f3eec
xor dword [rsp + 0x44], 0x602e54e8
mov qword [rbp + 0x1a0], r15
mov dword [rsp - 0x2c], ecx
xchg rbx, rax
mov rbx, qword [rbp + 0x1a0]
xchg rbx, rax
xchg rcx, r12
mov r12, qword [rbp + 0x1a0]
xchg rcx, r12
mov rax, qword [rbp + 0x1a0]
and cl, 3
shl cl, 3
mov dword [rsp - 0x3c], 0x52ede537
movzx edx, word [rsp + rax*2 + 0x30]
mov eax, r14d
shr eax, cl
movzx ecx, al
xchg r13, r13
xchg rsp, rax
mov rsp, qword [rbp + 0x1a0]
xchg rsp, rax
xor cx, dx
mov word [rbp + rax*2 + 0x80], cx
mov rax, qword [rbp + 0x1a0]
mov r10, r10
add rax, rbx
mov qword [rbp + 0x1a0], rax
xchg rbx, rax
mov rbx, qword [rbp + 0x1a0]
xchg rbx, rax
cmp rax, 0xd
mov dword [rsp - 0x20], edx
jb 0x1400dd9b4
lea rax, [rbp + 0x80]
mov word [rbp + 0x9a], r15w
mov dword [rsp - 0x2c], 0x50721ae0
xorps xmm0, xmm0
xchg rdx, rax
mov qword [rbp - 0x68], rdx
xchg rdx, rax
lea r9, [rbp + 0x50]
mov dword [rbp - 0x70], 0x585d3070
xor dword [rbp - 0x70], 0x793180e8
add dword [rbp - 0x70], 0x2f2dd40d
sub dword [rbp - 0x70], 0x507e848b
lea r8, [rbp - 0x70]
mov dword [rsp - 0x10], esi
mov dword [rsp + 0x20], r15d
xor edx, edx
xor ecx, ecx
movups xmmword [rbp + 0x50], xmm0
mov dword [rsp - 0x30], ebx
call fcn.1400e32b0
mov rdi, rax
test rax, rax
je 0x1400ddace
xchg rsi, rsi
xchg rcx, rbp
mov rbp, rax
xchg rbp, rcx
call fcn.1400d3b78
test al, al
mov dword [rsp - 0x20], edx
je 0x1400ddace
lea rdx, [rbp - 0x70]
mov rcx, rdi
mov dword [rsp - 0x10], 0x1bda45d0
call fcn.1400d2b3c
test al, al
jne 0x1400de2f8
mov eax, 0x26bbab70
xor eax, 0x3d72ad86
add eax, 0xaa5e25c
sub eax, 0x266ee92b
mov dword [rsp + 0x68], 0x1c5018d9
add dword [rsp + 0x68], 0x2e4322d0
add dword [rsp + 0x68], 0x10323c81
sub dword [rsp + 0x68], 0x5a5177eb
mov word [rbp - 0x74], ax
mov dword [rsp - 0x18], 0x158892b1
mov dword [rsp + 0x6c], 0x57e6862c
xor dword [rsp + 0x6c], 0x14a3ec5e
xor dword [rsp + 0x6c], 0x370d0612
sub dword [rsp + 0x6c], 0x332d40a2
sub dword [rsp + 0x6c], 0x40bd2b93
mov dword [rsp + 0x70], 0x3ec2ac0e
sub dword [rsp + 0x70], 0x226cb20b
xor dword [rsp + 0x70], 0x17fc4b6
sub dword [rsp + 0x70], 0x1cae3e90
mov dword [rsp + 0x74], 0xfe91b25
add dword [rsp + 0x74], 0x202d4cf5
add dword [rsp + 0x74], 0x1aa0235c
xor dword [rsp + 0x74], 0x4ae28b5a
mov dword [rsp + 0x78], 0x3a6b91ca
add dword [rsp + 0x78], 0xed82587
sub dword [rsp + 0x78], 0x37cadb7b
add dword [rsp + 0x78], 0x21e8a0ad
sub dword [rsp + 0x78], 0x32ff7c66
mov dword [rsp + 0x7c], 0x261ec4c8
add dword [rsp + 0x7c], 0x2b04f498
sub dword [rsp + 0x7c], 0xa803e2c
xor dword [rsp + 0x7c], 0x607e0953
xor dword [rsp + 0x7c], 0x26817266
mov dword [rbp - 0x80], 0x142596f4
xor dword [rbp - 0x80], 0x56d021f7
sub dword [rbp - 0x80], 0x1adc2e2a
sub dword [rbp - 0x80], 0x1d5e65af
sub dword [rbp - 0x80], 0xa552317
mov dword [rbp - 0x7c], 0x4adc5d05
xor dword [rbp - 0x7c], 0x16fbc2f8
xor dword [rbp - 0x7c], 0x5993eef
xor dword [rbp - 0x7c], 0x59c0a123
mov dword [rbp - 0x78], 0x1e8ed671
xor dword [rbp - 0x78], 0x358a637e
add dword [rbp - 0x78], 0x49d9ad9
xor dword [rbp - 0x78], 0x7be3bc96
sub dword [rbp - 0x78], 0x53c9f36b
xchg r15, r9
mov qword [rbp + 0x1a0], r9
xchg r9, r15
mov rax, qword [rbp + 0x1a0]
xchg r12, r12
xchg r11, rcx
mov r11, qword [rbp + 0x1a0]
xchg rcx, r11
xchg r15, rax
mov r15, qword [rbp + 0x1a0]
xchg r15, rax
and cl, 3
xchg rdi, rdi
shl cl, 3
movzx edx, word [rsp + rax*2 + 0x68]
mov eax, r14d
shr eax, cl
mov dword [rsp - 0x24], 0x42370806
movzx ecx, al
mov rax, qword [rbp + 0x1a0]
xor cx, dx
xchg r12, r12
mov word [rbp + rax*2 + 0xc0], cx
mov rax, qword [rbp + 0x1a0]
add rax, rbx
mov dword [rsp - 0x2c], 0x1a7b67e0
xchg rsi, rax
mov qword [rbp + 0x1a0], rsi
xchg rsi, rax
mov rax, qword [rbp + 0x1a0]
mov dword [rsp - 0xc], 0x677d0b29
cmp rax, r12
jb 0x1400ddc3f
lea rax, [rbp + 0xc0]
mov dword [rsp - 0x38], 0x4ab8774
mov word [rbp + 0xe6], r15w
lea r9, [rbp + 0x50]
xchg rsi, rax
mov qword [rbp - 0x58], rsi
xchg rsi, rax
lea r8, [rbp - 0x60]
mov rdx, rdx
mov dword [rbp - 0x60], 0x1c3e3b2e
add dword [rbp - 0x60], 0x2dc95d4f
xor dword [rbp - 0x60], 0x4a647c66
add dword [rbp - 0x60], 0x3492350f
sub dword [rbp - 0x60], 0x34ce1904
xor edx, edx
mov dword [rsp + 0x20], r15d
mov r13, r13
xor ecx, ecx
call fcn.1400e32b0
xchg rdi, rax
mov rax, rdi
xchg rdi, rax
mov r12d, 0x380fb899
xor r12d, 0x7f3fba8e
sub r12d, 0x4ce8f18
xor r12d, 0x41eb68a3
sub r12d, 0x38a1a2c
test rax, rax
je 0x1400de048
mov dword [rsp - 0x24], ebx
mov rcx, rax
call fcn.1400d3b78
test al, al
mov dword [rsp - 0xc], esi
je 0x1400de048
lea rdx, [rbp - 0x60]
xchg rcx, r11
mov r11, rdi
xchg r11, rcx
call fcn.1400d2b3c
mov dword [rsp - 0x14], 0x5cee672e
test al, al
je 0x1400de048
xor edx, edx
lea r8d, [r12 + 0x50]
mov rcx, rcx
lea rcx, [rbp + 0xf0]
call fcn.140092630
mov rax, qword [0x1400ef1f8]
mov r8, r8
lea r8d, [r12 + 0x10]
ror rax, 2
lea rdx, [rbp + 0xf0]
mov dword [rsp - 0x20], 0x5979d945
movabs rcx, 0x525588515874cf5c
sub rcx, 0x4390ca19
add rcx, 0x13a649a9
add rcx, 0x7fffffff
xor rcx, 0x63afeae9
xor rax, rcx
mov dword [rsp - 0x18], 0x35304ca0
mov rcx, rdi
not rax
ror rax, 0x18
ror rax, 0xc
ror rax, 3
ror rax, 1
not rax
call rax
mov dword [rsp - 0x24], 0x4b43e52a
lea r14d, [r12 - 0x21]
test eax, eax
je 0x1400de017
mov rsi, rsi
mov dword [rsp + 0x4a], 0x4568303c
add dword [rsp + 0x4a], 0x2d7f8a9d
sub dword [rsp + 0x4a], 0xa976a2a
xor dword [rsp + 0x4a], 0x43ea31bf
xor dword [rsp + 0x4a], 0x2bd66131
mov dword [rsp + 0x4e], 0x19b5b47c
add dword [rsp + 0x4e], 0x352af96b
xor dword [rsp + 0x4e], 0x2afdba2f
xor dword [rsp + 0x4e], 0x645917f9
mov dword [rsp + 0x52], 0x30a8f41a
xor dword [rsp + 0x52], 0x4ecb5b84
sub dword [rsp + 0x52], 0xfe162cc
xor dword [rsp + 0x52], 0x6107257f
sub dword [rsp + 0x52], 0xf0d6996
mov dword [rsp + 0x56], 0x5a674df
add dword [rsp + 0x56], 0x1146d70b
add dword [rsp + 0x56], 0x41a4ee77
sub dword [rsp + 0x56], 0x5138a076
sub dword [rsp + 0x56], 0x6e09989
mov dword [rsp + 0x5a], 0x4f71efde
sub dword [rsp + 0x5a], 0xd59317
xor dword [rsp + 0x5a], 0xf4f2798
sub dword [rsp + 0x5a], 0x15190d13
sub dword [rsp + 0x5a], 0x2c476e30
mov dword [rsp + 0x5e], 0x303194f5
sub dword [rsp + 0x5e], 0x201d2b5b
xor dword [rsp + 0x5e], 0x755cce8e
xor dword [rsp + 0x5e], 0x3bc3b314
sub dword [rsp + 0x5e], 0x5e4913d3
mov dword [rsp + 0x62], 0x7f472166
sub dword [rsp + 0x62], 0x285514ed
xor dword [rsp + 0x62], 0x6310caf6
add dword [rsp + 0x62], 0xe6bdb58
sub dword [rsp + 0x62], 0x43dea1c8
mov word [rsp + 0x66], r12w
xchg r15, r14
mov qword [rbp + 0x1a0], r14
xchg r15, r14
mov rax, qword [rbp + 0x1a0]
xchg r13, rcx
mov r13, qword [rbp + 0x1a0]
xchg rcx, r13
mov rax, qword [rbp + 0x1a0]
and cl, 3
mov dword [rsp - 0x30], edi
shl cl, 3
movzx edx, word [rsp + rax*2 + 0x4a]
mov eax, 0x7da4089b
sub eax, 0x721d0918
add eax, 0x162c2b5a
add eax, 0x53fab646
sub eax, 0x456bcbb1
shr eax, cl
mov dword [rsp - 0x10], 0x1b06bd2b
movzx ecx, al
mov rax, qword [rbp + 0x1a0]
xor cx, dx
mov word [rbp + rax*2 + 0xa0], cx
mov dword [rsp - 0x38], 0x21652fb6
mov rax, qword [rbp + 0x1a0]
add rax, rbx
xchg r10, rax
mov qword [rbp + 0x1a0], r10
xchg r10, rax
mov rax, qword [rbp + 0x1a0]
xchg rsi, rsi
cmp rax, r14
jb 0x1400ddf4e
mov r8, r14
mov dword [rsp - 0x10], 0x151f2a1b
mov word [rbp + 0xbe], r15w
lea rdx, [rbp + 0xf0]
mov esi, ebx
mov dword [rsp - 0x20], ebp
lea rcx, [rbp + 0xa0]
call fcn.140092d60
mov dl, bl
test eax, eax
mov dword [rsp - 0x38], 0x2c16263a
je 0x1400de01a
mov dl, r15b
test bl, sil
je 0x1400de03d
mov r11, r11
and esi, 0xfffffffe
lea rdi, [rbp + 0xa0]
xor eax, eax
xchg rbx, r14
mov rcx, rbx
xchg r14, rbx
rep stosb byte [rdi], al
test dl, dl
xchg rcx, rcx
jne 0x1400de2e7
movdqa xmm0, xmmword [0x1400141f0]
lea rdx, [rbp - 8]
mov dword [rsp - 0x34], 0x302b7837
xchg rbx, rbp
movdqa xmmword [rbx + 0x60], xmm0
xchg rbx, rbp
lea rcx, [rbp - 8]
mov byte [rbp + 0x70], bl
xchg rdx, rdx
xorps xmm0, xmm0
mov qword [rbp - 0x10], rdx
mov eax, 0x51d75867
add eax, 0xda816e3
sub eax, 0x511ddb13
add eax, 0x1b4edb96
sub eax, 0x29b06fbc
xchg rbx, rax
mov qword [rbp + 0x28], rbx
xchg rbx, rax
xchg rsi, rbp
movups xmmword [rsi - 8], xmm0
xchg rbp, rsi
xchg rbp, r10
movups xmmword [r10 + 8], xmm0
xchg rbp, r10
movups xmmword [rbp + 0x18], xmm0
cmp rdx, rcx
mov dword [rsp - 0x30], 0x4d14fd69
je 0x1400de0d3
mov rcx, rdx
call fcn.1400920d0
mov rax, qword [rbp + 0x28]
mov dword [rsp - 0x40], esp
lea rdx, [rbp - 8]
xorps xmm0, xmm0
xchg rdx, r14
mov qword [rbp - 0x10], r14
xchg rdx, r14
xchg rcx, r12
mov r12, r15
xchg r12, rcx
xchg rbp, rsp
movups xmmword [rsp - 8], xmm0
xchg rbp, rsp
xchg r15, rbp
movups xmmword [r15 + 8], xmm0
xchg rbp, r15
movups xmmword [rbp + 0x18], xmm0
test rax, rax
mov dword [rsp - 0x34], esp
je 0x1400de12e
movzx eax, byte [rbp + rcx + 0x60]
mov word [rdx + rcx*2], ax
mov dword [rsp - 0x34], edx
add rcx, rbx
cmp rcx, qword [rbp + 0x28]
jb 0x1400de114
lea rcx, [rbp - 0x10]
mov rbp, rbp
or esi, 2
call fcn.1400852e0
test al, al
jne 0x1400de258
xchg r10, r10
movdqa xmm0, xmmword [0x1400141e0]
lea rdx, [rbp - 0x48]
xchg rbp, r10
movdqa xmmword [r10 + 0x30], xmm0
xchg rbp, r10
lea rcx, [rbp - 0x48]
mov word [rbp + 0x40], 0x15d5
add word [rbp + 0x40], 0x1a58
add word [rbp + 0x40], 0xd39
add word [rbp + 0x40], 0x28a5
xorps xmm0, xmm0
xchg r15, rdx
mov qword [rbp - 0x50], r15
xchg r15, rdx
mov eax, 0x1581f807
sub eax, 0xb843bd9
add eax, 0x756380de
xor eax, 0x7f613d1e
mov qword [rbp - 0x18], rax
mov dword [rsp - 0x24], edi
xchg rsp, rbp
movups xmmword [rsp - 0x48], xmm0
xchg rbp, rsp
xchg rbp, r10
movups xmmword [r10 - 0x38], xmm0
xchg rbp, r10
xchg rbp, r9
movups xmmword [r9 - 0x28], xmm0
xchg r9, rbp
cmp rdx, rcx
xchg r14, r14
je 0x1400de1e1
mov rcx, rdx
call fcn.1400920d0
mov rax, qword [rbp - 0x18]
mov rdx, rdx
lea rdx, [rbp - 0x48]
xorps xmm0, xmm0
mov qword [rbp - 0x50], rdx
mov rdx, rdx
mov rcx, r15
xchg rbp, rcx
movups xmmword [rcx - 0x48], xmm0
xchg rbp, rcx
xchg rbx, rbp
movups xmmword [rbx - 0x38], xmm0
xchg rbp, rbx
xchg r12, rbp
movups xmmword [r12 - 0x28], xmm0
xchg rbp, r12
test rax, rax
je 0x1400de239
movzx eax, byte [rbp + rcx + 0x30]
mov dword [rsp - 0x28], ecx
mov word [rdx + rcx*2], ax
add rcx, rbx
cmp rcx, qword [rbp - 0x18]
jb 0x1400de21b
mov dword [rsp - 0x38], esi
lea rcx, [rbp - 0x50]
or esi, 4
call fcn.1400852e0
mov r14b, r15b
mov dword [rsp - 0x14], 0x484afb3b
test al, al
je 0x1400de263
mov r14b, bl
mov dword [rsp - 0x1c], 0x11cf95c5
test sil, 4
je 0x1400de2a0
mov rcx, qword [rbp - 0x50]
lea rax, [rbp - 0x48]
mov dword [rsp - 0x24], ecx
cmp rcx, rax
jne 0x1400de29b
lea rdi, [rbp - 0x48]
mov rbx, rbx
xor eax, eax
xchg r15, rcx
mov r15, r12
xchg rcx, r15
rep stosb byte [rdi], al
jmp 0x1400de2a0
call fcn.1400920d0
mov rcx, qword [rbp - 0x10]
mov dword [rsp - 0x3c], 0x489a5219
lea rax, [rbp - 8]
cmp rcx, rax
jne 0x1400de2d3
lea rdi, [rbp - 8]
mov dword [rsp - 0x24], esp
xor eax, eax
xchg rcx, r12
mov r12, rcx
xchg r12, rcx
rep stosb byte [rdi], al
jmp 0x1400de2d8
call fcn.1400920d0
test r14b, r14b
jne 0x1400de2e7
mov rdi, rdi
mov bl, r15b
xor eax, eax
lea rdi, [rbp + 0xc0]
lea ecx, [rax + 0x13]
xchg r13, r13
rep stosb byte [rdi], al
xor eax, eax
lea r11, [rsp + 0x270]
mov dword [rsp - 0x30], ecx
mov rsi, qword [r11 + 0x40]
lea rdi, [rbp + 0x80]
lea ecx, [rax + 0xd]
rep stosb byte [rdi], al
mov dword [rsp - 0x44], 0x5cfc6344
mov al, bl
mov rbx, qword [r11 + 0x38]
xchg rdi, rsp
mov rdi, r11
xchg rsp, rdi
nop
mov r15, qword [rsp]
add rsp, 8
pop r14
nop
add rsp, 8
mov r12, qword [rsp - 8]
nop
mov rdi, qword [rsp]
add rsp, 8
pop rbp
ret