Function at 0x140080d00
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x128
mov qword [rsp + 0xe8], r8
mov qword [rsp + 0xf8], rdx
mov qword [rsp + 0xf0], rcx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
mov rdx, qword [rsp + 0xf8]
mov qword [rsp + 0x108], rax
add rax, 0x60
mov qword [rsp + 0x100], rax
mov rax, qword [rdx]
mov qword [rsp + 0x118], rax
mov rax, qword [rdx + 8]
mov qword [rsp + 0x120], rax
lea rcx, [rsp + 0x118]
call fcn.14005ae40
mov rcx, rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x110], rcx
cmp byte [rax + 0x60], 0
jne 0x140081362
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0x110]
movabs r8, 0x16757575669e2355
movabs r9, 0x167575750eb0cf52
xor r8, r9
cmp rdx, 0
cmove rdx, r8
mov qword [rsp + 0xd0], rdx
mov qword [rcx], rdx
mov rcx, qword [rax]
mov qword [rsp + 0xd8], rcx
mov rax, 0xffffffffffffffff
cmp rcx, 0
mov qword [rsp + 0xe0], rax
je 0x140081362
mov rcx, qword [rsp + 0xf8]
mov rdx, qword [rsp + 0xf0]
mov r8, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xd8]
mov r9, rax
and r9, 0xffffffffffffffff
shl r9, 1
movabs r10, 0xcb7fbab879f768f4
movabs r11, 0x348045478608970b
xor r10, r11
xor rax, r10
add rax, r9
and rax, r8
add rdx, 8
mov qword [rsp + 0xb8], rdx
add rcx, 8
mov qword [rsp + 0xc0], rcx
cmp rax, 0
mov qword [rsp + 0xc8], rax
jge 0x140080e8d
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xc8]
mov rax, qword [rax]
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xb0], rax
jmp 0x140080ec9
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0x98], rcx
mov rax, qword [rax]
mov qword [rsp + 0xa0], rax
cmp rcx, rax
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xb0], rax
jl 0x140080f5a
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0xb0]
movabs rax, 0x2c2b4a1890a2e1c8
movabs r8, 0xd3d4b5e76f5d1e37
xor rax, r8
movabs r8, 0x6964c688229a9e38
movabs r9, 0x969b3977dd6561c7
xor r8, r9
xor rax, r8
movabs r8, 0xfe4feff1e289ea46
movabs r9, 0xfe4feff1e289ea46
xor r8, r9
movabs r9, 0xab9d2a409ed38b71
movabs r10, 0xab9d2a409ed38b70
xor r9, r10
sub r8, r9
sub rax, r8
sub rdx, rax
call fcn.1400292ad
mov rax, 0xffffffffffffffff
mov qword [rsp + 0xe0], rax
jmp 0x140081362
mov rcx, qword [rsp + 0x98]
mov rax, qword [rsp + 0xb8]
mov rax, qword [rax]
mov qword [rsp + 0x88], rax
add rax, 8
shl rcx, 5
add rax, rcx
mov rax, qword [rax]
mov qword [rsp + 0x90], rax
cmp rax, 0
je 0x140081336
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0xe8]
cmp rax, qword [rcx]
jne 0x1400811b5
mov rdx, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0xf8]
mov rax, qword [rsp + 0x98]
mov r8, qword [rsp + 0x88]
add r8, 8
shl rax, 5
add r8, rax
add r8, 8
mov rax, qword [r8]
mov qword [rsp + 0x70], rax
mov r8, qword [r8 + 8]
mov qword [rsp + 0x78], r8
mov rcx, qword [rcx]
mov rdx, qword [rdx]
mov qword [rsp + 0x80], rdx
cmp rax, rcx
jne 0x1400811b5
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x70]
cmp rcx, 0
mov qword [rsp + 0xe0], rax
je 0x140081362
mov rax, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x80]
mov r8, qword [rsp + 0x78]
add r8, 8
mov qword [rsp + 0x58], r8
add rcx, 8
mov qword [rsp + 0x60], rcx
xor ecx, ecx
cmp rdx, 0
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0xe0], rax
jg 0x1400810a8
jmp 0x140081362
mov rax, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x50]
mov r8, rcx
and r8, 1
shl r8, 1
xor rcx, 1
add rcx, r8
cmp rcx, rdx
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0xe0], rax
je 0x140081362
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x50], rax
mov eax, dword [0x140275cd0]
mov edx, dword [0x140275cd4]
xor edx, 0xcc4b769b
and eax, eax
xor eax, 0xffffffff
mov r8d, 0x3e1449f4
xor r8d, 0xc1ebb60b
mov ecx, edx
xor ecx, r8d
xor edx, 0xffffffff
or ecx, edx
mov edx, 0x5be4314b
xor edx, 0xa41bceb4
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
xor ecx, ecx
sub ecx, 0x4ab91602
sub eax, ecx
xor eax, 0x3056098f
mov ecx, eax
and ecx, 0x370a3e83
shl ecx, 1
add eax, 0x370a3e83
sub eax, ecx
cmp eax, 0x688d6032
je 0x140081411
mov r8, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
mov eax, dword [0x140275cd8]
sub eax, dword [0x140275cdc]
mov r9d, 0xa4670ac8
xor r9d, 0xd84c256c
xor edx, edx
div r9d
mov r9d, 0xe1013746
xor r9d, 0x5a4b80c2
xor edx, edx
div r9d
mov rdx, qword [rsp + 0x60]
mov r9d, eax
xor r9d, 0xf443485b
mov r10d, 0x5e77be33
xor r10d, 0xa18841cc
xor r9d, r10d
mov r10d, 0xbc38f743
xor r10d, 0x487bbf18
or eax, r10d
and eax, r9d
mov cl, byte [rcx + r8]
cmp cl, byte [rdx + r8]
sete cl
mov byte [rsp + 0x4f], cl
cmp eax, 0x6003a16a
je 0x140081411
mov al, byte [rsp + 0x4f]
test al, 1
jne 0x14008106e
jmp 0x1400811b5
mov rcx, qword [rsp + 0x98]
mov rax, rcx
and rax, 1
mov rdx, rcx
or rdx, 1
add rax, rdx
mov qword [rsp + 0x40], rax
movabs rdx, 0x59e81a067155f7cf
movabs r8, 0xa617e5f98eaa0830
xor rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jl 0x140081218
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0xa0]
add rax, 0xffffffffffffffff
and rax, rcx
mov qword [rsp + 0x38], rax
jmp 0x140081304
mov eax, dword [0x140275ce0]
xor eax, dword [0x140275ce4]
and eax, 0xa4ba8092
mov r8d, 0xffffffff
xor r8d, 0x2e5dbd0a
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0xf58a8849
xor r8d, 0xdbd73543
mov edx, eax
and edx, r8d
or eax, 0x2e5dbd0a
imul eax, edx
add eax, ecx
mov ecx, 0xf19d8b6d
xor edx, edx
div ecx
cmp eax, 0x8f87e077
ja 0x14008141a
mov eax, dword [0x140275ce8]
xor eax, 0x685fa71
mov ecx, dword [0x140275cec]
xor ecx, 0xe528bfb0
and eax, ecx
mov ecx, 0xc13bde30
xor ecx, 0x89e68bee
and eax, ecx
xor eax, 0x21963d80
mov ecx, 0x91ac9fd8
xor edx, edx
div ecx
mov dword [rsp + 0x30], eax
mov eax, 0x949c8337
xor eax, 0x30fdef44
mov dword [rsp + 0x2c], eax
call fcn.14000f24b
mov rdx, qword [rsp + 0x100]
mov ecx, dword [rsp + 0x2c]
mov eax, dword [rsp + 0x30]
cmp byte [rdx], 0
sete dl
mov byte [rsp + 0x37], dl
cmp eax, ecx
je 0x140081276
mov cl, byte [rsp + 0x37]
mov rax, 0xffffffffffffffff
test cl, 1
mov qword [rsp + 0xe0], rax
jne 0x140081304
jmp 0x140081362
mov rax, qword [rsp + 0x38]
movabs rcx, 0x9cc44dfab3b5e8ff
movabs rdx, 0x9cc44dfab3b5e8ff
xor rcx, rdx
cmp rax, rcx
mov qword [rsp + 0xc8], rax
jl 0x140080e65
jmp 0x140080e8d
mov rcx, qword [rsp + 0x98]
mov rax, rcx
xor rax, 0xffffffffffffffff
and rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
or rax, rcx
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x20], rax
mov eax, dword [0x140275cf0]
or eax, dword [0x140275cf4]
sub eax, 0x79073080
mov edx, eax
xor edx, 0xffffffff
and edx, 0x23008f11
mov r8d, 0xffffffff
xor r8d, 0x23008f11
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x23008f11
or eax, 0x23008f11
imul eax, edx
add eax, ecx
and eax, 0x6bd6c4a
cmp eax, 0xd9ad2bf6
je 0x140081423
mov eax, dword [0x140275cf8]
sub eax, dword [0x140275cfc]
or eax, 0x732fe2b0
mov ecx, 0xa13ce069
xor ecx, 0xa27a2fc8
and eax, ecx
mov ecx, eax
add ecx, 1
mov edx, 0x5308cc3e
xor edx, 0xacf733c1
xor eax, edx
or eax, 0x5cc5d212
add eax, ecx
cmp eax, 0xe1ba89f1
jae 0x1400813c2
mov rax, qword [rsp + 0x20]
add rsp, 0x128
ret
mov esp, 0xe9aee3d6
add al, 0xfd
invalid
and esp, edi
jp 0x140081463
jmp 0x140081276
xchg byte [rsi - 0x69168efa], ah
invalid
cmp byte [rax - 0x75], cl
or byte [rax - 0x77], cl
and al, 0x40
lea rdx, [rsp + 0x38]
call fcn.14007f360
nop
add rsp, 0x48
ret