Function at 0x180384c10
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rsi, rcx
mov eax, dword [0x18078d170]
xor eax, dword [0x18078d174]
sub eax, 0xd50efdc2
imul eax, eax, 0xd70ec110
or eax, 0x2e81c2d8
cmp eax, 0x1d0c5a8f
je 0x18038506e
jmp 0x180384c44
mov eax, dword [0x18078d178]
imul eax, dword [0x18078d17c]
imul ecx, eax, 0x2c307a09
sub ecx, 0xa3f4e4b4
sub ecx, 0xdf4e350c
mov rax, rsi
add rax, 0xec9
cmp ecx, 0x2b093e6d
jbe 0x180384c44
jmp 0x180384c76
movzx ecx, byte [rax]
mov eax, dword [0x18078d180]
sub eax, dword [0x18078d184]
mov r8d, 0xd70dc009
xor edx, edx
div r8d
or eax, 0xa7ff0ee2
or eax, 0x884a2c86
cmp eax, 0x979f44cb
jb 0x18038507b
jmp 0x180384ca7
mov eax, dword [0x18078d188]
xor edx, edx
div dword [0x18078d18c]
mov r8d, 0xa1ab7c05
xor edx, edx
div r8d
xor eax, 0xca232b5f
mov r8d, 0x749f05f2
xor edx, edx
div r8d
cmp eax, 0x8ff889ba
je 0x180384ca7
test ecx, ecx
je 0x180384cf1
jmp 0x180384cdd
sub ecx, 3
je 0x180384d73
jmp 0x180384ce8
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
ret
mov rax, rsi
add rax, 0x48
mov rdx, qword [rax]
cmp rdx, 0
sete al
test al, 1
jne 0x180384ce8
jmp 0x180384d08
mov rcx, qword [rsi + 0x50]
mov r8d, 1
call fcn.1804cafa0
mov eax, dword [0x18078d190]
or eax, dword [0x18078d194]
or eax, 0x5f4a3d72
imul eax, eax, 0xbfd2b58e
mov ecx, 0x853f958a
xor edx, edx
div ecx
cmp eax, 0x6bc44471
je 0x18038508c
jmp 0x180384d44
mov eax, dword [0x18078d198]
sub eax, dword [0x18078d19c]
mov ecx, 0x7a82e265
xor edx, edx
div ecx
add eax, 0x552fb4f6
mov ecx, 0x60e07f69
xor edx, edx
div ecx
cmp eax, 0x44654672
jae 0x180384d44
jmp 0x180384ce8
mov al, byte [rsi + 0x3d4]
movzx eax, al
test eax, eax
je 0x180384d99
jmp 0x180384d82
mov ecx, eax
sub ecx, 3
je 0x180384dad
jmp 0x180384d8b
sub eax, 4
je 0x180384e68
jmp 0x180384ce8
add rsi, 0x140
mov rcx, rsi
call fcn.1803881e0
jmp 0x180384ce8
mov eax, dword [0x18078d1a0]
and eax, dword [0x18078d1a4]
xor eax, 0x5bf03815
xor eax, 0x2ce41b9
imul eax, eax, 0x6747664e
cmp eax, 0x7ee1b8eb
jb 0x18038509d
jmp 0x180384dd6
mov eax, dword [0x18078d1a8]
imul eax, dword [0x18078d1ac]
and eax, 0x487a002a
imul eax, eax, 0xc207f2c1
add eax, 0x9cd2eff8
mov rdi, rsi
add rdi, 0x3e0
cmp eax, 0x43a0b52d
je 0x180384dd6
jmp 0x180384e06
mov eax, dword [0x18078d1b0]
imul eax, dword [0x18078d1b4]
sub eax, 0xd9fb6161
mov ecx, 0x813f4414
xor edx, edx
div ecx
mov ecx, 0x90cb88dd
xor edx, edx
div ecx
cmp eax, 0xb6a2a7b8
jae 0x1803850aa
jmp 0x180384e37
mov eax, dword [0x18078d1b8]
sub eax, dword [0x18078d1bc]
and eax, 0x111a22ff
imul ebx, eax, 0xf49cc154
sub ebx, 0xec3b480c
mov rcx, rdi
call fcn.180384620
cmp ebx, 0x95cba639
jbe 0x180384e37
jmp 0x180384e66
jmp 0x180384e79
mov rcx, rsi
add rcx, 0x3d8
call fcn.180385120
jmp 0x180384e79
mov eax, dword [0x18078d1c0]
sub eax, dword [0x18078d1c4]
xor eax, 0x3d754195
xor eax, 0x9b926369
and eax, 0xb00a7203
cmp eax, 0xa487af85
ja 0x1803850bf
mov eax, dword [0x18078d1c8]
sub eax, dword [0x18078d1cc]
xor eax, 0x22293c69
imul eax, eax, 0x897c56ed
xor eax, 0x826eba7a
mov rdi, qword [rsi + 0x390]
cmp eax, 0xb2111ced
je 0x1803850bf
jmp 0x180384ecf
cmp rdi, 0
sete al
test al, 1
jne 0x180384f54
jmp 0x180384edc
mov rax, rsi
add rax, 0x398
mov rbx, qword [rax]
mov eax, dword [0x18078d1d0]
sub eax, dword [0x18078d1d4]
mov ecx, 0xc4cb838e
xor edx, edx
div ecx
mov ecx, 0x79576802
xor edx, edx
div ecx
or eax, 0xe80ae9f9
cmp eax, 0xc9d2e9d7
je 0x1803850cc
jmp 0x180384f18
mov eax, dword [0x18078d1d8]
xor eax, dword [0x18078d1dc]
and eax, 0x74eb5762
add eax, 0x494885ea
mov ecx, 0x300b7b00
xor edx, edx
div ecx
mov ebp, eax
mov rcx, rbx
mov rdx, rdi
mov r8d, 1
call fcn.1804cafa0
cmp ebp, 0xb7d9e598
je 0x180384f18
jmp 0x180384f54
mov rdi, rsi
add rdi, 0x3d6
mov eax, dword [0x18078d1e0]
and eax, dword [0x18078d1e4]
imul eax, eax, 0xde4f1778
xor eax, 0xe44474f9
add eax, 0xb07e758d
cmp eax, 0x7f40722c
jae 0x1803850ea
jmp 0x180384f87
mov eax, dword [0x18078d1e8]
xor eax, dword [0x18078d1ec]
add eax, 0xe01906eb
mov ecx, 0xa9fee506
xor edx, edx
div ecx
xor eax, 0x9d9183ca
mov cl, byte [rdi]
cmp eax, 0x42fc3e5b
jb 0x180384f87
jmp 0x180384fb1
cmp cl, 0
jne 0x180384fbe
mov byte [rdi], 0
jmp 0x180384ce8
mov eax, dword [0x18078d1f0]
imul eax, dword [0x18078d1f4]
add eax, 0xa4a3f64f
sub eax, 0xe7bb8249
sub eax, 0xe257526d
cmp eax, 0xd1957a0
je 0x1803850f7
jmp 0x180384fe7
mov eax, dword [0x18078d1f8]
add eax, dword [0x18078d1fc]
sub eax, 0x9ae3ec80
or eax, 0xdcdaad48
imul eax, eax, 0xedb2adf9
mov rcx, rsi
add rcx, 0x268
cmp eax, 0x414b9f61
jb 0x180384fe7
jmp 0x180385016
call fcn.1803881e0
mov eax, dword [0x18078d200]
add eax, dword [0x18078d204]
and eax, 0x3a458957
mov ecx, 0x74522ee6
xor edx, edx
div ecx
xor eax, 0x8be2229a
cmp eax, 0xfc7a2e22
je 0x180385108
jmp 0x180385047
mov eax, dword [0x18078d208]
and eax, dword [0x18078d20c]
or eax, 0x2c444f18
add dword [rax], 0x81b90523
add byte [0x1ac7c9f70], cl
or eax, 0x67c6f67c
sub eax, 0x69722517
cmp eax, 0x808410a2
je 0x180385047
jmp 0x180384fb6
dec dword [rdi + 0x1a718469]
add al, 0xc1
jmp 0x180384c42
mul byte [rax + 0x50762104]
sub eax, 0xf83057
shr cl, 1
sbb esp, edi
invalid
adc eax, 0xaef14298
invalid
cmp dl, al
test al, 0x14
test al, 0xc2
invalid
invalid
or eax, 0xa923857e
push rax
jnp 0x18038504a
jmp 0x180384e9f
invalid
sbb r14, qword [rcx - 0x65]
hlt
out 0xba, al
shl dword fs:[rbx - 0x372a957c], cl
adc eax, 0xfedde9cd
invalid
in eax, 0x81
retf