Function at 0x180357ca0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov r14, rdx
mov rsi, rcx
mov rcx, qword [r14]
mov eax, dword [0x180788d80]
add eax, dword [0x180788d84]
xor eax, 0x6c6aea72
sub eax, 0x479d7765
xor eax, 0x992615db
cmp eax, 0x5b3e923f
jb 0x18035818a
mov eax, dword [0x180788d88]
add eax, dword [0x180788d8c]
xor eax, 0x3844672
sub eax, 0x4b0ed9f4
add eax, 0x4fda42cc
mov r9, qword [r14 + 8]
mov r10, r14
add r10, 0x18
cmp eax, 0xe10aa7e2
je 0x18035818a
jmp 0x180357d0e
mov eax, dword [0x180788d90]
and eax, dword [0x180788d94]
xor eax, 0xb1029503
mov r8d, 0xebb2b738
xor edx, edx
div r8d
imul eax, eax, 0x79d7bd80
cmp eax, 0xb025fcb3
je 0x180358197
mov eax, dword [0x180788d98]
xor eax, dword [0x180788d9c]
and eax, 0x24735760
sub eax, 0x520e267b
and eax, 0xe82312cc
mov r8, qword [r10]
cmp eax, 0xe552030f
ja 0x180358197
test r9, r9
je 0x180357d77
jmp 0x180357d6b
sub r9, 1
je 0x1803580cb
jmp 0x180357dec
mov eax, dword [0x180788da0]
imul eax, dword [0x180788da4]
imul eax, eax, 0xfe8304eb
or eax, 0x95826018
mov ecx, 0x5da9fed1
xor edx, edx
div ecx
cmp eax, 0x184af14c
jae 0x1803581a4
mov eax, dword [0x180788da8]
and eax, dword [0x180788dac]
and eax, 0xd881a095
imul eax, eax, 0xadd7a9ed
imul ecx, eax, 0xa0cd23d8
cmp r8, 0
sete al
cmp ecx, 0xea3a304b
ja 0x1803581a4
jmp 0x180357dd5
xor edi, edi
mov ebx, 1
test al, 1
mov r15d, 1
jne 0x1803580ad
jmp 0x180357dec
mov eax, dword [0x180788db0]
imul eax, dword [0x180788db4]
sub eax, 0x5cadc2c7
sub eax, 0xf97ce41a
add eax, 0xa0df79fe
cmp eax, 0xe07f584c
ja 0x1803581b5
mov edi, dword [str.dCl_pB]
add edi, dword [0x180788dbc]
sub edi, 0x1ce877be
or edi, 0x21c6ce0b
add edi, 0xd7abba98
mov rcx, rsi
mov rdx, r14
call fcn.180686890
cmp edi, 0xcfb850fc
jbe 0x1803581b5
jmp 0x180357e4a
jmp 0x18035817d
mov eax, dword [0x180788dc0]
xor edx, edx
div dword [0x180788dc4]
and eax, 0x20188764
imul eax, eax, 0xb4dda093
imul eax, eax, 0xa6298b91
cmp eax, 0xfcfb60b5
je 0x1803581d1
jmp 0x180357e7b
mov eax, dword [0x180788dc8]
add eax, dword [0x180788dcc]
mov r8d, 0x9b60f740
xor edx, edx
div r8d
add eax, 0x821973cc
or eax, 0xb3d7f123
mov rbx, qword [rcx]
cmp eax, 0xf695acc7
jae 0x180357e7b
jmp 0x180357ea8
mov rdi, qword [rcx + 8]
xor ecx, ecx
cmp rdi, 0
jl 0x1803580a5
cmp rdi, 0
sete al
mov ecx, dword [0x180788dd0]
add ecx, dword [0x180788dd4]
and ecx, 0xf0921f90
imul ecx, ecx, 0x7395bc21
add ecx, 0xec18d479
cmp ecx, 0x6890ecb6
jbe 0x1803581e2
jmp 0x180357eeb
mov ecx, dword [0x180788dd8]
sub ecx, dword [0x180788ddc]
imul ecx, ecx, 0xe47492b7
sub ecx, 0xec934f43
imul ecx, ecx, 0xa1165b50
cmp ecx, 0xa210bf61
ja 0x180357eeb
mov r15d, 1
test al, 1
je 0x180357f22
xor edi, edi
jmp 0x1803580ad
mov eax, dword [0x180788de0]
imul eax, dword [0x180788de4]
sub eax, 0x3bd07582
and eax, 0x57a986b
imul eax, eax, 0xc4c78956
cmp eax, 0xb0b44cf9
jae 0x1803581f3
mov eax, dword [0x180788de8]
sub eax, dword [0x180788dec]
add eax, 0xe4c22c4b
and eax, 0x1263b325
imul ebp, eax, 0x2c497c62
mov al, byte [0x1807afe04]
mov rcx, rdi
mov edx, 1
call fcn.1804caf90
mov r15, rax
cmp ebp, 0x51a41a34
je 0x1803581f3
jmp 0x180357f8a
mov eax, dword [0x180788df0]
xor edx, edx
div dword [0x180788df4]
and eax, 0xaf95720c
mov ecx, 0xe6c419e8
xor edx, edx
div ecx
imul eax, eax, 0x3516265e
cmp eax, 0x3bfaed49
je 0x180358217
jmp 0x180357fb9
mov eax, dword [0x180788df8]
add eax, dword [0x180788dfc]
mov ecx, 0xe6ed1666
xor edx, edx
div ecx
mov ecx, 0xcd52813d
xor edx, edx
div ecx
imul ecx, eax, 0x621731cd
cmp r15, 0
sete al
cmp ecx, 0xeab8dbc0
je 0x180357fb9
jmp 0x180357fee
mov ecx, dword [0x180788e00]
or ecx, dword [0x180788e04]
add ecx, 0xff20fe4b
or ecx, 0xb6c017e7
and ecx, 0xb1c97943
cmp ecx, 0x5087750b
jb 0x180358228
jmp 0x18035801a
mov ecx, dword [0x180788e08]
and ecx, dword [0x180788e0c]
add ecx, 0xeea366bb
sub ecx, 0x3a2dfba1
add ecx, 0xef0879f4
cmp ecx, 0x6a606df7
jb 0x18035801a
mov ecx, 1
test al, 1
jne 0x1803580a5
jmp 0x18035804b
mov eax, dword [0x180788e10]
and eax, dword [0x180788e14]
mov ecx, 0x3724f215
xor edx, edx
div ecx
mov ecx, 0x68f12c2d
xor edx, edx
div ecx
or eax, 0xba427d9e
cmp eax, 0xa26dbdbe
jbe 0x180358239
mov eax, dword [0x180788e18]
xor eax, dword [0x180788e1c]
xor eax, 0x19c93155
and eax, 0x15fcf182
mov ecx, 0x40e760ae
xor edx, edx
div ecx
cmp eax, 0xa33b90bf
jae 0x180358239
jmp 0x1803580ad
mov rdx, rdi
call fcn.18063bc30
mov rcx, r15
mov rdx, rbx
mov r8, rdi
call fcn.1806a7400
mov qword [rsi], rdi
mov qword [rsi + 8], r15
mov qword [rsi + 0x10], rdi
jmp 0x18035817d
mov eax, dword [0x180788e20]
sub eax, dword [0x180788e24]
imul eax, eax, 0xbfbee7c6
xor eax, 0x1edee22c
or eax, 0x578c1d65
cmp eax, 0x9c8a8045
je 0x18035824a
mov eax, dword [0x180788e28]
xor edx, edx
div dword [0x180788e2c]
sub eax, 0x52a33fd6
add eax, 0xa5d5ae2d
add eax, 0x65d4f6fc
cmp r8, 0
sete dl
cmp eax, 0xc0e4c204
ja 0x18035824a
jmp 0x180358123
mov eax, dword [0x180788e30]
add eax, dword [0x180788e34]
imul eax, eax, 0x1ca8a421
imul eax, eax, 0x51fbba00
sub eax, 0xbfb1354c
cmp eax, 0xba840aec
jae 0x180358257
invalid
jmp 0x18035814d
mov eax, dword [0x180788e38]
xor eax, dword [0x180788e3c]
add eax, 0xfc0ab94a
sub eax, 0xbd1c00fe
sub eax, 0xc2a0d8e8
cmp eax, 0x8d928cf3
jbe 0x18035814d
test dl, 1
jne 0x180357e4f
jmp 0x180357dec
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
jp 0x180358125
invalid
push rdx
push rdi
wait
std
imul dword [rsi - 0x6816aea8]
sti
invalid
push rdi
in al, 0x2c
xor eax, 0x4fb7a195
insb byte [rdi], dx
and eax, 0xeee9683b
sti
invalid
push rdi
invalid
invalid
and al, 0xcb
xor ecx, dword [rdi + 2]
mov ebx, edi
popfq
ja 0x180358208
invalid
outsb dx, byte [rsi]
mov ch, 0x83
invalid
mov edx, 1
call fcn.1804caf90
jmp 0x180357f4a
add dword [rsi], ebp
xor ch, 0x18
fist word [rsp + rsi]
insd dword [rdi], dx
jp 0x180358252
jmp 0x180357fb7
or al, 0x97
push rsp
pop rsi
cmp al, 0x6d
wait
adc dword [rcx - 0x2201622], ebx
invalid
mov edi, 0xb47e990f
test eax, 0x9cd24220
invalid
jmp qword [rdi + 0x572428ea]
jmp 0x1803580f2
or al, 0x9e
and dword [rax + 0x71], esi
and dword [rax], ebx
pop rcx
xchg edi, eax
invalid