Function at 0x1400683a1
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x48
mov dword [rsp + 0x3c], edx
mov qword [rsp + 0x30], rcx
call fcn.140067614
mov edx, dword [rsp + 0x3c]
mov qword [rsp + 0x40], rax
cmp edx, 0xffffffe0
jge 0x140067f4d
mov eax, dword [rsp + 0x3c]
mov ecx, 0xcc989de7
xor ecx, 0x33671de7
cmp eax, ecx
jae 0x140067edb
mov rcx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x3c]
cmp eax, 0xffffff80
jae 0x140067f1b
mov rcx, qword [rsp + 0x30]
mov edx, 0xd1
call fcn.140033ba0
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x14006826f
mov rcx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x3c]
mov dx, ax
call fcn.140067950
jmp 0x14006826f
mov rcx, qword [rsp + 0x30]
mov dl, 0xcc
xor dl, 0x1c
call fcn.140033ba0
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x14006826f
mov rcx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x3c]
mov dl, al
call fcn.140033ba0
jmp 0x14006826f
mov eax, dword [rsp + 0x3c]
cmp eax, 0x80
jge 0x140067f7f
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x14006826f
mov rcx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x3c]
mov dl, al
call fcn.140033ba0
jmp 0x14006826f
mov eax, dword [rsp + 0x3c]
cmp eax, 0x100
jae 0x140067fc0
mov rcx, qword [rsp + 0x30]
mov edx, 0xcc
call fcn.140033ba0
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x14006826f
mov rcx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x3c]
mov dl, al
call fcn.140033cf0
jmp 0x14006826f
mov eax, dword [0x14024ded8]
xor eax, 0x6c3050e1
mov ecx, dword [0x14024dedc]
add eax, 0x2f5621a6
sub eax, ecx
mov ecx, 0x444466c8
xor ecx, 0x6b12476e
sub eax, ecx
mov ecx, 0xc65b7e88
xor ecx, 0x39a48177
mov edx, eax
xor edx, ecx
and edx, 0xb3da722a
mov r8d, 0x32ec51b
xor r8d, 0xb0f4b731
mov ecx, 0x85216178
xor ecx, 0x7ade9e87
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xb3da722a
or eax, 0xb3da722a
imul eax, edx
add eax, ecx
add eax, 0x41db1e27
mov ecx, 0x60959149
xor ecx, 0xda980538
imul eax, ecx
mov ecx, 0xc1f9ddc
xor ecx, 0xcd742ab2
cmp eax, ecx
ja 0x140068386
mov ecx, dword [rsp + 0x3c]
mov eax, dword [0x14024dee0]
mov edx, 0xd1fbd244
xor edx, 0x6c3a424f
xor eax, edx
sub eax, dword [0x14024dee4]
mov edx, eax
xor edx, 0xffffffff
mov r8d, 0x8d1478ca
xor r8d, 0x8fd6972d
and r8d, edx
mov r9d, 0xec190505
xor r9d, 0xeedbeae2
mov edx, 0xceb03957
xor edx, 0x314fc6a8
xor r9d, edx
mov edx, eax
and edx, r9d
imul edx, r8d
mov r9d, 0x35a03634
xor r9d, 0x3762d9d3
mov r8d, eax
and r8d, r9d
or eax, 0x2c2efe7
imul eax, r8d
add eax, edx
mov r9d, 0xffffffff
xor r9d, 0xf550d9ca
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r9d, 0x3bbacadd
xor r9d, 0xceea1317
mov r8d, eax
and r8d, r9d
or eax, 0xf550d9ca
imul eax, r8d
add eax, edx
mov r8d, 0x99a6d734
xor r8d, 0xbde7cf83
mov edx, eax
and edx, r8d
shl edx, 1
add eax, 0x244118b7
sub eax, edx
cmp ecx, 0x10000
setb cl
mov byte [rsp + 0x2f], cl
cmp eax, 0x3d0a23cc
jb 0x140068386
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x14006814b
jmp 0x14006817e
mov rcx, qword [rsp + 0x30]
mov edx, 0xcd
call fcn.140033ba0
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x14006826f
mov rcx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x3c]
mov dx, ax
call fcn.140067950
jmp 0x14006826f
mov rcx, qword [rsp + 0x30]
mov edx, 0xce
call fcn.140033ba0
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x14006826f
mov eax, dword [0x14024dee8]
mov edx, dword [0x14024deec]
xor edx, 0x84bf4f39
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov ecx, 0x5385b9ec
xor ecx, 0x5db11542
or eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xa65656e3
mov ecx, 0xffffffff
xor ecx, 0x8806851d
or eax, edx
or ecx, 0x8806851d
xor eax, 0xffffffff
and eax, ecx
imul eax, eax, 0x6ffdfe21
mov ecx, 0x674cdd0
xor ecx, 0xdd0b21cf
cmp eax, ecx
je 0x14006838f
mov edx, dword [rsp + 0x3c]
mov rcx, qword [rsp + 0x30]
mov eax, dword [0x14024def0]
and eax, dword [0x14024def4]
mov r8d, 0xf8eebff4
xor r8d, 0x6c74e621
add eax, r8d
or eax, 0xa6b1f1af
sub eax, 0xa8768aab
mov r8d, 0x46707454
xor r8d, 0xa5421d6f
sub eax, r8d
add eax, 0xa8768aab
mov dword [rsp + 0x28], eax
mov eax, 0xb9a073bc
xor eax, 0xbb4f0ef0
mov dword [rsp + 0x24], eax
call fcn.140067ae8
mov ecx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x28]
cmp eax, ecx
jb 0x1400681ff
jmp 0x14006826f
jmp 0x12918cd23
push rbx
iretd
sub rsp, 0x38
mov dword [rsp + 0x34], edx
mov qword [rsp + 0x28], rcx
call fcn.140067614
mov rcx, qword [rsp + 0x28]
mov edx, dword [rsp + 0x34]
add rsp, 0x38
jmp 0x140067e70