Function at 0x140030460
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rcx
mov rdx, qword [rcx]
xor eax, eax
mov ecx, eax
sub rcx, 0xffffffffffffffff
mov rax, rdx
sub rax, rcx
mov qword [rsp + 0x50], rax
mov rcx, rax
xor rcx, rdx
cmp rcx, 0
setl cl
cmp rax, 0xffffffffffffffff
setg al
and al, cl
test al, 1
jne 0x1400304bf
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
add rcx, 8
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
jmp 0x1400304c9
call fcn.140007f57
jmp 0x1400308b2
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x28], rax
cmp rax, rcx
jl 0x1400308a5
mov eax, dword [0x140201a38]
xor eax, 0x2c0b0abd
mov ecx, dword [0x140201a3c]
xor ecx, 0xffffffff
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0x9503d7d3
xor ecx, 0x9503d7d3
mov edx, 0x667d21d8
xor edx, 0xe6b8d3fc
sub ecx, edx
sub eax, ecx
or eax, 0x3393ffc1
mov ecx, 0x84179b7d
xor ecx, 0xa78d441e
imul eax, ecx
cmp eax, 0x184c88b8
jbe 0x1400308b7
mov rcx, qword [rsp + 0x28]
mov eax, dword [0x140201a40]
mov r9d, dword [0x140201a44]
mov r8d, 0xb537a32a
xor r8d, 0x4ac85cd5
mov edx, eax
xor edx, r8d
mov r8d, r9d
and r8d, edx
mov r10d, r9d
xor r10d, 0xffffffff
mov edx, eax
and edx, r10d
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
add eax, 0xc67e6e4f
mov edx, eax
and edx, 0xaf365098
shl edx, 1
xor eax, 0xaf365098
add eax, edx
xor eax, 0xd0ffa7db
cmp rcx, 0
setl cl
mov byte [rsp + 0x27], cl
cmp eax, 0x96ac2e4b
je 0x140030536
mov al, byte [rsp + 0x27]
test al, 1
jne 0x1400306d5
jmp 0x1400305c2
mov eax, dword [0x140201a48]
mov r8d, dword [0x140201a4c]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x1c18343e
add ecx, eax
xor eax, eax
sub eax, ecx
or eax, 0x38ca6574
mov ecx, 0x2feb3827
xor ecx, 0x5d403dae
and ecx, eax
mov edx, 0xc8210836
xor edx, 0x37def7c9
xor ecx, edx
mov edx, 0x5d063610
xor edx, 0x2fad3399
add eax, edx
add eax, 1
add eax, ecx
cmp eax, 0x7af16bcf
je 0x1400308c0
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x48]
mov eax, dword [0x140201a50]
mov r10d, dword [0x140201a54]
mov r8d, eax
xor r8d, 0xffffffff
mov r9d, r10d
and r9d, r8d
mov r11d, r10d
xor r11d, 0xffffffff
mov r8d, eax
and r8d, r11d
imul r8d, r9d
mov r9d, eax
and r9d, r10d
or eax, r10d
imul eax, r9d
add eax, r8d
or eax, 0xbfa4b18a
mov r8d, 0xffffffff
xor r8d, 0x864335aa
add eax, r8d
mov r8d, 0x7e5dbb7f
xor r8d, 0x7e5dbb7e
add eax, r8d
and eax, 0x80b046e6
cmp rcx, qword [rdx]
setl cl
mov byte [rsp + 0x26], cl
cmp eax, 0x88ceb697
jae 0x1400308c0
mov al, byte [rsp + 0x26]
test al, 1
jne 0x1400306e2
jmp 0x1400306d5
mov rcx, rdx
call fcn.140014583
jmp 0x1400308b2
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx]
add rcx, 8
shl rax, 4
add rcx, rax
call fcn.140030230
mov rcx, qword [rsp + 0x28]
mov rax, rcx
add rax, 0xffffffffffffffff
mov rdx, rax
xor rdx, 0xffffffffffffffff
movabs r8, 0xe9d1fd6246cc3c7d
and rdx, r8
mov r11, 0xffffffffffffffff
movabs r8, 0xe9d1fd6246cc3c7d
xor r11, r8
mov r10, rax
and r10, r11
mov r8, rcx
xor r8, 0xffffffffffffffff
movabs r9, 0xe9d1fd6246cc3c7d
and r8, r9
mov r9, rcx
and r9, r11
or rdx, r10
or r8, r9
xor rdx, r8
cmp rdx, 0
setl dl
cmp rcx, 0
setne cl
and cl, dl
test cl, 1
mov qword [rsp + 0x38], rax
jne 0x14003077f
jmp 0x1400304c9
mov eax, dword [0x140201a58]
mov ecx, dword [0x140201a5c]
xor ecx, 0x8fdd97c6
xor edx, edx
div ecx
mov ecx, 0xee0888ce
xor ecx, 0x11f77731
mov edx, eax
xor edx, ecx
and edx, 0x6cf90e8a
mov r8d, 0xffffffff
xor r8d, 0x6cf90e8a
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x6cf90e8a
or eax, 0x6cf90e8a
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, eax
xor edx, 0xffffffff
and ecx, edx
mov edx, 0xa8a85f9f
or edx, 0xa8a85f9f
xor edx, 0xffffffff
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x5671b430
xor edx, 0xfed9ebaf
or eax, edx
xor eax, 0xffffffff
or ecx, eax
xor ecx, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
mov eax, 0x41db602e
xor eax, 0x1297edf4
and eax, edx
mov edx, 0xffffffff
xor edx, 0x534c8dda
and ecx, edx
or eax, ecx
cmp eax, 0x5c4d4236
jbe 0x1400308c9
mov eax, dword [0x140201a60]
mov ecx, dword [0x140201a64]
mov edx, 0xeb5dd5f0
xor edx, 0xd4c2bcca
add eax, edx
add eax, ecx
sub eax, 0x3f9f693a
add eax, 0x1ec3f4a1
add eax, 0xab9c1c18
sub eax, 0x1ec3f4a1
mov ecx, 0x48089926
xor ecx, 0xd2a569fd
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x1fee7802
shl ecx, 1
mov edx, 0x67023c1d
xor edx, 0x78ec441f
add eax, edx
sub eax, ecx
mov dword [rsp + 0x20], eax
call fcn.140007f57
mov eax, dword [rsp + 0x20]
cmp eax, 0x2a99a1b1
je 0x140030830
jmp 0x1400308b2
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x40]
mov qword [rax], rcx
add rsp, 0x58
ret
mov edi, 0xe9b3360c
mov bl, 0xe9
jbe 0x1400308ba
invalid
idiv bh
iretq
or byte [0x19eec7d13], dl
invalid