Function at 0x1400ebed0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xb0
lea rbp, [rsp + 0x80]
mov qword [rbp + 8], rdx
mov qword [rbp - 0x10], rcx
mov qword [rbp - 8], rcx
mov eax, 0x10
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp], rax
sub rsp, 0x20
call fcn.1400ebc32
mov rdx, qword [rbp + 8]
add rsp, 0x20
mov qword [rbp + 0x10], rax
mov rax, qword [rdx]
mov qword [rbp + 0x18], rax
cmp rax, 0
jge 0x1400ebf6a
mov rcx, qword [rbp + 0x18]
movabs rdx, 0xe86e532728c326c9
movabs rax, 0xe86e532728c326c9
xor rdx, rax
movabs r8, 0xae132eef3a7f8313
movabs rax, 0xd1ecd110c5807cec
xor r8, rax
sub rsp, 0x20
call fcn.14000c499
add rsp, 0x20
jmp 0x1400ec46e
mov rdx, qword [rbp + 0x18]
mov rcx, qword [rbp - 0x10]
sub rsp, 0x20
call fcn.14001b230
mov rcx, qword [rbp + 8]
mov rax, qword [rbp]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp - 0x38], rdx
add rcx, 8
mov qword [rbp - 0x30], rcx
add rax, 8
mov qword [rbp - 0x28], rax
lea rax, [rbp + 0x20]
add rax, 8
mov qword [rbp - 0x20], rax
xor eax, eax
mov qword [rbp - 0x18], rax
mov rax, qword [rbp - 0x18]
mov qword [rbp - 0x40], rax
mov eax, dword [0x1401e1430]
mov ecx, dword [0x1401e1434]
xor ecx, 0xe5ca2361
add eax, ecx
xor eax, 0xbc1808b
mov edx, eax
xor edx, 0xffffffff
and edx, 0x691cdc6c
mov r8d, 0xffffffff
xor r8d, 0x691cdc6c
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x691cdc6c
or eax, 0x691cdc6c
imul eax, edx
add eax, ecx
sub eax, 0x25505e72
cmp eax, 0x6d3c1d9
jb 0x1400ec478
mov rcx, qword [rbp - 0x40]
mov rdx, qword [rbp - 0x38]
mov eax, dword [0x1401e1438]
add eax, dword [0x1401e143c]
imul eax, eax, 0x2093c483
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0x85ed1603
mov r9d, 0x4cf14e74
xor r9d, 0xc91c5877
mov r10d, 0x72bc180a
xor r10d, 0x8d43e7f5
xor r9d, r10d
and eax, r9d
sub eax, r8d
xor eax, 0xf6feb817
cmp rcx, rdx
setl cl
mov byte [rbp - 0x41], cl
cmp eax, 0xbccafb88
ja 0x1400ec478
mov al, byte [rbp - 0x41]
test al, 1
jne 0x1400ec087
jmp 0x1400ec46e
mov rax, qword [rbp - 0x40]
mov rcx, qword [rbp + 8]
mov rcx, qword [rcx]
mov qword [rbp - 0x50], rcx
cmp rax, rcx
jl 0x1400ec0dd
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x50]
mov rdx, rax
and rdx, 0xffffffffffffffff
movabs r8, 0x64649d4845af01f6
movabs r9, 0x9b9b62b7ba50fe09
xor r8, r9
or rax, r8
add rdx, rax
sub rsp, 0x20
call fcn.1400137e9
add rsp, 0x20
jmp 0x1400ec46e
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x30]
mov rax, qword [rax]
mov al, byte [rax + rcx + 8]
mov byte [rbp - 0x5a], al
mov cl, 0x2b
mov byte [rbp - 0x59], cl
add al, 0xe0
movzx ecx, al
mov qword [rbp - 0x58], rcx
sub al, 0x5e
ja case.0x1400ec11d.2
mov cl, byte [rbp - 0x59]
mov rax, qword [rbp - 0x58]
lea rdx, [0x1400ec494]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
mov byte [rbp - 0x5b], cl
jmp rax
mov al, byte [rbp - 0x5a]
mov byte [rbp - 0x5b], al
jmp case.0x1400ec11d.0
mov rcx, qword [rbp - 0x10]
mov edx, 0x25
sub rsp, 0x20
call fcn.1400ebc4d
mov al, byte [rbp - 0x5a]
mov rcx, qword [rbp]
add rsp, 0x20
movzx eax, al
mov edx, eax
mov r8d, 2
sub rsp, 0x20
call fcn.1400eb789
mov rdx, qword [rbp]
mov rcx, qword [rbp - 0x28]
mov rax, qword [rbp + 0x10]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp - 0x70], rdx
mov rcx, qword [rcx]
mov qword [rbp - 0x68], rcx
cmp byte [rax], 0
jne 0x1400ec1bf
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x70]
sub rsp, 0x20
call fcn.14001b860
mov r8, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x68]
mov rax, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x10]
add rsp, 0x20
mov qword [rbp + 0x20], r8
mov qword [rax], rdx
lea rdx, [rbp + 0x20]
sub rsp, 0x20
call fcn.1400ec610
add rsp, 0x20
mov rax, qword [rbp - 0x68]
cmp rax, 0
je 0x1400ec236
mov rax, qword [rbp - 0x68]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
movabs rdx, 0x4e51a3db5cab3a43
movabs r8, 0xb1ae5c24a354c5bc
xor rdx, r8
xor rax, rdx
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
movabs rcx, 0x35beb7be1e2cda53
movabs rdx, 0x35beb7be1e2cda53
xor rcx, rdx
cmp rax, rcx
jne 0x1400ec236
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov ecx, dword [0x1401e1440]
xor ecx, dword [0x1401e1444]
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xc19703f6
xor edx, 0xf7b3629d
mov r8d, 0x44e8e5a6
xor r8d, 0xbb171a59
xor edx, r8d
or eax, edx
and ecx, 0x3624616b
xor ecx, 0xffffffff
mov edx, 0xcfd5c3dc
xor edx, 0x302a3c23
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xad274ee9
mov edx, 0xd13b5927
xor edx, 0x8a941ab4
mov r8d, 0xd58a3a5
xor r8d, 0xf2a75c5a
xor edx, r8d
or eax, ecx
mov ecx, 0x1eea713b
xor ecx, 0x454532a8
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0xe4606062
xor edx, edx
div ecx
cmp eax, 0xd0ab580b
ja 0x1400ec481
mov rcx, qword [rbp + 0x10]
mov eax, dword [0x1401e1448]
and eax, dword [0x1401e144c]
mov r8d, 0xf84f3e04
xor r8d, 0xdd39bef0
xor edx, edx
div r8d
mov r8d, 0x519e8369
xor r8d, 0x374568ad
xor edx, edx
div r8d
or eax, 0x834c6ee
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x71], cl
cmp eax, 0x1119552a
je 0x1400ec2d0
mov al, byte [rbp - 0x71]
test al, 1
jne 0x1400ec44a
jmp 0x1400ec46e
mov al, byte [rbp - 0x5b]
mov byte [rbp - 0x72], al
mov eax, dword [0x1401e1450]
mov ecx, dword [0x1401e1454]
xor ecx, 0xce180f6f
mov edx, 0x7b5175c9
xor edx, 0x1128bb51
add eax, edx
sub eax, ecx
mov ecx, 0xf26261f9
xor ecx, 0x981baf61
sub eax, ecx
mov r8d, 0xe45a9000
xor r8d, 0x397aeedc
mov ecx, 0x10541c31
xor ecx, 0xefabe3ce
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xdd207edc
or eax, 0xdd207edc
imul eax, edx
add eax, ecx
mov edx, 0x3a6140c0
xor edx, 0x9b7a28e1
mov ecx, eax
xor ecx, edx
mov edx, 0xf80cac19
xor edx, 0x7f353e6
xor ecx, edx
and ecx, 0xa11b6821
shl ecx, 1
sub ecx, 0xa11b6821
sub eax, ecx
mov ecx, 0x55eb097f
xor edx, edx
div ecx
cmp eax, 0x3d370fa1
je 0x1400ec48a
mov rcx, qword [rbp - 0x10]
mov eax, dword [0x1401e1458]
mov edx, dword [0x1401e145c]
add eax, 0x9be6ce5a
sub eax, edx
sub eax, 0x9be6ce5a
mov r8d, 0xa45577
xor r8d, 0x37ce492e
xor edx, edx
div r8d
mov dl, byte [rbp - 0x72]
or eax, 0x677bfd03
or eax, 0x7efb772e
mov dword [rbp - 0x78], eax
mov eax, 0x53ba9e12
xor eax, 0xe4548410
mov dword [rbp - 0x7c], eax
sub rsp, 0x20
call fcn.1400ebc4d
mov ecx, dword [rbp - 0x7c]
mov eax, dword [rbp - 0x78]
add rsp, 0x20
cmp eax, ecx
ja 0x1400ec3df
jmp 0x1400ec44a
mov rax, qword [rbp - 0x40]
mov rcx, 0xffffffffffffffff
xor rcx, 1
xor edx, edx
sub rdx, 1
sub rcx, rdx
sub rax, rcx
mov qword [rbp - 0x18], rax
jmp 0x1400ebfb0
mov rax, qword [rbp - 8]
lea rsp, [rbp + 0x30]
lea esp, [rbp + 0x30]
pop rbp
ret
jle 0x1400ec473
sbb eax, 0xfb92e961
invalid
mov eax, 0xe987023d
invalid
pop rsp
retf 0xa59d