Function at 0x14006c75a
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov dword [rsp + 0x4c], edx
mov qword [rsp + 0x40], rcx
call fcn.14006b577
mov edx, dword [rsp + 0x4c]
mov qword [rsp + 0x50], rax
cmp edx, 0xffffffe0
jge 0x14006c644
mov ecx, dword [0x140203458]
mov edx, dword [0x14020345c]
mov eax, ecx
and eax, edx
shl eax, 1
add ecx, edx
sub ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0x33a422ff
xor edx, 0x3e97e1f0
mov r8d, 0x312a63a3
xor r8d, 0x3c19a0ac
or edx, r8d
mov r8d, 0x219d0fec
xor r8d, 0xde62f013
xor edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xd33c30f
and ecx, edx
or eax, ecx
mov ecx, 0xb661df9b
xor ecx, 0x499e2064
xor eax, ecx
xor eax, 0x4a855648
sub eax, 0x46e8be38
cmp eax, 0xa4f3084
jbe 0x14006c736
mov edx, dword [rsp + 0x4c]
mov eax, dword [0x140203460]
mov r8d, dword [0x140203464]
mov ecx, eax
xor ecx, r8d
xor r8d, 0xffffffff
and eax, r8d
shl eax, 1
sub eax, ecx
or eax, 0x4da04a8f
xor eax, 0x2033e0c9
mov ecx, 0xf6272bb4
xor ecx, 0x11930d78
sub eax, ecx
mov ecx, 0x689bf77e
xor ecx, 0x11468a2d
sub eax, ecx
add eax, 0xe7b426cc
mov ecx, 0x4333511c
xor ecx, 0x2dd77014
cmp edx, 0xffff8000
setb dl
mov byte [rsp + 0x3f], dl
cmp eax, ecx
jbe 0x14006c736
mov al, byte [rsp + 0x3f]
test al, 1
jne 0x14006c295
jmp 0x14006c42d
mov rcx, qword [rsp + 0x40]
mov edx, 0xd2
call fcn.140036dbf
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
jne 0x14006c730
mov ecx, dword [0x140203468]
mov eax, dword [0x14020346c]
and ecx, ecx
xor ecx, 0xffffffff
and eax, eax
xor eax, 0xffffffff
and ecx, eax
xor ecx, 0xffffffff
mov eax, 0x9a3f11a0
xor eax, 0x9a3f11a0
mov edx, 0xff510d4e
xor edx, 0xe29487de
sub eax, edx
sub ecx, eax
mov edx, 0xffffffff
xor edx, 0x186fce5
mov eax, ecx
and eax, edx
mov r8d, 0xf9b5fbc9
xor r8d, 0xf833072c
mov edx, ecx
xor edx, r8d
add ecx, edx
sub ecx, eax
mov edx, 0x248829bb
xor edx, 0xdb77d644
mov eax, ecx
xor eax, edx
mov edx, 0x9eb2153c
xor edx, 0xabb439d0
mov r8d, 0x593c0ebb
xor r8d, 0xa6c3f144
xor edx, r8d
and eax, edx
or ecx, 0x35062cec
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x5a1a19bf
xor edx, 0xa5e5e640
xor ecx, edx
and eax, ecx
cmp eax, 0x4caf8598
jb 0x14006c73f
mov rcx, qword [rsp + 0x40]
mov edx, dword [0x140203470]
mov r8d, dword [0x140203474]
mov eax, edx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov r9d, r8d
xor r9d, 0xffffffff
or eax, r9d
and r8d, r8d
mov r9d, 0xeea2f85b
xor r9d, 0x115d07a4
xor r8d, r9d
and edx, r8d
mov r8d, 0xec85865f
xor r8d, 0x137a79a0
xor edx, r8d
mov r8d, 0x73d1408b
xor r8d, 0x8c2ebf74
xor eax, r8d
xor edx, 0xffffffff
or eax, edx
mov r8d, 0xedb9c671
xor r8d, 0x9b90201e
xor edx, edx
div r8d
mov edx, dword [rsp + 0x4c]
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x317c9ed1
mov r9d, 0xffffffff
xor r9d, 0x3dafffe4
or eax, r8d
mov r8d, 0x740932bb
xor r8d, 0x49a6cd5f
or r8d, r9d
xor eax, 0xffffffff
and eax, r8d
imul eax, eax, 0xdc5b1f11
mov dword [rsp + 0x38], eax
call fcn.14006be10
mov eax, dword [rsp + 0x38]
cmp eax, 0xa6c9450c
jae 0x14006c73f
jmp 0x14006c730
mov eax, dword [rsp + 0x4c]
cmp eax, 0xffffff80
jae 0x14006c563
mov eax, dword [0x140203478]
xor edx, edx
div dword [0x14020347c]
mov ecx, 0xa7ce4b0a
xor ecx, 0x222b0ee9
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x92833d21
mov edx, 0xffffffff
xor edx, 0x92833d21
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0xa4a22097
xor edx, edx
div ecx
mov ecx, 0x3086da3c
xor ecx, 0x5cec1a5b
cmp eax, ecx
je 0x14006c748
mov rcx, qword [rsp + 0x40]
mov eax, dword [0x140203480]
mov edx, dword [0x140203484]
xor edx, 0xffffffff
add eax, edx
add eax, 1
mov edx, eax
xor edx, 0xffffffff
mov r8d, 0x8fdf6333
xor r8d, 0x8866ff93
and r8d, edx
mov r9d, 0xeefce2c8
xor r9d, 0xe9457e68
mov edx, 0xa0c70a2e
xor edx, 0x5f38f5d1
xor r9d, edx
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x7b99ca0
or eax, 0x7b99ca0
imul eax, r8d
add eax, edx
mov r8d, 0xb93e02d3
xor edx, edx
div r8d
mov r8d, 0x83bf5db2
xor edx, edx
div r8d
mov dword [rsp + 0x30], eax
mov edx, 0xd1
call fcn.140036dbf
mov rcx, qword [rsp + 0x50]
mov eax, dword [rsp + 0x30]
mov cl, byte [rcx]
mov dl, 0xc
xor dl, 0xc
cmp cl, dl
sete cl
mov byte [rsp + 0x37], cl
cmp eax, 0xe73a0302
je 0x14006c48d
mov al, byte [rsp + 0x37]
test al, 1
jne 0x14006c54d
jmp 0x14006c730
mov rcx, qword [rsp + 0x40]
mov eax, dword [rsp + 0x4c]
mov dx, ax
call fcn.14006b9b0
jmp 0x14006c730
mov eax, dword [0x140203488]
mov ecx, dword [0x14020348c]
xor ecx, 0x9c399fe
imul eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xa7e97de2
add ecx, eax
mov eax, 0x338b6d4f
xor eax, 0x338b6d4f
sub eax, ecx
mov ecx, 0xad41a0e8
xor edx, edx
div ecx
mov ecx, 0xf7996d07
xor ecx, 0x95404902
xor edx, edx
div ecx
cmp eax, 0x822563ef
je 0x14006c751
mov rcx, qword [rsp + 0x40]
mov eax, dword [0x140203490]
mov r8d, dword [0x140203494]
xor edx, edx
sub edx, eax
xor eax, eax
sub eax, r8d
add edx, eax
xor eax, eax
sub eax, edx
mov r8d, 0xeed49391
xor edx, edx
div r8d
add eax, 0xd901024e
mov edx, 0xcab44d70
xor edx, 0x857cd144
or eax, edx
mov dword [rsp + 0x28], eax
mov dl, 0x1b
xor dl, 0xcb
call fcn.140036dbf
mov rcx, qword [rsp + 0x50]
mov eax, dword [rsp + 0x28]
cmp byte [rcx], 0
sete cl
mov byte [rsp + 0x2f], cl
cmp eax, 0x31437cda
jbe 0x14006c5b4
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x14006c62f
jmp 0x14006c730
mov rcx, qword [rsp + 0x40]
mov eax, dword [rsp + 0x4c]
mov dl, al
call fcn.140036dbf
jmp 0x14006c730
mov eax, dword [rsp + 0x4c]
cmp eax, 0x80
jge 0x14006c67c
mov rax, qword [rsp + 0x50]
mov al, byte [rax]
mov cl, 0x75
xor cl, 0x75
cmp al, cl
jne 0x14006c730
mov rcx, qword [rsp + 0x40]
mov eax, dword [rsp + 0x4c]
mov dl, al
call fcn.140036dbf
jmp 0x14006c730
mov eax, dword [rsp + 0x4c]
cmp eax, 0x100
jae 0x14006c6c3
mov rcx, qword [rsp + 0x40]
mov edx, 0xcc
call fcn.140036dbf
mov rax, qword [rsp + 0x50]
mov al, byte [rax]
mov cl, 0x83
xor cl, 0x83
cmp al, cl
jne 0x14006c730
mov rcx, qword [rsp + 0x40]
mov eax, dword [rsp + 0x4c]
mov dl, al
call fcn.140036fe1
jmp 0x14006c730
mov eax, dword [rsp + 0x4c]
cmp eax, 0x10000
jae 0x14006c705
mov rcx, qword [rsp + 0x40]
mov edx, 0xcd
call fcn.140036dbf
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
jne 0x14006c730
mov rcx, qword [rsp + 0x40]
mov eax, dword [rsp + 0x4c]
mov dx, ax
call fcn.14006b9b0
jmp 0x14006c730
mov rcx, qword [rsp + 0x40]
mov edx, 0xce
call fcn.140036dbf
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
jne 0x14006c730
mov edx, dword [rsp + 0x4c]
mov rcx, qword [rsp + 0x40]
call fcn.14006be10
nop
add rsp, 0x58
ret
invalid
adc eax, 0xe930cb02
adc eax, 0xd2fffffc
sbb eax, 0xfd3ce9c9
invalid
shl byte [rdi + 0x1d], cl
leave
jmp 0x14006c48d
invalid
sub rsp, 0x38
mov dword [rsp + 0x34], edx
mov qword [rsp + 0x28], rcx
call fcn.14006b577
mov rcx, qword [rsp + 0x28]
mov edx, dword [rsp + 0x34]
add rsp, 0x38
jmp 0x14006c170