Function at 0x180412ae0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x40
mov rsi, rcx
mov rcx, rsi
call fcn.18063b2b0
mov rcx, rax
and rcx, 8
cmp rcx, 0
jne 0x180412b3d
mov rcx, qword [rsi + 0x28]
call fcn.18063f660
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rdx
mov rdi, rsi
add rdi, 0x30
mov rcx, rdi
call fcn.18034ffd0
movabs rax, 0x8000000000000007
mov qword [rdi], rax
lea rcx, [rsp + 0x30]
call fcn.18063f700
jmp 0x180412c5c
and rax, 0x10
cmp rax, 0
sete cl
mov eax, dword [0x18079ae28]
sub eax, dword [0x18079ae2c]
xor eax, 0xbbb809b9
or eax, 0xc1e9c2aa
add eax, 0x2ac4f89d
cmp eax, 0xe4b47e9f
je 0x180412e68
jmp 0x180412b70
mov eax, dword [0x18079ae30]
xor eax, dword [0x18079ae34]
mov r8d, 0xf137f97e
xor edx, edx
div r8d
xor eax, 0x378fdcfc
sub eax, 0x71d41ac2
cmp eax, 0xb3849350
je 0x180412b70
test cl, 1
jne 0x180412c5c
jmp 0x180412ba3
mov rdi, rsi
add rdi, 0xc8
mov eax, dword [0x18079ae38]
or eax, dword [0x18079ae3c]
and eax, 0x2197202e
xor eax, 0x4686622d
mov ecx, 0x58f2fbf6
xor edx, edx
div ecx
cmp eax, 0x69d2d2dc
je 0x180412e75
jmp 0x180412bd9
mov eax, dword [0x18079ae40]
and eax, dword [0x18079ae44]
imul ebx, eax, 0xe41e0763
and ebx, 0xf746ac3e
or ebx, 0x6655bd85
mov rcx, rdi
call fcn.180640280
cmp ebx, 0x97f2bf6
jbe 0x180412bd9
jmp 0x180412c09
mov eax, dword [0x18079ae48]
add eax, dword [0x18079ae4c]
or eax, 0x7a1ab714
mov ecx, 0xa489c8c2
xor edx, edx
div ecx
imul eax, eax, 0xd264d428
cmp eax, 0xf56e835b
ja 0x180412e8a
jmp 0x180412c36
mov eax, dword [0x18079ae50]
imul eax, dword [0x18079ae54]
imul eax, eax, 0x8bf221b9
or eax, 0x6808fcf8
xor eax, 0xbb309abf
cmp eax, 0x85bee6bc
jb 0x180412c36
jmp 0x180412c5c
mov eax, dword [0x18079ae58]
xor edx, edx
div dword [0x18079ae5c]
sub eax, 0x409f89c0
or eax, 0x272c058
mov ecx, 0x91ca2ea8
xor edx, edx
div ecx
cmp eax, 0x2135e472
jae 0x180412e97
jmp 0x180412c8a
mov eax, dword [0x18079ae60]
and eax, dword [0x18079ae64]
imul ebx, eax, 0xa56d678e
and ebx, 0x45888b5b
sub ebx, 0xf5680ffe
mov qword [rsp + 0x28], rsi
mov rdi, rsi
add rdi, 0x20
lea rdx, [rsp + 0x28]
mov rcx, rdi
call fcn.180643630
cmp rax, 0
sete al
cmp ebx, 0xe3335ce8
ja 0x180412c8a
jmp 0x180412cd2
mov edx, 2
mov ecx, 1
test al, 1
cmovne rdx, rcx
mov rcx, rsi
call fcn.18063b2e0
test al, 1
jne 0x180412d4c
jmp 0x180412cf0
mov eax, dword [0x18079ae68]
add eax, dword [0x18079ae6c]
and eax, 0x53360f68
imul eax, eax, 0xf1a160d9
and eax, 0x366b380a
cmp eax, 0x24c21ac3
je 0x180412ebe
jmp 0x180412d19
mov eax, dword [0x18079ae70]
imul eax, dword [0x18079ae74]
and eax, 0x3fedb9b8
mov ecx, 0xdbb97d9d
xor edx, edx
div ecx
mov ecx, 0x71ecd699
xor edx, edx
div ecx
cmp eax, 0xc18d1a86
je 0x180412d19
add rsp, 0x40
pop rbx
pop rdi
pop rsi
ret
mov rax, qword [rdi]
lock dec qword [rax]
sete al
jmp 0x180412d58
test al, 1
jne 0x180412d5e
jmp 0x180412dc2
mov eax, dword [0x18079ae78]
add eax, dword [0x18079ae7c]
mov ecx, 0xc99b2cac
xor edx, edx
div ecx
xor eax, 0xd6c4eb7e
mov ecx, 0xb88d0197
xor edx, edx
div ecx
cmp eax, 0xbb0c520f
jae 0x180412ecb
mov eax, dword [0x18079ae80]
sub eax, dword [0x18079ae84]
imul ebx, eax, 0x4db4efb6
sub ebx, 0x47454b30
xor ebx, 0x2691125f
mov rcx, rdi
call fcn.1804b80b0
cmp ebx, 0xc312bcb0
je 0x180412ecb
jmp 0x180412dc0
jmp 0x180412dc2
mov rcx, rsi
add rcx, 0x30
call fcn.1803fdae0
mov rax, rsi
add rax, 0xd8
mov rax, qword [rax]
cmp rax, 0
sete cl
test cl, 1
jne 0x180412e50
jmp 0x180412de8
mov ecx, dword [0x18079ae88]
and ecx, dword [0x18079ae8c]
add ecx, 0x428f905d
imul ecx, ecx, 0xb953062e
and ecx, 0x65e03bff
cmp ecx, 0x9791e19d
jae 0x180412ee4
mov ecx, dword [0x18079ae90]
and ecx, dword [0x18079ae94]
or ecx, 0x26d41581
imul edx, ecx, 0x6de0b482
add edx, 0x532aa3b
mov rcx, rsi
add rcx, 0xe0
cmp edx, 0xa348e9cb
je 0x180412ee4
jmp 0x180412e48
mov rcx, qword [rcx]
call qword [rax + 0x18]
jmp 0x180412e50
mov rcx, rsi
mov edx, 0x100
mov r8d, 0x80
call fcn.1804cafa0
jmp 0x180412cf0
add byte [rax], 0
add al, ch
cmp eax, 0xe9000b81
mov dh, bh
invalid
loopne 0x180412e5a
xchg dword [rdi - 0x67cab848], esi
jmp 0x180412b6e
scasb al, byte [rdi]
imul dword [rbx - 0x6b]
scasd eax, dword [rdi]
nop
add cl, dh
mov rcx, rdi
call fcn.180640280
jmp 0x180412bd7
stc
out 0xd1, al
sub eax, 0xe911f426
popfq
std
invalid
jmp 0x180412c34
lodsd eax, dword [rsi]
adc dword [rbx], esp
rcl byte [rdi]
mov dword [rax - 0x6fc205a1], esp
mov qword [rsp + 0x28], rsi
mov rcx, rsi
add rcx, 0x20
lea rdx, [rsp + 0x28]
call fcn.180643630
jmp 0x180412c88
invalid
jo 0x180412e92
pop r10
in al, 0xf5
je 0x180412eee
js 0x180412ece
mov rcx, rdi
call fcn.1804b80b0
jmp 0x180412d8c
sub bh, byte [rax + 0x1e30fcc6]
in al, 0xe4
iretd
xor dword [rbx - 0xe217], ebp
dec esp
int3