Function at 0x14002e4c8
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xa8
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x68], rcx
call fcn.14000aa89
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
add rax, 0x60
mov qword [rsp + 0x78], rax
mov rax, qword [rcx]
mov qword [rsp + 0x80], rax
cmp rax, rdx
jle 0x14002df21
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x68]
call fcn.14002dbd0
jmp 0x14002e4a5
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x70]
cmp rax, rcx
jge 0x14002e4a5
mov ecx, dword [str.W_]
xor ecx, 0x1900cf60
mov edx, dword [0x1401d677c]
xor edx, 0x956ecaaf
mov eax, ecx
and eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
and eax, ecx
mov ecx, 0x3c0460ad
xor ecx, 0xc3fb9f52
xor eax, ecx
mov ecx, 0xc833a8e8
xor ecx, 0x8cf78bbe
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x1e485911
mov r8d, 0xf8439324
xor r8d, 0xe60bca35
mov ecx, 0x23b1501c
xor ecx, 0xdc4eafe3
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x1e485911
mov r8d, 0xca339e55
xor r8d, 0xd47bc744
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xb74c4770
xor ecx, 0x93f0f4be
xor edx, edx
div ecx
cmp eax, 0x78a41446
jae 0x14002e4ad
mov rdx, qword [rsp + 0x68]
mov eax, dword [0x1401d6780]
mov ecx, dword [0x1401d6784]
xor ecx, 0xccc44e3c
add eax, 0xae18b113
add eax, ecx
sub eax, 0xae18b113
mov ecx, eax
and ecx, 0xe89102f8
mov r8d, 0xe1b80f76
xor r8d, 0x9290d8e
xor eax, r8d
or ecx, eax
mov eax, ecx
and eax, 0x15eff3ff
or ecx, 0x15eff3ff
add eax, ecx
add eax, 0x9fc31181
mov ecx, 0x5006fefc
xor ecx, 0x51346acb
mov r8, rdx
add r8, 8
mov qword [rsp + 0x50], r8
mov rdx, qword [rdx + 8]
mov qword [rsp + 0x58], rdx
cmp rdx, 0
sete dl
mov byte [rsp + 0x67], dl
cmp eax, ecx
jb 0x14002e4ad
mov al, byte [rsp + 0x67]
test al, 1
jne 0x14002e096
jmp 0x14002e076
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x58]
movabs rax, 0xbfffffffffffffff
and rax, qword [rdx]
cmp rax, rcx
jge 0x14002e253
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x70]
mov rax, rcx
sub rax, rdx
mov qword [rsp + 0x48], rax
mov r9, rax
xor r9, rcx
movabs r8, 0xde338fe9535fce82
movabs r10, 0x21cc7016aca0317d
xor r8, r10
xor r9, r8
mov r8, rcx
and r8, r9
shl r8, 1
sub r8, rcx
mov rcx, rax
sub rcx, r8
cmp rcx, 0
setl cl
xor rax, rdx
movabs rdx, 0x6e526705af9c5ea4
movabs r8, 0x91ad98fa5063a15b
xor rdx, r8
cmp rax, rdx
setg dl
mov al, cl
xor al, 0xff
mov r8b, dl
xor r8b, 0xff
or al, r8b
xor cl, 0xff
xor dl, 0xff
or cl, dl
and al, cl
xor ecx, ecx
xor cl, 1
xor al, cl
test al, 1
jne 0x14002e165
mov r8, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x80]
mov r9d, 0x10
mov qword [rsp + 0x20], 8
call fcn.140011990
mov rcx, rax
mov rax, qword [rsp + 0x50]
mov qword [rax], rcx
jmp 0x14002e253
mov r11d, dword [0x1401d6788]
or r11d, dword [0x1401d678c]
add r11d, 0xd08abe79
xor eax, eax
sub eax, 0xc19d902a
sub r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xd0946186
xor r8d, 0x7f6d7569
mov eax, 0x2a08e815
xor eax, 0xd5f717ea
xor r8d, eax
mov edx, 0xffffffff
xor edx, 0xd656e4fa
mov eax, ecx
and eax, 0xd656e4fa
and r11d, edx
mov r9d, r8d
and r9d, 0xd656e4fa
mov r10d, 0xcf1f8a08
xor r10d, 0x60e69ee7
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xd656e4fa
and ecx, edx
or eax, ecx
mov ecx, 0x58ec37b3
xor ecx, 0x6a1bee67
cmp eax, ecx
jbe 0x14002e4b6
mov eax, dword [0x1401d6790]
mov ecx, dword [0x1401d6794]
xor ecx, 0xf6cb1c4b
imul eax, ecx
mov ecx, 0x11cc9b8
xor edx, edx
div ecx
mov ecx, 0xffffffff
xor ecx, 0x48077d6
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
add eax, 0xb4b495a
mov dword [rsp + 0x44], eax
call fcn.1400077a3
mov eax, dword [rsp + 0x44]
cmp eax, 0x9d6a6c3a
ja 0x14002e1ff
jmp 0x14002e4a5
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
mov qword [rcx], rdx
mov qword [rsp + 0x38], rax
mov rcx, qword [rsp + 0x70]
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x30], rax
cmp rax, rcx
jge 0x14002e364
lea rcx, [rsp + 0x98]
mov edx, 0x10
call fcn.140007f04
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x30]
mov rcx, qword [rcx]
add rcx, 8
shl rax, 4
add rcx, rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x90], rax
lea rdx, [rsp + 0x88]
call fcn.1401b07b6
mov rax, qword [rsp + 0x78]
cmp byte [rax], 0
jne 0x14002e364
mov rcx, qword [rsp + 0x30]
movabs rdx, 0x5bd08dcdf2a189ae
mov rax, rcx
sub rax, rdx
movabs rdx, 0xaebaa27b2bd9a886
movabs r8, 0xaebaa27b2bd9a887
xor rdx, r8
add rax, rdx
movabs rdx, 0xf2bebd165b0ee7a
movabs r8, 0x54fb661c971167d4
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x28], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x37621bd4eb087234
movabs rdx, 0x37621bd4eb087234
xor rcx, rdx
cmp rax, rcx
jge 0x14002e496
call fcn.1400077a3
mov eax, dword [0x1401d6798]
mov ecx, 0xdd5e2d1f
xor ecx, 0x831835a4
xor eax, ecx
xor edx, edx
div dword [0x1401d679c]
mov r8d, eax
mov eax, r8d
xor eax, 0xe8010266
xor eax, 0xffffffff
or r8d, 0xe8010266
and r8d, eax
and r8d, 0x40eb12a0
mov ecx, r8d
xor ecx, 0xffffffff
mov eax, 0x2ac69f9e
xor eax, 0xca365e22
and eax, ecx
mov r9d, 0xffffffff
xor r9d, 0xe0f0c1bc
and r8d, r9d
mov ecx, 0x395fd36a
xor ecx, 0x5c8fd6c1
mov edx, 0x8d0f2264
xor edx, 0x72f0dd9b
xor ecx, edx
and ecx, 0xe0f0c1bc
mov edx, 0x32c5bbfb
xor edx, 0x5715be50
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
cmp eax, 0x913688fe
je 0x14002e4bf
mov eax, dword [0x1401d67a0]
mov ecx, 0xcf88264c
xor ecx, 0x68f66b3d
xor eax, ecx
mov edx, dword [0x1401d67a4]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x947cc469
xor edx, 0xb41ffaa6
and ecx, edx
mov edx, 0x81a06975
xor edx, 0xa1c357ba
mov r8d, 0xaee55e80
xor r8d, 0x511aa17f
xor edx, r8d
and eax, edx
sub eax, ecx
mov edx, 0x39dd804e
xor edx, 0x39dd804f
mov ecx, eax
add ecx, edx
xor eax, 0xffffffff
or eax, 0x947eda99
add eax, ecx
sub eax, 0x5da5c2f9
sub eax, 0x331c75b0
mov ecx, 0x9672a2bc
xor ecx, 0xcbd76045
add eax, ecx
cmp eax, 0xcb4f108
jbe 0x14002e4bf
jmp 0x14002e4a5
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x38], rax
jmp 0x14002e26d
add rsp, 0xa8
ret
sbb ebp, dword [rbx]
and al, 0x3c
jmp 0x14002dfe1
jb 0x14002e52f
in eax, dx
xor ecx, ebp
std
invalid
adc ebx, esp
ret 0xe9a6
sub rsp, 0x38
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
xor eax, eax
mov edx, eax
call fcn.14002dbd0
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
add rsp, 0x38
jmp 0x14002ded0
imul eax, dword [rcx - 0x5547070f], 0x83c88947
lock dec dword [rcx - 0xd7c36]
or eax, edx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x7def00b1
or eax, edx
mov edx, 0xffffffff
xor edx, 0x7def00b1
mov r8d, 0xffffffff
xor r8d, 0x7def00b1
or edx, r8d
xor ecx, 0xffffffff
mov r8d, 0x494e8543
xor r8d, 0xb6b17abc
xor edx, r8d
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xa0ec3d92
xor ecx, 0xcd7673a0
cmp eax, ecx
je 0x14002e67c
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
mov eax, dword [0x1401d67b0]
and eax, dword [0x1401d67b4]
mov r8d, eax
xor r8d, 0x47ee1283
mov r9d, 0xc9ce22fa
xor r9d, 0x8e203079
mov r10d, 0xedc941c4
xor r10d, 0x1236be3b
xor r9d, r10d
and eax, r9d
shl eax, 1
sub eax, r8d
mov r8d, 0xb52becbc
xor r8d, 0x30071261
mov r9d, eax
and r9d, r8d
mov r8d, 0x327019d0
xor r8d, 0x327019d2
imul r8d, r9d
add eax, 0x852cfedd
sub eax, r8d
add eax, 0xeb4a86bb
add eax, 0xe05a995c
mov r8d, 0xecd93a4f
xor r8d, 0x793bcf4
sub eax, r8d
mov dword [rsp + 0x2c], eax
mov eax, 0x4d2dc24b
xor eax, 0xb0a8b981
mov dword [rsp + 0x28], eax
movabs rax, 0x66b53deb83720352
movabs r8, 0x66b53deb83720352
xor rax, r8
mov qword [rcx], rax
mov qword [rcx + 8], 0
call fcn.14002e4c8
mov ecx, dword [rsp + 0x28]
mov eax, dword [rsp + 0x2c]
cmp eax, ecx
jae 0x14002e59d
mov rax, qword [rsp + 0x40]
add rsp, 0x48
ret
invalid