Function at 0x140141740
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x48
mov qword [rsp + 0x38], rcx
call fcn.14014172a
mov rcx, qword [rsp + 0x38]
add rax, 0x50
mov qword [rsp + 0x40], rax
cmp rcx, 0xff
jbe 0x14014178f
mov rcx, qword [rsp + 0x38]
movabs rdx, 0x913f892258a2f3b5
movabs rax, 0x913f892258a2f34a
xor rdx, rax
call fcn.140012b72
jmp 0x140141931
mov rax, qword [rsp + 0x38]
lea rcx, [0x14026ec10]
imul rax, rax, 0x528
add rcx, rax
mov qword [rsp + 0x30], rcx
call fcn.140140cb0
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x140141931
mov rax, qword [rsp + 0x38]
lea rcx, [0x14026ec10]
imul rax, rax, 0x528
add rcx, rax
add rcx, 0x38
call fcn.140140cb0
mov rax, qword [rsp + 0x40]
mov al, byte [rax]
mov cl, 0xdd
xor cl, 0xdd
cmp al, cl
jne 0x140141931
mov rax, qword [rsp + 0x38]
lea rcx, [0x14026ec10]
imul rdx, rax, 0x528
add rcx, rdx
add rcx, 0x81
mov dl, 0xb6
xor dl, 0xb7
mov byte [rcx], dl
lea rcx, [0x14026ec10]
imul rax, rax, 0x528
add rcx, rax
add rcx, 0xb8
call fcn.140140cb0
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x140141931
mov eax, dword [0x14024a0d8]
xor eax, 0x2ec8c0af
add eax, dword [0x14024a0dc]
and eax, 0x8fcc7a7e
add eax, 0x9881feb1
mov ecx, 0x177483be
xor ecx, 0x5ec3b74d
and eax, ecx
cmp eax, 0xa3d86ac2
je 0x140141a32
mov rax, qword [rsp + 0x38]
mov ecx, dword [0x14024a0e0]
mov edx, dword [0x14024a0e4]
xor edx, 0x4670831c
sub ecx, edx
imul ecx, ecx, 0xe1d50cd2
add ecx, 0x4c819452
sub ecx, 0xe69bc3e
sub ecx, 0x4c819452
and ecx, 0x87964538
mov dword [rsp + 0x28], ecx
mov ecx, 0x9bb6a838
xor ecx, 0xfe5ae3ce
mov dword [rsp + 0x24], ecx
lea rcx, [0x14026ec10]
imul rax, rax, 0x528
add rcx, rax
add rcx, 0x90
mov rax, qword [0x14025a600]
call qword [rax]
mov rdx, qword [rsp + 0x40]
mov ecx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x28]
cmp byte [rdx], 0
sete dl
mov byte [rsp + 0x2f], dl
cmp eax, ecx
jb 0x140141872
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x14014190d
jmp 0x140141931
mov r8, qword [rsp + 0x30]
mov rax, qword [rsp + 0x38]
lea rcx, [0x1402c1410]
shl rax, 5
add rcx, rax
lea rdx, [0x1401412c0]
call fcn.140005af0
mov r11d, dword [0x14024a0e8]
or r11d, dword [0x14024a0ec]
mov eax, r11d
xor eax, 0xffffffff
mov r8d, 0xa369e188
xor r8d, 0x8333b47d
mov ecx, 0x3ebe0fbe
xor ecx, 0xc141f041
xor r8d, ecx
mov edx, 0xffffffff
xor edx, 0x7b59154e
mov ecx, eax
and ecx, 0x7b59154e
and r11d, edx
mov r9d, r8d
and r9d, 0x7b59154e
mov r10d, 0xedb99fef
xor r10d, 0xcde3ca1a
and r10d, edx
or ecx, r11d
or r9d, r10d
xor ecx, r9d
or eax, r8d
mov r8d, 0xa112a7e6
xor r8d, 0x5eed5819
xor eax, r8d
or edx, 0x7b59154e
and eax, edx
or ecx, eax
sub ecx, 0x2d941da0
mov eax, ecx
and eax, 0xf59877d9
or ecx, 0xf59877d9
add eax, ecx
mov ecx, 0xe51e1461
xor ecx, 0xe9e0210f
cmp eax, ecx
jbe 0x140141a3b
mov eax, dword [0x14024a0f0]
and eax, dword [0x14024a0f4]
mov ecx, 0xd07d3a86
xor edx, edx
div ecx
mov ecx, 0x89a7394a
xor ecx, 0x525549b4
and eax, ecx
mov ecx, eax
and ecx, 0xd208462a
shl ecx, 1
mov edx, 0x3fd2bcba
xor edx, 0xeddafa90
add eax, edx
sub eax, ecx
mov ecx, 0xdb7679be
xor ecx, 0xd88e765d
cmp eax, ecx
jbe 0x1401419de
add rsp, 0x48
ret
push rax
or eax, 0x37e9fd96
invalid
jp 0x140141a50
xor r9d, ebp
invalid
and al, 0x38
add rax, 0x50
mov qword [rsp + 0x30], rax
call fcn.140140c34
mov rcx, rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x40], rcx
cmp byte [rax + 0x50], 0
jne 0x140141b00
mov rcx, qword [rsp + 0x40]
mov eax, 0x100
mov rdx, rcx
sub rdx, rax
cmovl rax, rcx
mov qword [0x14026eb90], rax
lea rax, [0x14026ec10]
mov qword [0x14026eb98], rax
xor eax, eax
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x20], rax
cmp rax, qword [0x14026eb90]
jge 0x140141b00
mov rcx, qword [rsp + 0x20]
call fcn.140141740
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x20]
mov cl, byte [rcx]
movabs rdx, 0xc25cbe24c0f5f433
sub rax, rdx
add rax, 1
movabs rdx, 0xc25cbe24c0f5f433
add rax, rdx
cmp cl, 0
mov qword [rsp + 0x28], rax
je 0x140141aa7
add rsp, 0x48
ret