Function at 0x140010280
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x88
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x80], rcx
cmp rdx, 0x11
jge 0x1400102b5
mov rcx, qword [rsp + 0x80]
call fcn.14000b1b3
mov qword [rsp + 0x70], rax
jmp 0x140010a2a
mov rcx, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rdx, rcx
and rdx, r9
mov rax, rcx
or rax, r9
add rdx, rax
mov qword [rsp + 0x68], rdx
mov r8, rdx
xor r8, 0xffffffffffffffff
mov rax, r9
and rax, r8
xor r9, 0xffffffffffffffff
mov r8, rdx
and r8, r9
or rax, r8
xor rdx, rcx
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
or rax, rdx
add rax, rcx
movabs rcx, 0xbcf34933d0608fe7
movabs rdx, 0xbcf34933d0608fe7
xor rcx, rdx
cmp rax, rcx
jge 0x1400103ce
mov eax, dword [0x1401c8868]
xor eax, dword [0x1401c886c]
mov ecx, 0x4a3babd8
xor edx, edx
div ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0x21edeb95
or ecx, 0x21edeb95
mov edx, 0xbdb690da
xor edx, 0x42496f25
xor ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0x5c633c39
cmp eax, 0xb63de321
je 0x140010a37
mov eax, dword [0x1401c8870]
mov ecx, dword [0x1401c8874]
xor ecx, 0x7f78c013
xor edx, edx
div ecx
mov ecx, 0x54fa8188
xor ecx, 0x9153ca4b
xor eax, ecx
mov ecx, 0x8b141fda
xor ecx, 0x8fa8145
add eax, ecx
sub eax, 0xa3ef5020
sub eax, 0x83ee9e9f
mov ecx, 0x1a5ee409
xor edx, edx
div ecx
mov dword [rsp + 0x64], eax
call fcn.140008024
mov eax, dword [rsp + 0x64]
cmp eax, 0x1f41b767
jae 0x14001036e
jmp 0x140010a2a
mov eax, dword [0x1401c8878]
mov r8d, dword [0x1401c887c]
mov ecx, 0xe62e9b1b
xor ecx, 0x19d164e4
mov r9d, r8d
xor r9d, ecx
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
add eax, 0x46e603d2
sub eax, 0x414965cd
mov ecx, 0xffffffff
xor ecx, 0xc286cc01
add eax, ecx
mov ecx, 0x6ef69a65
xor ecx, 0x6ef69a64
add eax, ecx
cmp eax, 0xd1866dc9
jae 0x140010a40
mov r9, qword [rsp + 0x68]
mov eax, dword [str.1MK8]
mov ecx, dword [0x1401c8884]
xor ecx, 0xb788f6f6
imul eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
mov edx, 0x5ca972eb
xor edx, 0x3faa5c5a
or eax, edx
add eax, ecx
sub eax, 0xc0b267aa
mov ecx, 0xaa98d627
xor ecx, 0xaa98d627
mov edx, 0x1d785b94
xor edx, 0xd7589160
sub ecx, edx
sub eax, ecx
mov rcx, r9
add rcx, 0xffffffffffffffff
mov rdx, rcx
xor rdx, 0xffffffffffffffff
movabs r10, 0xcee346831c85830
movabs r8, 0xf311cb97ce37a7cf
xor r10, r8
mov r8, rcx
xor r8, r10
or rdx, r8
xor rdx, 0xffffffffffffffff
mov r8, r9
xor r8, 0xffffffffffffffff
or rdx, r8
and r9, r9
xor r9, 0xffffffffffffffff
mov r8, rcx
xor r8, 0xffffffffffffffff
movabs r10, 0xbbb69041e58fc6ef
movabs r11, 0x44496fbe1a703910
xor r10, r11
xor r9, r10
or r8, r9
xor rdx, 0xffffffffffffffff
movabs r9, 0x9bda85d4e24c67f2
movabs r10, 0x64257a2b1db3980d
xor r9, r10
xor r8, r9
or rdx, r8
cmp rdx, 0
setl dl
cmp rcx, 0xffffffffffffffff
setg r8b
mov cl, r8b
xor cl, 0xff
xor r8b, 0xff
and cl, r8b
or dl, dl
mov r8b, 1
xor r8b, 0
xor dl, r8b
xor cl, 0xff
xor dl, 0xff
and cl, dl
mov byte [rsp + 0x63], cl
cmp eax, 0xee4b6e8a
je 0x140010a40
mov al, byte [rsp + 0x63]
test al, 1
jne 0x140010560
jmp 0x140010661
mov eax, dword [0x1401c8888]
sub eax, dword [0x1401c888c]
mov ecx, 0x69158825
xor edx, edx
div ecx
imul eax, eax, 0xbeeedd52
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xa7a74970
and ecx, 0xa7a74970
mov edx, 0x7cead3ed
xor edx, 0x83152c12
xor ecx, edx
xor eax, 0xffffffff
mov edx, 0x2f972898
xor edx, 0xd068d767
xor ecx, edx
or eax, ecx
mov ecx, 0x40501858
xor ecx, 0xe33eb75b
cmp eax, ecx
je 0x140010a49
mov ecx, dword [0x1401c8890]
xor ecx, 0x2b37b7c8
mov eax, dword [0x1401c8894]
xor eax, 0x8b9fffd0
xor ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x3fc0bcc4
mov r8d, 0xffffffff
xor r8d, 0x3fc0bcc4
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x3fc0bcc4
and ecx, edx
mov edx, 0x99670412
xor edx, 0x6698fbed
xor eax, edx
mov edx, 0x62cafd6
xor edx, 0xf9d35029
xor ecx, edx
and eax, ecx
mov ecx, 0x54af975e
xor ecx, 0x69b1846a
imul eax, ecx
xor ecx, ecx
sub ecx, 0xa8db173a
add eax, ecx
mov dword [rsp + 0x5c], eax
call fcn.140008024
mov eax, dword [rsp + 0x5c]
cmp eax, 0xe587bc2e
je 0x1400105bd
jmp 0x140010a2a
mov rax, qword [rsp + 0x68]
movabs rdx, 0xfc4713a52047df33
movabs rcx, 0xfc4713a52047df32
xor rdx, rcx
movabs rcx, 0x7525b6057c18aa40
movabs r8, 0x8ada49fa83e755bf
xor rcx, r8
xor rdx, rcx
xor ecx, ecx
sub rcx, 1
sub rdx, rcx
mov rcx, rax
sub rcx, rdx
mov qword [rsp + 0x50], rcx
xor edx, edx
sub rdx, rax
mov rax, rcx
xor rax, 0xffffffffffffffff
movabs r9, 0xa8901dd6236f6dbc
movabs r8, 0x576fe229dc909243
xor r9, r8
mov r8, rdx
xor r8, r9
or rax, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or rcx, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0xd927c9a277439c94
movabs r8, 0x26d8365d88bc636b
xor rdx, r8
xor rcx, rdx
or rax, rcx
cmp rax, 0
jge 0x140010717
call fcn.140008024
jmp 0x140010a2a
mov rax, qword [rsp + 0x50]
cmp rax, 0
jge 0x140010842
mov ecx, dword [0x1401c8898]
mov eax, 0x1da6d1d2
xor eax, 0xd3ec4816
xor ecx, eax
mov eax, dword [0x1401c889c]
mov edx, 0xabf279bf
xor edx, 0x8717ecf7
xor eax, edx
sub ecx, eax
mov edx, 0xccd7fd7e
xor edx, 0x33280281
mov eax, ecx
xor eax, edx
mov edx, 0x1762e6d1
xor edx, 0xcfc597a9
mov r8d, 0x11acbbff
xor r8d, 0xee534400
xor edx, r8d
or eax, edx
mov edx, 0x8da092f8
xor edx, 0x725f6d07
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xd8a77178
or ecx, edx
xor eax, 0xffffffff
mov edx, 0x5866cc2f
xor edx, 0xa79933d0
xor ecx, edx
or eax, ecx
mov ecx, 0xfd314e0
xor ecx, 0xab48d8bc
xor edx, edx
div ecx
mov ecx, 0x2bdcac9b
xor ecx, 0x68e93172
xor eax, ecx
cmp eax, 0x9e0c1b2b
ja 0x140010a52
mov eax, dword [0x1401c88a0]
mov ecx, dword [0x1401c88a4]
xor ecx, 0x427080ef
xor edx, edx
div ecx
add eax, 0x680abfc2
mov ecx, 0x9ac663a5
xor ecx, 0xf10cea25
sub eax, ecx
sub eax, 0x680abfc2
mov edx, 0x1b685e09
xor edx, 0x19a11374
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
mov edx, 0xe299808f
xor edx, 0xe050cdf2
or eax, edx
and eax, ecx
xor eax, 0x55bdaeaa
mov dword [rsp + 0x4c], eax
mov rcx, r8
mov rdx, r8
call fcn.14000c8ac
mov eax, dword [rsp + 0x4c]
cmp eax, 0x946d3d99
jae 0x140010a52
jmp 0x140010a2a
mov rcx, qword [rsp + 0x50]
call fcn.14000b1b3
mov r8, qword [rsp + 0x78]
mov rcx, rax
mov qword [rsp + 0x38], rcx
mov rdx, r8
add rdx, 0xffffffffffffffff
mov rax, rdx
add rax, 1
xor rdx, 0xffffffffffffffff
or rdx, rcx
add rdx, rax
mov rax, rdx
xor rax, 0xffffffffffffffff
mov rcx, r8
add rcx, rax
add rcx, 1
mov qword [rsp + 0x40], rcx
mov rax, rcx
xor rax, r8
movabs r8, 0x2ae22ed85d74b4a2
movabs r9, 0x2ae22ed85d74b4a2
xor r8, r9
cmp rax, r8
setl al
xor rcx, rdx
movabs rdx, 0x7a7b9f9cfea01b00
movabs r8, 0x85846063015fe4ff
xor rdx, r8
cmp rcx, rdx
setg dl
mov cl, al
xor cl, dl
xor r8d, r8d
xor r8b, 1
xor cl, r8b
or al, dl
and al, cl
test al, 1
jne 0x1400108e9
jmp 0x1400108f3
call fcn.140008024
jmp 0x140010a2a
mov rax, qword [rsp + 0x40]
mov rcx, rax
add rcx, 0xfffffffffffffffe
mov qword [rsp + 0x30], rcx
xor rcx, rax
cmp rcx, 0
setl cl
movabs rdx, 0x79e29d38e72c2386
movabs r8, 0x79e29d38e72c2387
xor rdx, r8
cmp rax, rdx
setg al
and al, cl
test al, 1
jne 0x14001093a
jmp 0x1400109db
mov eax, dword [0x1401c88a8]
xor eax, 0xacd87ce9
or eax, dword [0x1401c88ac]
and eax, eax
mov ecx, 0xba0e1d05
xor ecx, 0x45f1e2fa
xor eax, ecx
mov ecx, 0xefca9c51
and ecx, 0xefca9c51
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x5387b42e
xor ecx, 0xac784bd1
xor eax, ecx
mov ecx, 0xcc5b121f
xor ecx, 0xb26b4280
imul eax, ecx
add eax, 0xea6a0b09
cmp eax, 0xbaf8d9e8
jae 0x140010a5b
mov eax, dword [0x1401c88b0]
xor eax, 0xb43e2e2
mov ecx, dword [0x1401c88b4]
xor ecx, 0xb3fa6cb5
imul eax, ecx
and eax, 0x7616eee6
add eax, 0x12f8071b
xor eax, 0x8ccc0654
mov dword [rsp + 0x2c], eax
call fcn.140008024
mov eax, dword [rsp + 0x2c]
cmp eax, 0xcb806ca9
jbe 0x140010995
jmp 0x140010a2a
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x30]
movabs r8, 0xf5a09f470954d2e5
movabs r9, 0xf5a09f470954d2e5
xor r8, r9
sub r8, rax
xor eax, eax
sub rax, rdx
add r8, rax
xor eax, eax
sub rax, r8
mov r8w, cx
mov word [rax], r8w
mov rax, rcx
and rax, rdx
or rcx, rdx
add rax, rcx
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x70]
add rsp, 0x88
ret
mov ch, 3
invalid
invalid
invalid
sub dh, byte [rbp - 0x7b]
xchg ecx, ebp
jno 0x140010a56
jmp 0x1400107cc
invalid
sub al, 0xad
push rcx
cmpsd dword [rsi], dword [rdi]
jmp 0x140010995