Function at 0x1804af8a0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov rdi, r9
mov r13, r8
mov r15, rdx
mov rsi, rcx
mov r8, qword [rsp + 0xd0]
mov eax, dword [0x1807ab760]
and eax, dword [str._fkEXy]
mov ecx, 0x37fdb42d
xor edx, edx
div ecx
mov ecx, 0x57c25ec1
xor edx, edx
div ecx
sub eax, 0x694b0d3d
cmp eax, 0x527faeee
jb 0x1804b07b0
mov eax, dword [0x1807ab768]
and eax, dword [0x1807ab76c]
and eax, 0xb1e8c442
sub eax, 0xdeabb1ca
or eax, 0xda6bc985
imul rcx, r13, 0x18
mov r12, r15
add r12, rcx
cmp r13, 0
sete cl
cmp eax, 0x9e09e504
jb 0x1804b07b0
xor eax, eax
mov r9d, 1
test cl, 1
mov ecx, 0
jne 0x1804b0791
jmp 0x1804af941
mov rbx, r15
add rbx, 0x18
imul rax, r13, 0x18
add rax, 0xffffffffffffffe8
mov ecx, 0x18
xor edx, edx
div rcx
mov rcx, rax
mov rax, r8
mul rcx
mov r11, rax
seto al
jo 0x1804afab4
mov rax, r15
jmp 0x1804af974
mov ecx, dword [0x1807ab770]
imul ecx, dword [0x1807ab774]
sub ecx, 0x613ca017
xor ecx, 0xb2469480
sub ecx, 0x4c7c56f1
cmp ecx, 0x560a2061
jae 0x1804b07bd
jmp 0x1804af9a1
mov edx, dword [0x1807ab778]
and edx, dword [0x1807ab77c]
add edx, 0x797c401c
add edx, 0x5e0b1981
xor edx, 0x8ee0726c
cmp rax, r12
sete cl
cmp edx, 0x32091ac4
je 0x1804af9a1
test cl, 1
jne 0x1804afb63
jmp 0x1804af9d8
mov rcx, rax
add rcx, 0x18
mov r10, qword [rax + 0x10]
mov eax, dword [0x1807ab780]
or eax, dword [0x1807ab784]
sub eax, 0xe1c8241b
mov r8d, 0x1041d67
xor edx, edx
div r8d
imul eax, eax, 0x7d6dced0
cmp eax, 0xb85e9163
ja 0x1804b07ca
mov eax, dword [0x1807ab788]
add eax, dword [0x1807ab78c]
and eax, 0xe5b539e6
xor eax, 0xe4fd71f3
imul eax, eax, 0x703e5b13
mov rdx, r11
add rdx, r10
setb r9b
mov r8, r10
add r8, r11
cmp eax, 0xcaaea9bf
jae 0x1804b07ca
jmp 0x1804afa49
mov eax, dword [0x1807ab790]
xor eax, dword [0x1807ab794]
mov r10d, 0x2db5a4e3
xor edx, edx
div r10d
add eax, 0xe9b90f00
sub eax, 0xce3d70b7
cmp eax, 0x8f2788cb
ja 0x1804b07db
jmp 0x1804afa77
mov eax, dword [0x1807ab798]
xor edx, edx
div dword [0x1807ab79c]
or eax, 0xcfd8dc80
sub eax, 0x83b29ac
mov r10d, 0x35dd9bd1
xor edx, edx
div r10d
cmp eax, 0x3815055c
jae 0x1804afa77
test r9b, 1
mov rax, rcx
mov r11, r8
jne 0x1804afab2
jmp 0x1804af974
jmp 0x1804afab4
mov eax, dword [0x1807ab7a0]
xor edx, edx
div dword [0x1807ab7a4]
imul eax, eax, 0x512f4463
add eax, 0xeabc3b49
add eax, 0x67762ece
cmp eax, 0x22576902
jb 0x1804b07ec
mov eax, dword [0x1807ab7a8]
or eax, dword [0x1807ab7ac]
or eax, 0xa5e0d93f
sub eax, 0x81c87762
add eax, 0x88e1559b
ud2
mov eax, dword [0x1807ab7c0]
imul eax, dword [0x1807ab7c4]
or eax, 0xf27af83
add eax, 0x1e1fba93
mov ecx, 0x52adfc70
xor edx, edx
div ecx
cmp eax, 0x9b98c3d0
je 0x1804b0810
mov eax, dword [0x1807ab7c8]
and eax, dword [0x1807ab7cc]
and eax, 0x9259125b
add eax, 0x283fb81e
sub eax, 0xb682b599
cmp eax, 0xc085b6ad
ja 0x1804b0810
jmp 0x1804afbb6
cmp r11, 0
setl al
xor ecx, ecx
test al, 1
jne 0x1804afc62
jmp 0x1804afbc9
cmp r11, 0
sete al
mov ecx, dword [0x1807ab7d0]
sub ecx, dword [0x1807ab7d4]
imul ecx, ecx, 0x247b0f97
or ecx, 0xee0f6e
imul ecx, ecx, 0x531799e4
cmp ecx, 0x9fb9f211
jb 0x1804b0821
jmp 0x1804afbfc
mov ecx, dword [0x1807ab7d8]
and ecx, dword [0x1807ab7dc]
sub ecx, 0xc1213e7a
add ecx, 0x3d8e464c
and ecx, 0x23c88d46
cmp ecx, 0xae337bf6
jae 0x1804afbfc
mov r9d, 1
test al, 1
mov qword [rsp + 0x28], r11
jne 0x1804afc6a
jmp 0x1804afc33
mov al, byte [0x1807afe04]
mov rcx, r11
mov edx, 1
call fcn.1804caf90
mov r9, rax
cmp r9, 0
sete al
mov ecx, 1
test al, 1
mov r11, qword [rsp + 0x28]
jne 0x1804afc62
jmp 0x1804afc60
jmp 0x1804afc6a
mov rdx, r11
call fcn.18063bc30
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rdi
mov eax, dword [0x1807ab7e0]
xor edx, edx
div dword [0x1807ab7e4]
and eax, 0x19ba6e7f
mov ecx, 0x86994274
xor edx, edx
div ecx
or eax, 0xf83779c3
cmp eax, 0xe8c4b18f
jb 0x1804b0832
jmp 0x1804afca2
mov ecx, dword [0x1807ab7e8]
or ecx, dword [0x1807ab7ec]
and ecx, 0x1cce4e66
add ecx, 0xd421ec7
sub ecx, 0x16a5ee00
mov qword [rsp + 0x40], r11
lea r14, [rsp + 0x40]
add r14, 8
mov qword [rsp + 0x48], r9
lea rdi, [rsp + 0x40]
add rdi, 0x10
mov qword [rsp + 0x50], 0
mov rbp, qword [r15 + 8]
mov rbx, qword [r15 + 0x10]
cmp r11, rbx
setb al
cmp ecx, 0x4e4e6a44
jae 0x1804afca2
xor r15d, r15d
test al, 1
jne 0x1804afd04
jmp 0x1804afd2a
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8, rbx
mov r9d, 1
mov qword [rsp + 0x20], 1
and byte [rcx], al
add byte [rax], al
add al, ch
out dx, al
ret 0xfffa
mov r15, qword [rdi]
mov r9, qword [r14]
jmp 0x1804afd2a
mov eax, dword [0x1807ab7f0]
and eax, dword [0x1807ab7f4]
mov ecx, 0x77f93b73
xor edx, edx
div ecx
mov ecx, 0xb9dc5708
xor edx, edx
div ecx
xor eax, 0xd49306f6
cmp eax, 0x7d5bf676
je 0x1804b0856
dec byte [rdx]
add byte [rax], al
jmp 0x1804afd5a
mov edi, dword [0x1807ab7f8]
sub edi, dword [0x1807ab7fc]
add edi, 0xd22971be
sub edi, 0xf38ccabf
or edi, 0x86323c97
mov rcx, r9
add rcx, r15
mov rdx, rbp
mov r8, rbx
fmul dword [rbp - 0x77]
invalid
call fcn.1806a7400
mov r9, r14
mov r8, qword [rsp + 0x28]
mov rax, r15
add rax, rbx
add eax, ebx
mov r11, r9
add r11, rax
mov r10, r8
sub r10, rax
cmp edi, 0x662fd65a
jb 0x1804afd5a
lodsb al, byte [rsi]
mov rcx, qword [rsp + 0xd0]
mov rax, rcx
sub rax, 4
ja 0x1804afe94
rol dword [rax], 1
add byte [rax], al
invalid
lea rax, [0x1806ca2e0]
movsxd rcx, dword [rax + rcx*4]
add rcx, rax
mov r15, qword [rsp + 0x38]
and al, 0x38
jmp rcx
mov eax, dword [0x1807ab810]
xor edx, edx
div dword [0x1807ab814]
or eax, 0xa7c51bcd
mov ecx, 0x23f0221c
xor edx, edx
div ecx
sub eax, 0x92254489
cmp eax, 0xe268efce
mov rdx, qword [rsp + 0x38]
ja 0x1804b088b
mov eax, dword [0x1807ab818]
xor eax, dword [0x1807ab81c]
or eax, 0x99eb1d9b
and eax, 0xa1f4c51c
imul ecx, eax, 0x30f99acf
cmp r13, 1
sete al
cmp ecx, 0xcaec2fcf
jbe 0x1804b088b
jmp 0x1804afef6
test al, 1
je 0x1804afefc
jmp 0x1804aff0d
jmp 0x1804b058f
jmp 0x1804aff0d
mov eax, dword [0x1807ab820]
xor edx, edx
div dword [0x1807ab824]
and eax, 0xdb1b5c50
or eax, 0xd741715f
xor eax, 0xac3b56c6
cmp eax, 0x2ae54063
je 0x1804b089c
mov eax, dword [0x1807ab828]
or eax, dword [0x1807ab82c]
add eax, 0xe5703165
imul edx, eax, 0x17b735e5
and edx, 0xd2ed9d1b
mov rax, r8
sub rax, r10
mov rcx, qword [rsp + 0x40]
cmp edx, 0x6afbd3a2
ja 0x1804b089c
jmp 0x1804b0791
mov rax, rdx
add rdx, 0x18
mov qword [rsp + 0x38], rdx
mov r15, qword [rax + 8]
mov rbp, qword [rax + 0x10]
mov rax, qword [rsp + 0xd0]
cmp r10, rax
jae 0x1804b065d
mov eax, dword [0x1807ab8f0]
add eax, dword [0x1807ab8f4]
xor eax, 0x6b619e48
mov ecx, 0xc51fa68b
xor edx, edx
div ecx
imul eax, eax, 0x4cb6cc24
cmp eax, 0xc80d50b8
ja 0x1804b095b
mov eax, dword [0x1807ab8f8]
xor edx, edx
div dword [0x1807ab8fc]
add eax, 0xf88f8fdc
mov ecx, 0xfbb3d1d5
xor edx, edx
div ecx
and eax, 0xdcc0be6c
ud2
mov r13, r10
sub r13, rax
mov eax, dword [0x1807ab910]
add eax, dword [0x1807ab914]
add eax, 0xe61f0d45
and eax, 0x598563f7
imul eax, eax, 0x52696ca7
cmp eax, 0x90e41aa
jbe 0x1804b0977
jmp 0x1804b068c
mov eax, dword [0x1807ab918]
xor edx, edx
div dword [0x1807ab91c]
mov ebx, eax
and ebx, 0xe0cbb44d
add ebx, 0xbacbc888
or ebx, 0xa882ac4c
mov rcx, r11
mov rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0xd0]
mov rdi, r11
call fcn.1806a7400
mov r11, rdi
cmp ebx, 0xa6d80e50
jb 0x1804b068c
jmp 0x1804b06d3
cmp rbp, r13
jbe 0x1804b06dc
ud2
mov qword [rsp + 0x60], r13
mov r13, r11
add r13, qword [rsp + 0xd0]
mov eax, dword [0x1807ab920]
sub eax, dword [0x1807ab924]
mov ecx, 0xe8009070
xor edx, edx
div ecx
mov ecx, 0x50783121
xor edx, edx
div ecx
and eax, 0x9ad13c94
cmp eax, 0x11c93976
mov qword [rsp + 0x58], r15
je 0x1804b09a3
mov eax, dword [0x1807ab928]
or eax, dword [0x1807ab92c]
imul edi, eax, 0xf7d38720
or edi, 0x95df53d0
and edi, 0x1fc3c1a7
mov rbx, r13
add rbx, rbp
mov r15, qword [rsp + 0x60]
sub r15, rbp
mov rcx, r13
mov rdx, qword [rsp + 0x58]
mov r8, rbp
call fcn.1806a7400
cmp qword [rsp + 0x38], r12
sete al
cmp edi, 0xa047aec0
jae 0x1804b09a3
jmp 0x1804b0771
test al, 1
mov r8, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x38]
mov r9, r14
mov r11, rbx
mov r10, r15
jne 0x1804aff01
jmp 0x1804b058f
mov qword [rsi], rcx
mov qword [rsi + 8], r9
mov qword [rsi + 0x10], rax
mov rax, rsi
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
push 0x5e42da72
cmc
test eax, 0xf135e980
invalid
iretd
pop rbp
loope 0x1804b0838
invalid
invalid
add ch, dh
invalid
int 0x9f
test dword [rdx - 0x461b2957], 0x26898a4
jmp 0x1804afb8e
cmp al, 0x46
and esp, ecx
add al, 0x17
mov ecx, 0xb12b70de
in al, dx
jmp 0x1804afbfa
invalid
je 0x1804b0833
push rsi
invalid
not byte [rdi]
jns 0x1804b08a3
invalid
sbb dword [rdx], 0xffffff88
and eax, 0x5b74c155
mov rcx, r9
add rcx, r15
mov rdx, rbp
mov r8, rbx
mov rdi, r9
call fcn.1806a7400
mov r9, rdi
jmp 0x1804afd58
add al, 0x69
jl 0x1804b082f
push rax
retf 0x99d5
popfq
xchg ch, dl
xchg edx, eax
sub eax, 0xfff68ce9
sub eax, 0xfff68ce9
invalid
sti
invalid
jle 0x1804b0958
mov al, 0x76
mov ecx, 0xb0f43d6
jmp 0x1804b05df
fcom qword [rsi - 0x23e9a563]
test eax, 0x9e402302
ror dword [rcx + rcx*4 - 0x27], 1
mov rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0xd0]
mov rdi, r11
call fcn.1806a7400
mov r11, rdi
jmp 0x1804b068a
jmp 0x1804b098b