Function at 0x14018ac70
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x70
lea rbp, [rsp + 0x70]
mov qword [rbp - 8], rcx
mov eax, dword [0x1401e2740]
mov r8d, dword [0x1401e2744]
xor r8d, 0x855c0f7c
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x6773de33
xor ecx, 0x19cc0fc2
mov edx, 0x71c3c9b1
xor edx, 0x8e3c364e
xor ecx, edx
add eax, ecx
add eax, 1
mov ecx, eax
and ecx, 0x8df9b22f
mov edx, 0x6f220b43
xor edx, 0x90ddf4bc
xor ecx, edx
add eax, 0x8df9b22f
mov edx, 0xa4fb7275
xor edx, 0xa4fb7274
add eax, edx
add eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xfcc3a50c
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0x23b9acfd
xor ecx, 0xfc686e07
cmp eax, ecx
jae 0x14018b1f0
mov ecx, dword [0x1401e2748]
mov eax, dword [0x1401e274c]
xor eax, ecx
xor eax, 0xed7048c4
imul eax, eax, 0x2e7368de
mov ecx, eax
not ecx
or ecx, 0x80020043
and ecx, 0x800648d7
and eax, 0x3b82728
sub eax, ecx
mov dword [rbp - 0x10], eax
mov eax, 0x10
mov qword [rbp - 0x30], rax
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x38], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x28], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x20], rax
sub rsp, 0x20
call fcn.14018b20b
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 8]
mov qword [rbp - 0x18], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14018ab99
add rsp, 0x20
mov cl, al
mov eax, dword [rbp - 0x10]
mov byte [rbp - 9], cl
cmp eax, 0x17b004b6
jb 0x14018b1f0
mov al, byte [rbp - 9]
test al, 1
jne 0x14018addc
jmp 0x14018aef1
mov eax, dword [0x1401e2750]
mov r8d, dword [0x1401e2754]
mov ecx, 0xfe6b0955
xor ecx, 0x194f6aa
mov r9d, r8d
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
imul eax, eax, 0x481898b6
mov ecx, 0xffffffff
xor ecx, 0x9049bd0e
add eax, ecx
mov ecx, 0x992967f3
xor ecx, 0x992967f2
add eax, ecx
mov ecx, 0x162de7b2
xor ecx, 0xb9043fa1
sub eax, ecx
cmp eax, 0x8acb6ba7
jbe 0x14018b1f9
mov eax, dword [0x1401e2758]
mov edx, dword [0x1401e275c]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, edx
add eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x7df6680b
add eax, ecx
mov ecx, 0x39f239c7
xor ecx, 0xc6ec48a9
xor edx, edx
div ecx
mov ecx, 0x9949b6d8
xor ecx, 0xd1f18534
xor edx, edx
div ecx
mov ecx, eax
mov rax, qword [rbp - 8]
mov dword [rbp - 0x40], ecx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400837c7
mov rcx, qword [rbp - 0x18]
mov eax, dword [rbp - 0x40]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x39], cl
cmp eax, 0xb3a8a983
ja 0x14018ae4f
mov al, byte [rbp - 0x39]
test al, 1
jne 0x14018aed8
jmp 0x14018b1eb
mov rax, qword [rbp - 8]
mov rcx, qword [rax]
mov edx, 8
sub rsp, 0x20
call fcn.14000de70
add rsp, 0x20
mov rax, qword [rbp - 8]
mov rax, qword [rax + 0x10]
mov qword [rbp - 0x48], rax
cmp rax, 0
je 0x14018af43
mov rax, qword [rbp - 0x48]
mov rax, qword [rax]
movabs rcx, 0xc8628e636b4a2404
movabs rdx, 0x88628e636b4a2404
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14018af43
mov rcx, qword [rbp - 0x48]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov rax, qword [rbp - 8]
mov rax, qword [rax + 0x20]
mov qword [rbp - 0x50], rax
cmp rax, 0
je 0x14018af9b
mov rcx, qword [rbp - 0x50]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0xa57ff49e22b7bb7f
movabs rdx, 0xa57ff49e22b7bb7f
xor rcx, rdx
cmp rax, rcx
jne 0x14018af9b
mov rcx, qword [rbp - 0x50]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov rax, qword [rbp - 8]
mov rcx, rax
add rcx, 0x28
mov qword [rbp - 0x58], rcx
mov rcx, qword [rax + 0x28]
sub rsp, 0x20
call fcn.14018ab99
add rsp, 0x20
test al, 1
jne 0x14018afc8
jmp 0x14018b0d2
mov eax, dword [0x1401e2760]
xor eax, 0xa1fcf31c
mov edx, dword [0x1401e2764]
mov ecx, 0xf82039a5
xor ecx, 0x7dfc65a
xor eax, ecx
xor edx, 0xffffffff
mov ecx, 0xf7585869
xor ecx, 0x5c664c82
mov r8d, 0xb713288e
xor r8d, 0x48ecd771
xor ecx, r8d
or eax, edx
or ecx, 0xab3e14eb
mov edx, 0x6ed92ed1
xor edx, 0x9126d12e
xor eax, edx
and eax, ecx
xor eax, 0xed5b47d0
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xa8f7d6cb
and ecx, edx
or eax, 0xa8f7d6cb
mov edx, 0xf02a41f6
xor edx, 0xfd5be09
xor eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x101a3d04
and ecx, 0x101a3d04
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0x4f87ed78
jb 0x14018b202
mov rax, qword [rbp - 0x58]
mov ecx, dword [str._vn_]
xor ecx, dword [0x1401e276c]
mov edx, 0xbbdafd70
xor edx, 0xc75b51fb
add ecx, edx
xor ecx, 0x40a4bef5
mov edx, 0x85c79dae
xor edx, 0xc139b720
and ecx, edx
mov dword [rbp - 0x5c], ecx
mov rcx, qword [rax]
mov edx, 4
sub rsp, 0x20
call fcn.14000de70
mov eax, dword [rbp - 0x5c]
add rsp, 0x20
cmp eax, 0xc2d918ba
jae 0x14018b077
jmp 0x14018b0d2
mov rax, qword [rbp - 8]
mov rcx, qword [rbp - 0x38]
mov rdx, qword [rax + 0x30]
mov qword [rcx], rdx
mov rax, qword [rax + 0x38]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.14018aad2
mov rax, qword [rbp - 8]
add rsp, 0x20
mov rax, qword [rax + 0x50]
mov qword [rbp - 0x68], rax
cmp rax, 0
je 0x14018b148
mov rax, qword [rbp - 0x68]
mov rax, qword [rax]
movabs rcx, 0xa3a2ea2744607b12
movabs rdx, 0xe3a2ea2744607b12
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14018b148
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov rax, qword [rbp - 8]
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rax + 0x58]
mov qword [rcx], rdx
mov rax, qword [rax + 0x60]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140017970
mov rax, qword [rbp - 8]
add rsp, 0x20
mov rcx, rax
add rcx, 0x68
mov qword [rbp - 0x70], rcx
mov rcx, qword [rax + 0x68]
sub rsp, 0x20
call fcn.14018ab99
add rsp, 0x20
test al, 1
jne 0x14018b199
jmp 0x14018b1c4
mov rax, qword [rbp - 0x70]
mov rcx, qword [rax]
movabs rdx, 0xe67bc945b6294787
movabs rax, 0xe67bc945b629478f
xor rdx, rax
sub rsp, 0x20
call fcn.14000de70
add rsp, 0x20
mov rcx, qword [rbp - 0x20]
mov rax, qword [rbp - 8]
mov rdx, qword [rax + 0x78]
mov qword [rcx], rdx
mov rax, qword [rax + 0x80]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140017970
add rsp, 0x20
mov rsp, rbp
pop rbp
ret
add al, 0xef
int 0xb5
jmp 0x14018ad20
mov cl, 0x42
invalid
jmp qword [rcx + 0x16]