Function at 0x14005da30
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0x100
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x48], rcx
mov eax, 0x10
mov qword [rbp + 0x38], rax
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x38]
mov rcx, rsp
mov qword [rbp + 0x50], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x40], rax
sub rsp, 0x20
call fcn.140051260
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x50]
mov qword [rbp + 0x58], rdx
mov qword [rax], 0
mov rdx, rax
add rdx, 8
mov qword [rbp + 0x60], rdx
mov qword [rax + 8], 0
mov rcx, qword [rcx]
mov edx, 2
lea r8, [rbp + 0x78]
sub rsp, 0x20
call fcn.140052074
add rsp, 0x20
test al, 1
jne 0x14005dacd
jmp 0x14005db91
mov ecx, dword [0x1401f3fc0]
imul ecx, dword [0x1401f3fc4]
xor ecx, 0x19f26887
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0xb5ab2d78
or edx, 0xb5ab2d78
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, 0xb5ab2d78
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x986c437b
xor edx, 0x6793bc84
xor ecx, edx
and eax, ecx
mov ecx, 0xb77bfa0f
xor edx, edx
div ecx
cmp eax, 0xbac6e282
je 0x14005e2e5
mov eax, dword [0x1401f3fc8]
xor eax, 0xae4f6640
mov ecx, dword [0x1401f3fcc]
xor ecx, 0x3ae01a0a
or eax, ecx
mov ecx, 0xc2d2d9ec
xor ecx, 0xfdfbf510
add eax, ecx
xor eax, 0xf20c1eac
sub eax, 0x79eae217
mov ecx, 0x6972ecb6
xor ecx, 0x83cc749d
add eax, ecx
add eax, 0x79eae217
mov dword [rbp + 0x34], eax
sub rsp, 0x20
call fcn.1400091c0
mov eax, dword [rbp + 0x34]
add rsp, 0x20
cmp eax, 0x14ae32a0
je 0x14005db2c
jmp 0x14005e2da
mov eax, dword [0x1401f3fd0]
xor edx, edx
div dword [0x1401f3fd4]
mov ecx, 0xe0af3388
xor edx, edx
div ecx
sub eax, 0x8bea043c
xor eax, 0x2dc13326
mov ecx, 0xc86a037c
xor ecx, 0xb20027b1
cmp eax, ecx
je 0x14005e2ee
mov eax, dword [0x1401f3fd8]
mov r8d, dword [0x1401f3fdc]
mov ecx, 0xcb03a808
xor ecx, 0xcf2fd3bd
xor r8d, ecx
mov edx, 0xbf13826c
xor edx, 0x40ec7d93
mov ecx, eax
xor ecx, edx
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xa68adced
xor ecx, 0x12f5e96c
and ecx, eax
xor ecx, 0xffffffff
add eax, 0xb47f3581
add eax, 1
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xfa058af1
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, eax
and ecx, 0x9f7cc1a7
xor ecx, 0xffffffff
mov edx, 0x87338799
xor edx, 0x184f463e
add eax, edx
add eax, 1
add eax, ecx
mov rcx, qword [rbp + 0x78]
mov qword [rbp + 0x28], rcx
cmp rcx, 0
setl cl
mov byte [rbp + 0x33], cl
cmp eax, 0x49b31f0d
jb 0x14005e2ee
mov al, byte [rbp + 0x33]
test al, 1
jne 0x14005dc88
jmp 0x14005dcac
mov rcx, qword [rbp + 0x28]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000f6ec
add rsp, 0x20
jmp 0x14005e2da
mov rcx, qword [rbp + 0x50]
mov rdx, qword [rbp + 0x28]
sub rsp, 0x20
call fcn.140026fb4
mov r9, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x50]
mov rax, qword [rbp + 0x60]
add rsp, 0x20
mov r8, qword [r9]
mov qword [rbp + 8], r8
mov rcx, r9
add rcx, 8
mov qword [rbp + 0x10], rcx
mov rcx, qword [r9 + 8]
mov r10, qword [rdx]
mov qword [r9], r10
mov r10, qword [rdx + 8]
mov qword [r9 + 8], r10
mov qword [rdx], r8
mov qword [rax], rcx
lea rax, [rbp + 0x68]
add rax, 8
mov qword [rbp + 0x18], rax
xor eax, eax
mov qword [rbp + 0x20], rax
mov rcx, qword [rbp + 8]
mov rax, qword [rbp + 0x20]
mov qword [rbp], rax
cmp rax, rcx
jge 0x14005e21b
mov rcx, qword [rbp]
mov rdx, qword [rbp + 0x50]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp - 8], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14005dd61
mov rcx, qword [rbp]
mov rdx, qword [rbp - 8]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140016582
add rsp, 0x20
jmp 0x14005e2da
mov rax, qword [rbp + 0x58]
mov rdx, qword [rbp]
mov rcx, qword [rbp + 0x60]
mov rcx, qword [rcx]
shl rdx, 5
mov rcx, qword [rcx + rdx + 8]
mov qword [rbp - 0x18], rcx
test rcx, rcx
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp - 9], al
or al, cl
test al, 1
jne 0x14005e02a
mov rdx, qword [rbp - 0x18]
mov rax, qword [rbp + 0x48]
mov rcx, qword [rax]
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
movabs r8, 0xc58ba8e4635ce548
movabs r9, 0xc58ba8e4635ce548
xor r8, r9
movabs r9, 0x83ccaf3a60d523d6
movabs r10, 0x83ccaf3a60d523d7
xor r9, r10
sub r8, r9
sub rax, r8
sub rcx, rax
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
and rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0xfd09efcd0582dd61
movabs rdx, 0x2f61032fa7d229e
xor rcx, rdx
xor rax, rcx
mov qword [rbp - 0x20], rax
mov rdx, qword [rbp + 0x48]
mov rcx, qword [rbp - 0x20]
mov qword [rbp - 0x30], rcx
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp - 0x28], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14005de5d
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x28]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140016582
add rsp, 0x20
jmp 0x14005e2da
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp + 0x10]
mov rax, qword [rax]
add rax, 8
shl rcx, 5
add rax, rcx
cmp qword [rax], 0
je 0x14005deac
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x28]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140052130
mov rcx, qword [rbp + 0x58]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp - 0x20], rax
je 0x14005de16
jmp 0x14005e2da
mov rax, qword [rbp]
mov rcx, qword [rbp + 0x50]
mov rcx, qword [rcx]
mov qword [rbp - 0x38], rcx
cmp rax, rcx
jl 0x14005def6
mov rcx, qword [rbp]
mov rdx, qword [rbp - 0x38]
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
sub rsp, 0x20
call fcn.140016582
add rsp, 0x20
jmp 0x14005e2da
mov rax, qword [rbp]
mov rcx, qword [rbp + 0x60]
mov rcx, qword [rcx]
add rcx, 8
shl rax, 5
add rcx, rax
add rcx, 8
mov rax, qword [rcx]
mov qword [rbp - 0x50], rax
mov rax, qword [rcx + 8]
mov qword [rbp - 0x48], rax
sub rsp, 0x20
call fcn.140012dfb
mov rcx, qword [rbp + 0x50]
mov rax, qword [rbp]
add rsp, 0x20
mov rcx, qword [rcx]
mov qword [rbp - 0x40], rcx
cmp rax, rcx
jl 0x14005df62
mov rcx, qword [rbp]
mov rdx, qword [rbp - 0x40]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140016582
add rsp, 0x20
jmp 0x14005e2da
mov rax, qword [rbp]
mov rcx, qword [rbp + 0x60]
mov rcx, qword [rcx]
add rcx, 8
shl rax, 5
add rcx, rax
add rcx, 0x18
mov rax, qword [rcx]
mov qword [rbp - 0x58], rax
sub rsp, 0x20
call fcn.14012d720
mov r11, qword [rbp - 0x50]
mov r8, qword [rbp - 0x48]
mov rcx, qword [rbp + 0x18]
mov rdx, qword [rbp + 0x48]
mov r9, qword [rbp - 0x58]
mov r10, qword [rbp - 0x18]
mov rax, qword [rbp - 0x30]
add rsp, 0x20
mov qword [rbp + 0x68], r11
mov qword [rcx], r8
lea r8, [rbp + 0x68]
sub rsp, 0x30
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x28], rax
call fcn.14005d890
mov rax, qword [rbp + 0x58]
add rsp, 0x30
cmp byte [rax], 0
jne 0x14005e2da
mov rax, qword [rbp - 0x48]
cmp rax, 0
je 0x14005e048
mov rax, qword [rbp - 0x48]
mov rax, qword [rax]
movabs rcx, 0xb3a7bfa275313510
movabs rdx, 0xf3a7bfa275313510
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14005e048
mov rcx, qword [rbp - 0x48]
sub rsp, 0x20
call fcn.140011305
add rsp, 0x20
jmp 0x14005e048
mov rcx, qword [rbp]
mov dl, byte [rbp - 9]
xor eax, eax
test dl, 1
mov qword [rbp - 0x68], rcx
mov byte [rbp - 0x59], al
jne 0x14005e202
jmp 0x14005e048
mov eax, dword [0x1401f3fe0]
mov ecx, dword [0x1401f3fe4]
sub eax, 0xd2a8cfce
sub eax, ecx
add eax, 0xd2a8cfce
mov ecx, 0xf0ad9b48
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x16c2cf55
xor edx, 0x9bee392a
and ecx, edx
mov edx, 0xffffffff
xor edx, 0x8d2cf67f
and eax, edx
sub eax, ecx
mov ecx, 0x6acec241
xor ecx, 0x5fada283
xor eax, ecx
cmp eax, 0xf7b86e3c
jae 0x14005e2f7
mov r11, qword [rbp]
mov ecx, dword [0x1401f3fe8]
mov edx, dword [0x1401f3fec]
mov eax, ecx
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
or eax, r8d
and ecx, edx
xor ecx, 0xffffffff
mov edx, 0x66cedc02
xor edx, 0x993123fd
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
or eax, 0x2b8761ff
xor eax, 0x16e81296
sub eax, 0xaf41269
mov ecx, 0x1ef72307
xor ecx, 0x9e2832e3
movabs r8, 0x289f83afd2618494
mov rdx, r11
sub rdx, r8
add rdx, 1
movabs r8, 0x289f83afd2618494
add rdx, r8
mov qword [rbp - 0x78], rdx
movabs r9, 0x555274e3d8b335f0
movabs r8, 0xaaad8b1c274cca0f
xor r9, r8
mov r8, r11
xor r8, r9
movabs r9, 0xf6a06ebf71a842f8
and r8, r9
movabs rsi, 0x8584f1b60ef9c11a
movabs r9, 0x73249f097f5183e2
xor rsi, r9
movabs r9, 0xd6393e85f681f951
movabs r10, 0x29c6c17a097e06ae
xor r9, r10
xor rsi, r9
and r11, rsi
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
movabs r10, 0xb02ee5f07f6336b5
movabs rdi, 0x468e8b4f0ecb744d
xor r10, rdi
and r9, r10
movabs r10, 0xcee09c7ead408e50
movabs rdi, 0x311f638152bf71af
xor r10, rdi
and r10, rsi
or r8, r11
or r9, r10
xor r8, r9
and rdx, r8
cmp rdx, 0
setl dl
mov byte [rbp - 0x69], dl
cmp eax, ecx
je 0x14005e2f7
mov rcx, qword [rbp - 0x78]
mov dl, byte [rbp - 0x69]
mov al, 1
test dl, 1
mov qword [rbp - 0x68], rcx
mov byte [rbp - 0x59], al
jne 0x14005e1f0
jmp 0x14005e202
sub rsp, 0x20
call fcn.1400091c0
add rsp, 0x20
jmp 0x14005e2da
mov rax, qword [rbp - 0x68]
mov cl, byte [rbp - 0x59]
test cl, 1
mov qword [rbp + 0x20], rax
jne 0x14005dd09
jmp 0x14005e2da
mov eax, dword [0x1401f3ff0]
mov ecx, dword [0x1401f3ff4]
mov edx, 0x84040a1e
xor edx, 0x1c8aafa5
xor ecx, edx
xor edx, edx
div ecx
add eax, 0xb1ef6439
mov ecx, 0xffffffff
xor ecx, 0xd773095a
add eax, ecx
add eax, 1
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x6211a023
add ecx, eax
xor eax, eax
sub eax, ecx
cmp eax, 0xc512749e
je 0x14005e300
mov rcx, qword [rbp + 0x40]
mov eax, dword [0x1401f3ff8]
xor edx, edx
div dword [0x1401f3ffc]
mov edx, eax
mov rax, qword [rbp + 0x50]
or edx, 0x39bceb2b
add edx, 0xf9e036d7
sub edx, 0x8701ca5b
sub edx, 0xf9e036d7
mov r8d, 0x91b26288
xor r8d, 0x290c71c3
and edx, r8d
mov dword [rbp - 0x7c], edx
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140057a5b
mov eax, dword [rbp - 0x7c]
add rsp, 0x20
cmp eax, 0xc042427
jb 0x14005e269
jmp 0x14005e2da
lea rsp, [rbp + 0x80]
pop rdi
pop rsi
pop rbp
ret
invalid
xchg esp, eax
invalid
or ch, dh
movabs dword [0x88b5fffffda2e974], eax
mov ch, 0x88
sbb edx, dword [rcx + rbp*8 + 0x60]
invalid