Function at 0x140129fe0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x148
mov dword [rsp + 0x8c], r9d
mov qword [rsp + 0xc0], r8
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0x98], rcx
mov qword [rsp + 0xa0], rcx
mov rax, qword [0x14028d330]
mov qword [rsp + 0xa8], rax
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0xc8], rcx
mov ecx, dword [rax]
call fcn.14000efc9
mov rax, qword [rsp + 0xa8]
xorps xmm0, xmm0
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0x110], xmm0
mov ecx, dword [rax]
call fcn.14000efc9
movaps xmm0, xmmword [rsp + 0xb0]
mov r8, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xc8]
movaps xmmword [rsp + 0x100], xmm0
add rax, 0x60
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xf8], 0
mov rax, qword [r8]
mov qword [rsp + 0xe8], rax
mov rax, qword [r8 + 8]
mov qword [rsp + 0xe0], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
add rax, 0x60
mov qword [rsp + 0xd8], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, qword [rsp + 0xe0]
mov r8, qword [rsp + 0xe8]
add rcx, 8
lea rdx, [0x14028a67f]
cmp r8, 0
cmove rcx, rdx
mov qword [rsp + 0xf0], rcx
mov al, byte [rax + 0x60]
mov cl, 0x1e
xor cl, 0x1e
cmp al, cl
jne 0x14012a17f
mov rax, qword [rsp + 0xe8]
cmp rax, 0
jge 0x14012a145
mov rcx, qword [rsp + 0xe8]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14001a720
jmp 0x14012a17f
mov r8, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0xf0]
lea rcx, [rsp + 0x138]
call fcn.1400eb9c0
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x140]
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], rcx
cmp byte [rax], 0
jne 0x14012a1d3
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x128], rcx
mov qword [rsp + 0x130], rax
lea rcx, [rsp + 0x128]
call fcn.1400eb030
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x58], rax
mov eax, dword [0x14027a450]
xor edx, edx
div dword [0x14027a454]
xor ecx, ecx
sub ecx, 0xc4779e2e
add eax, ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0x1ace51f4
xor ecx, 0x2b92d272
mov edx, 0x6b14c64d
xor edx, 0x94eb39b2
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x315c8386
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
and eax, 0xaf04a9be
mov ecx, 0x238418ab
xor ecx, 0xec9293d7
cmp eax, ecx
ja 0x14012a56b
mov rcx, qword [rsp + 0xd0]
mov eax, dword [0x14027a458]
and eax, dword [0x14027a45c]
or eax, 0x87be14ef
xor eax, 0xa012efd7
mov r8d, 0x5ed68541
xor edx, edx
div r8d
cmp byte [rcx], 0
sete cl
mov byte [rsp + 0x57], cl
cmp eax, 0xfef40135
jae 0x14012a23f
mov al, byte [rsp + 0x57]
test al, 1
jne 0x14012a28e
jmp 0x14012a55b
mov eax, dword [0x14027a460]
xor edx, edx
div dword [0x14027a464]
mov ecx, 0xcd88c3fe
xor ecx, 0xcd88c3fe
mov edx, 0x76b0ca23
xor edx, 0xbc333f13
sub ecx, edx
sub eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xea6597ab
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xea6597ab
or eax, 0xea6597ab
imul eax, edx
add eax, ecx
mov edx, 0x393de9c
xor edx, 0xaac452dd
mov ecx, 0x7e888568
xor ecx, 0x81777a97
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xa9578c41
add eax, edx
sub eax, ecx
cmp eax, 0x733c908b
je 0x14012a574
mov r9d, dword [rsp + 0x8c]
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x90]
mov eax, dword [0x14027a468]
xor eax, 0xca350c18
sub eax, dword [0x14027a46c]
mov r8d, 0xffffffff
xor r8d, 0x6031b0a0
mov r10d, 0x3d703e9c
xor r10d, 0x3d703e9c
mov r11d, 0xd8953b9b
xor r11d, 0xd8953b9a
sub r10d, r11d
sub r8d, r10d
sub eax, r8d
mov r11d, 0xffffffff
xor r11d, 0xf01e65d9
mov r10d, eax
and r10d, r11d
mov r8d, eax
or r8d, r11d
mov r11d, 0x140f8151
xor r11d, 0xebf07eae
xor r8d, r11d
imul r8d, r10d
mov r10d, eax
and r10d, 0xf01e65d9
or eax, 0xf01e65d9
imul eax, r10d
add eax, r8d
imul eax, eax, 0xea3ece5e
mov dword [rsp + 0x4c], eax
xor r8d, r8d
lea rax, [rsp + 0xf8]
mov qword [rsp + 0x20], rax
call fcn.1400ee94e
mov rcx, qword [rsp + 0xd0]
mov edx, eax
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x50], edx
mov cl, byte [rcx]
mov dl, 0xb
xor dl, 0xb
cmp cl, dl
sete cl
mov byte [rsp + 0x56], cl
cmp eax, 0xc5c12ebf
jae 0x14012a318
mov al, byte [rsp + 0x56]
test al, 1
jne 0x14012a40e
jmp 0x14012a55b
mov ecx, dword [0x14027a470]
mov edx, dword [0x14027a474]
mov eax, ecx
and eax, edx
or ecx, edx
add eax, ecx
mov ecx, 0xfda7d8f1
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x7490f1bc
add ecx, eax
xor eax, eax
sub eax, ecx
and eax, 0x87a35e9e
cmp eax, 0x3b4c029a
ja 0x14012a57d
mov ecx, dword [rsp + 0x50]
mov eax, dword [0x14027a478]
mov edx, dword [0x14027a47c]
xor edx, 0xa2e4bd1c
xor eax, edx
mov edx, 0x66959304
xor edx, 0xf067776b
sub eax, edx
mov edx, 0xe7ec1894
xor edx, 0x5ce1c267
add eax, edx
imul eax, eax, 0xaddaf8de
cmp ecx, 0
sete cl
mov byte [rsp + 0x4b], cl
cmp eax, 0xbdcf9c5
jbe 0x14012a44c
mov al, byte [rsp + 0x4b]
test al, 1
jne 0x14012a4ec
jmp 0x14012a4aa
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
mov rax, qword [rsp + 0xd0]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x110], xmm0
mov cl, byte [rax]
mov dl, 0x98
xor dl, 0x98
lea rax, [rsp + 0x110]
cmp cl, dl
mov qword [rsp + 0x40], rax
je 0x14012a540
jmp 0x14012a55b
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
movsd xmm0, qword [rsp + 0xf8]
movaps xmmword [rsp + 0x30], xmm0
call fcn.14000efc9
movaps xmm1, xmmword [rsp + 0x30]
out dx, al
dec dword [rdi]
sub byte [rsp + 0x30], cl
mov rcx, qword [rsp + 0xd0]
movapd xmm0, xmmword [0x14028a480]
movsd xmm0, xmm1
movdqa xmmword [rsp + 0x100], xmm0
lea rax, [rsp + 0x100]
cmp byte [rcx], 0
mov qword [rsp + 0x40], rax
jne 0x14012a55b
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rcx, qword [rcx + 8]
mov qword [rax + 8], rcx
mov rax, qword [rsp + 0xa0]
add rsp, 0x148
ret
invalid
ja 0x14012a505
invalid
pushfq
mov ebp, 0xc6e94100
invalid