Function at 0x1803a6830
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x20
mov rsi, rcx
mov eax, dword [0x1807904e0]
sub eax, dword [0x1807904e4]
imul eax, eax, 0x428a0e5e
add eax, 0xe3ed39f0
xor eax, 0xf51d54e1
cmp eax, 0x4486f08f
je 0x1803a6c74
mov eax, dword [0x1807904e8]
and eax, dword [0x1807904ec]
mov ecx, 0xccff5996
xor edx, edx
div ecx
and eax, 0x40671dce
xor eax, 0x7b308b47
mov rcx, rsi
add rcx, 0x710
cmp eax, 0xee7d1f95
je 0x1803a6c74
jmp 0x1803a6897
mov eax, dword [0x1807904f0]
imul eax, dword [0x1807904f4]
xor eax, 0x8094f23f
and eax, 0x401b077
mov r8d, 0xe41232b4
xor edx, edx
div r8d
cmp eax, 0x5655a164
jae 0x1803a6c81
mov edx, dword [0x1807904f8]
or edx, dword [0x1807904fc]
or edx, 0xd2265d26
add edx, 0xcd2882bb
and edx, 0xdd3642dc
mov al, byte [rcx]
cmp edx, 0xe39631d4
jae 0x1803a6c81
jmp 0x1803a68f2
movzx ecx, al
test al, al
je 0x1803a690e
jmp 0x1803a68fb
sub ecx, 3
je 0x1803a69cd
jmp 0x1803a6906
add rsp, 0x20
pop rbx
pop rdi
pop rsi
ret
mov eax, dword [0x180790500]
and eax, dword [0x180790504]
add eax, 0xcef696
or eax, 0xdcfb9833
and eax, 0x52895ab
cmp eax, 0x2f5fa99e
je 0x1803a6c8e
mov eax, dword [0x180790508]
and eax, dword [0x18079050c]
xor eax, 0x49e3a985
xor eax, 0xb0eb10e4
imul edi, eax, 0x688246e9
mov rcx, rsi
call fcn.1803a8210
cmp edi, 0xd1b8fe12
je 0x1803a6c8e
jmp 0x1803a6966
add rsi, 0x28
mov eax, dword [0x180790510]
xor edx, edx
div dword [0x180790514]
imul eax, eax, 0xbcdb029
mov ecx, 0xa377df2a
xor edx, edx
div ecx
and eax, 0x85afd9b1
cmp eax, 0xb3395bc5
je 0x1803a6ca7
jmp 0x1803a6999
mov eax, dword [0x180790518]
xor edx, edx
div dword [0x18079051c]
add eax, 0xc0fdb798
imul edi, eax, 0xb4c8cc6e
or edi, 0xb283af8c
mov rcx, rsi
call fcn.1803a8a30
cmp edi, 0xa005cb1f
je 0x1803a6999
jmp 0x1803a6906
mov rax, rsi
add rax, 0x2a0
mov cl, byte [rax]
mov eax, dword [0x180790520]
imul eax, dword [0x180790524]
mov r8d, 0x258b59b4
xor edx, edx
div r8d
xor eax, 0xfc03be38
imul eax, eax, 0x6b6ac47e
cmp eax, 0x219f3f3a
je 0x1803a6cc0
jmp 0x1803a6a08
mov eax, dword [0x180790528]
or eax, dword [0x18079052c]
and eax, 0x9d32d6ff
xor eax, 0x6f05b878
mov r8d, 0xf67f7b3d
xor edx, edx
div r8d
movzx edx, cl
cmp eax, 0x5b4c019d
jae 0x1803a6a08
test edx, edx
je 0x1803a6a54
jmp 0x1803a6a39
mov eax, edx
sub eax, 3
je 0x1803a6ac5
jmp 0x1803a6a46
sub edx, 4
je 0x1803a6bad
jmp 0x1803a6906
mov rcx, rsi
add rcx, 0x150
call fcn.1803a8210
add rsi, 0x178
mov rcx, rsi
call fcn.1803a8a30
mov eax, dword [0x180790530]
xor edx, edx
div dword [0x180790534]
add eax, 0x900e24cc
imul eax, eax, 0xd3b3858f
xor eax, 0x68b91d9f
cmp eax, 0x279e1653
jbe 0x1803a6ccd
jmp 0x1803a6a9d
mov eax, dword [0x180790538]
sub eax, dword [0x18079053c]
sub eax, 0x54fd31c4
imul eax, eax, 0x61a27c19
or eax, 0x7d80e2a2
cmp eax, 0x32094520
jb 0x1803a6a9d
jmp 0x1803a6906
mov eax, dword [0x180790540]
add eax, dword [0x180790544]
add eax, 0xf84332e9
or eax, 0xfe10b0d
mov ecx, 0xc1bf7a43
xor edx, edx
div ecx
cmp eax, 0x7a91d8
je 0x1803a6cda
jmp 0x1803a6af1
mov eax, dword [0x180790548]
xor eax, dword [0x18079054c]
xor eax, 0x9a7d636b
sub eax, 0xf6c31a30
mov ecx, 0x3bdc0135
xor edx, edx
div ecx
mov rdi, rsi
add rdi, 0x2a8
mov rcx, qword [rsi + 0x2a8]
cmp eax, 0x21bda8ea
ja 0x1803a6af1
jmp 0x1803a6b2a
cmp rcx, 3
sete al
test al, 1
jne 0x1803a6906
jmp 0x1803a6b3b
mov eax, dword [0x180790550]
or eax, dword [0x180790554]
add eax, 0xef9824f7
or eax, 0x5c2614d2
sub eax, 0xe474740b
cmp eax, 0x2e1794bf
je 0x1803a6ceb
mov eax, dword [str.Ee_]
xor eax, dword [0x18079055c]
xor eax, 0xde9e8b5c
mov ecx, 0x7f567f7b
xor edx, edx
div ecx
mov ebx, eax
sub ebx, 0x66189e83
mov rcx, rdi
call fcn.1803a8a30
mov rcx, rsi
add rcx, 0x3d0
cmp ebx, 0xbb06fb3c
jae 0x1803a6ceb
jmp 0x1803a6ba3
call fcn.1803a8210
jmp 0x1803a6906
add rsi, 0x2a8
cmp qword [rsi], 3
sete al
test al, 1
jne 0x1803a6906
jmp 0x1803a6bc5
mov eax, dword [0x180790560]
add eax, dword [0x180790564]
xor eax, 0xc19fa895
imul eax, eax, 0xb0663c24
imul eax, eax, 0x15d65a43
cmp eax, 0x3f184ee5
je 0x1803a6d00
jmp 0x1803a6bef
mov edi, dword [0x180790568]
or edi, dword [0x18079056c]
sub edi, 0xadd1e2be
or edi, 0x1864ca83
or edi, 0x60365e80
mov rcx, rsi
call fcn.1803a60e0
cmp edi, 0xe32d49bb
je 0x1803a6bef
jmp 0x1803a6c1f
mov eax, dword [0x180790570]
imul eax, dword [0x180790574]
xor eax, 0xd41d03e1
or eax, 0x4ad9d131
sub eax, 0xf1f64ac0
cmp eax, 0xba7c0e39
jbe 0x1803a6d19
jmp 0x1803a6c48
mov eax, dword [0x180790578]
sub eax, dword [0x18079057c]
imul eax, eax, 0x29e4ce1f
add eax, 0xeae61868
mov ecx, 0xbcd10b63
xor edx, edx
div ecx
cmp eax, 0x2ffd6dfa
jae 0x1803a6c48
jmp 0x1803a6906
xor eax, 0x248d67ea
sbb byte [rbp - 0x41f16d4], dl
invalid
push rsp
movsd dword [rdi], dword [rsi]
pop rcx
js 0x1803a6cf4
adc cl, ch
cld
invalid
scasd eax, dword [rdi]
insd dword [rdi], dx
scasd eax, dword [rdi]
wait
mov dh, 0xf8
jmp 0x1803a6c5a
rcr dword [rax], 1
mov byte [rbx + rdx*4 - 0x160e003b], al
xchg edx, eax
xchg r8d, eax
mov rcx, rsi
call fcn.1803a8a30
jmp 0x1803a6997
popfq
movabs al, byte [0x39e95375b2851f76]
std
invalid
lahf
xchg ebp, eax
fsubr qword [rdx - 0x5e32a662]
jmp 0x1803a6a9b
mov ecx, 0x928681fc
adc dh, ch
xchg edi, eax
cmp esp, dword [rsi + rbp - 0x1fb1651]
invalid
imul esp, dword [rcx + 0x16], 0x41aaa6c3
and eax, 0xe8f98948
xor eax, 0xe900001d
invalid
mov ecx, edi
call fcn.1803a8a30
jmp 0x1803a6b61
or eax, 0x6067802b
loopne 0x1803a6d20
movabs al, byte [0xe8f18948dfe956ef]
int3
fisttp word [rax - 0x77]
int1
call fcn.1803a60e0
jmp 0x1803a6bed
jmp qword [rcx + 0x6b9b1b23]
jnp 0x1803a6d0b
and bh, bh
invalid