Function at 0x1400dc820
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xb8
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0x98], rcx
mov qword [rsp + 0xa0], rcx
mov rdx, qword [r8]
mov qword [rsp + 0xa8], rdx
mov r8, qword [r8 + 8]
mov rax, r8
xor rax, rdx
mov r9, rdx
xor r9, 0xffffffffffffffff
mov rcx, r8
and rcx, r9
shl rcx, 1
sub rcx, rax
mov qword [rsp + 0xb0], rcx
mov rax, rcx
xor rax, r8
movabs r8, 0x3813bff3cf5f5b84
movabs r9, 0x3813bff3cf5f5b84
xor r8, r9
cmp rax, r8
setl al
xor rcx, rdx
cmp rcx, 0xffffffffffffffff
setg cl
and al, cl
test al, 1
jne 0x1400dc8ac
jmp 0x1400dc8b6
call fcn.1400077a3
jmp 0x1400dcf63
mov rcx, qword [rsp + 0xb0]
mov rax, rcx
add rax, 1
mov qword [rsp + 0x88], rax
movabs rdx, 0x9d06c8a0ab3dc726
movabs r8, 0x62f9375f54c238d9
xor rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x1400dca31
mov ecx, dword [0x1401dadb0]
xor ecx, dword [0x1401dadb4]
mov eax, ecx
or eax, 0xb5938a03
mov edx, 0x69c97b05
xor edx, 0x963684fa
xor eax, edx
mov edx, 0x4da209a5
xor edx, 0xf83183a6
or ecx, edx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x3675312b
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x3675312b
mov r8d, 0xdbfb4fc9
xor r8d, 0xed8e7ee2
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xf699a815
xor ecx, 0xfb6ea5ad
xor edx, edx
div ecx
mov ecx, 0xe7ae88d7
xor ecx, 0xede4423d
cmp eax, ecx
je 0x1400dcf73
mov eax, dword [0x1401dadb8]
mov ecx, 0xe6b989ec
xor ecx, 0xc8076da5
xor eax, ecx
mov r8d, dword [0x1401dadbc]
xor r8d, 0xe1ef2fad
mov edx, r8d
xor edx, 0xffffffff
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
imul eax, eax, 0x2c927211
mov ecx, 0xd7ca3bd
xor ecx, 0xf2835c42
mov edx, eax
xor edx, ecx
and edx, 0x70878281
mov r8d, 0xffffffff
xor r8d, 0x70878281
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xb06cb8a4
xor r8d, 0xc0eb3a25
mov edx, eax
and edx, r8d
or eax, 0x70878281
imul eax, edx
add eax, ecx
mov ecx, 0x450eef17
xor edx, edx
div ecx
mov dword [rsp + 0x84], eax
call fcn.1400077a3
mov eax, dword [rsp + 0x84]
cmp eax, 0xe50a694c
ja 0x1400dcf73
jmp 0x1400dcf63
mov rax, qword [rsp + 0x88]
cmp rax, 0
jge 0x1400dcb64
mov r8d, dword [0x1401dadc0]
mov ecx, dword [str.LJA_ne]
mov eax, r8d
and eax, ecx
shl eax, 1
add r8d, ecx
sub r8d, eax
mov eax, 0x54ab3810
xor eax, 0x9f890b11
or r8d, eax
mov ecx, 0xffffffff
xor ecx, 0x72c609dd
mov eax, r8d
and eax, ecx
mov ecx, r8d
xor ecx, 0x72c609dd
add r8d, ecx
sub r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0xc0bf261a
mov edx, 0xffffffff
xor edx, 0xc0bf261a
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x8335c1d1
mov r9d, 0xf5dd93cf
xor r9d, 0x3562b5d5
and ecx, r9d
and edx, 0x8335c1d1
or eax, r8d
or ecx, edx
xor eax, ecx
cmp eax, 0x42524c89
je 0x1400dcf7c
mov rcx, qword [rsp + 0x88]
mov eax, dword [0x1401dadc8]
add eax, dword [0x1401dadcc]
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xf4051065
mov edx, 0x642f9eb6
xor edx, 0x12199350
mov r9d, 0x76a4d5c8
xor r9d, 0x895b2a37
xor edx, r9d
or eax, r8d
or edx, 0x76360de6
xor eax, 0xffffffff
and eax, edx
or eax, 0x38146475
mov r8d, 0xfb835a67
xor edx, edx
div r8d
mov dword [rsp + 0x80], eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000d167
mov eax, dword [rsp + 0x80]
cmp eax, 0x5fe66037
jae 0x1400dcf7c
jmp 0x1400dcf63
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x88]
call fcn.140019790
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x90]
mov rax, qword [rsp + 0xa8]
add rdx, 8
mov qword [rsp + 0x58], rdx
movabs r8, 0xf704c828de33a58e
movabs rdx, 0x8fb37d721cc5a71
xor r8, rdx
mov rdx, rax
xor rdx, r8
mov qword [rsp + 0x60], rdx
add rcx, 8
mov qword [rsp + 0x68], rcx
cmp rax, 0xffffffffffffffff
setg al
mov byte [rsp + 0x77], al
xor eax, eax
mov qword [rsp + 0x78], rax
mov rcx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x50], rax
cmp rax, rcx
je 0x1400dcf63
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x98]
mov rcx, qword [rcx]
mov qword [rsp + 0x48], rcx
cmp rax, rcx
jl 0x1400dcc42
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
movabs rax, 0x62c55081718e22c6
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x62c55081718e22c6
sub rdx, rax
call fcn.140013580
jmp 0x1400dcf63
mov rax, qword [rsp + 0x58]
mov rax, qword [rax]
mov qword [rsp + 0x40], rax
cmp rax, 0
je 0x1400dccd8
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax]
movabs rdx, 0xde9d8a01ab43bf43
movabs rax, 0x216275fe54bc40bc
xor rdx, rax
mov rax, rcx
xor rax, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x4000000000000000
movabs rdx, 0x4000000000000000
or rcx, rdx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
movabs rdx, 0x9273feeff86c8f73
movabs r8, 0x6d8c01100793708c
xor rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
je 0x1400dccd8
mov rcx, qword [rsp + 0x98]
call fcn.140014d00
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x50]
add rax, rdx
mov qword [rsp + 0x38], rax
and rax, rcx
cmp rax, 0
jge 0x1400dcd09
call fcn.1400077a3
jmp 0x1400dcf63
mov eax, dword [0x1401dadd0]
mov ecx, 0x83b1933
xor ecx, 0x6ae47a56
xor eax, ecx
mov edx, dword [0x1401dadd4]
and eax, eax
xor eax, 0xffffffff
mov ecx, edx
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xf23b6e3e
xor ecx, 0x357af904
and eax, ecx
imul ecx, eax, 0xcb6f65c
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x5d4fc012
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xb502ea5d
xor edx, 0xe84d2a4f
mov r8d, 0x2aa5c190
xor r8d, 0xd55a3e6f
xor edx, r8d
and ecx, edx
mov edx, 0xb6878873
xor edx, 0x4978778c
xor eax, edx
mov edx, 0xdf4f8199
xor edx, 0x20b07e66
xor ecx, edx
and eax, ecx
cmp eax, 0x975d9ce
je 0x1400dcf85
mov cl, byte [rsp + 0x77]
mov rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x90]
mov eax, dword [0x1401dadd8]
mov r9d, dword [0x1401daddc]
imul eax, r9d
mov r9d, eax
xor r9d, 0x6cb9d9d8
and eax, 0x13462627
add eax, eax
sub eax, r9d
add eax, 0x18949f23
imul rax, rax, 0x539c9ea3
shr rax, 0x3d
mov r8, qword [r8]
mov qword [rsp + 0x28], r8
sub rdx, r8
setl dl
and cl, dl
mov byte [rsp + 0x37], cl
cmp eax, 0xb8ba77fd
je 0x1400dcda5
mov al, byte [rsp + 0x37]
test al, 1
jne 0x1400dcf32
jmp 0x1400dce1b
mov ecx, dword [0x1401dade0]
xor ecx, dword [0x1401dade4]
xor ecx, 0x3aec50c9
mov edx, 0x9856b8e8
xor edx, 0x67a94717
mov eax, ecx
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xa1d44951
and ecx, 0xa1d44951
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
sub eax, 0xc46b9a40
sub eax, 0x77635ba6
add eax, 0xc46b9a40
cmp eax, 0x98292728
je 0x1400dcf8e
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x28]
mov eax, dword [0x1401dade8]
mov r9d, dword [0x1401dadec]
xor r9d, 0x212a3b03
mov r8d, eax
xor r8d, r9d
xor r8d, 0xffffffff
or eax, r9d
and eax, r8d
mov r8d, 0x3b1ef84c
xor r8d, 0x75251c4e
sub eax, r8d
mov r8d, 0x8d7d5ac8
xor r8d, 0x3cd79b9
sub eax, r8d
add eax, 0x4e3be402
mov r9d, 0x8694deed
xor r9d, 0xbeb3a8c1
mov r8d, eax
xor r8d, r9d
mov r9d, 0x911ce6e0
xor r9d, 0x6ee3191f
xor r8d, r9d
or eax, 0x3827762c
and eax, r8d
mov r8d, eax
xor r8d, 0x6912beb9
xor r8d, 0xffffffff
or eax, 0x6912beb9
and eax, r8d
mov dword [rsp + 0x24], eax
mov eax, 0x9d64153f
xor eax, 0x63d82fa4
mov dword [rsp + 0x20], eax
add rdx, 0xffffffffffffffff
call fcn.140013580
mov ecx, dword [rsp + 0x20]
mov eax, dword [rsp + 0x24]
cmp eax, ecx
jae 0x1400dce6e
jmp 0x1400dcf63
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x68]
mov rdx, qword [rdx]
mov dl, byte [rdx + r8 + 8]
mov rcx, qword [rcx]
mov byte [rcx + rax + 8], dl
add rax, 1
mov qword [rsp + 0x78], rax
jmp 0x1400dcbd7
mov rax, qword [rsp + 0xa0]
add rsp, 0xb8
ret
sar byte [rdx - 0x49], 1
movabs byte [0xff52b4fffffa09e9], al
invalid
mov ah, 0x52
jmp qword [rax - 0x17]
add al, 0x81
fist word [rax]
jmp 0x1400dcda5
sbb byte [rcx - 0x2816da88], dl
invalid