Function at 0x140153250
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], rcx
mov eax, dword [0x14021fdd8]
xor eax, dword [0x14021fddc]
mov ecx, 0x374f0209
xor edx, edx
div ecx
mov ecx, 0x88c756c3
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0xbe7223a1
xor ecx, 0xbe7223a1
or eax, ecx
cmp eax, 0xf28e39f6
ja 0x1401536b9
mov eax, dword [0x14021fde0]
mov ecx, dword [0x14021fde4]
add eax, 0x4519244b
sub eax, ecx
mov ecx, 0xdbc8e7e4
xor ecx, 0x9ed1c3af
sub eax, ecx
mov ecx, 0x6457b21
xor ecx, 0x33927924
and eax, ecx
mov ecx, 0x28746c2b
xor edx, edx
div ecx
mov ecx, 0xa93b4b1b
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x68]
mov ecx, 0xf904dd4e
xor ecx, 0xb45bec1a
mov rdx, qword [rdx]
mov qword [rsp + 0x58], rdx
cmp rdx, 0
setg dl
mov byte [rsp + 0x67], dl
cmp eax, ecx
jae 0x140153298
mov al, byte [rsp + 0x67]
test al, 1
jne 0x140153313
jmp 0x1401536b4
mov rdx, qword [rsp + 0x58]
mov rcx, rdx
and rcx, 1
mov rax, rdx
or rax, 1
add rcx, rax
mov qword [rsp + 0x50], rcx
xor rdx, 0xffffffffffffffff
mov rax, rcx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
mov rcx, rdx
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
or rax, rcx
xor rax, 0xffffffffffffffff
movabs rcx, 0x605fc9beb4855964
movabs rdx, 0x605fc9beb4855964
xor rcx, rdx
cmp rax, rcx
jge 0x14015337f
call fcn.140008bc6
jmp 0x1401536b4
mov rax, qword [rsp + 0x50]
movabs rcx, 0xe51bfa7666944bb2
movabs rdx, 0xe51bfa7666944bb2
xor rcx, rdx
cmp rax, rcx
jge 0x140153545
mov eax, dword [str.M____a]
xor eax, 0xd8af3b99
xor edx, edx
div dword [0x14021fdec]
mov ecx, eax
mov edx, 0x142c9f5a
xor edx, 0x5968ca3d
mov eax, 0xd542fcbe
xor eax, 0x2abd0341
xor edx, eax
mov eax, ecx
and eax, edx
mov edx, ecx
xor edx, 0x4d445567
add ecx, edx
sub ecx, eax
sub ecx, 0xb6838f72
mov edx, 0xc9b74a97
xor edx, 0x3648b568
mov eax, ecx
xor eax, edx
mov edx, 0xd47b7a47
xor edx, 0xfb1e2d26
mov r8d, 0x1a337442
xor r8d, 0xe5cc8bbd
xor edx, r8d
and eax, edx
or ecx, 0x2f655761
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xfe9d1fc3
xor ecx, 0x8683f65
cmp eax, ecx
jae 0x1401536c2
mov rcx, qword [rsp + 0x50]
mov eax, dword [0x14021fdf0]
mov r8d, dword [0x14021fdf4]
xor r8d, 0xb9ad8abe
mov edx, r8d
and edx, eax
xor edx, 0xffffffff
add eax, r8d
add eax, 1
add eax, edx
add eax, 0xd9e7e0c8
mov r9d, 0xffffffff
xor r9d, 0x24a50246
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
mov r9d, 0x3d99ed46
xor r9d, 0xc26612b9
xor edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x24a50246
mov r9d, 0xd93bfc1a
xor r9d, 0xfd9efe5c
or eax, r9d
imul eax, r8d
add eax, edx
mov r8d, 0xf704cdbb
xor r8d, 0x8fb3244
mov edx, eax
xor edx, r8d
mov r8d, 0xbcc5e8aa
xor r8d, 0x5b4c71
and r8d, edx
mov r9d, 0xffffffff
xor r9d, 0xbc9ea4db
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0xbc9ea4db
or eax, 0xbc9ea4db
imul eax, r8d
add eax, edx
mov dword [rsp + 0x4c], eax
movabs rdx, 0xd7d75bce8da187fd
movabs rax, 0xd7d75bce8da187fd
xor rdx, rax
movabs r8, 0x23ace4098111ec0f
movabs rax, 0x5c531bf67eee13f0
xor r8, rax
call fcn.14000e6db
mov eax, dword [rsp + 0x4c]
cmp eax, 0xc2181150
jbe 0x1401536c2
jmp 0x1401536b4
mov rax, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rdx + 8]
add rcx, 8
add rcx, qword [rdx]
mov qword [rsp + 0x30], rcx
mov rax, qword [rax + 8]
add rax, 8
mov qword [rsp + 0x38], rax
xor eax, eax
mov qword [rsp + 0x40], rax
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x28], rax
cmp rax, rcx
je 0x1401535b8
mov rcx, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
mov dl, byte [rdx + rcx]
mov byte [rax + rcx], dl
mov rax, rcx
and rax, 1
or rcx, 1
add rax, rcx
mov qword [rsp + 0x40], rax
jmp 0x140153573
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x70]
mov rcx, qword [rcx]
mov r8, qword [rax]
movabs rax, 0x6b45e2f3a2bd74e3
mov rdx, r8
add rdx, rax
add rdx, rcx
movabs rax, 0x4a09c2d6ebd9fb19
movabs r9, 0x214c202549648ffa
xor rax, r9
sub rdx, rax
mov qword [rsp + 0x20], rdx
mov rax, rdx
xor rax, rcx
movabs r9, 0xa179f9d8d7ec25a3
movabs rcx, 0x5e8606272813da5c
xor r9, rcx
mov rcx, rdx
xor rcx, r9
mov r9, rdx
xor r9, 0xffffffffffffffff
and rcx, r9
mov r9, r8
or r9, r9
movabs r10, 0xfd60a07895aa228b
movabs r11, 0x29f5f876a55dd74
xor r10, r11
xor r9, r10
xor rcx, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
and rcx, r9
movabs r9, 0x4d250c2cc0772194
movabs r10, 0xb2daf3d33f88de6b
xor r9, r10
xor rdx, r9
xor r8, 0xffffffffffffffff
and rdx, r8
or rcx, rdx
movabs rdx, 0x2cc81317aaf230c8
movabs r8, 0xd337ece8550dcf37
xor rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x1401536a7
call fcn.140008bc6
jmp 0x1401536b4
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x20]
mov qword [rax], rcx
add rsp, 0x78
ret
invalid
invalid