Function at 0x140029590
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rcx
mov rdx, qword [rcx]
movabs rcx, 0xf17b1ae7bf1cd63f
mov rax, rdx
add rax, rcx
movabs rcx, 0x41acef0c0c4cd796
movabs r8, 0xbe5310f3f3b32869
xor rcx, r8
add rax, rcx
movabs rcx, 0xf17b1ae7bf1cd63f
sub rax, rcx
mov qword [rsp + 0x50], rax
mov rcx, rax
xor rcx, rdx
movabs rdx, 0xe6efc2f0f44391b6
movabs r8, 0xe6efc2f0f44391b6
xor rdx, r8
cmp rcx, rdx
setl cl
cmp rax, 0xffffffffffffffff
setg al
and al, cl
test al, 1
jne 0x14002962e
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
add rcx, 8
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
jmp 0x140029638
call fcn.140008024
jmp 0x1400298d8
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x28], rax
cmp rax, rcx
jl 0x1400298cb
mov eax, dword [0x1401c9418]
xor edx, edx
div dword [0x1401c941c]
mov r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x19632f04
mov r9d, 0xffffffff
xor r9d, 0x19632f04
and r8d, r9d
mov ecx, 0xffffffff
xor ecx, 0x84b044ff
and ecx, 0x19632f04
mov edx, 0x83b34e81
xor edx, 0x7030a7e
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xf132864f
mov edx, 0xcfa90228
xor edx, 0x3e9b8467
mov r8d, 0x27c8afc9
xor r8d, 0xd8375036
xor edx, r8d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
imul eax, eax, 0xaaae33c9
cmp eax, 0xfa7a2e3
jbe 0x1400298dd
mov eax, dword [0x1401c9420]
add eax, dword [0x1401c9424]
mov edx, 0x23be34af
xor edx, 0xecbc94df
mov ecx, 0x60e1fb26
xor ecx, 0x9f1e04d9
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xcf02a070
add eax, edx
sub eax, ecx
mov ecx, 0x445727b7
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x28]
sub eax, 0xcf735571
mov ecx, 0x2876ccd4
xor ecx, 0x3c112a35
add eax, ecx
mov ecx, 0x1f39606a
xor ecx, 0xd04a351b
add eax, ecx
mov ecx, 0x691e0213
xor ecx, 0x37c94d5a
cmp rdx, 0
setl dl
mov byte [rsp + 0x27], dl
cmp eax, ecx
je 0x1400296e5
mov al, byte [rsp + 0x27]
test al, 1
jne 0x140029788
jmp 0x140029775
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x48]
cmp rax, qword [rcx]
jl 0x14002984c
mov ecx, dword [0x1401c9428]
mov edx, dword [0x1401c942c]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
mov ecx, 0x9e8f04
xor edx, edx
div ecx
xor eax, 0xfe4dfe37
add eax, 0x17b72a45
cmp eax, 0x33857672
jae 0x1400298e6
mov eax, dword [0x1401c9430]
mov ecx, 0x25dcf0a6
xor ecx, 0x5b13e833
xor eax, ecx
sub eax, dword [0x1401c9434]
mov edx, 0x3e237f70
xor edx, 0xc1dc808f
mov ecx, eax
xor ecx, edx
and ecx, 0xa5341dc1
mov edx, 0xffffffff
xor edx, 0xa5341dc1
and eax, edx
sub eax, ecx
mov ecx, 0xcee74d90
xor ecx, 0x3118b26f
xor eax, ecx
mov edx, 0xffffffff
xor edx, 0x35fabd02
mov ecx, 0xffffffff
xor ecx, 0x9ac0af7b
or eax, edx
or ecx, 0x9ac0af7b
xor eax, 0xffffffff
and eax, ecx
sub eax, 0x8673161
mov dword [rsp + 0x20], eax
mov rcx, rdx
call fcn.1400122ad
mov eax, dword [rsp + 0x20]
cmp eax, 0xca97e6a9
je 0x1400297ba
jmp 0x1400298d8
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx]
add rcx, 8
shl rax, 3
add rcx, rax
call fcn.1400294b0
mov rcx, qword [rsp + 0x28]
mov rax, rcx
add rax, 0xffffffffffffffff
mov r8, rax
and r8, rcx
shl r8, 1
mov rdx, rax
add rdx, rcx
sub rdx, r8
cmp rdx, 0
setl r8b
cmp rcx, 0
setne cl
xor cl, 0xff
xor r8b, 0xff
mov dl, 1
xor dl, 1
or cl, r8b
or dl, 1
xor cl, 0xff
and cl, dl
test cl, 1
mov qword [rsp + 0x38], rax
jne 0x1400298c1
jmp 0x140029638
call fcn.140008024
jmp 0x1400298d8
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x40]
mov qword [rax], rcx
add rsp, 0x58
ret
cld
push 0xffffffffffe93c62
std
invalid
invalid