Function at 0x140029060
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x40], rcx
add rcx, 8
mov qword [rsp + 0x48], rcx
xor eax, eax
mov qword [rsp + 0x50], rax
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x30], rax
mov rcx, qword [rcx]
mov rdx, qword [rdx]
mov qword [rsp + 0x38], rdx
cmp rax, rcx
jge 0x140029269
mov eax, dword [0x1401d64e8]
xor eax, 0x81875fd2
mov r8d, dword [0x1401d64ec]
mov edx, 0x92b07897
xor edx, 0x6d4f8768
mov ecx, eax
xor ecx, edx
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 ecx, 0x7a118a15
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0xb9a77448
shl eax, 1
add ecx, 0xb9a77448
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
mov edx, 0xd88c30d5
xor edx, 0xf69ec287
and eax, edx
mov edx, 0x2493595d
xor edx, 0xdb6ca6a2
xor eax, edx
mov edx, 0x2753d32e
xor edx, 0x941217c
mov r8d, 0xe5b609b5
xor r8d, 0x1a49f64a
xor edx, r8d
mov r8d, 0xffffffff
xor r8d, 0x2e12f252
or edx, r8d
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0xf7aca515
jae 0x1400293e2
mov rcx, qword [rsp + 0x30]
mov eax, dword [0x1401d64f0]
mov r8d, dword [0x1401d64f4]
mov edx, 0x49b1d318
xor edx, 0xda88a11c
xor r8d, edx
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rsp + 0x38]
mov r8d, 0x84b2b234
xor r8d, 0x73ecdd15
xor edx, r8d
and edx, 0xba177cad
mov r8d, 0xca91d2cb
xor r8d, 0x656688de
imul edx, r8d
mov dword [rsp + 0x28], edx
mov rcx, qword [rax + rcx*8 + 8]
call fcn.140012e00
mov cl, al
mov eax, dword [rsp + 0x28]
mov byte [rsp + 0x2f], cl
cmp eax, 0xd3a9e06d
ja 0x140029169
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x1400291f0
jmp 0x140029207
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
mov rcx, qword [rax + rcx*8 + 8]
call fcn.140010050
mov rax, qword [rsp + 0x30]
movabs rcx, 0xf8f39af28f027cee
movabs rdx, 0xf8f39af28f027cee
xor rcx, rdx
sub rcx, rax
movabs rax, 0x9bbdd929303af888
movabs rdx, 0x9bbdd929303af888
xor rax, rdx
movabs rdx, 0x17489fb0602e82
movabs r8, 0x17489fb0602e83
xor rdx, r8
sub rax, rdx
add rcx, rax
xor eax, eax
sub rax, rcx
mov qword [rsp + 0x50], rax
jmp 0x140029079
mov eax, dword [0x1401d64f8]
xor edx, edx
div dword [0x1401d64fc]
xor eax, 0xffffffff
mov ecx, 0xd53897fb
xor ecx, 0xfc5b4c0e
mov edx, 0x15c2fde5
xor edx, 0xea3d021a
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x2c482cd6
or eax, ecx
mov ecx, 0x88c56098
xor ecx, 0xa48d4c4e
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
or eax, 0x5473e234
mov ecx, 0xffffffff
xor ecx, 0xa87321d7
add eax, ecx
add eax, 1
cmp eax, 0x867180a5
je 0x1400293eb
mov rcx, qword [rsp + 0x38]
mov eax, dword [0x1401d6500]
mov edx, 0xff2da7f4
xor edx, 0xa52600b2
xor eax, edx
mov r9d, dword [0x1401d6504]
mov edx, 0x70fec0e6
xor edx, 0x8f013f19
mov r10d, r9d
xor r10d, edx
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
mov r10d, 0x7545eb44
xor r10d, 0x8aba14bb
xor edx, r10d
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov r8d, 0x3283c151
xor edx, edx
div r8d
mov r9d, 0xffa7357f
xor r9d, 0xa6b91a6f
mov edx, 0x3de531d3
xor edx, 0xc21ace2c
xor r9d, edx
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0x591e2f10
or eax, 0x591e2f10
imul eax, r8d
add eax, edx
mov r8d, 0xc2d7a49f
xor r8d, 0xa73b7ce8
mov edx, 0xf901f75
xor edx, 0xf06fe08a
xor r8d, edx
mov edx, eax
and edx, r8d
mov r8d, eax
xor r8d, 0x65ecd877
add eax, r8d
sub eax, edx
cmp rcx, 0
sete cl
mov byte [rsp + 0x27], cl
cmp eax, 0x7dfde951
je 0x1400292d1
mov al, byte [rsp + 0x27]
test al, 1
jne 0x1400293dc
jmp 0x1400293d2
mov rcx, qword [rsp + 0x38]
call fcn.14000eb06
nop
add rsp, 0x58
ret
xchg edx, eax
fidivr word [rcx + 0x34]
jmp 0x140029169
mov ebp, 0xe9be5b53
invalid