Function at 0x1400fe650
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0xc8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x10], r8
mov dword [rbp + 0x1c], edx
mov qword [rbp + 0x28], rcx
mov eax, 0x10
call fcn.1402a7dd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x20], rax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
mov rcx, qword [rbp + 0x28]
add rsp, 0x20
add rax, 0x60
mov qword [rbp + 0x30], rax
cmp rcx, 1
jge 0x1400fed69
mov r8d, dword [0x1402ae6a0]
xor r8d, 0x19ec6b65
mov edx, dword [0x1402ae6a4]
xor edx, 0x4ef13805
mov ecx, r8d
xor ecx, 0xffffffff
and ecx, 0xa976d38d
mov r9d, 0xffffffff
xor r9d, 0xa976d38d
and r8d, r9d
mov r10d, 0x126af3c5
xor r10d, 0xed950c3a
mov eax, edx
xor eax, r10d
and eax, 0xa976d38d
and edx, r9d
or ecx, r8d
or eax, edx
xor ecx, eax
mov eax, 0xa7c12d25
xor eax, 0x4725e9e8
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x5cddb944
mov edx, 0xf8206057
xor edx, 0xa4fdd913
mov r8d, 0x2c77ffa
xor r8d, 0xfd388005
xor edx, r8d
and ecx, edx
xor eax, 0xffffffff
mov edx, 0x5ab23173
xor edx, 0xa54dce8c
xor ecx, edx
and eax, ecx
mov ecx, 0x1fcf9d44
xor ecx, 0xbe8c4f3a
xor eax, ecx
cmp eax, 0x7c75a264
jbe 0x1400fed70
mov rcx, qword [rbp + 0x20]
mov eax, dword [0x1402ae6a8]
mov edx, dword [0x1402ae6ac]
mov r8d, 0xcd89283e
xor r8d, 0xe12b7add
xor edx, r8d
sub eax, edx
mov edx, eax
xor edx, 0x8c0d715f
mov r8d, 0xffffffff
xor r8d, 0x8c0d715f
and eax, r8d
shl eax, 1
sub eax, edx
mov r8d, 0x8f90082f
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp + 0x10]
mov r8d, 0x40baf5d3
xor r8d, 0x6fc5e76f
add edx, r8d
mov dword [rbp - 0xc], edx
mov edx, 0x44ba4fcf
xor edx, 0xdb87b597
mov dword [rbp - 0x10], edx
mov rdx, qword [rax]
add rdx, 0x1e
sub rsp, 0x20
call fcn.140031800
mov rdx, qword [rbp + 0x20]
mov ecx, dword [rbp - 0x10]
mov eax, dword [rbp - 0xc]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rbp - 8], r8
mov rdx, qword [rdx + 8]
mov qword [rbp], rdx
add rdx, 8
add rdx, r8
mov qword [rbp + 8], rdx
cmp eax, ecx
jae 0x1400fe76b
xor eax, eax
mov qword [rbp - 0x18], rax
jmp 0x1400fe827
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp + 8]
lea rdx, [0x1402c30d8]
mov dl, byte [rdx + rcx + 8]
mov byte [rax + rcx], dl
mov rdx, rcx
and rdx, 1
shl rdx, 1
mov rax, rcx
xor rax, 1
add rax, rdx
cmp rcx, 0x1e
mov qword [rbp - 0x18], rax
jne 0x1400fe827
mov r8, qword [rbp - 8]
movabs rcx, 0x317f4ff1d3fd9b08
mov rax, r8
sub rax, rcx
add rax, 0x1e
movabs rcx, 0x317f4ff1d3fd9b08
add rax, rcx
xor r8, 0xffffffffffffffff
mov rcx, rax
xor rcx, 0xffffffffffffffff
mov rdx, r8
xor rdx, 0xffffffffffffffff
or rcx, rdx
mov rdx, rax
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rdx, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or rcx, rdx
cmp rcx, 0
mov qword [rbp - 0x20], rax
jge 0x1400fe8d6
sub rsp, 0x20
call fcn.14000ee80
mov rax, qword [rbp - 8]
add rsp, 0x20
mov qword [rbp - 0x20], rax
mov rdx, qword [rbp + 0x10]
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x40], rax
mov rcx, qword [rdx]
mov qword [rbp - 0x38], rcx
mov rdx, qword [rdx + 8]
mov qword [rbp - 0x30], rdx
cmp rcx, 0
mov qword [rbp - 0x28], rax
jle 0x1400fec97
mov rcx, qword [rbp - 0x38]
movabs rdx, 0xdfa6afbdb8701e64
movabs rax, 0xdfa6afbdb8701e65
xor rdx, rax
mov rax, rcx
add rax, rdx
mov qword [rbp - 0x48], rax
movabs r8, 0xa73b98c4b8b53c13
movabs rdx, 0x58c4673b474ac3ec
xor r8, rdx
mov rdx, rcx
xor rdx, r8
xor rdx, 0xffffffffffffffff
and rdx, 0xffffffffffffffff
shl rdx, 1
sub rdx, 0xffffffffffffffff
sub rcx, rdx
or rax, rax
movabs rdx, 0xda26a01ee86e17b6
movabs r8, 0x25d95fe11791e849
xor rdx, r8
xor rax, rdx
or rcx, rcx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x595ec23bc02273bc
movabs rdx, 0x595ec23bc02273bc
xor rcx, rdx
cmp rax, rcx
jge 0x1400fe9bd
sub rsp, 0x20
call fcn.14000ee80
mov rax, qword [rbp - 0x40]
add rsp, 0x20
mov qword [rbp - 0x28], rax
jmp 0x1400fec97
mov rax, qword [rbp - 0x48]
cmp rax, 0
jge 0x1400fea17
mov rcx, qword [rbp - 0x48]
movabs rdx, 0xa6ad2470acb0245
movabs rax, 0xa6ad2470acb0245
xor rdx, rax
movabs r8, 0x6e8ce62c483f63f1
movabs rax, 0x117319d3b7c09c0e
xor r8, rax
sub rsp, 0x20
call fcn.140018506
mov rax, qword [rbp - 0x40]
add rsp, 0x20
mov qword [rbp - 0x28], rax
jmp 0x1400fec97
mov rax, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x40]
mov rcx, qword [rbp]
add rcx, 8
add rcx, rdx
mov qword [rbp - 0x60], rcx
add rax, 8
mov qword [rbp - 0x58], rax
xor eax, eax
mov qword [rbp - 0x50], rax
mov rcx, qword [rbp - 0x50]
mov rdx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x60]
mov r8, qword [rbp - 0x58]
mov r8b, byte [r8 + rcx]
mov byte [rax + rcx], r8b
mov rax, rcx
add rax, 1
cmp rcx, rdx
mov qword [rbp - 0x50], rax
jne 0x1400fea3c
mov eax, dword [0x1402ae6b0]
xor edx, edx
div dword [0x1402ae6b4]
and eax, 0x1a119e9a
mov ecx, 0x3f899ceb
xor ecx, 0xc7b7031b
add eax, ecx
and eax, 0xa2c4e649
cmp eax, 0x504d785d
jbe 0x1400fed79
mov r9, qword [rbp - 0x38]
mov rdx, qword [rbp - 0x40]
mov ecx, dword [0x1402ae6b8]
mov r10d, dword [0x1402ae6bc]
xor r10d, 0x5e8f3b56
mov eax, 0x60d446e7
xor eax, 0x9f2bb918
mov r11d, r10d
xor r11d, eax
mov r8d, ecx
and r8d, r11d
mov eax, ecx
or eax, r11d
xor eax, 0xffffffff
imul eax, r8d
mov r8d, ecx
and r8d, r10d
or ecx, r10d
imul ecx, r8d
add ecx, eax
mov eax, ecx
and eax, 0x7692fbe3
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x7692fbe3
or ecx, r8d
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x2f8816f1
xor ecx, 0x1d391bda
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x3966b2d8
add eax, ecx
add eax, 1
mov r10, r9
add r10, rdx
mov qword [rbp - 0x70], r10
mov rcx, r10
xor rcx, rdx
mov rdx, r10
xor rdx, 0xffffffffffffffff
movabs r8, 0xaf204e4633d1a7bb
and rdx, r8
mov r11, 0xffffffffffffffff
movabs r8, 0xaf204e4633d1a7bb
xor r11, r8
and r10, r11
movabs rsi, 0x9aa318a80d8bb241
movabs r8, 0x655ce757f2744dbe
xor rsi, r8
mov r8, r9
xor r8, rsi
movabs rsi, 0xaf204e4633d1a7bb
and r8, rsi
and r9, r11
or rdx, r10
or r8, r9
xor rdx, r8
and rcx, rdx
cmp rcx, 0
setl cl
mov byte [rbp - 0x61], cl
cmp eax, 0x1c6bfc90
jbe 0x1400fed79
mov rax, qword [rbp - 0x70]
mov cl, byte [rbp - 0x61]
test cl, 1
mov qword [rbp - 0x28], rax
jne 0x1400febc6
jmp 0x1400fec97
mov eax, dword [0x1402ae6c0]
or eax, dword [0x1402ae6c4]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xb902d054
mov edx, 0xffffffff
xor edx, 0xb902d054
and eax, edx
sub eax, ecx
mov ecx, 0xa84a8733
xor edx, edx
div ecx
mov ecx, 0x9b572952
xor ecx, 0xca908c6f
sub eax, ecx
cmp eax, 0x36774b1
jb 0x1400fed82
mov eax, dword [0x1402ae6c8]
xor edx, edx
div dword [0x1402ae6cc]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xed8fd444
mov eax, 0xffffffff
xor eax, 0x209cf303
or ecx, edx
or eax, 0x209cf303
xor ecx, 0xffffffff
and ecx, eax
mov edx, 0xf9390fb
xor edx, 0x7dae9d3b
mov eax, ecx
and eax, edx
mov edx, 0x6f9bf5a7
xor edx, 0x1da6f867
xor ecx, edx
or eax, ecx
mov ecx, 0x4c23cfc4
xor ecx, 0xf02f3170
xor eax, ecx
mov dword [rbp - 0x74], eax
sub rsp, 0x20
call fcn.14000ee80
mov eax, dword [rbp - 0x74]
add rsp, 0x20
cmp eax, 0x69ce83fe
je 0x1400fed82
mov rax, qword [rbp - 0x40]
mov qword [rbp - 0x28], rax
jmp 0x1400fec97
mov ecx, dword [rbp + 0x1c]
mov rax, qword [rbp]
mov rdx, qword [rbp - 0x28]
mov qword [rbp + 0x38], rdx
mov qword [rbp + 0x40], rax
lea rdx, [rbp + 0x38]
sub rsp, 0x20
call fcn.1400dff50
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x30]
mov qword [rbp - 0x80], rcx
mov al, byte [rax]
mov cl, 0x1b
xor cl, 0x1b
cmp al, cl
jne 0x1400fed17
mov rcx, qword [rbp - 0x80]
movabs rax, 0x96f4c0597b7677ae
movabs rdx, 0x96f4c0592852f54f
xor rax, rdx
lea rdx, [0x1402c2f5b]
lea r8, [0x1402c2f6a]
lea r9, [0x1402c2f03]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140025a43
add rsp, 0x30
mov rax, qword [rbp]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
and rcx, rdx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
cmp rax, 0
jne 0x1400fed69
mov rcx, qword [rbp]
sub rsp, 0x20
call fcn.14001a7c0
add rsp, 0x20
lea rsp, [rbp + 0x48]
pop rsi
pop rbp
ret
sub byte [rax - 0xd1658c2], ah
stc
invalid
invalid
cmpsd dword [rsi], dword [rdi]
fisttp dword [rsi - 0x17d167b]
invalid