Function at 0x1800274c0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x50
lea r15d, [r9 + 0x56f]
mov esi, r9d
mov r14, r8
mov rbx, rdx
mov rdi, rcx
cmp r9d, r15d
jae case.0x180027530.80
mov rbp, qword [rsp + 0x40]
lea r12, [0x180000000]
nop
cmp esi, 0x17f
ja 0x1800275cc
je 0x180027582
lea eax, [rsi - 0x4b]
cmp eax, 0xe7
ja case.0x180027530.81
movzx eax, byte [r12 + rax + 0x27748]
mov ecx, dword [r12 + rax*4 + 0x2772c]
add rcx, r12
jmp rcx
not dword [rbx]
jmp case.0x180027530.81
mov rax, qword [rdi]
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x40]
mov qword [rsp + 0x40], rax
mov rdx, rbx
mov qword [rsp + 0x30], 0
mov ecx, 0x11e
call fcn.180049e00
mov qword [rsp + 0x30], rax
jmp case.0x180027530.81
mov eax, dword [rdi]
mov dword [rbx], eax
mov eax, dword [rdi + 0x10]
mov dword [rbx + 4], eax
jmp case.0x180027530.81
mov rbp, rdi
jmp case.0x180027530.81
mov rax, qword [r14]
test rax, rax
je 0x1800275b9
nop word [rax + rax]
dec qword [r14]
movzx eax, byte [rbp]
inc rbp
mov edx, dword [rbx]
xor rax, rdx
movzx ecx, al
shr edx, 8
mov eax, dword [r12 + rcx*4 + 0xc7860]
xor eax, edx
mov dword [rbx], eax
cmp qword [r14], 0
jne 0x180027590
xor eax, eax
dec rax
mov qword [r14], rax
mov eax, dword [rbx]
not eax
mov dword [rsp + 0x30], eax
jmp case.0x180027530.81
cmp esi, 0x25a
ja 0x180027629
je 0x18002761b
mov eax, esi
sub eax, 0x184
je 0x180027601
sub eax, 0x66
je case.0x180027530.80
cmp eax, 5
jne case.0x180027530.81
mov eax, dword [rdi + 0x24]
mov dword [rbx + 0x18], eax
mov eax, dword [rdi + 0x34]
mov dword [rbx + 0x1c], eax
mov eax, dword [rdi + 8]
mov dword [rbx + 0x20], eax
jmp case.0x180027530.81
mov eax, dword [rdi + 0x20]
mov dword [rbx + 8], eax
mov eax, dword [rdi + 0x30]
mov dword [rbx + 0xc], eax
mov eax, dword [rdi + 4]
mov dword [rbx + 0x10], eax
mov eax, dword [rdi + 0x14]
mov dword [rbx + 0x14], eax
jmp case.0x180027530.81
mov eax, dword [rdi + 0x18]
mov dword [rbx + 0x24], eax
mov eax, dword [rdi + 0x28]
mov dword [rbx + 0x28], eax
jmp case.0x180027530.81
mov eax, esi
sub eax, 0x2c5
je 0x18002763f
cmp eax, 0x6b
jne case.0x180027530.81
mov eax, dword [rdi + 0x3c]
mov dword [rbx + 0x3c], eax
jmp case.0x180027530.81
mov eax, dword [rdi + 0x38]
mov dword [rbx + 0x2c], eax
mov eax, dword [rdi + 0xc]
mov dword [rbx + 0x30], eax
mov eax, dword [rdi + 0x1c]
mov dword [rbx + 0x34], eax
mov eax, dword [rdi + 0x2c]
mov dword [rbx + 0x38], eax
add esi, 0x6b
cmp esi, r15d
jb 0x180027500
jmp case.0x180027530.80
mov rsi, qword [rdi]
xor edx, edx
mov qword [rsp + 0x38], rdx
mov edi, 0xab
mov eax, edi
sub eax, 0x76
je 0x1800276db
sub eax, 0x35
je 0x1800276a5
sub eax, 0x26f9
je case.0x180027530.80
sub eax, 0x11ce
je 0x18002769e
cmp eax, 0x38c7
je case.0x180027530.80
jmp 0x1800276f9
mov qword [rsp + 0x30], rdx
jmp 0x1800276f9
mov r9d, 0xd
mov qword [rsp + 0x40], rsi
lea r8, [rsp + 0x40]
mov byte [rsp + 0x98], 0
lea rdx, [rsp + 0x98]
mov qword [rsp + 0x20], rbx
lea rcx, [rsp + 0x38]
call fcn.18005ae90
mov rdx, qword [rsp + 0x38]
jmp 0x1800276f9
mov rcx, rdx
sub rcx, qword [rbx]
jns 0x1800276ed
mov dword [rsp + 0x30], 0xffffffff
jmp 0x1800276f9
xor eax, eax
test rcx, rcx
setg al
mov dword [rsp + 0x30], eax
add edi, 0x38c7
cmp edi, 0x11be3
jbe 0x180027677
mov rax, qword [rsp + 0x30]
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret