Function at 0x140107750
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xb8
mov rax, r8
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0x98], rcx
mov qword [rsp + 0xa0], rcx
mov r8, qword [rax]
mov qword [rsp + 0xa8], r8
mov rcx, qword [rax + 8]
movabs rdx, 0xfbb651eb2a54756f
movabs rax, 0x449ae14d5ab8a90
xor rdx, rax
mov rax, r8
xor rax, rdx
mov rdx, rcx
add rdx, rax
add rdx, 1
mov qword [rsp + 0xb0], rdx
mov rax, rdx
and rax, rax
xor rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
mov r9, rcx
xor r9, 0xffffffffffffffff
or rax, r9
mov r9, rcx
xor r9, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or r9, rcx
mov rcx, rdx
xor rcx, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
or rcx, r9
xor rax, 0xffffffffffffffff
movabs r9, 0x23476b40acc391e8
movabs r10, 0xdcb894bf533c6e17
xor r9, r10
xor rcx, r9
or rax, rcx
cmp rax, 0
setl cl
mov rax, rdx
xor rax, 0xffffffffffffffff
mov r9, rdx
xor r9, 0xffffffffffffffff
and rax, r9
mov r9, r8
xor r9, 0xffffffffffffffff
mov r10, r8
xor r10, 0xffffffffffffffff
and r9, r10
or rax, r9
xor rax, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
xor rax, 0xffffffffffffffff
movabs r8, 0x314748149c98b75a
movabs r9, 0xceb8b7eb636748a5
xor r8, r9
xor rdx, r8
and rax, rdx
movabs rdx, 0x9a2f9aa770c7426d
movabs r8, 0x65d065588f38bd92
xor rdx, r8
cmp rax, rdx
setg dl
mov al, cl
and al, dl
xor al, 0xff
and cl, dl
mov dl, 1
xor dl, 0
xor cl, dl
xor al, 0xff
xor cl, 0xff
or al, cl
test al, 1
jne 0x1401078a1
jmp 0x1401078ab
call fcn.140008c92
jmp 0x140107f59
mov eax, dword [0x140251fe0]
mov r8d, dword [0x140251fe4]
mov ecx, 0xd704fcfd
xor ecx, 0x28fb0302
mov r9d, r8d
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0xf060c081
xor r9d, 0xf9f3f7e
xor ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x7979079a
xor ecx, 0x6c18222b
and eax, ecx
sub eax, 0xbd1dbd0d
and eax, 0x3b882667
mov ecx, 0x69408467
xor ecx, 0x2eeb2434
cmp eax, ecx
jae 0x140107ff0
mov r11d, dword [0x140251fe8]
mov r10d, dword [0x140251fec]
mov ecx, r11d
xor ecx, 0xffffffff
mov eax, 0xea2bed21
xor eax, 0x15d412de
mov r8d, r10d
xor r8d, eax
mov edx, 0xffffffff
xor edx, 0xf8ffe533
mov r9d, 0x52a22c25
xor r9d, 0xaa5dc916
mov eax, ecx
and eax, r9d
and r11d, edx
mov r9d, r8d
and r9d, 0xf8ffe533
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xf8ffe533
and ecx, edx
or eax, ecx
sub eax, 0xdb389851
mov ecx, 0xbe45d1da
xor ecx, 0x998cb3b9
xor edx, edx
div ecx
mov rdx, qword [rsp + 0xb0]
add eax, 0x1048e6d2
movabs r8, 0x65a4bbc73781edd2
mov rcx, rdx
sub rcx, r8
add rcx, 1
movabs r8, 0x65a4bbc73781edd2
add rcx, r8
mov qword [rsp + 0x80], rcx
mov r8, rdx
and r8, 0xffffffffffffffff
shl r8, 1
add rdx, 0xffffffffffffffff
sub rdx, r8
and rcx, rdx
movabs rdx, 0xd0641dd01fc75d10
movabs r8, 0xd0641dd01fc75d10
xor rdx, r8
cmp rcx, rdx
setl cl
mov byte [rsp + 0x8f], cl
cmp eax, 0x4579e94b
je 0x14010791d
mov al, byte [rsp + 0x8f]
test al, 1
jne 0x140107a29
jmp 0x140107a33
call fcn.140008c92
jmp 0x140107f59
mov rax, qword [rsp + 0x80]
cmp rax, 0
jge 0x140107a65
mov rcx, qword [rsp + 0x80]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000d792
jmp 0x140107f59
mov ecx, dword [0x140251ff0]
imul ecx, dword [0x140251ff4]
or ecx, 0x88790f1a
mov edx, 0xffffffff
xor edx, 0xe0217d4b
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x9a951639
xor edx, edx
div ecx
cmp eax, 0x26bea73a
je 0x140107ff9
mov rcx, qword [rsp + 0x98]
mov edx, dword [0x140251ff8]
mov r8d, dword [0x140251ffc]
xor r8d, 0xdd251ff9
mov r9d, edx
xor r9d, 0xffffffff
mov eax, r8d
and eax, r9d
xor r8d, 0xffffffff
and edx, r8d
or eax, edx
mov r8d, 0x2d1f6a1a
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x80]
mov r8d, eax
mov eax, r8d
and eax, 0x8efbe841
xor r8d, 0x8efbe841
or eax, r8d
mov r8d, 0xffffffff
xor r8d, 0xb64cf322
add eax, r8d
add eax, 1
mov dword [rsp + 0x5c], eax
call fcn.140018a7a
mov r8, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x90]
mov rcx, qword [rsp + 0xa8]
mov eax, dword [rsp + 0x5c]
add r8, 8
mov qword [rsp + 0x60], r8
mov r8, rcx
or r8, r8
movabs r9, 0x2966389d25351c75
movabs r10, 0xd699c762dacae38a
xor r9, r10
xor r8, r9
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
mov r10, 0xffffffffffffffff
xor r10, 0xffffffffffffffff
and r9, r10
movabs r10, 0x29d8614eada4c69c
movabs r11, 0xd6279eb1525b3963
xor r10, r11
xor r8, r10
xor r9, 0xffffffffffffffff
and r8, r9
mov r9, rcx
or r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
or r8, r9
xor r8, 0xffffffffffffffff
mov qword [rsp + 0x68], r8
add rdx, 8
mov qword [rsp + 0x70], rdx
cmp rcx, 0xffffffffffffffff
setg cl
mov byte [rsp + 0x7f], cl
cmp eax, 0xeb39e348
ja 0x140107ff9
xor eax, eax
mov qword [rsp + 0x50], rax
jmp 0x140107bd4
mov rcx, qword [rsp + 0x80]
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x48], rax
cmp rax, rcx
je 0x140107f59
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x98]
mov rcx, qword [rcx]
mov qword [rsp + 0x40], rcx
cmp rax, rcx
jl 0x140107c25
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffff
call fcn.14001284c
jmp 0x140107f59
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
mov qword [rsp + 0x38], rax
cmp rax, 0
je 0x140107db1
mov rax, qword [rsp + 0x38]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
movabs rdx, 0x5eb82ace8ecad45c
movabs rcx, 0x1eb82ace8ecad45c
xor rdx, rcx
movabs rcx, 0xf2500bca957f5ff4
movabs r8, 0xdaff4356a80a00b
xor rcx, r8
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0x66544adcec906f1d
xor rcx, r8
or rax, rdx
movabs rdx, 0x66544adcec906f1d
or rcx, rdx
movabs rdx, 0xb1fd7fafb945ea6c
movabs r8, 0x4e02805046ba1593
xor rdx, r8
xor rax, rdx
and rax, rcx
cmp rax, 0
je 0x140107db1
mov eax, dword [0x140252000]
mov edx, dword [0x140252004]
xor edx, 0xc17244c8
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
mov r8d, 0x6cb0b60e
xor r8d, 0x934f49f1
xor edx, r8d
and eax, edx
sub eax, ecx
sub eax, 0x5f1c95ba
add eax, 0xdbd376b4
mov edx, 0xa9051393
xor edx, 0x56faec6c
mov ecx, eax
xor ecx, edx
mov edx, 0xcfa23b2a
xor edx, 0x87fc2b78
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x485e1052
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x485e1052
mov r8d, 0xfa1ab66c
xor r8d, 0xb244a63e
or eax, r8d
imul eax, edx
add eax, ecx
cmp eax, 0x932fd4ef
ja 0x140108002
mov rcx, qword [rsp + 0x98]
mov eax, dword [0x140252008]
mov r8d, dword [0x14025200c]
xor r8d, 0x9e3bcf03
xor edx, edx
div r8d
mov edx, 0xecd26b18
xor edx, 0xdd7e255b
xor eax, edx
sub eax, 0x150c6033
mov edx, 0x5438bef2
xor edx, 0x68c00f4c
add eax, edx
mov dword [rsp + 0x34], eax
call fcn.140013e60
mov eax, dword [rsp + 0x34]
cmp eax, 0xd9a5e2fa
ja 0x140108002
jmp 0x140107db1
mov eax, dword [0x140252010]
mov ecx, dword [0x140252014]
xor ecx, 0xba8daa0e
add eax, ecx
mov ecx, 0x8a33dca6
xor ecx, 0xe564dc16
or eax, ecx
mov ecx, 0x784a09b2
xor ecx, 0xf2eb093d
or eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x7bd79a34
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x7bd79a34
or eax, 0x7bd79a34
imul eax, edx
add eax, ecx
cmp eax, 0x1683dc74
ja 0x14010800b
mov r8, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x48]
mov eax, dword [0x140252018]
xor eax, 0xcf5d5eb9
xor edx, edx
div dword [0x14025201c]
mov rdx, qword [rsp + 0x68]
mov r9d, eax
xor r9d, 0x5e5682b4
xor r9d, 0xffffffff
or eax, 0x5e5682b4
and eax, r9d
mov r9d, 0xd5c0a786
xor r9d, 0x9b5600e0
xor eax, r9d
imul eax, eax, 0x32e30a56
movabs r9, 0x9a39a11f9cce8a52
add rcx, r9
add rcx, r8
movabs r8, 0x755d861cddae9123
movabs r9, 0xef64270341601b71
xor r8, r9
sub rcx, r8
mov qword [rsp + 0x28], rcx
and rcx, rdx
cmp rcx, 0
setl cl
mov byte [rsp + 0x33], cl
cmp eax, 0x631fb058
jb 0x14010800b
mov al, byte [rsp + 0x33]
test al, 1
jne 0x140107ec3
jmp 0x140107ecd
call fcn.140008c92
jmp 0x140107f59
mov al, byte [rsp + 0x7f]
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x90]
mov rdx, qword [rdx]
mov qword [rsp + 0x20], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140107f28
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x20]
movabs rax, 0x4bbda61b250db563
sub rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x4bbda61b250db563
add rdx, rax
call fcn.14001284c
jmp 0x140107f59
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x70]
mov rdx, qword [rdx]
mov dl, byte [rdx + r8 + 8]
mov rcx, qword [rcx]
mov byte [rcx + rax + 8], dl
add rax, 1
mov qword [rsp + 0x50], rax
jmp 0x140107bd4
mov eax, dword [0x140252020]
and eax, dword [0x140252024]
mov ecx, 0x89d5c7d0
xor ecx, 0xb64ba2aa
add eax, ecx
sub eax, 0xed601a4c
sub eax, 0x3f9e657a
mov ecx, 0x11a4c1d8
xor edx, edx
div ecx
mov ecx, 0x178be55d
xor ecx, 0xd6316705
xor edx, edx
div ecx
mov ecx, 0x27660c7f
xor ecx, 0x27c0ba8b
cmp eax, ecx
je 0x140108014
mov eax, dword [0x140252028]
mov ecx, dword [0x14025202c]
xor ecx, 0xde780bdc
imul eax, ecx
add eax, 0x21091ca7
mov ecx, 0x5f3ee0a5
xor ecx, 0x6720e5e8
xor edx, edx
div ecx
sub eax, 0x4c7085c5
cmp eax, 0xa52a2add
je 0x140107fa7
mov rax, qword [rsp + 0xa0]
add rsp, 0xb8
ret
fmul dword [0x164f99148]
stc
invalid
in eax, 0x48
out 0x6b, eax
jmp 0x140107a9d
or byte [rax + 0xf], 0x23
jmp 0x140107d54
mov r12b, 0x10
push rcx
jmp 0x140107e19
shr byte [rax - 0x75161abc], 0xff
invalid