Function at 0x140141d80
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xc8
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], rcx
call fcn.14014784e
mov qword [rsp + 0x88], rax
add rax, 0x50
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0xb8]
add rax, 8
mov qword [rsp + 0x78], rax
mov qword [rsp + 0xb8], 2
mov ecx, 2
mov r8d, 1
mov rdx, r8
call fcn.140018f50
mov qword [rsp + 0x80], rax
mov qword [rsp + 0xc0], rax
mov ecx, 0x2b2
call fcn.140062ce5
mov cl, al
mov rax, qword [rsp + 0x88]
mov byte [rsp + 0x97], cl
cmp byte [rax + 0x50], 0
jne 0x140142171
mov eax, dword [0x140253c48]
mov ecx, dword [0x140253c4c]
xor ecx, 0xc077ed61
imul eax, ecx
imul ecx, eax, 0xcea25c84
mov edx, 0xe806a527
xor edx, 0x5c79b33d
mov eax, 0x6460e5fb
xor eax, 0x9b9f1a04
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
imul eax, eax, 0xc4f22e6c
cmp eax, 0x52232e5f
jb 0x1401421a7
mov cl, byte [rsp + 0x97]
mov eax, dword [0x140253c50]
xor edx, edx
div dword [0x140253c54]
mov r8d, 0xf6049082
xor edx, edx
div r8d
mov r10d, eax
mov rax, qword [rsp + 0x80]
mov edx, 0x8c6b2891
xor edx, 0x265d2f6a
or r10d, edx
mov edx, 0x153efb9b
xor edx, 0xeac10464
mov r8d, r10d
xor r8d, edx
mov edx, 0xf8cd6cd0
xor edx, 0x18c8a592
and edx, r8d
mov r9d, 0x574535f
xor r9d, 0xe5719a1d
mov r8d, 0xe7b4be52
xor r8d, 0x184b41ad
xor r9d, r8d
and r10d, r9d
mov r8d, 0xffffffff
xor r8d, 0x769b0529
and r8d, 0xe005c942
and r9d, 0x769b0529
or edx, r10d
or r8d, r9d
xor edx, r8d
mov dword [rsp + 0x58], edx
mov edx, 0xe47d9b62
xor edx, 0x2ec1b255
mov dword [rsp + 0x54], edx
mov byte [rax + 8], cl
mov cx, 0x7e53
xor cx, 0x75d7
call fcn.140062ce5
mov rdx, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x54]
mov r8b, al
mov eax, dword [rsp + 0x58]
mov byte [rsp + 0x5e], r8b
cmp byte [rdx], 0
sete dl
mov byte [rsp + 0x5f], dl
cmp eax, ecx
jbe 0x140141e55
mov al, byte [rsp + 0x5f]
test al, 1
jne 0x140141f4d
jmp 0x140142171
mov cl, byte [rsp + 0x5e]
mov rax, qword [rsp + 0x78]
mov rax, qword [rax]
mov byte [rax + 9], cl
call fcn.14014784e
xor eax, eax
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x40], rax
cmp rax, 8
je 0x140141fad
mov rax, qword [rsp + 0x40]
mov byte [rsp + rax + 0xb0], 0
movabs rcx, 0x6fd7726e0c4eb1e5
movabs rdx, 0x6fd7726e0c4eb1e4
xor rcx, rdx
add rax, rcx
mov qword [rsp + 0x48], rax
jmp 0x140141f68
mov eax, dword [0x140253c58]
mov ecx, 0x6392450d
xor ecx, 0xe51ec172
xor eax, ecx
and eax, dword [0x140253c5c]
xor ecx, ecx
sub ecx, 0xed8d49cc
sub eax, ecx
mov ecx, 0xe24daf75
xor edx, edx
div ecx
xor eax, 0x6f6f6e89
mov ecx, 0xe2a83b87
xor ecx, 0xf435707
cmp eax, ecx
je 0x1401421b0
mov rax, qword [rsp + 0x60]
mov edx, dword [0x140253c60]
mov ecx, dword [0x140253c64]
or edx, edx
xor edx, 0xffffffff
or ecx, ecx
mov r8d, 0xb219a83d
xor r8d, 0x4de657c2
xor ecx, r8d
or edx, ecx
xor edx, 0xffffffff
sub edx, 0x84373158
add edx, 0xa57850b
add edx, 0x84373158
mov ecx, 0xd16eae9b
xor ecx, 0x903f3268
imul edx, ecx
mov ecx, edx
and ecx, 0x91d3a994
mov r8d, 0xbaacab33
xor r8d, 0x2b7f02a7
xor edx, r8d
or ecx, edx
mov dword [rsp + 0x3c], ecx
mov qword [rsp + 0xa8], rax
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0xa8]
mov r8d, 8
call fcn.1401421c0
mov eax, dword [rsp + 0x3c]
cmp eax, 0x14ca7553
jbe 0x140141ff1
xor eax, eax
mov qword [rsp + 0x30], rax
jmp 0x14014209a
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x28], rax
mov dl, byte [rsp + rax + 0xb0]
lea rcx, [rsp + 0xb8]
call fcn.1400217b0
mov rax, qword [rsp + 0x28]
movabs rcx, 0x997c0437a94dd746
movabs rdx, 0x1e9af16eb3f8e93d
xor rcx, rdx
add rax, rcx
add rax, 1
movabs rcx, 0x87e6f5591ab53e7b
sub rax, rcx
movabs rcx, 0x2355fb9592fe63e3
movabs rdx, 0x2355fb9592fe63eb
xor rcx, rdx
cmp rax, rcx
mov qword [rsp + 0x30], rax
jne 0x14014209a
mov cx, 0xc781
xor cx, 0xc436
call fcn.140062ce5
mov cl, al
mov rax, qword [rsp + 0x70]
mov byte [rsp + 0x27], cl
mov al, byte [rax]
mov cl, 0xa5
xor cl, 0xa5
cmp al, cl
jne 0x140142171
mov dl, byte [rsp + 0x27]
lea rcx, [rsp + 0xb8]
call fcn.1400217b0
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x68]
mov r8, qword [rax]
mov rdx, r8
add rdx, 8
xor eax, eax
cmp r8, 0
cmove rdx, rax
mov r8, qword [rsp + 0xb8]
call fcn.140141b40
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0xa0], rax
lea rcx, [rsp + 0x98]
call fcn.140021670
nop
add rsp, 0xc8
ret
jg 0x140142212
lahf
invalid
invalid