Function at 0x140085620
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x60
lea rbp, [rsp + 0x60]
mov qword [rbp - 0x18], rdx
mov qword [rbp - 0x10], rcx
mov qword [rbp - 8], rcx
mov eax, dword [0x1402540f8]
mov ecx, dword [0x1402540fc]
xor ecx, 0x858d885
imul eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xe4eba9af
mov ecx, 0xffffffff
xor ecx, 0x18aa9453
or eax, edx
or ecx, 0x18aa9453
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0xc1b6425e
xor ecx, 0x1dda291a
imul eax, ecx
sub eax, 0x143048b6
mov ecx, 0x32abc1b5
xor ecx, 0xd278a2d1
sub eax, ecx
add eax, 0x143048b6
cmp eax, 0x4620e0de
jbe 0x140085bac
mov r10d, dword [0x140254100]
mov r9d, dword [0x140254104]
mov ecx, r10d
not ecx
mov edx, r9d
not edx
mov eax, ecx
and eax, 0x2335080
and r10d, 0x89008428
mov r8d, edx
and r8d, 0x2335080
and r9d, 0x89008428
or eax, r10d
or r8d, r9d
xor eax, r8d
or ecx, edx
not ecx
or eax, ecx
and eax, 0x8b33d4a8
xor eax, 0x8311d408
imul eax, eax, 0x9297491f
mov dword [rbp - 0x2c], eax
mov eax, 0x10
call fcn.14024f5c0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x40], rax
sub rsp, 0x20
call fcn.14006d36b
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x10]
mov qword [rbp - 0x38], rcx
mov qword [rax], 0
mov qword [rax + 8], 0
movabs rcx, 0x1ca22e7a06dd6baa
movabs rax, 0x1ca22e7a06dd6ba2
xor rcx, rax
sub rsp, 0x20
call fcn.14006d7d0
mov rcx, qword [rbp - 0x38]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x2c]
mov qword [rbp - 0x28], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x19], cl
cmp eax, 0x4fd14ff8
jae 0x1400856a1
mov cl, byte [rbp - 0x19]
mov al, 1
test cl, 1
mov byte [rbp - 0x41], al
jne 0x140085791
jmp 0x140085a38
mov eax, dword [0x140254108]
xor eax, 0xef2c12ed
xor edx, edx
div dword [0x14025410c]
mov ecx, 0x766bb9b4
xor ecx, 0x1f4222a7
xor edx, edx
div ecx
sub eax, 0x98cc5c0
add eax, 0xad144f2c
mov ecx, 0xba9ae49e
xor ecx, 0xe2888d32
sub eax, ecx
sub eax, 0xad144f2c
cmp eax, 0x2ae0cf3b
je 0x140085bb5
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x28]
mov r8d, dword [0x140254110]
mov r9d, dword [0x140254114]
xor r9d, 0x597d2787
mov eax, r8d
and eax, eax
mov r10d, 0xa0d8bb1b
xor r10d, 0x5f2744e4
xor eax, r10d
and eax, r9d
xor eax, 0xffffffff
and r9d, r9d
mov r10d, 0x92cb4abe
xor r10d, 0x6d34b541
xor r9d, r10d
xor r8d, 0xffffffff
xor r9d, 0xffffffff
or r8d, r9d
xor eax, 0xffffffff
xor r8d, 0xffffffff
or eax, r8d
or eax, 0x38675ee7
xor eax, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0xe5967396
mov r8d, 0xffffffff
xor r8d, 0xde0f1990
or eax, r9d
or r8d, 0xde0f1990
xor eax, 0xffffffff
and eax, r8d
sub eax, 0x85b7434b
mov r8d, 0xdba319aa
xor r8d, 0x17b3b35b
add eax, r8d
add eax, 0x85b7434b
mov dword [rbp - 0x48], eax
sub rsp, 0x20
call fcn.1400855f5
mov rcx, qword [rbp - 0x38]
mov eax, dword [rbp - 0x48]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x4d
xor dl, 0x4d
cmp cl, dl
sete cl
mov byte [rbp - 0x42], cl
cmp eax, 0x7955915c
jae 0x140085bb5
mov cl, byte [rbp - 0x42]
mov al, 1
test cl, 1
mov byte [rbp - 0x41], al
jne 0x1400858cd
jmp 0x140085a38
mov ecx, dword [0x140254118]
mov edx, dword [0x14025411c]
mov eax, ecx
xor eax, 0xffffffff
mov r9d, 0xd496366d
xor r9d, 0x2b69c992
mov r8d, ecx
xor r8d, r9d
and eax, r8d
mov r8d, edx
or r8d, r8d
xor r8d, 0xffffffff
mov r9d, 0xb33b8260
xor r9d, 0x4cc47d9f
xor eax, r9d
xor r8d, 0xffffffff
and eax, r8d
or ecx, edx
mov edx, 0x94579458
xor edx, 0x6ba86ba7
xor ecx, edx
xor eax, 0xffffffff
mov edx, 0x917dd811
xor edx, 0x6e8227ee
xor ecx, edx
and eax, ecx
mov ecx, 0x26cce67c
xor ecx, 0x26cce67c
mov edx, 0xb45255de
xor edx, 0x911bbb9b
sub ecx, edx
sub eax, ecx
add eax, 0xd8fe3122
mov ecx, 0x7faf5d30
xor ecx, 0x9358f99
sub eax, ecx
sub eax, 0xd8fe3122
mov ecx, 0xf072a408
xor ecx, 0x2d10953c
or eax, ecx
mov ecx, 0x176094b2
xor ecx, 0xb81b2df4
cmp eax, ecx
jbe 0x140085bbe
mov rdx, qword [rbp - 0x40]
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp - 0x28]
mov r8d, dword [0x140254120]
or r8d, dword [0x140254124]
mov r9d, 0x4a007ad4
xor r9d, 0x64543cfb
xor r8d, r9d
xor r8d, 0xd7647b1b
mov r9d, 0x8813d7d9
xor r9d, 0x8813d7d9
sub r9d, r8d
xor r8d, r8d
sub r8d, 0x73fcd2f2
add r9d, r8d
mov r8d, 0xa94ebf28
xor r8d, 0xa94ebf28
sub r8d, r9d
mov dword [rbp - 0x50], r8d
mov r8d, 0xb91ba94b
xor r8d, 0xa0d767a
mov dword [rbp - 0x54], r8d
mov r8, qword [rax + 0x58]
mov qword [rdx], r8
mov rax, qword [rax + 0x60]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140019410
mov rdx, qword [rbp - 0x38]
mov ecx, dword [rbp - 0x54]
mov eax, dword [rbp - 0x50]
add rsp, 0x20
mov dl, byte [rdx]
mov byte [rbp - 0x49], dl
cmp eax, ecx
ja 0x140085bbe
mov al, byte [rbp - 0x49]
mov byte [rbp - 0x41], al
jmp 0x140085a38
mov al, byte [rbp - 0x41]
mov byte [rbp - 0x55], al
mov eax, dword [0x140254128]
mov ecx, 0xe468be2a
xor ecx, 0x664cf2d3
xor eax, ecx
mov r8d, dword [0x14025412c]
mov edx, 0x4688c3d5
xor edx, 0xb9773c2a
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, 0x35f03c6e
xor ecx, 0x35f03c6e
mov edx, 0x97ba4386
xor edx, 0x6a010d81
sub ecx, edx
add eax, ecx
xor ecx, ecx
sub ecx, 0x785a654c
add eax, ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xdf38d439
and ecx, 0xdf38d439
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x1c8be218
xor ecx, 0xb06c1ff8
cmp eax, ecx
je 0x140085bc7
mov rax, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x28]
mov edx, dword [0x140254130]
mov r8d, dword [0x140254134]
xor r8d, 0x4dfb884a
and edx, r8d
add edx, 0xcac49ad4
mov r8d, 0x53bcbe1a
xor r8d, 0x6496bbf7
imul edx, r8d
mov r9d, edx
xor r9d, 0xffffffff
and r9d, 0x667c6a56
mov r10d, 0xffffffff
xor r10d, 0x667c6a56
mov r8d, edx
and r8d, r10d
imul r8d, r9d
mov r10d, 0x1e7fd071
xor r10d, 0x7803ba27
mov r9d, edx
and r9d, r10d
mov r10d, 0x5b6e378b
xor r10d, 0x3d125ddd
or edx, r10d
imul edx, r9d
add edx, r8d
mov dword [rbp - 0x5c], edx
mov byte [rax], 0
sub rsp, 0x20
call fcn.14006d09c
mov rcx, qword [rbp - 0x38]
mov eax, dword [rbp - 0x5c]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x56], cl
cmp eax, 0x935c0a1c
je 0x140085bc7
mov al, byte [rbp - 0x56]
test al, 1
jne 0x140085b9a
jmp 0x140085ba3
mov rax, qword [rbp - 0x38]
mov cl, byte [rbp - 0x55]
mov byte [rax], cl
mov rax, qword [rbp - 8]
mov rsp, rbp
pop rbp
ret
out 0xe9, al
jmp 0x1400856a1
add edi, dword es:[rax + 0x47]
jmp 0x1400857da
mov edi, 0xe90dad61
sar ch, 0xff
jmp qword [rbx + rbp*4 + 0x7e9663d]
movsb byte [rdi], byte [rsi]
stosd dword [rdi], eax
cmp eax, 0xff07e966
invalid