Function at 0x14012ef50
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x38
mov qword [rsp + 0x30], rcx
mov eax, dword [0x140208998]
mov r8d, dword [0x14020899c]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0x77863718
xor r9d, 0x8879c8e7
xor ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
xor eax, 0x7b12fba
add eax, 0x5e80a68d
add eax, 0xa2a236bd
cmp eax, 0xcf3f880c
jae 0x14012f25e
mov eax, dword [0x1402089a0]
mov ecx, dword [0x1402089a4]
xor ecx, 0x9ed042dc
xor edx, edx
div ecx
mov ecx, 0x28eb6c1
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x30]
imul eax, eax, 0x9f0c4013
add eax, 0x929ea2f6
mov ecx, 0x33679a48
xor ecx, 0x1b9cc21e
cmp rdx, 0
sete dl
mov byte [rsp + 0x2f], dl
cmp eax, ecx
jbe 0x14012efb1
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x14012f12b
jmp 0x14012f00f
mov eax, dword [0x1402089a8]
mov r8d, dword [0x1402089ac]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x682e5b97
mov r8d, 0xffffffff
xor r8d, 0x682e5b97
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x682e5b97
mov r8d, 0xde7b7572
xor r8d, 0xb6552ee5
or eax, r8d
imul eax, edx
add eax, ecx
sub eax, 0x9e16d81f
sub eax, 0xa5ef28a8
add eax, 0x9e16d81f
mov ecx, 0x601d5b43
xor ecx, 0x601d5b43
mov edx, 0x31b29a9d
xor edx, 0x32d974c
sub ecx, edx
add eax, ecx
mov ecx, 0xbd8a6cce
xor ecx, 0x78da81ae
cmp eax, ecx
jae 0x14012f267
mov rcx, qword [rsp + 0x30]
mov eax, dword [0x1402089b0]
mov edx, 0xdddc07cf
xor edx, 0xf7e895f5
xor eax, edx
imul eax, dword [0x1402089b4]
mov r8d, 0xa858fc29
xor edx, edx
div r8d
mov r8d, 0x1299a692
xor r8d, 0xe37c146a
xor edx, edx
div r8d
mov edx, 0x6a86556
xor edx, 0x455876a0
sub eax, edx
add eax, 0xe932ebc1
add eax, 0x43f013f6
mov dword [rsp + 0x28], eax
call fcn.14012e8d0
mov eax, dword [rsp + 0x28]
cmp eax, 0xd9c308b
jb 0x14012f267
jmp 0x14012f12b
mov r8d, dword [0x1402089b8]
xor r8d, 0x2abd6de
sub r8d, dword [0x1402089bc]
and r8d, 0x3649330
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x98154dc1
mov edx, 0x48827a23
xor edx, 0xd09737e2
mov ecx, 0xa70e6892
xor ecx, 0x58f1976d
xor edx, ecx
and r8d, edx
mov ecx, 0xe2c7fb08
xor ecx, 0xf24fda76
mov r9d, 0x2126b6df
xor r9d, 0xded94920
xor ecx, r9d
mov r9d, 0x38d843ba
xor r9d, 0xa0cd0e7b
and ecx, r9d
and edx, 0x1088217e
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0xfc4d71d9
xor edx, edx
div ecx
cmp eax, 0x319d05bb
je 0x14012f270
mov eax, dword [0x1402089c0]
xor eax, 0x5ed5e0c8
mov edx, dword [str.OGFP_az]
mov r8d, 0x79eb619f
xor r8d, 0x79eb619e
mov ecx, eax
add ecx, r8d
xor eax, 0xffffffff
or eax, edx
add eax, ecx
mov r8d, 0x2d8eaf29
xor r8d, 0xb950714e
mov ecx, 0xc69b9e7
xor ecx, 0xf3964618
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x1d39f605
xor r8d, 0xe2c609fa
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x94dede67
or eax, 0x94dede67
imul eax, edx
add eax, ecx
xor eax, 0x8165c2c9
mov ecx, 0x1385e52c
xor ecx, 0x19835cff
xor edx, edx
div ecx
mov ecx, 0x178534a6
xor ecx, 0x79d2daed
cmp eax, ecx
je 0x14012f1b9
mov rax, qword [rsp + 0x30]
add rsp, 0x38
ret
hlt
sub eax, 0xe9a5f45e
invalid
push 0x29
xchg esi, eax
jmp 0x14012f1b9