Function at 0x14005e560
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x68
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], rcx
mov eax, dword [0x14024d9c8]
mov edx, dword [0x14024d9cc]
mov r8d, eax
xor r8d, edx
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
imul eax, eax, 0x4018a6ac
imul ecx, eax, 0xcea25c84
mov edx, 0xffffffff
xor edx, 0xb47f161a
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0xe7f28db
jb 0x14005e8ca
mov eax, dword [0x14024d9d0]
sub eax, dword [0x14024d9d4]
mov ecx, 0x59f811ad
xor edx, edx
div ecx
mov ecx, 0xab54ffeb
xor ecx, 0x5d506f69
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x60]
mov ecx, 0x921388b1
xor ecx, 0x38258f4a
or eax, ecx
mov ecx, 0x82041dcd
xor ecx, 0x781a5321
mov rdx, qword [rdx]
mov qword [rsp + 0x48], rdx
cmp rdx, 0
sete dl
mov byte [rsp + 0x57], dl
cmp eax, ecx
ja 0x14005e5b8
mov al, byte [rsp + 0x57]
test al, 1
jne 0x14005e8c5
jmp 0x14005e625
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
mov qword [rsp + 0x38], rcx
mov rcx, qword [rax + 8]
mov rax, qword [rax]
cmp rcx, rax
mov qword [rsp + 0x40], rax
jg 0x14005e663
mov rcx, qword [rsp + 0x58]
call fcn.140010018
mov rax, qword [rsp + 0x58]
mov rax, qword [rax]
mov qword [rsp + 0x40], rax
mov rcx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x60]
mov rax, qword [rsp + 0x58]
mov r9, qword [rsp + 0x40]
mov rax, qword [rax + 0x10]
mov r10, r9
shl r10, 4
mov rdx, rax
add rdx, r10
mov qword [rdx], r8
mov rdx, r9
shl rdx, 4
add rax, rdx
add rax, 8
mov qword [rax], rcx
mov rax, 0xffffffffffffffff
xor rax, 1
movabs rcx, 0x6a1c7db1ecdae263
movabs rdx, 0x6a1c7db1ecdae263
xor rcx, rdx
movabs rdx, 0xfcdb22e6e6311419
movabs r8, 0xfcdb22e6e6311418
xor rdx, r8
sub rcx, rdx
sub rax, rcx
mov rcx, r9
sub rcx, rax
mov qword [rsp + 0x30], rcx
mov rax, r9
xor rax, 0xffffffffffffffff
movabs rdx, 0xb6b543c44288528
movabs r8, 0x91a83bf19bf57a70
xor rdx, r8
and rdx, rax
mov r10, 0xffffffffffffffff
movabs rax, 0x9ac36fcddfddff58
xor r10, rax
and r9, r10
movabs rax, 0x467acc4d30dee976
movabs r8, 0xb98533b2cf211689
xor rax, r8
movabs r8, 0x6e1093de269bebe2
movabs r11, 0x91ef6c21d964141d
xor r8, r11
xor rax, r8
movabs r8, 0x9ac36fcddfddff58
and rax, r8
movabs r8, 0xcef609990008462c
movabs r11, 0x3109f666fff7b9d3
xor r8, r11
and r8, r10
or rdx, r9
or rax, r8
xor rdx, rax
movabs rax, 0x4f635076af1ebaf6
movabs r8, 0xb09caf8950e14509
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jge 0x14005e8b8
mov ecx, dword [0x14024d9d8]
and ecx, dword [0x14024d9dc]
and ecx, 0x46beff55
mov edx, 0x58eeb6a4
xor edx, 0xb563ff68
mov eax, ecx
and eax, edx
or ecx, 0xed8d49cc
add eax, ecx
mov ecx, 0xe24daf75
xor edx, edx
div ecx
cmp eax, 0x334b993
ja 0x14005e8d3
mov eax, dword [0x14024d9e0]
mov edx, dword [0x14024d9e4]
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, edx
and eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xbb5d8591
mov ecx, 0xefc58a02
xor ecx, 0x6bf2bb5a
mov r8d, 0x93eb77d7
xor r8d, 0x6c148828
xor ecx, r8d
or eax, edx
or ecx, 0x84373158
mov edx, 0x1f95d55c
xor edx, 0xe06a2aa3
xor eax, edx
and eax, ecx
add eax, 0xa57850b
mov edx, eax
xor edx, 0xffffffff
and edx, 0x41519cf3
mov r8d, 0xffffffff
xor r8d, 0x41519cf3
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x5b0ad555
xor r8d, 0x1a5b49a6
mov edx, eax
and edx, r8d
mov r8d, 0x21db9dad
xor r8d, 0x608a015e
or eax, r8d
imul eax, edx
add eax, ecx
mov dword [rsp + 0x2c], eax
mov eax, 0x1cee7fc
xor eax, 0xa7399d0b
mov dword [rsp + 0x28], eax
call fcn.140008c92
mov ecx, dword [rsp + 0x28]
mov eax, dword [rsp + 0x2c]
cmp eax, ecx
jb 0x14005e7e9
jmp 0x14005e8c5
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x30]
mov qword [rax], rcx
add rsp, 0x68
ret
jg 0x14005e935
lahf
invalid
invalid
movabs dword [0xc3294144b8541835], eax
sub r11d, 0x6dec3534
add r11d, 0xe7d0188e
mov edx, 0xffffffff
xor edx, 0xd584188d
mov ecx, r11d
and ecx, edx
mov eax, r11d
or eax, edx
mov edx, 0xc1177191
xor edx, 0x3ee88e6e
xor eax, edx
imul eax, ecx
mov ecx, r11d
and ecx, 0xd584188d
mov edx, 0xcc558f30
xor edx, 0x19d197bd
or r11d, edx
imul r11d, ecx
add r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x93ded011
mov r8d, 0x76c937d1
xor r8d, 0x58d8bbe1
mov eax, 0x6963e765
xor eax, 0x969c189a
xor r8d, eax
mov r9d, 0xbd518967
xor r9d, 0x93400557
mov eax, ecx
and eax, r9d
and r11d, r8d
mov r9d, edx
and r9d, 0x2e118c30
mov r10d, r8d
and r10d, 0x93ded011
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x407c4a4e
xor edx, 0x6e6dc67e
or edx, r8d
and ecx, edx
or eax, ecx
cmp eax, 0x852084b4
jbe 0x14005eac7
mov rcx, qword [rsp + 0x30]
mov r8d, dword [0x14024d9f0]
xor r8d, 0x1699a2bc
mov eax, dword [0x14024d9f4]
mov edx, 0xf8ca908b
xor edx, 0x7356f74
xor eax, edx
add r8d, eax
mov eax, 0xe8f4b914
xor eax, 0xe8f4b915
add r8d, eax
mov edx, r8d
xor edx, 0xa766feeb
mov eax, 0xa16f75a0
xor eax, 0x6098b4b
mov r9d, 0xf6be7d5f
xor r9d, 0x94182a0
xor eax, r9d
and r8d, eax
mov eax, 0x812a534a
xor eax, 0x812a5348
imul eax, r8d
sub eax, edx
mov edx, 0xffffffff
xor edx, 0xf2425d1c
xor r8d, r8d
sub r8d, 1
sub edx, r8d
sub eax, edx
add eax, 0x39ff5d9f
mov dword [rsp + 0x2c], eax
mov eax, 0xc18c1c8c
xor eax, 0x430b8d7
mov dword [rsp + 0x28], eax
call fcn.14000eec9
mov ecx, dword [rsp + 0x28]
mov eax, dword [rsp + 0x2c]
cmp eax, ecx
jbe 0x14005ea0e
jmp 0x14005eac2
add rsp, 0x38
ret
sahf
movsd dword [rdi], dword [rsi]
add edx, ebx
jmp 0x14005ea0e