Function at 0x180346600
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x20
mov rsi, rcx
mov eax, dword [0x180786b20]
imul eax, dword [0x180786b24]
or eax, 0x37ccb971
sub eax, 0x9b3ce5cf
mov ecx, 0xa6ed4115
xor edx, edx
div ecx
cmp eax, 0xaea9fd77
jae 0x180346c47
mov eax, dword [0x180786b28]
imul eax, dword [0x180786b2c]
add eax, 0xa4ff3e78
sub eax, 0xb8d21aa5
add eax, 0x91d5f4f8
mov rcx, rsi
add rcx, 0xb8
cmp eax, 0x5437f5ef
jbe 0x180346c47
jmp 0x18034666b
mov eax, dword [0x180786b30]
xor edx, edx
div dword [0x180786b34]
mov r8d, 0x39741c77
xor edx, edx
div r8d
sub eax, 0xe9855d7d
xor eax, 0xa0ea02a
cmp eax, 0x16589c88
jbe 0x180346c54
mov edx, dword [0x180786b38]
or edx, dword [0x180786b3c]
add edx, 0x68131637
xor edx, 0x307e1dfe
add edx, 0x9d68e422
mov al, byte [rcx]
cmp edx, 0x9a1e49b1
jae 0x180346c54
jmp 0x1803466c7
movzx ecx, al
test al, al
je 0x1803466e6
jmp 0x1803466d0
sub ecx, 3
je 0x1803467e0
jmp 0x1803466db
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
mov eax, dword [0x180786b40]
sub eax, dword [0x180786b44]
sub eax, 0x257966bc
sub eax, 0xe2c904a
mov ecx, 0xc591e664
xor edx, edx
div ecx
cmp eax, 0xf1e67730
je 0x180346c61
mov eax, dword [0x180786b48]
add eax, dword [0x180786b4c]
xor eax, 0xe29b6133
and eax, 0x93db2678
sub eax, 0x610309ff
cmp eax, 0x438b1162
jb 0x180346c61
jmp 0x180346738
mov rdi, qword [rsi]
cmp rdi, 0
je 0x1803467ae
mov rbx, qword [rsi + 8]
mov eax, dword [0x180786b50]
xor eax, dword [0x180786b54]
sub eax, 0x541f146c
mov ecx, 0xac6335f1
xor edx, edx
div ecx
xor eax, 0x889110fb
cmp eax, 0xb24ad041
ja 0x180346c72
jmp 0x180346771
mov eax, dword [0x180786b58]
add eax, dword [0x180786b5c]
add eax, 0xddc9f5da
mov ecx, 0x3eb2b738
xor edx, edx
div ecx
imul ebp, eax, 0x254f814a
mov rcx, rbx
mov rdx, rdi
mov r8d, 1
call fcn.1804cafa0
cmp ebp, 0xebdf105
jb 0x180346771
jmp 0x1803467ac
jmp 0x1803467ae
mov rax, rsi
add rax, 0x18
mov rdx, qword [rax]
cmp rdx, 0
sete al
test al, 1
jne 0x1803466db
jmp 0x1803467c9
add rsi, 0x20
mov rcx, qword [rsi]
mov r8d, 1
call fcn.1804cafa0
jmp 0x1803466db
mov al, byte [rsi + 0xb0]
cmp al, 0
sete al
test al, 1
jne 0x1803467f4
jmp 0x18034691a
mov eax, dword [0x180786b60]
add eax, dword [0x180786b64]
imul eax, eax, 0x755c2b3d
xor eax, 0x20cce1c
mov ecx, 0xfc0de8dd
xor edx, edx
div ecx
cmp eax, 0xeebbc63b
je 0x180346c94
mov eax, dword [0x180786b68]
xor eax, dword [0x180786b6c]
add eax, 0xad2e921e
add eax, 0xfaee799c
mov ecx, 0x1834a3f2
xor edx, edx
div ecx
mov rcx, rsi
add rcx, 0x90
cmp eax, 0x4d8c02bc
jae 0x180346c94
jmp 0x180346855
mov eax, dword [0x180786b70]
sub eax, dword [0x180786b74]
add eax, 0xaf5e4c1c
add eax, 0x74e14e16
xor eax, 0x5442a711
cmp eax, 0x88ae5c63
jb 0x180346ca5
mov eax, dword [0x180786b78]
imul eax, dword [0x180786b7c]
add eax, 0x576076ec
add eax, 0xbf22b116
or eax, 0x965f0d80
mov rdx, qword [rcx]
cmp eax, 0x80f71e6b
jb 0x180346ca5
jmp 0x1803468a7
mov eax, dword [0x180786b80]
imul eax, dword [0x180786b84]
sub eax, 0xbcf9cb8a
and eax, 0xf13e5d97
sub eax, 0xccf1a0aa
cmp eax, 0x601ed16
jbe 0x180346cb2
jmp 0x1803468d0
mov ecx, dword [0x180786b88]
sub ecx, dword [0x180786b8c]
and ecx, 0x50e5c7a6
add ecx, 0xc082394b
add ecx, 0xcb38659a
cmp rdx, 0
sete al
cmp ecx, 0x648e792d
je 0x1803468d0
test al, 1
jne 0x18034691a
jmp 0x180346903
mov rax, rsi
add rax, 0x98
mov rcx, qword [rax]
mov r8d, 1
call fcn.1804cafa0
mov eax, dword [0x180786b90]
and eax, dword [0x180786b94]
imul eax, eax, 0x6a11227f
mov ecx, 0x619734bb
xor edx, edx
div ecx
imul eax, eax, 0x27fa8905
cmp eax, 0x804b4b58
je 0x180346cbf
mov eax, dword [0x180786b98]
xor eax, dword [0x180786b9c]
imul eax, eax, 0x4e8b3cb5
imul eax, eax, 0xcdab0326
add eax, 0xa8520a0d
mov rbx, rsi
add rbx, 0xbb
cmp eax, 0xcdcc5913
je 0x180346cbf
jmp 0x18034697a
cmp byte [rbx], 0
sete cl
mov eax, dword [0x180786ba0]
and eax, dword [0x180786ba4]
and eax, 0xa4f61c2d
mov r8d, 0xf25fce37
xor edx, edx
div r8d
imul eax, eax, 0x47d2854
cmp eax, 0xff767e3d
je 0x180346ccc
jmp 0x1803469af
mov eax, dword [0x180786ba8]
xor eax, dword [0x180786bac]
xor eax, 0x50315e2d
add eax, 0x534a7bff
mov r8d, 0xea80ad50
xor edx, edx
div r8d
cmp eax, 0x411c6cef
jae 0x1803469af
test cl, 1
jne 0x1803469de
jmp 0x1803469f8
mov r14, rsi
add r14, 0xba
cmp byte [r14], 0
sete al
test al, 1
jne 0x180346a6a
jmp 0x180346b1c
mov rax, rsi
add rax, 0x40
mov rdx, qword [rax]
cmp rdx, 0
je 0x1803469de
mov rcx, qword [rsi + 0x48]
mov r8d, 1
call fcn.1804cafa0
mov eax, dword [0x180786bb0]
imul eax, dword [0x180786bb4]
add eax, 0xac5c6bcf
xor eax, 0x9fd760de
and eax, 0xd0b0093d
cmp eax, 0xf752febe
ja 0x180346cdd
mov eax, dword [0x180786bb8]
xor eax, dword [0x180786bbc]
xor eax, 0x82ef921a
imul eax, eax, 0x783bc6e
or eax, 0x3f8d25a6
cmp eax, 0x675b17d0
je 0x180346cdd
jmp 0x1803469de
mov eax, dword [0x180786bc0]
xor eax, dword [0x180786bc4]
or eax, 0x7607b749
xor eax, 0xde34a2bb
add eax, 0x7e380615
cmp eax, 0x8f38dd4d
jb 0x180346cee
mov eax, dword [0x180786bc8]
xor edx, edx
div dword [0x180786bcc]
imul eax, eax, 0xede83280
and eax, 0x64590ba0
add eax, 0xc06aea44
mov byte [r14], 0
cmp eax, 0x4cef93cf
je 0x180346cee
jmp 0x180346abf
mov eax, dword [0x180786bd0]
add eax, dword [0x180786bd4]
mov ecx, 0xc719b1e2
xor edx, edx
div ecx
imul eax, eax, 0xb962d565
add eax, 0x7cf701fc
cmp eax, 0x8b41c904
jae 0x180346cff
jmp 0x180346aec
mov eax, dword [0x180786bd8]
sub eax, dword [0x180786bdc]
and eax, 0xfd3007c6
sub eax, 0xef241331
mov ecx, 0x4d633904
xor edx, edx
div ecx
mov byte [rbx], 0
cmp eax, 0x14a9ddcc
je 0x180346aec
jmp 0x180346b17
jmp 0x1803466db
mov eax, dword [0x180786be0]
or eax, dword [0x180786be4]
add eax, 0x456199a8
or eax, 0xc0bb7b07
add eax, 0x35d51bb6
cmp eax, 0x9b357e19
jbe 0x180346d13
jmp 0x180346b44
mov ecx, dword [0x180786be8]
sub ecx, dword [0x180786bec]
sub ecx, 0x6fbd3486
or ecx, 0x7be70375
add ecx, 0xa15d055b
mov rax, rsi
add rax, 0x58
cmp ecx, 0x611ca767
jae 0x180346b44
jmp 0x180346b73
mov rdi, qword [rax]
cmp rdi, 0
sete al
mov ecx, dword [0x180786bf0]
or ecx, dword [0x180786bf4]
xor ecx, 0xa6484511
or ecx, 0x525f4626
add ecx, 0x62b3f963
cmp ecx, 0x867b0
jbe 0x180346d24
mov ecx, dword [str.k01P6]
add ecx, dword [0x180786bfc]
add ecx, 0x172fd966
sub ecx, 0xa04ae378
add ecx, 0xc9e9d4d1
cmp ecx, 0x83537fea
jb 0x180346d24
test al, 1
jne 0x180346a6a
jmp 0x180346bdb
mov rsi, qword [rsi + 0x60]
mov eax, dword [0x180786c00]
or eax, dword [0x180786c04]
add eax, 0x178d7136
xor eax, 0xdf987e61
add eax, 0x3809fa93
cmp eax, 0x2ccf9564
je 0x180346d31
mov ebp, dword [0x180786c08]
or ebp, dword [0x180786c0c]
add ebp, 0x92f95e55
xor ebp, 0x2973ca68
sub ebp, 0xe4cc2622
mov rcx, rsi
mov rdx, rdi
mov r8d, 1
call fcn.1804cafa0
cmp ebp, 0x492a9443
jb 0x180346d31
jmp 0x180346c42
jmp 0x180346a6a
movabs byte [0xe96c6f3091b95185], al
in al, 0xf9
invalid
pop rbp
sti
add ebp, esp
nop dword [rbx]
invalid
pop rbx
lodsd eax, dword [rsi]
stosd dword [rdi], eax
iretd
invalid
mov ah, 0xf0
js 0x180346ca4
popfq
invalid
push qword [rcx]
invalid
xor ebp, eax
xchg edi, eax
invalid
ror byte [rdx - 0x58990529], cl
push qword [rcx - 0x3f017]
jmp qword [rdi - 0x7f]
sub dword [ecx - 0xd], 0x666424db
jmp 0x180346946
hlt
insd dword [rdi], dx
cmp esi, dword [rbx]
nop
or ah, al
invalid
mov eax, 0xae87f77a
test dword [rsp + rdx*8 + 0x41], esi
mov byte [rsi], 0
jmp 0x180346a90
invalid
jb 0x180346cf5
mov word [rcx + rdi*2], ds
add eax, 0x505adfc9
cmc
push rdi
mov byte [rbx], 0
jmp 0x180346aea
jmp 0x1d2875736
int1
push rdx
mov dh, 0xb1
movabs byte [0xe8fffffe76e976d3], al
pop rcx
pop rcx
out 0xe1, eax
call 0x1621bc68f
sbb dword [rcx], ebx
mov rcx, rsi
mov rdx, rdi
mov r8d, 1
call fcn.1804cafa0
jmp 0x180346c05