Function at 0x1400d5890
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x70
lea rbp, [rsp + 0x70]
mov qword [rbp - 8], rcx
mov eax, dword [0x1401daae0]
or eax, dword [0x1401daae4]
mov ecx, eax
and ecx, ecx
xor ecx, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb47bd657
or ecx, edx
mov edx, 0xb47bd657
and edx, 0xb47bd657
xor edx, 0xffffffff
and eax, edx
mov edx, 0x26d82171
xor edx, 0xd927de8e
xor eax, edx
and ecx, eax
xor ecx, 0xffffffff
mov eax, 0x4035b599
xor eax, 0x5a87caf2
or ecx, eax
mov edx, 0x51cad841
xor edx, 0xdc7ca9ad
mov eax, ecx
and eax, edx
or ecx, 0x8db671ec
add eax, ecx
mov ecx, 0xca76707e
xor ecx, 0xaf239bd3
cmp eax, ecx
jb 0x1400d6001
mov eax, dword [0x1401daae8]
mov ecx, dword [0x1401daaec]
sub eax, ecx
and eax, 0xed484582
mov edx, eax
add edx, 0x819f5a04
mov ecx, edx
and ecx, 0x4901db06
xor edx, 0xb6fe24f8
add eax, edx
sub eax, ecx
add eax, 0x819f5a04
mov dword [rbp - 0x1c], eax
mov eax, 0x10
mov qword [rbp - 0x38], rax
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp - 0x38]
mov rcx, rsp
mov qword [rbp - 0x30], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x28], rax
sub rsp, 0x20
call fcn.1400d2088
mov rcx, qword [rbp - 8]
add rsp, 0x20
mov eax, dword [rbp - 0x1c]
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x18], rcx
cmp rcx, 0
sete cl
mov byte [rbp - 9], cl
cmp eax, 0x2cbecfad
je 0x1400d5919
mov al, byte [rbp - 9]
test al, 1
jne 0x1400d5a5f
jmp 0x1400d59ba
mov rax, qword [rbp - 0x18]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor rcx, rdx
movabs rdx, 0xfa133d67325f0500
movabs r8, 0x58313529680d2611
xor rdx, r8
movabs r8, 0x1d1f69444a06cf06
movabs r9, 0xe2e096bbb5f930f9
xor r8, r9
xor rdx, r8
or rax, rcx
movabs rcx, 0x151b8782af256899
movabs r8, 0xb7398fccf5774b88
xor rcx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x9c0661c94d856bbf
movabs rdx, 0x9c0661c94d856bbf
xor rcx, rdx
cmp rax, rcx
jne 0x1400d5a5f
mov rcx, qword [rbp - 0x18]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rax, qword [rbp - 8]
mov rax, qword [rax + 0x18]
mov qword [rbp - 0x40], rax
cmp rax, 0
je 0x1400d5be3
mov ecx, dword [0x1401daaf0]
mov edx, dword [0x1401daaf4]
xor eax, eax
sub eax, edx
sub ecx, eax
mov r8d, 0xffffffff
xor r8d, 0xd1cb9251
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
mov r8d, 0xbc3068b5
xor r8d, 0x43cf974a
xor eax, r8d
imul eax, edx
mov r8d, 0xdf631408
xor r8d, 0xea88659
mov edx, ecx
and edx, r8d
or ecx, 0xd1cb9251
imul ecx, edx
add ecx, eax
mov eax, 0x8cdfb154
xor eax, 0x760f1ce8
sub ecx, eax
mov edx, 0x31cd903d
xor edx, 0xce326fc2
mov eax, ecx
xor eax, edx
mov edx, 0x280fcaf2
xor edx, 0xd2ea2d66
mov r8d, 0x64895ae1
xor r8d, 0x9b76a51e
xor edx, r8d
or eax, edx
mov edx, 0x22942f3
xor edx, 0xf8cca567
and ecx, edx
mov edx, 0x29dd0a42
xor edx, 0xd622f5bd
xor ecx, edx
and eax, ecx
xor eax, 0xffffffff
cmp eax, 0xb5113a3e
jae 0x1400d600a
mov rcx, qword [rbp - 0x40]
mov eax, dword [0x1401daaf8]
mov edx, dword [0x1401daafc]
xor edx, 0xffffffff
xor r8d, r8d
sub r8d, 1
sub edx, r8d
sub eax, edx
xor eax, 0xd5414084
mov r8d, 0x49ac8f4e
xor edx, edx
div r8d
mov edx, eax
mov eax, edx
and eax, 0x1a296cb6
xor edx, 0x1a296cb6
or eax, edx
mov rdx, qword [rcx]
movabs r8, 0xc0b77d9af41b9536
movabs rcx, 0x80b77d9af41b9536
xor r8, rcx
movabs rcx, 0xac93a32544b04595
movabs r9, 0x536c5cdabb4fba6a
xor rcx, r9
xor r8, rcx
mov rcx, rdx
xor rcx, r8
and rcx, rdx
cmp rcx, 0
sete cl
mov byte [rbp - 0x41], cl
cmp eax, 0x2b526465
jae 0x1400d5b30
mov al, byte [rbp - 0x41]
test al, 1
jne 0x1400d5bd2
jmp 0x1400d5be3
mov rcx, qword [rbp - 0x40]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov eax, dword [0x1401dab00]
mov ecx, dword [0x1401dab04]
xor ecx, 0xb6ff9ae4
xor ecx, 0xffffffff
add eax, ecx
mov ecx, 0x547386a8
xor ecx, 0x547386a9
add eax, ecx
mov ecx, 0x26c96dde
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0x1e068e16
or ecx, 0x1e068e16
add eax, ecx
mov ecx, eax
xor ecx, 0x34971bbd
xor ecx, 0xffffffff
mov edx, 0x65b3a9e2
xor edx, 0x5124b25f
and edx, ecx
mov ecx, 0x90d6daa
xor ecx, 0x90d6da8
imul ecx, edx
mov edx, 0x264ab75c
xor edx, 0x12ddace1
sub ecx, edx
sub eax, ecx
cmp eax, 0x8fe59b45
ja 0x1400d6013
mov rcx, qword [rbp - 8]
mov edx, dword [0x1401dab08]
xor edx, 0xdac7859
mov r8d, dword [0x1401dab0c]
mov eax, edx
xor eax, r8d
xor eax, 0xffffffff
or edx, r8d
and edx, eax
mov eax, 0xb8bb3d7e
xor eax, 0xb10fbf6a
or edx, eax
mov eax, edx
and eax, 0x4b2a8450
or edx, 0x4b2a8450
add eax, edx
mov r8d, 0xc26b4043
xor edx, edx
div r8d
mov rcx, qword [rcx + 0x28]
mov qword [rbp - 0x50], rcx
cmp rcx, 0
sete cl
mov byte [rbp - 0x42], cl
cmp eax, 0x8086b599
je 0x1400d6013
mov al, byte [rbp - 0x42]
test al, 1
jne 0x1400d5d2b
jmp 0x1400d5cd8
mov rax, qword [rbp - 0x50]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
movabs rcx, 0x4dc64145399444f3
movabs rdx, 0x4dc64145399444f3
xor rcx, rdx
cmp rax, rcx
jne 0x1400d5d2b
mov rcx, qword [rbp - 0x50]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rax, qword [rbp - 8]
mov rax, qword [rax + 0x38]
mov qword [rbp - 0x58], rax
cmp rax, 0
je 0x1400d5dc0
mov rax, qword [rbp - 0x58]
mov rax, qword [rax]
movabs rdx, 0xc24715d67b109211
movabs rcx, 0xc24715d67b109210
xor rdx, rcx
mov rcx, rax
add rcx, rdx
movabs rdx, 0x7f57f216483f5587
movabs r8, 0x80a80de9b7c0aa78
xor rdx, r8
xor rax, rdx
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
movabs rcx, 0xf75baa97feadd878
movabs rdx, 0xf75baa97feadd878
xor rcx, rdx
cmp rax, rcx
jne 0x1400d5dc0
mov rcx, qword [rbp - 0x58]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rax, qword [rbp - 8]
mov rax, qword [rax + 0x48]
mov qword [rbp - 0x60], rax
cmp rax, 0
je 0x1400d5f75
mov eax, dword [0x1401dab10]
mov r8d, dword [0x1401dab14]
mov ecx, 0x6a63e47d
xor ecx, 0x55512d54
xor r8d, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0x9f5d0b67
xor r9d, 0x60a2f498
xor ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x9ffb27f1
xor ecx, 0xcb8b039b
mov edx, 0xca918911
xor edx, 0x356e76ee
xor ecx, edx
add eax, ecx
add eax, 1
add eax, 0x8d4d8428
sub eax, 0xa0c0b88
mov ecx, 0x1f0f49a6
xor ecx, 0x9242cd8e
sub eax, ecx
mov ecx, 0x2395aa18
xor ecx, 0xd33e752b
and eax, ecx
mov ecx, 0xf832dceb
xor ecx, 0x6fa26c25
cmp eax, ecx
je 0x1400d601c
mov rcx, qword [rbp - 0x60]
mov eax, dword [0x1401dab18]
mov edx, dword [0x1401dab1c]
mov r8d, 0x798e3418
xor r8d, 0x8671cbe7
xor edx, r8d
add eax, edx
add eax, 1
mov edx, 0xffffffff
xor edx, 0x7c4d3516
xor r8d, r8d
sub r8d, 1
sub edx, r8d
sub eax, edx
mov edx, 0x52887cc7
xor edx, 0xad778338
mov r8d, eax
xor r8d, edx
and r8d, 0x58b6410c
mov r9d, 0xfcb12420
xor r9d, 0xa407652c
mov edx, 0xbb900657
xor edx, 0x446ff9a8
xor r9d, edx
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x58b6410c
or eax, 0x58b6410c
imul eax, r8d
add eax, edx
mov edx, 0xf8f55984
xor edx, 0xe8a3fd71
sub eax, edx
mov edx, 0x165c2c2b
xor edx, 0xff65fe44
add eax, edx
add eax, 0x1056a4f5
mov rcx, qword [rcx]
movabs rdx, 0xde4e2af649b4b382
movabs r8, 0x9e4e2af649b4b382
xor rdx, r8
and rcx, rdx
cmp rcx, 0
sete cl
mov byte [rbp - 0x61], cl
cmp eax, 0xa2d92663
jbe 0x1400d5e76
mov al, byte [rbp - 0x61]
test al, 1
jne 0x1400d5f64
jmp 0x1400d5f75
mov rcx, qword [rbp - 0x60]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rax, qword [rbp - 8]
mov rax, qword [rax + 0x58]
mov qword [rbp - 0x70], rax
cmp rax, 0
je 0x1400d5fb7
mov rcx, qword [rbp - 0x70]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1400d5fb7
mov rcx, qword [rbp - 0x70]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rax, qword [rbp - 8]
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rax + 0x60]
mov qword [rcx], rdx
mov rax, qword [rax + 0x68]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140018e70
mov rax, qword [rbp - 8]
mov rcx, qword [rbp - 0x28]
add rsp, 0x20
mov rdx, qword [rax + 0x70]
mov qword [rcx], rdx
mov rax, qword [rax + 0x78]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.14005df00
nop
mov rsp, rbp
pop rbp
ret
test dword [rdx - 0x34], ebx
adc ebp, ecx
psubw mm7, mm7
jmp rsi
out 0xa3, al
and eax, 0xfb1de9d3
invalid
fld xword ss:[rax - 0x3ba17]
inc dword [rax]
cmp al, 0x46
add byte [rsi + rax*2], bh
jmp 0x1400d5e76