Function at 0x140147b60
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x80
lea rbp, [rsp + 0x80]
mov qword [rbp - 8], rcx
mov eax, dword [0x14024a368]
mov r8d, dword [0x14024a36c]
mov ecx, eax
and ecx, ecx
mov edx, 0x6f69e234
xor edx, 0x90961dcb
xor ecx, edx
xor ecx, 0xffffffff
mov edx, r8d
xor edx, 0xffffffff
or ecx, edx
mov edx, r8d
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
xor eax, 0xffffffff
mov r8d, 0x2230fff3
xor r8d, 0xddcf000c
xor edx, r8d
or eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov edx, ecx
xor edx, 0xffffffff
mov eax, 0x843941b3
xor eax, 0x45b9f20
and eax, edx
mov edx, 0xffffffff
xor edx, 0x8062de93
and ecx, edx
or eax, ecx
mov ecx, eax
and ecx, 0x7541cf26
mov edx, 0xdbf7edf
xor edx, 0xf2408120
xor ecx, edx
add eax, 0x7541cf26
mov edx, 0x72d06360
xor edx, 0x72d06361
add eax, edx
add eax, ecx
imul eax, eax, 0x447e8dd7
cmp eax, 0x35512aa0
jae 0x1401481ba
mov eax, dword [0x14024a370]
mov ecx, dword [0x14024a374]
or eax, ecx
mov edx, eax
not edx
and edx, 0x62ab1d9f
mov ecx, eax
and ecx, 0x1d54e260
imul ecx, edx
mov edx, eax
and edx, 0x62ab1d9f
or eax, 0x62ab1d9f
imul eax, edx
add eax, ecx
and eax, 0x444fa8c3
add eax, 0xbf397219
mov dword [rbp - 0x1c], eax
mov eax, 0x980a0159
mov dword [rbp - 0x20], eax
mov eax, 0x10
mov qword [rbp - 0x48], rax
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp - 0x48]
mov rcx, rsp
mov qword [rbp - 0x30], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x58], rax
mov eax, 0x20
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp - 0x48]
mov rcx, rsp
mov qword [rbp - 0x50], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp - 0x48]
mov rcx, rsp
mov qword [rbp - 0x40], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x38], rax
sub rsp, 0x20
call fcn.140147982
mov rcx, qword [rbp - 0x30]
add rsp, 0x20
mov qword [rbp - 0x28], rax
movabs rdx, 0x39c341b6c989de7f
movabs rax, 0x39c341b6c989de77
xor rdx, rax
sub rsp, 0x20
call fcn.1401479a0
call fcn.1400b2750
mov rdx, qword [rbp - 0x28]
mov ecx, dword [rbp - 0x20]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp - 0x1c]
mov qword [rbp - 0x18], r8
mov dl, byte [rdx]
mov r8b, 0xce
xor r8b, 0xce
cmp dl, r8b
sete dl
mov byte [rbp - 9], dl
cmp eax, ecx
je 0x140147c21
mov cl, byte [rbp - 9]
xor eax, eax
test cl, 1
mov byte [rbp - 0x59], al
jne 0x140147d4f
jmp 0x1401481ad
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp - 0x58]
mov qword [rax], 0
movabs rdx, 0x80515684e16397d1
movabs rax, 0x80515684e16397d1
xor rdx, rax
xor eax, eax
cmp rcx, rdx
mov byte [rbp - 0x59], al
je 0x1401481ad
mov r8, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x18]
mov edx, 8
mov rax, qword [0x14025a7e8]
sub rsp, 0x20
call qword [rax]
mov rcx, qword [rbp - 0x28]
add rsp, 0x20
mov dword [rbp - 0x60], eax
xor eax, eax
cmp byte [rcx], 0
mov byte [rbp - 0x59], al
jne 0x1401481ad
mov eax, dword [rbp - 0x60]
mov ecx, 0x8cd9fa42
xor ecx, 0x8cd9fa42
cmp eax, ecx
je 0x140147e4e
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.1400129fd
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14025a748]
mov qword [rcx], rax
lea rax, [0x140259a18]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140259ac8]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140259ad0]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140259a18]
lea r8, [0x140259a40]
lea r9, [0x140259a32]
sub rsp, 0x30
mov qword [rsp + 0x20], 0x5f8462d4
call fcn.140012522
add rsp, 0x30
xor eax, eax
mov byte [rbp - 0x59], al
jmp 0x1401481ad
mov rcx, qword [rbp - 0x38]
mov rax, qword [rbp - 8]
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1401481cc
mov rcx, qword [rbp - 0x28]
add rsp, 0x20
mov qword [rbp - 0x68], rax
xor eax, eax
cmp byte [rcx], 0
mov byte [rbp - 0x59], al
jne 0x1401481ad
mov r8d, dword [0x14024a378]
mov eax, 0x569cee10
xor eax, 0x30caa466
xor r8d, eax
mov eax, dword [0x14024a37c]
xor eax, 0x11473c2b
xor eax, 0xffffffff
add r8d, eax
add r8d, 1
mov ecx, r8d
xor ecx, 0xffffffff
mov eax, 0xa10e1322
xor eax, 0x2cb5358e
and eax, ecx
mov r9d, 0xffffffff
xor r9d, 0x8dbb26ac
and r8d, r9d
mov ecx, 0x752918ef
xor ecx, 0xaeca10c5
mov edx, 0x16ba3da7
xor edx, 0xe945c258
xor ecx, edx
mov edx, 0x56ffe644
xor edx, 0xdb44c0e8
and ecx, edx
mov edx, 0xc19219c7
xor edx, 0x1a7111ed
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
xor eax, 0xcc548ed2
mov ecx, eax
and ecx, 0xb54a36ef
xor ecx, 0xffffffff
add eax, 0xb54a36ef
add eax, 1
add eax, ecx
mov ecx, 0x712a7a9f
xor ecx, 0x26f182fa
cmp eax, ecx
jbe 0x1401481c3
mov r8, qword [rbp - 0x30]
mov ecx, dword [0x14024a380]
mov edx, dword [0x14024a384]
mov eax, 0x50de85c6
xor eax, 0xd7fdb30b
xor edx, eax
mov eax, ecx
and eax, edx
or ecx, edx
add eax, ecx
mov ecx, 0xa9faaab3
xor edx, edx
div ecx
mov rdx, qword [rbp - 0x68]
mov ecx, eax
xor ecx, 0xffe93761
xor ecx, 0xffffffff
or eax, 0xffe93761
and eax, ecx
xor eax, 0x11732975
mov dword [rbp - 0x74], eax
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1400aaf44
mov rcx, qword [rbp - 0x28]
add rsp, 0x20
mov edx, eax
mov eax, dword [rbp - 0x74]
mov dword [rbp - 0x70], edx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x69], cl
cmp eax, 0xf47aff0b
ja 0x140147f39
mov cl, byte [rbp - 0x69]
xor eax, eax
test cl, 1
mov byte [rbp - 0x59], al
jne 0x140147fcb
jmp 0x1401481ad
mov eax, dword [rbp - 0x70]
mov ecx, 0xf03c5541
xor ecx, 0xf03c5541
cmp eax, ecx
jne 0x140148063
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.1400129fd
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14025a748]
mov qword [rcx], rax
lea rax, [0x140259a18]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140259ac8]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140259ad0]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140259a18]
lea r8, [0x140259a40]
lea r9, [0x140259a32]
sub rsp, 0x30
mov qword [rsp + 0x20], 0x3d0a5e0a
call fcn.140012522
add rsp, 0x30
xor eax, eax
mov byte [rbp - 0x59], al
jmp 0x1401481ad
mov rcx, qword [rbp - 0x50]
movabs rdx, 0x527faa4d3a873a3c
movabs rax, 0x527faa4d3a873a28
xor rdx, rax
sub rsp, 0x20
call fcn.1401479a0
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x50]
mov r8, qword [rbp - 0x40]
add rsp, 0x20
mov r9d, 0x7a04dda8
xor r9d, 0x7a04dda9
mov dword [rdx + 4], r9d
mov dword [rdx], 1
mov rcx, qword [rcx]
mov qword [rdx + 8], rcx
mov dword [rdx + 0x10], 2
mov ecx, 0x4ae6f44e
xor ecx, 0x4ae6f44e
mov dword [r8], ecx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400aaf79
mov rcx, qword [rbp - 0x28]
add rsp, 0x20
mov dword [rbp - 0x78], eax
xor eax, eax
cmp byte [rcx], 0
mov byte [rbp - 0x59], al
jne 0x1401481ad
mov eax, dword [rbp - 0x78]
cmp eax, 0
jne 0x140148194
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.1400129fd
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14025a748]
mov qword [rcx], rax
lea rax, [0x140259a18]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140259ac8]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140259ad0]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0xa4a40fc7204e7af
movabs rdx, 0xa4a40fc211efd90
xor rax, rdx
lea rdx, [0x140259a18]
lea r8, [0x140259a40]
lea r9, [0x140259a32]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140012522
add rsp, 0x30
xor eax, eax
mov byte [rbp - 0x59], al
jmp 0x1401481ad
mov rax, qword [rbp - 0x40]
mov eax, dword [rax]
mov ecx, 0xab5e48b7
xor ecx, 0xab5e48b7
cmp eax, ecx
setne al
mov byte [rbp - 0x59], al
mov al, byte [rbp - 0x59]
and al, 1
movzx eax, al
mov rsp, rbp
pop rbp
ret
invalid
invalid