Function at 0x180010ad0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov ebx, edx
lea r11d, [r9 - 0xf8f]
mov r10d, ecx
lea eax, [r11 + 0xe94]
xor r10d, 0xeda
lea esi, [rcx + 0x284]
xor ebx, 0x31a
lea edi, [r8 - 0x232]
cmp dword [rsp + 0x28], eax
jle 0x180010b8d
mov rax, qword [rsp + 0x30]
mov ecx, dword [0x18002f0e8]
add ecx, 0xfff2aa86
add dword [rax + 0x74], ecx
mov rdx, qword [section..data]
mov ecx, dword [rdx + 0xf0]
cmp dword [rax + 0xb4], ecx
je 0x180010b4a
mov ecx, dword [rdx + 0x78]
xor ecx, 0xba0
add dword [0x18002f084], ecx
mov ecx, dword [0x18002f110]
cmp dword [rdx + 0xf0], ecx
jne 0x180010b79
mov edx, dword [rdx + 0xcc]
mov ecx, 0x2030e
xor edx, dword [0x18002f0c0]
sub ecx, edx
add dword [rax + 0x10], ecx
sub edi, 0x108
jmp 0x180010bfe
mov ecx, dword [rax + 0x18]
add ecx, 0x6778126c
add dword [rdx + 0x74], ecx
sub edi, 0x108
jmp 0x180010bfe
mov rax, qword [section..data]
mov ecx, dword [rax + 0x104]
mov rax, qword [rsp + 0x30]
and ecx, dword [rax + 0x40]
cmp r11d, ecx
jb 0x180010bfe
mov r9d, r11d
mov r8d, r11d
sub r9d, ebx
cmp r11d, r9d
jle 0x180010bfe
nop word [rax + rax]
mov rcx, qword [section..data]
mov edx, ebx
add r8d, 2
sub edx, dword [rcx + 0x48]
mov ecx, esi
sub ecx, dword [rax + 0xdc]
add edx, 0x1401
imul ecx, ecx, 0x1401
or r10d, edx
add dword [0x18002f0e4], ecx
mov ecx, r10d
xor ecx, 0x12bd
add dword [rax + 0xc], ecx
cmp r8d, r9d
jg 0x180010bc0
xor edi, 1
cmp r10d, edi
jg 0x180010ea6
lea ecx, [rsi + 0x15]
cmp r11d, ecx
je 0x180010ea6
cmp dword [rax + 0x108], 0x70cf
ja 0x180010c33
mov ecx, dword [rax + 0x10]
xor ecx, dword [rax + 0x48]
xor ecx, 0x122d7
mov dword [rax + 0x48], ecx
jmp 0x180010c41
lea rcx, [0x180030160]
mov qword [0x18002f0a8], rcx
xor r11d, r11d
mov edi, r11d
nop word [rax + rax]
mov ecx, dword [rax + 4]
add ecx, dword [rax + 0x108]
mov rdx, qword [section..data]
xor ecx, 0xd482f330
add dword [rdx + 0x100], ecx
mov rcx, qword [rax + 0x98]
mov r8, qword [section..data]
mov edx, dword [rax + 0x38]
sub edx, 0x6beb892d
mov r10d, dword [rcx + rdi]
add rdi, 4
mov ecx, dword [r8 + 0xb4]
imul r10d, dword [r8 + 0x74]
imul ecx, edx
mov r9d, r10d
mov dword [r8 + 0xb4], ecx
mov ecx, 0x51e7c
sub ecx, dword [rax + 0x18]
mov rdx, qword [section..data]
shr r9d, 8
add dword [rdx + 0x4c], ecx
mov rdx, qword [section..data]
mov ecx, dword [rdx + 0x18]
sub ecx, dword [rax + 0xb4]
xor ecx, 0xffee1501
add dword [0x18002f014], ecx
mov ecx, dword [rdx + 0xb0]
sub ecx, 0xf
add dword [rdx + 0x78], ecx
mov rcx, qword [section..data]
movsxd r8, dword [rax + 0x7c]
mov rdx, qword [rcx + 0xa0]
mov byte [r8 + rdx], r9b
inc dword [rax + 0x7c]
mov rcx, qword [section..data]
mov dword [rcx + 0xc4], 0xef76fb62
mov rcx, qword [section..data]
mov edx, dword [rcx + 4]
add edx, dword [0x18002f020]
xor edx, 0xfff52e76
sub dword [rax + 0x100], edx
mov rdx, qword [section..data]
mov ecx, dword [rdx + 0x78]
sub dword [rdx + 0x30], ecx
mov rcx, qword [section..data]
movsxd rdx, dword [rcx + 0x7c]
mov rcx, qword [rax + 0xa0]
mov byte [rdx + rcx], r10b
mov rcx, qword [section..data]
inc dword [rcx + 0x7c]
mov ecx, dword [rax + 0xd8]
xor ecx, dword [0x18002f0c0]
mov edx, dword [rax + 0x18]
xor ecx, 0xd5633
imul edx, ecx
mov ecx, dword [rax + 0xf0]
mov dword [rax + 0x18], edx
sub edx, ecx
xor edx, 0x2aa65
add edx, ecx
mov dword [rax + 0xf0], edx
mov rcx, qword [section..data]
mov edx, dword [rcx + 0xcc]
mov ecx, 0xd482f330
sub ecx, dword [rax + 0x108]
add dword [rax + 0xc4], edx
add dword [0x18002f074], ecx
cmp rdi, 0x1740
jl 0x180010c50
lea rcx, [0x18002f010]
mov qword [rax + 0xe0], rcx
cmp dword [rax + 0x48], 0x12219
jb 0x180010df1
mov r8d, dword [0x18002f034]
add r8d, dword [0x18002f010]
add r8d, dword [0x18002f0d8]
xor r8d, 0xbe6bcb38
mov dword [0x18002f11c], r8d
mov r8, qword [section..data]
mov ecx, dword [r8 + 0x48]
add ecx, dword [0x18002f020]
xor ecx, 0xffff9189
add dword [0x18002f0c4], ecx
mov rcx, qword [rax + 0xb8]
mov edx, dword [rcx + r11]
xor edx, dword [0x18002f090]
mov rcx, qword [r8 + 0xb8]
mov dword [r11 + rcx], edx
add r11, 4
mov rcx, qword [section..data]
mov edx, dword [rcx + 0xcc]
xor edx, dword [rax + 0x10]
mov ecx, dword [0x18002f0dc]
add edx, 0xad18a
or dword [0x18002f020], edx
sub dword [rax + 0x18], ecx
mov edx, dword [rax + 0xf0]
mov ecx, dword [rax + 4]
sub edx, 0x27416
imul ecx, edx
mov dword [rax + 4], ecx
mov r8, qword [section..data]
mov edx, dword [0x18002f0d4]
mov ecx, dword [r8 + 0xd8]
sub ecx, 0xd563c
imul edx, ecx
mov dword [0x18002f0d4], edx
mov ecx, dword [r8 + 0xc0]
add dword [r8 + 0x80], ecx
cmp r11, 0x1ea44
jl 0x180010df1
mov rsi, qword [rsp + 0x10]
lea eax, [rbx - 0x3e6]
mov rbx, qword [rsp + 8]
mov rdi, qword [rsp + 0x18]
ret