Function at 0x1400ec630
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x40], rcx
call fcn.1400ec56c
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x50], rax
cmp rdx, 0
je 0x1400ec751
mov rax, qword [rsp + 0x48]
movabs rcx, 0xd93db9cac05a21c6
sub rax, rcx
add rax, 0xfffffffffffffff0
movabs rcx, 0xd93db9cac05a21c6
add rax, rcx
mov qword [rsp + 0x30], rax
mov rdx, qword [rax]
mov rax, rdx
and rax, 0x10
mov rcx, rdx
or rcx, 0x10
add rax, rcx
mov qword [rsp + 0x38], rax
mov rcx, rdx
and rcx, rcx
xor rcx, 0xffffffffffffffff
and rcx, 0xffffffffffffffff
movabs r8, 0xb77663e08295fc86
movabs r9, 0x48899c1f7d6a0379
xor r8, r9
xor rcx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
or r8, r9
and rdx, r8
movabs r8, 0x8ae71e56c22eabe9
movabs r9, 0x7518e1a93dd15416
xor r8, r9
xor rdx, r8
movabs r8, 0x68efdb1621893151
movabs r9, 0x971024e9de76ceae
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
or rcx, rdx
and rax, rcx
movabs rcx, 0x4d08609f7b436632
movabs rdx, 0x4d08609f7b436632
xor rcx, rdx
cmp rax, rcx
jge 0x1400ec744
call fcn.140008bc6
jmp 0x1400ec751
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
mov qword [rax], rcx
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax]
call fcn.1400ec587
test al, 1
jne 0x1400ec76b
jmp 0x1400ec8ba
mov eax, dword [0x14021d180]
sub eax, dword [0x14021d184]
add eax, 0x3c28aae7
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x5894ce88
mov edx, 0xffffffff
xor edx, 0x5894ce88
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
and eax, 0x47c67523
cmp eax, 0x6683d660
ja 0x1400ecaa8
mov rax, qword [rsp + 0x40]
mov ecx, dword [0x14021d188]
or ecx, dword [0x14021d18c]
sub ecx, 0xaeda4921
mov edx, 0x45869fae
xor edx, 0xba796051
mov r8d, ecx
xor r8d, edx
and r8d, 0xfaacf1ee
mov r9d, 0xffffffff
xor r9d, 0xfaacf1ee
mov edx, ecx
and edx, r9d
imul edx, r8d
mov r9d, 0xdbc5bd0f
xor r9d, 0x21694ce1
mov r8d, ecx
and r8d, r9d
or ecx, 0xfaacf1ee
imul ecx, r8d
add ecx, edx
mov r9d, 0xffffffff
xor r9d, 0x715fd76a
mov r8d, ecx
and r8d, r9d
mov edx, ecx
or edx, r9d
mov r9d, 0x227e4c6e
xor r9d, 0xdd81b391
xor edx, r9d
imul edx, r8d
mov r9d, 0x60d5cfb4
xor r9d, 0x118a18de
mov r8d, ecx
and r8d, r9d
or ecx, 0x715fd76a
imul ecx, r8d
add ecx, edx
mov dword [rsp + 0x28], ecx
mov ecx, 0xf5f307cb
xor ecx, 0x17c2ebb1
mov dword [rsp + 0x24], ecx
mov rcx, qword [rax]
call fcn.1400ec0e0
mov rdx, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x28]
cmp byte [rdx], 0
sete dl
mov byte [rsp + 0x2f], dl
cmp eax, ecx
ja 0x1400ecaa8
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x1400ec8a8
jmp 0x1400ec996
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax]
mov edx, 8
call fcn.14001096f
mov eax, dword [0x14021d190]
mov ecx, dword [0x14021d194]
mov edx, 0x400f8c01
xor edx, 0xccca994b
xor ecx, edx
sub eax, ecx
sub eax, 0xd046a3f5
imul eax, eax, 0x8a7bc09b
add eax, 0x2f4cb9e4
cmp eax, 0x8768077c
jae 0x1400ecab1
mov rcx, qword [rsp + 0x40]
mov r8d, dword [0x14021d198]
mov eax, dword [0x14021d19c]
mov edx, r8d
xor edx, eax
xor eax, 0xffffffff
and r8d, eax
mov eax, 0xe2612ff0
xor eax, 0xe2612ff2
imul eax, r8d
sub eax, edx
sub eax, 0xa0851683
add eax, 0xa767bd49
add eax, 0xa0851683
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0x9dee03c8
mov r9d, 0xc159d8d8
xor r9d, 0x5cb7db10
mov edx, 0x7a150406
xor edx, 0x85eafbf9
xor r9d, edx
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x9dee03c8
or eax, 0x9dee03c8
imul eax, r8d
add eax, edx
mov r8d, 0x1f6ae8e1
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x48]
mov qword [rcx], rdx
cmp eax, 0x1d1808af
jae 0x1400ec8f0
jmp 0x1400ec996
mov r8d, dword [0x14021d1a0]
xor r8d, 0x93c797f1
mov edx, dword [0x14021d1a4]
xor edx, 0x1b9f28da
mov eax, 0x190450c2
xor eax, 0xe6fbaf3d
mov r9d, edx
xor r9d, eax
mov ecx, r8d
and ecx, r9d
mov eax, r8d
or eax, r9d
xor eax, 0xffffffff
imul eax, ecx
mov ecx, r8d
and ecx, edx
or r8d, edx
imul r8d, ecx
add r8d, eax
mov ecx, r8d
xor ecx, 0xffffffff
and ecx, 0x9fad21c0
mov edx, 0xffffffff
xor edx, 0x9fad21c0
mov eax, r8d
and eax, edx
imul eax, ecx
mov ecx, r8d
and ecx, 0x9fad21c0
mov edx, 0xf7230647
xor edx, 0x688e2787
or r8d, edx
imul r8d, ecx
add r8d, eax
or r8d, 0x63995209
mov ecx, 0x4faa7242
xor ecx, 0xb0558dbd
mov eax, r8d
xor eax, ecx
and eax, 0xa0b8213
mov edx, 0xffffffff
xor edx, 0xa0b8213
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x2e12c4a4
and ecx, 0xa0b8213
and edx, 0x2e12c4a4
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0xa6c07011
xor ecx, 0x182fc09e
cmp eax, ecx
je 0x1400ecaba
mov eax, dword [0x14021d1a8]
add eax, dword [0x14021d1ac]
add eax, 0x1d12d165
mov ecx, 0xc457de9c
xor edx, edx
div ecx
xor eax, 0xcf16e61e
cmp eax, 0xe7ba4106
je 0x1400eca79
add rsp, 0x58
ret
xor al, 0x2a
scasd eax, dword [rdi]
imul ebp, ecx, 0xfffffcfd
push r15
xchg ecx, eax
cmp ch, cl
invalid
fcom qword [rbx]
call fcn.1400e81ab
jmp qword [rsi + 0x2e]