Function at 0x180478790
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov r15, rcx
mov eax, dword [0x1807a5758]
xor edx, edx
div dword [0x1807a575c]
xor eax, 0x78773f20
or eax, 0x13324afa
and eax, 0x3a6c6f8a
cmp eax, 0xab59bbcb
ja 0x180478dc3
mov eax, dword [0x1807a5760]
and eax, dword [0x1807a5764]
sub eax, 0xd4a2ada0
mov ecx, 0xd504d650
xor edx, edx
div ecx
or eax, 0x356571b5
cmp eax, 0x2fc72d79
jbe 0x180478dc3
jmp 0x1804787f7
mov rdx, qword [r15 + 0x50]
cmp rdx, 0
sete al
test al, 1
jne 0x18047886c
jmp 0x180478808
mov rcx, qword [r15 + 0x48]
shl rdx, 2
mov r8d, 2
call fcn.1804cafa0
mov eax, dword [0x1807a5768]
add eax, dword [0x1807a576c]
sub eax, 0x444f0fbd
and eax, 0xd5ac250e
mov ecx, 0x3bf14556
xor edx, edx
div ecx
cmp eax, 0x42a77a22
jae 0x180478dd0
jmp 0x180478847
mov eax, dword [0x1807a5770]
or eax, dword [0x1807a5774]
sub eax, 0xb1b6d12c
and eax, 0xc1fb5e8d
imul eax, eax, 0x296ab59d
cmp eax, 0x7bdb391d
jb 0x180478847
jmp 0x18047886c
mov eax, dword [0x1807a5778]
imul eax, dword [0x1807a577c]
sub eax, 0xa197a227
sub eax, 0xe497cbb1
sub eax, 0x37c881b8
cmp eax, 0x5af4c3
jb 0x180478de1
jmp 0x180478895
mov eax, dword [0x1807a5780]
xor edx, edx
div dword [0x1807a5784]
and eax, 0x1d26c94b
xor eax, 0x6fcb0caa
or eax, 0x2d60c8c0
mov r12, r15
add r12, 0x18
cmp eax, 0x549b50cc
jbe 0x180478895
jmp 0x1804788c2
mov rdi, qword [r15 + 0x20]
mov rax, r15
add rax, 0x28
mov r13, qword [rax]
cmp r13, 0
je 0x180478a02
xor ebp, ebp
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], rdi
jmp 0x1804788e8
imul rax, rbp, 0x68
add rdi, rax
add rbp, 1
mov rax, qword [rdi + 0x40]
cmp rax, 0
je 0x180478914
mov rax, qword [rax + 0x20]
mov rcx, rdi
add rcx, 0x58
mov rdx, qword [rdi + 0x48]
mov r8, qword [rdi + 0x50]
call rax
jmp 0x180478914
mov rax, rdi
add rax, 0x18
mov ecx, dword [0x1807a5788]
and ecx, dword [0x1807a578c]
and ecx, 0x4bf60d54
xor ecx, 0xfe1f36f2
add ecx, 0xfd7a1191
cmp ecx, 0x1cff3937
je 0x180478df2
jmp 0x180478947
mov ecx, dword [0x1807a5790]
imul ecx, dword [0x1807a5794]
add ecx, 0xb5cc7f50
or ecx, 0xff60a267
sub ecx, 0x8dc45fd
mov rdx, qword [rax]
mov rsi, qword [rdx + 0x20]
mov rbx, rdi
add rbx, 0x30
mov r14, qword [rdi + 0x20]
mov r15, qword [rdi + 0x28]
cmp ecx, 0xa494e6bd
je 0x180478947
jmp 0x180478986
mov eax, dword [0x1807a5798]
sub eax, dword [0x1807a579c]
mov ecx, 0x4359ef6c
xor edx, edx
div ecx
mov ecx, 0x3437ea6c
xor edx, edx
div ecx
and eax, 0x2ccd27e6
cmp eax, 0x86c04da
jae 0x180478e03
jmp 0x1804789b6
mov edi, dword [0x1807a57a0]
xor edi, dword [0x1807a57a4]
add edi, 0xe549240
add edi, 0x5bc9d49e
and edi, 0x7041e5b8
mov rcx, rbx
mov rdx, r14
mov r8, r15
call rsi
cmp rbp, r13
sete al
cmp edi, 0xfa02debc
je 0x1804789b6
test al, 1
mov r15, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x28]
jne 0x180478a00
jmp 0x1804788e8
jmp 0x180478a02
mov eax, dword [0x1807a57a8]
and eax, dword [0x1807a57ac]
add eax, 0x3379010a
mov ecx, 0x521be840
xor edx, edx
div ecx
imul eax, eax, 0xeddaa9a4
cmp eax, 0x721116e
jb 0x180478e1f
jmp 0x180478a2f
mov eax, dword [0x1807a57b0]
xor eax, dword [0x1807a57b4]
or eax, 0x465111f
sub eax, 0x1d43be5c
imul eax, eax, 0x6dbdad42
mov rcx, qword [r12]
cmp eax, 0xa4660cac
ja 0x180478a2f
jmp 0x180478a58
mov eax, dword [0x1807a57b8]
add eax, dword [0x1807a57bc]
xor eax, 0x8b42f264
xor eax, 0x5c55d4e0
or eax, 0x50d42137
cmp eax, 0x4e317aed
jbe 0x180478e30
mov eax, dword [0x1807a57c0]
sub eax, dword [0x1807a57c4]
mov r8d, 0x26b928c5
xor edx, edx
div r8d
imul edx, eax, 0x5ee4a259
xor edx, 0x745e14ca
cmp rcx, 0
sete al
cmp edx, 0x5969790d
je 0x180478e30
jmp 0x180478ab6
test al, 1
jne 0x180478b2d
jmp 0x180478abc
imul rbx, rcx, 0x68
mov eax, dword [0x1807a57c8]
xor edx, edx
div dword [0x1807a57cc]
mov ecx, 0x50077b5c
xor edx, edx
div ecx
sub eax, 0x1d72482e
mov ecx, 0x834f3d0b
xor edx, edx
div ecx
cmp eax, 0x889cf9ec
je 0x180478e3d
add bl, ch
add byte [rbx + 0x32caaa05], cl
add byte [rcx], dh
sal bh, cl
xor eax, 0x32caa6
add eax, 0x4800eb00
add esp, 0x38
jl 0x180478dc7
and byte [rdi], al
lahf
js 0x180478d6d
invalid
jmp 0x1804787cb
xchg edx, eax
sbb ch, dh
sbb dl, byte [rbp + 0x3a]
cmp dh, dl
jge 0x180478dae
jmp 0x180478845
invalid
or bh, byte [rbp - 0x10]
push rbx
invalid
xchg byte [rdx - 0x4d4f0860], bl
cli
out 0x65, al
clc
hlt
stosd dword [rdi], eax
stc
mov ebp, 0x7cbdaf2
rol dword [rsi + riz*8], 0x32
test eax, 0xfffbfde9
inc dword [rcx + 0x35f73b7a]
pop rdi
sbb byte [rax - 0x17], bl
cld
invalid
cmp dword [rdx + 0x3b], 0x185f35f7
pop rax
jmp 0x180478a7e
push rcx
pop rsi
invalid