Function at 0x18034db60
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x20
mov rsi, rcx
mov rax, rsi
add rax, 0x18
mov cl, byte [rax]
movzx eax, cl
test cl, cl
je 0x18034dbf6
jmp 0x18034db7f
mov ecx, eax
sub ecx, 3
je 0x18034dcd0
add dword [rax], eax
invalid
jmp 0x18034db8c
sub eax, 4
je 0x18034de0a
jmp 0x18034db97
mov eax, dword [0x1807879d0]
xor edx, edx
div dword [0x1807879d4]
imul eax, eax, 0x1d2d7f31
mov ecx, 0x3629486c
xor edx, edx
div ecx
sub eax, 0x5ce68f07
cmp eax, 0x90bb285b
jbe 0x18034e361
mov eax, dword [0x1807879d8]
or eax, dword [0x1807879dc]
or eax, 0x478f74ab
imul eax, eax, 0xc343f947
xor eax, 0x812a2c6b
cmp eax, 0xf9bc438b
jae 0x18034e361
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
mov rdi, qword [rsi]
cmp rdi, 0
sete al
test al, 1
jne 0x18034db97
jmp 0x18034dc06
mov eax, dword [0x1807879e0]
or eax, dword [0x1807879e4]
xor eax, 0xf06d3d39
add eax, 0x70273ee9
mov ecx, 0xe243c4fd
xor edx, edx
div ecx
cmp eax, 0x7463d006
jae 0x18034e372
mov eax, dword [0x1807879e8]
sub eax, dword [0x1807879ec]
imul eax, eax, 0x7b0d24a0
or eax, 0x41c65f06
or eax, 0xaa905ef4
mov rbx, qword [rsi + 8]
cmp eax, 0x12aace5a
je 0x18034e372
jmp 0x18034dc5d
mov eax, dword [0x1807879f0]
and eax, dword [0x1807879f4]
mov ecx, 0x3c66670
xor edx, edx
div ecx
sub eax, 0x271d7ed1
mov ecx, 0x5b1e4845
xor edx, edx
div ecx
cmp eax, 0x3ef658c4
jae 0x18034e37f
mov eax, dword [0x1807879f8]
and eax, dword [0x1807879fc]
xor eax, 0xf9fe05bb
or eax, 0xcb8cdbaa
mov ecx, 0xfb4b7bab
xor edx, edx
div ecx
mov esi, eax
mov rcx, rbx
mov rdx, rdi
mov r8d, 1
call fcn.1804cafa0
cmp esi, 0x51076b4d
ja 0x18034e37f
jmp 0x18034dccb
jmp 0x18034db97
mov rax, rsi
add rax, 0x20
cmp word [rax], 3
sete al
test al, 1
jne 0x18034dce7
jmp 0x18034db97
add rsi, 0x28
mov eax, dword [0x180787a00]
xor edx, edx
div dword [0x180787a04]
mov ecx, 0xfeb27298
xor edx, edx
div ecx
or eax, 0x7552a634
and eax, 0x796118af
cmp eax, 0x2186c264
je 0x18034e3a1
mov eax, dword [0x180787a08]
xor eax, dword [0x180787a0c]
xor eax, 0x80d218f7
xor eax, 0xdae8a604
xor eax, 0x18b2b5ae
mov rdi, qword [rsi]
cmp eax, 0x2323ae68
je 0x18034e3a1
jmp 0x18034dd42
mov eax, dword [0x180787a10]
sub eax, dword [0x180787a14]
sub eax, 0xbee716ac
or eax, 0xfd5849bc
add eax, 0x29c09cd8
cmp eax, 0xa96ddbcb
jae 0x18034e3b2
jmp 0x18034dd6a
mov eax, dword [0x180787a18]
xor edx, edx
div dword [0x180787a1c]
mov ecx, 0x31707dc7
xor edx, edx
div ecx
sub eax, 0x491e7a
imul esi, eax, 0x6493a90f
mov rcx, rdi
call fcn.18063b340
cmp esi, 0x45bd7c11
jbe 0x18034dd6a
test al, 1
jne 0x18034dda5
jmp 0x18034db97
mov eax, dword [0x180787a20]
xor edx, edx
div dword [0x180787a24]
add eax, 0xae2b772c
mov ecx, 0xc34fc3d4
xor edx, edx
div ecx
xor eax, 0x83bc9883
cmp eax, 0xfa996fb0
jae 0x18034e3c7
mov eax, dword [0x180787a28]
xor edx, edx
div dword [0x180787a2c]
add eax, 0xab01d445
sub eax, 0x62fb3a86
imul esi, eax, 0x241c2439
mov rcx, rdi
call fcn.18063bbe0
cmp esi, 0xb7371252
jae 0x18034e3c7
jmp 0x18034de05
jmp 0x18034db97
mov rax, rsi
add rax, 0xb8
mov al, byte [rax]
cmp al, 3
jne 0x18034de85
mov rdi, rsi
add rdi, 0x70
mov eax, dword [0x180787a30]
add eax, dword [0x180787a34]
and eax, 0x3a96c827
xor eax, 0x465ba68a
mov ecx, 0x538d1e2d
xor edx, edx
div ecx
cmp eax, 0x87345444
jae 0x18034e3e0
mov eax, dword [0x180787a38]
xor eax, dword [0x180787a3c]
imul eax, eax, 0xc5c145c2
mov ecx, 0x532a9620
xor edx, edx
div ecx
mov ebx, eax
add ebx, 0x16cdb728
mov rcx, rdi
call fcn.1803557a0
cmp ebx, 0x54967766
je 0x18034e3e0
jmp 0x18034de83
jmp 0x18034de85
mov ecx, dword [rsi + 0x28]
mov eax, dword [0x180787a40]
imul eax, dword [0x180787a44]
mov r8d, 0x27d2cde9
xor edx, edx
div r8d
sub eax, 0xac4a61af
mov r8d, 0x2d8e0c2a
xor edx, edx
div r8d
cmp eax, 0x6f137b7
jae 0x18034e3f5
mov eax, dword [0x180787a48]
xor eax, dword [0x180787a4c]
or eax, 0xcb5ba9c1
sub eax, 0x624ee1d0
imul edx, eax, 0x89a45a42
cmp ecx, 0
sete al
cmp edx, 0x5739d601
jb 0x18034e3f5
jmp 0x18034deeb
test al, 1
jne 0x18034df73
jmp 0x18034def5
mov eax, dword [0x180787a50]
imul eax, dword [0x180787a54]
or eax, 0x542db4c1
and eax, 0x4e6eff18
imul eax, eax, 0xd8c35925
cmp eax, 0x5dd5c318
jb 0x18034e406
mov eax, dword [0x180787a58]
add eax, dword [0x180787a5c]
mov ecx, 0xa4b6a1ca
xor edx, edx
div ecx
sub eax, 0x16883de5
sub eax, 0xf8ef17ce
mov rdx, qword [rsi + 0x40]
cmp eax, 0x1eace973
jb 0x18034e406
jmp 0x18034df4d
cmp rdx, 0
sete al
test al, 1
jne 0x18034df73
jmp 0x18034df5a
mov rax, rsi
add rax, 0x30
mov rcx, qword [rax]
shl rdx, 5
mov r8d, 4
call fcn.1804cafa0
mov rcx, qword [rsi + 0x20]
mov eax, dword [0x180787a60]
sub eax, dword [0x180787a64]
sub eax, 0x3d655c87
imul eax, eax, 0x87f85602
add eax, 0xd9928e29
cmp eax, 0xe2b97325
jbe 0x18034e417
jmp 0x18034dfa0
mov eax, dword [0x180787a68]
sub eax, dword [0x180787a6c]
xor eax, 0x28a7f247
imul eax, eax, 0x2346fd7
imul edx, eax, 0xa279a4e9
cmp rcx, 0
sete al
cmp edx, 0x49ee0de4
jb 0x18034dfa0
jmp 0x18034dfce
mov edx, dword [0x180787a70]
imul edx, dword [0x180787a74]
imul edx, edx, 0x43bad918
xor edx, 0x10dc6fe9
xor edx, 0x3c73d44c
cmp edx, 0xb3d32689
jae 0x18034e424
mov edx, dword [0x180787a78]
sub edx, dword [0x180787a7c]
or edx, 0x4b4f9dc
add edx, 0xd18e4e0f
sub edx, 0x50c9499
cmp edx, 0x17264935
jbe 0x18034e424
test al, 1
jne 0x18034db97
jmp 0x18034e02d
mov eax, dword [str.W_L]
add eax, dword [0x180787a84]
add eax, 0x14e1eb8f
add eax, 0x4fa63dbe
add eax, 0xfee585a5
cmp eax, 0xd27a4fe2
jae 0x18034e435
mov eax, dword [0x180787a88]
and eax, dword [0x180787a8c]
mov r8d, 0x7cbdf060
xor edx, edx
div r8d
mov r8d, 0x6715ed72
xor edx, edx
div r8d
add eax, 0x7df4d08c
cmp eax, 0xd236caea
jae 0x18034e435
jmp 0x18034e087
mov rax, rcx
and rax, 3
mov rdx, rax
sub rdx, 3
ja 0x18034e0a7
lea rdx, [0x1806c4774]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
mov eax, dword [0x180787a90]
xor edx, edx
div dword [0x180787a94]
sub eax, 0x39132f9e
and eax, 0x753ccc2d
mov ecx, 0xaff5bdb7
xor edx, edx
div ecx
cmp eax, 0xedf990a
jae 0x18034e442
jmp 0x18034e0d5
mov eax, dword [0x180787a98]
add eax, dword [0x180787a9c]
add eax, 0xb45dc8c4
add eax, 0x33da827d
fidiv dword [rbx]
or eax, 0x5a19582
cmp eax, 0x6cef33db
je 0x18034e0d5
ud2
add eax, 0x455c47e7
or esi, dword [rcx - 0x16b687fc]
push rdx
clc
invalid
std
fcmovu st(0), st(4)
push rcx
or dword [rcx], ebp
js 0x18034e386
jmp 0x18034dc30
jge 0x18034e384
sar dword [rbp + rbx + 0x20], 1
out dx, eax
and bh, ch
cmpsb byte [rsi], byte [rdi]
mov ds, ebx
mov cs, word [rax - 0x77]
invalid
lodsb al, byte [rsi]
rcr byte [rdx], 0x9e
insb byte [rdi], dx
push rsp
mov cl, cl
leave
xor esp, dword [rbx]
jmp 0x18034dd17
sbb dword [rdx + 0x4e], edi
cmpsb byte [rsi], byte [rdi]
add byte [rsi], bh
mov rcx, rdi
call fcn.18063b340
jmp 0x18034dd68
out 0xf7, al
scasd eax, dword [rdi]
invalid
push rsi
mov bh, 0x2f
xor dword [rdx + 0x48dad026], 0xffffff89
stc
call fcn.1803557a0
jmp 0x18034de4a
invalid
or dword [rcx + rax*2 - 0x1f], 0xc76a70ac
retf
insb byte [rdi], dx
invalid
and dl, ah
invalid
jne 0x18034e3f3
push rdx
outsb dx, byte [rsi]
sbb dword [rbp + 0xe4e0843], ecx
and ecx, dword [rax]
jmp 0x18034dff9
mov ebx, 0xdc27740d
pop rsi
push rbx
adc eax, 0xfffc11e9
dec dword [rdi + 0x50468c69]
jb 0x18034e4b1
invalid
shr cl, cl
test ah, bh
invalid
add byte [rax], al
add al, ch
out 0xca, eax
invalid