Function at 0x1800233c8
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rax - 0x57]
sub rsp, 0xd0
mov r14, qword [rbp + 0x7f]
mov r12d, r9d
mov r15, rdx
mov qword [rsp + 0x20], r14
call fcn.1800186a4
mov rbx, qword [rbp - 9]
xor esi, esi
xor eax, eax
mov dword [rbp + 0x27], 0x716c
mov qword [rbp + 0x2b], rax
mov eax, 0xea6
cmp eax, 0xea6
je 0x180023a16
cmp eax, 0x4694
je 0x180023a27
cmp eax, 0xbdee
je 0x1800235c9
cmp eax, 0xf898
jne 0x180023a1b
mov dword [rbp - 0x1d], 0xc44b
or dword [rbp - 0x1d], 0xc4c10e3a
add dword [rbp - 0x1d], 0xffffaea0
shr dword [rbp - 0x1d], 5
xor dword [rbp - 0x1d], 0x6260be8
mov dword [rbp - 1], 0xdb3
add dword [rbp - 1], 0x96f6
xor dword [rbp - 1], 0xa4ab
mov dword [rbp + 0xb], 0x7866
add dword [rbp + 0xb], 0xffff5d9f
xor dword [rbp + 0xb], 0xffffd615
mov dword [rbp + 0xf], 0xb305
imul eax, dword [rbp + 0xf], 0x3a
mov dword [rbp + 0xf], eax
xor dword [rbp + 0xf], 0x40288f22
mov dword [rbp - 9], 0x4f3
or dword [rbp - 9], 0xcb01b28f
xor dword [rbp - 9], 0xcb02ef12
mov dword [rbp - 0x21], 0x300e
xor dword [rbp - 0x21], 0xe51e39bb
add dword [rbp - 0x21], 0x93d7
or dword [rbp - 0x21], 0x9f7972c3
shr dword [rbp - 0x21], 6
xor dword [rbp - 0x21], 0x3fa3b3a
mov dword [rbp - 0x19], 0x5c1f
xor dword [rbp - 0x19], 0x9f94b3de
imul eax, dword [rbp - 0x19], 0x62
mov dword [rbp - 0x19], eax
xor dword [rbp - 0x19], 0x1704eb8f
mov dword [rbp - 0x11], 0x1e9c
shl dword [rbp - 0x11], 0xb
shr dword [rbp - 0x11], 9
add dword [rbp - 0x11], 0x498
imul eax, dword [rbp - 0x11], 0x6d
mov dword [rbp - 0x11], eax
xor dword [rbp - 0x11], 0x39a67b
mov dword [rbp - 0x15], 0xbd0a
xor dword [rbp - 0x15], 0xe864cf6f
shl dword [rbp - 0x15], 5
xor dword [rbp - 0x15], 0xc8b7cce
mov dword [rbp + 3], 0xbab2
shl dword [rbp + 3], 4
shr dword [rbp + 3], 0xb
xor dword [rbp + 3], 0x5201b
mov dword [rbp + 7], 0x2ee2
xor dword [rbp + 7], 0x3e9fc7ff
add dword [rbp + 7], 0xffff2017
xor dword [rbp + 7], 0x3e9b7a70
mov eax, dword [rbp + 7]
mov dword [rsp + 0x68], eax
mov eax, dword [rbp + 3]
mov dword [rsp + 0x58], eax
mov eax, dword [rbp - 0x1d]
mov dword [rsp + 0x50], eax
mov eax, dword [rbp - 0x15]
mov dword [rsp + 0x40], eax
mov eax, dword [rbp - 0x11]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp + 0xb]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x19]
mov r9d, dword [rbp - 0x21]
mov r8d, dword [rbp + 0xf]
mov edx, dword [rbp - 1]
mov ecx, dword [rbp - 9]
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], eax
call fcn.1800098c0
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x180023a77
mov eax, 0xbdee
jmp 0x180023417
mov dword [rbp - 1], 0x1849
xor dword [rbp - 1], 0x44bfc4f3
xor dword [rbp - 1], 0x44baacc9
mov dword [rbp - 9], 0xd21b
or dword [rbp - 9], 0x61d936e1
xor dword [rbp - 9], 0x61d7f41e
mov dword [rbp - 0x21], 0xa93
add dword [rbp - 0x21], 0xffffdb76
shl dword [rbp - 0x21], 2
imul eax, dword [rbp - 0x21], 0x1f
mov dword [rbp - 0x21], eax
or dword [rbp - 0x21], 0x22cbd609
xor dword [rbp - 0x21], 0xfffe989d
mov dword [rbp - 0x15], 0x2f90
add dword [rbp - 0x15], 0xffffde13
imul eax, dword [rbp - 0x15], 0x7a
mov dword [rbp - 0x15], eax
mov eax, 0x4325c53f
xor dword [rbp - 0x15], 0x9924e
mov dword [rbp - 0x19], 0xe14a
shr dword [rbp - 0x19], 0xe
mov ecx, dword [rbp - 0x19]
mul ecx
shr edx, 4
mov dword [rbp - 0x19], edx
lea rdx, [r14 + 8]
xor dword [rbp - 0x19], 0x37f6a
mov eax, dword [rbp - 0x19]
mov dword [rsp + 0x48], eax
mov eax, dword [rbp - 0x15]
mov dword [rsp + 0x40], eax
mov rax, qword [r14]
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x28], rax
mov eax, dword [rbp - 0x21]
mov r9d, dword [rbp - 9]
mov r8d, dword [rbp - 1]
mov ecx, dword [r14 + 8]
mov dword [rsp + 0x20], eax
call fcn.180024db0
mov esi, eax
test r12d, r12d
je 0x180023a0c
mov dword [rbp - 9], 0x52d1
shl dword [rbp - 9], 0xf
xor dword [rbp - 9], 0x28688000
mov ecx, dword [rbp - 9]
mov dword [rbp + 0x1f], ecx
mov dword [rbp - 0x15], 0xab22
xor dword [rbp - 0x15], 0xd81e905a
add dword [rbp - 0x15], 0xa9c8
xor dword [rbp - 0x15], 0xd8146a49
mov dword [rbp - 0x21], 0x5b6f
add dword [rbp - 0x21], 0xffff5446
or dword [rbp - 0x21], 0xd05a72f2
shr dword [rbp - 0x21], 0x10
xor dword [rbp - 0x21], 0xed44f
mov dword [rbp - 0x1d], 0xe503
imul eax, dword [rbp - 0x1d], 0x4a
mov dword [rbp - 0x1d], eax
xor dword [rbp - 0x1d], 0x8fbc067b
add dword [rbp - 0x1d], 0xffff6980
xor dword [rbp - 0x1d], 0x8ff428e4
mov dword [rbp - 0x19], 0x5557
shl dword [rbp - 0x19], 6
xor dword [rbp - 0x19], 0x935a811f
xor dword [rbp - 0x19], 0x9347fcd9
mov eax, dword [rbp - 0x19]
mov eax, dword [rbp - 0x1d]
mov eax, dword [rbp - 0x21]
mov eax, dword [rbp - 0x15]
mov ecx, dword [rbp + 0x1f]
call fcn.180027d94
mov qword [rbp + 0x17], rax
test rax, rax
je 0x180023a0c
mov dword [rbp - 0x19], 0xddbc
mov eax, 0x8421085
lea r8, [rbp + 0x17]
mov ecx, dword [rbp - 0x19]
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 4
mov dword [rbp - 0x19], ecx
shl dword [rbp - 0x19], 0xc
xor dword [rbp - 0x19], 0x76a9e6
mov dword [rbp - 0x21], 0x2d09
add dword [rbp - 0x21], 0xffff755a
add dword [rbp - 0x21], 0xffffca92
add dword [rbp - 0x21], 0xe245
imul eax, dword [rbp - 0x21], 0x77
mov dword [rbp - 0x21], eax
xor dword [rbp - 0x21], 0x2440df
mov dword [rbp - 9], 0x4331
add dword [rbp - 9], 0xffff2188
xor dword [rbp - 9], 0xfffca239
mov r9d, dword [rbp - 9]
mov edx, dword [rbp - 0x21]
mov ecx, dword [rbp - 0x19]
call fcn.180016b6c
mov dword [rbp - 0x1d], 0x288c
shl dword [rbp - 0x1d], 0xa
xor dword [rbp - 0x1d], 0xfbaeb8df
xor dword [rbp - 0x1d], 0x8e95e33b
xor dword [rbp - 0x1d], 0x75996bd6
mov dword [rbp - 0x11], 0x4748
imul eax, dword [rbp - 0x11], 0x3d
mov dword [rbp - 0x11], eax
mov eax, 0xa0a0a0a1
add dword [rbp - 0x11], 0x848
mov ecx, dword [rbp - 0x11]
mul ecx
mov ecx, 0x3c
shr edx, 5
mov dword [rbp - 0x11], edx
imul eax, dword [rbp - 0x11], 0x26
mov dword [rbp - 0x11], eax
xor dword [rbp - 0x11], 0xa9b4a
mov dword [rbp - 0x21], 0x1442
add dword [rbp - 0x21], 0xbf65
xor dword [rbp - 0x21], 0x10bbb975
shr dword [rbp - 0x21], 0xf
shl dword [rbp - 0x21], 1
xor dword [rbp - 0x21], 0x933d1
mov eax, dword [rbp - 0x21]
mov eax, dword [rbp - 0x11]
mov edx, dword [rbp - 0x1d]
call fcn.18000c2f8
mov dword [rbp - 9], 0x7505
xor dword [rbp - 9], 0x21416c20
xor dword [rbp - 9], 0x21411925
mov ecx, dword [rbp - 9]
cmp ecx, eax
jae 0x18002395a
sub eax, ecx
mov edi, eax
mov dword [rbp - 0x15], 0xfaf2
mov eax, 0x2fa0be83
add dword [rbp - 0x15], 0xc4a8
add dword [rbp - 0x15], 0xffff8888
xor dword [rbp - 0x15], 0xf04bc
mov dword [rbp - 0x19], 0x9a11
xor dword [rbp - 0x19], 0x792d9325
add dword [rbp - 0x19], 0x41cc
xor dword [rbp - 0x19], 0x792fcbf4
mov dword [rbp - 0x21], 0x78d1
shl dword [rbp - 0x21], 1
mov ecx, dword [rbp - 0x21]
mul ecx
mov eax, 0xcccccccd
shr edx, 4
mov dword [rbp - 0x21], edx
add dword [rbp - 0x21], 0xffffcf44
add dword [rbp - 0x21], 0xffff3e74
xor dword [rbp - 0x21], 0xfffb1189
mov dword [rbp - 9], 0x43c
or dword [rbp - 9], 0x96adca20
xor dword [rbp - 9], 0x96a06236
mov dword [rbp - 0x1d], 0x5251
or dword [rbp - 0x1d], 0xa1ad4429
add dword [rbp - 0x1d], 0xad86
mov ecx, dword [rbp - 0x1d]
mul ecx
shr edx, 2
mov dword [rbp - 0x1d], edx
lea rdx, [rbp + 0x1f]
xor dword [rbp - 0x1d], 0x205ff4c8
mov eax, dword [rbp - 0x1d]
mov dword [rsp + 0x48], eax
mov eax, dword [rbp - 9]
mov dword [rsp + 0x40], eax
mov rax, qword [rbp + 0x17]
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x28], rax
mov eax, dword [rbp - 0x21]
mov r9d, dword [rbp - 0x19]
mov r8d, dword [rbp - 0x15]
mov ecx, dword [rbp + 0x1f]
mov dword [rsp + 0x20], eax
call fcn.180024db0
dec rdi
jne 0x180023872
mov dword [rbp - 0x21], 0xd608
mov eax, 0x2f684bdb
add dword [rbp - 0x21], 0xfffff8da
shr dword [rbp - 0x21], 0xf
shr dword [rbp - 0x21], 7
add dword [rbp - 0x21], 0xffff577e
xor dword [rbp - 0x21], 0xfff06e96
mov dword [rbp - 0x15], 0x7aa4
mov ecx, dword [rbp - 0x15]
mul ecx
mov eax, 0x29e4129f
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 5
mov dword [rbp - 0x15], ecx
add dword [rbp - 0x15], 0xffff455c
xor dword [rbp - 0x15], 0xfff0f5d2
mov dword [rbp - 0x1d], 0x1dfb
add dword [rbp - 0x1d], 0xfffff618
mov ecx, dword [rbp - 0x1d]
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 5
mov dword [rbp - 0x1d], ecx
add dword [rbp - 0x1d], 0x1b12
xor dword [rbp - 0x1d], 0xa94e4
mov dword [rbp - 0x19], 0xdcc4
or dword [rbp - 0x19], 0x4bbe5f57
xor dword [rbp - 0x19], 0x4bb42da4
mov rax, qword [rbp + 0x17]
mov r9d, dword [rbp - 0x19]
mov r8d, dword [rbp - 0x1d]
mov edx, dword [rbp - 0x15]
mov ecx, dword [rbp - 0x21]
mov qword [rsp + 0x20], rax
call fcn.18001e120
mov eax, 0x4694
jmp 0x180023417
mov eax, 0xf898
cmp eax, 0x9d9f
je 0x180023a77
jmp 0x180023417
mov dword [rbp - 0x21], 0xcc2f
mov eax, dword [rbp - 0x21]
lea ecx, [rax + rax*4]
shl ecx, 2
mov dword [rbp - 0x21], ecx
mov rcx, rbx
or dword [rbp - 0x21], 0xbfebae1a
shr dword [rbp - 0x21], 8
imul eax, dword [rbp - 0x21], 0x5d
mov dword [rbp - 0x21], eax
xor dword [rbp - 0x21], 0x45bbc599
mov dword [rbp - 9], 0xc622
add dword [rbp - 9], 0xe1dd
xor dword [rbp - 9], 0x204bd
mov r8d, dword [rbp - 9]
mov edx, dword [rbp - 0x21]
call fcn.18000228c
lea r11, [rsp + 0xd0]
mov eax, esi
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret