Function at 0x140046cd0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], rcx
mov rax, qword [rdx]
mov qword [rsp + 0x70], rax
movabs rcx, 0x24eb5f305719fbc9
movabs rdx, 0x24eb5f305719fbc9
xor rcx, rdx
cmp rax, rcx
jle 0x14004710d
mov rdx, qword [rsp + 0x70]
movabs rax, 0xca992003c67aa2ba
movabs rcx, 0xca992003c67aa2bb
xor rax, rcx
mov rcx, rdx
add rcx, rax
mov qword [rsp + 0x58], rcx
movabs rax, 0xdc23284c79ec95e0
movabs r8, 0x23dcd7b386136a1f
xor rax, r8
xor rdx, rax
mov rax, rcx
and rax, rdx
movabs r8, 0x381020907ce2ceb0
movabs r9, 0xc7efdf6f831d314f
xor r8, r9
xor rax, r8
and rcx, rdx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
cmp rax, 0
jge 0x140046d8d
call fcn.140007f57
jmp 0x14004710d
mov rax, qword [rsp + 0x58]
cmp rax, 0
jge 0x140046e82
mov eax, dword [0x140202390]
mov edx, dword [0x140202394]
xor edx, 0x457fea13
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, edx
and eax, ecx
xor ecx, ecx
sub ecx, 0x2864d7ec
add eax, ecx
add eax, 0x56206ea5
mov r8d, 0xffffffff
xor r8d, 0xdd9a4c96
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xdd9a4c96
mov r8d, 0x511b4520
xor r8d, 0x8c8109b6
or eax, r8d
imul eax, edx
add eax, ecx
cmp eax, 0x4db49101
jb 0x1400471cf
mov rcx, qword [rsp + 0x58]
mov eax, dword [0x140202398]
xor eax, 0x7ba3ae6b
sub eax, dword [0x14020239c]
xor edx, edx
sub edx, 0xd742b41d
add eax, edx
or eax, 0x5f3d6b08
and eax, 0xa4248eb4
mov dword [rsp + 0x54], eax
movabs rdx, 0xccebe8ebf75b80ff
movabs rax, 0xccebe8ebf75b80ff
xor rdx, rax
movabs r8, 0xeaffb6694eb0c426
movabs rax, 0x95004996b14f3bd9
xor r8, rax
call fcn.14000dc65
mov eax, dword [rsp + 0x54]
cmp eax, 0xf59cf9cd
ja 0x140046e0d
jmp 0x14004710d
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rdx + 8]
add rcx, 8
add rcx, qword [rdx]
mov qword [rsp + 0x38], rcx
mov rax, qword [rax + 8]
add rax, 8
mov qword [rsp + 0x40], rax
xor eax, eax
mov qword [rsp + 0x48], rax
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
cmp rax, rcx
je 0x14004704e
mov ecx, dword [0x1402023a0]
xor ecx, 0x64527566
mov edx, dword [0x1402023a4]
mov eax, ecx
xor eax, edx
mov r8d, 0x69cec22b
xor r8d, 0x96313dd4
xor edx, r8d
and ecx, edx
shl ecx, 1
sub ecx, eax
and ecx, 0x6f1d864
mov eax, ecx
and eax, eax
mov edx, 0x58dfe9
xor edx, 0xffa72016
xor eax, edx
mov edx, 0x28671bda
xor edx, 0x5f8ae801
and eax, edx
xor eax, 0xffffffff
mov edx, 0x77edf3db
and edx, 0x77edf3db
mov r8d, 0x5c21323
xor r8d, 0xfa3decdc
xor edx, r8d
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x15e9fe1b
xor ecx, 0x3ccb3435
sub eax, ecx
mov ecx, 0xb27dd666
xor ecx, 0x2e0daf3b
cmp eax, ecx
je 0x1400471d8
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
mov eax, dword [0x1402023a8]
xor eax, 0xd7b748a2
sub eax, dword [0x1402023ac]
xor eax, 0xe0f0ff7f
mov r9d, eax
and r9d, 0x62ebe8cc
mov r10d, 0xe8e92986
xor r10d, 0x1716d679
xor r9d, r10d
mov r10d, 0x4768bea6
xor r10d, 0x2583566a
add eax, r10d
add eax, 1
add eax, r9d
mov r11d, 0x71d1fcdb
xor r11d, 0xefbcb0bd
mov r9d, 0xf3e01fb3
xor r9d, 0xc1fe04c
xor r11d, r9d
mov r10d, eax
and r10d, r11d
mov r9d, eax
or r9d, r11d
xor r9d, 0xffffffff
imul r9d, r10d
mov r11d, 0x149f4ea
xor r11d, 0x9f24b88c
mov r10d, eax
and r10d, r11d
or eax, 0x9e6d4c66
imul eax, r10d
add eax, r9d
mov r8b, byte [r8 + rcx]
mov byte [rdx + rcx], r8b
movabs rdx, 0x2f14c3449b525dde
add rcx, rdx
add rcx, 1
movabs rdx, 0x2f14c3449b525dde
sub rcx, rdx
mov qword [rsp + 0x28], rcx
cmp eax, 0x7922b253
jb 0x140046f64
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x48], rax
jmp 0x140046eb0
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
mov r9, qword [rcx]
mov rdx, qword [rax]
mov rcx, rdx
add rcx, r9
mov qword [rsp + 0x20], rcx
mov rax, rcx
xor rax, 0xffffffffffffffff
mov r8, rcx
xor r8, 0xffffffffffffffff
and rax, r8
mov r8, r9
or r8, r8
xor r8, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rax, r8
movabs r10, 0x8194a6d700aa94b8
movabs r8, 0x7e6b5928ff556b47
xor r10, r8
mov r8, rcx
xor r8, r10
movabs r10, 0x134c3fffa58f85b8
movabs r11, 0xecb3c0005a707a47
xor r10, r11
xor r9, r10
and r8, r9
or rax, r8
movabs r8, 0xc88dc03974e3b43
movabs r9, 0xf37723fc68b1c4bc
xor r8, r9
xor rax, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x140047100
call fcn.140007f57
jmp 0x14004710d
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x20]
mov qword [rax], rcx
mov ecx, dword [0x1402023b0]
mov eax, dword [0x1402023b4]
mov edx, 0xa2aae1cd
xor edx, 0xd90f7f0b
xor eax, edx
or ecx, eax
and ecx, 0x271b1776
mov edx, 0x8bf3ea1a
xor edx, 0x740c15e5
mov eax, ecx
xor eax, edx
and eax, 0xfcc8e65
mov edx, 0xffffffff
xor edx, 0xfcc8e65
and ecx, edx
or eax, ecx
add eax, 0xf23dcaf4
cmp eax, 0xe3ff9a14
ja 0x1400471e1
mov ecx, dword [0x1402023b8]
mov edx, dword [0x1402023bc]
mov eax, ecx
and eax, edx
xor eax, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xd79447ac
xor ecx, 0x286bb853
xor eax, ecx
mov edx, 0xffffffff
xor edx, 0x98a0913b
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x98a0913b
add eax, edx
sub eax, ecx
mov ecx, 0xb8eeaaa8
xor ecx, 0x91cd1a9c
xor edx, edx
div ecx
xor eax, 0xc3056836
mov ecx, 0x9f4980e9
xor ecx, 0xb6a16510
cmp eax, ecx
jb 0x140047161
add rsp, 0x78
ret
enter 0xffffffffffffb262, 0xffffffffffffff9e
jmp 0x140046e0d
invalid
invalid