Function at 0x1800274e0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
movzx eax, byte [rcx]
cmp rax, 9
ja case.0x18002750b.5
lea rcx, [0x18003a918]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
lea rcx, [0x180044c18]
cmp byte [0x18004691b], 0
jne 0x180027ce4
mov r8, qword [0x180044c10]
movabs rax, 0x9db472ae35cd6469
add rax, r8
movabs rdx, 0x9db472ae35cd647e
add rdx, r8
xor r8d, r8d
lea r9, [0x180046916]
nop dword [rax]
movzx ebp, byte [rdx + r8]
mov esi, ebp
not sil
movzx r10d, byte [rax + r8]
mov ebx, r10d
not bl
mov r11d, ebp
or r11b, 0x57
and sil, 0xa8
xor bpl, 0x57
or bpl, sil
mov edi, r10d
xor dil, 0x20
and dil, bl
mov esi, ebx
or sil, 0xa8
mov r14d, r11d
xor r14b, 0xfe
mov r15d, ebp
not r15b
and r15b, r11b
and r15b, 0xfe
or r11b, bpl
xor bpl, 1
and bpl, r14b
not r11b
or r11b, bpl
or r11b, r15b
mov ebp, r10d
and bpl, 0x80
and bl, 8
or bl, bpl
and dil, 0xa8
mov ebp, edi
xor bpl, bl
xor bpl, 0xe
xor bl, 8
and bl, dil
or bl, bpl
mov edi, esi
and dil, 0x31
and r10b, 0x40
or r10b, dil
and sil, 0x8e
or r10b, 0x84
xor r10b, sil
mov esi, r10d
xor sil, 0xb5
not bl
and bl, sil
xor r10b, 0x4a
and r10b, bpl
or r10b, bl
mov ebx, r10d
not bl
mov esi, r10d
and sil, 0x64
mov edi, ebx
and dil, 0x18
or dil, sil
and bl, 0x80
and r10b, 3
or r10b, bl
or dil, 0x80
or r10b, 0x64
xor r10b, dil
xor r10b, r11b
xor r10b, 0x7c
mov byte [r8 + r9], r10b
inc r8
cmp r8, 5
jne 0x180027550
mov byte [0x18004691b], 1
jmp 0x180027ce4
movabs rcx, 0x9db472ae35cd61af
add rcx, qword [0x180044c10]
call fcn.180030d60
lea rcx, [0x180044c20]
jmp 0x180027ce4
lea rcx, [0x180044c28]
cmp byte [0x18004681a], 0
jne 0x180027ce4
mov r8, qword [0x180044c10]
movabs rax, 0x9db472ae35cd6179
add rax, r8
movabs rdx, 0x9db472ae35cd6197
add rdx, r8
xor r8d, r8d
lea r9, [0x180046814]
nop dword [rax]
movzx r10d, byte [rdx + r8]
movzx r11d, byte [rax + r8]
mov ebx, r11d
not bl
mov edi, r11d
xor dil, 0x66
and dil, bl
mov ebp, r11d
and bpl, 0x91
mov esi, r10d
xor sil, 0x91
xor r10b, 0x6e
or sil, r10b
mov r14d, r11d
and r14b, 8
and dil, 0x6e
mov r15d, r11d
and r15b, 0x99
xor r15b, dil
xor r15b, 0xf7
and bl, 0x66
or bl, r14b
or bl, 0x81
xor bl, bpl
xor bl, 0x89
xor r11b, 0x91
or r11b, bl
and r11b, r15b
xor r10b, sil
and r10b, sil
xor r10b, r11b
mov byte [r8 + r9], r10b
inc r8
cmp r8, 6
jne 0x1800276b0
mov byte [0x18004681a], 1
jmp 0x180027ce4
lea rcx, [0x180044c30]
cmp byte [0x180046923], 0
jne 0x180027ce4
mov rax, qword [0x180044c10]
movabs rdx, 0x9db472ae35cd6493
movzx edx, byte [rax + rdx]
movabs r8, 0x9db472ae35cd64b1
xor dl, byte [rax + r8]
mov byte [0x18004691c], dl
movabs rdx, 0x9db472ae35cd6494
movzx edx, byte [rax + rdx]
movabs r8, 0x9db472ae35cd64b2
xor dl, byte [rax + r8]
mov byte [0x18004691d], dl
movabs rdx, 0x9db472ae35cd6495
movzx edx, byte [rax + rdx]
movabs r8, 0x9db472ae35cd64b3
xor dl, byte [rax + r8]
mov byte [0x18004691e], dl
movabs rdx, 0x9db472ae35cd6496
movzx edx, byte [rax + rdx]
movabs r8, 0x9db472ae35cd64b4
xor dl, byte [rax + r8]
mov byte [0x18004691f], dl
movabs rdx, 0x9db472ae35cd6497
movzx edx, byte [rax + rdx]
movabs r8, 0x9db472ae35cd64b5
xor dl, byte [rax + r8]
mov byte [0x180046920], dl
movabs rdx, 0x9db472ae35cd6498
movzx edx, byte [rax + rdx]
movabs r8, 0x9db472ae35cd64b6
xor dl, byte [rax + r8]
mov byte [0x180046921], dl
movabs rdx, 0x9db472ae35cd6499
movzx edx, byte [rax + rdx]
movabs r8, 0x9db472ae35cd64b7
xor dl, byte [rax + r8]
mov byte [0x180046922], dl
mov byte [0x180046923], 1
jmp 0x180027ce4
lea rcx, [0x180044c50]
cmp byte [0x180046947], 0
jne 0x180027ce4
mov r8, qword [0x180044c10]
movabs rax, 0x9db472ae35cd6582
add rax, r8
movabs rdx, 0x9db472ae35cd6594
add rdx, r8
xor r8d, r8d
lea r9, [0x180046940]
nop word cs:[rax + rax]
movzx r10d, byte [rdx + r8]
movzx ebx, byte [rax + r8]
mov edi, ebx
not dil
and dil, 0x14
mov esi, ebx
xor sil, 0xeb
mov r11d, ebx
or r11b, 0xeb
mov ebp, r11d
xor bl, 4
and bl, dil
or r11b, dil
or dil, sil
not dil
and bpl, 0x58
or bl, bpl
mov ebp, edi
and bpl, 0x50
mov r14d, esi
and r14b, 8
or r14b, bpl
and sil, 0xa1
and dil, 6
or dil, sil
or r14b, 0xa1
or dil, 0x50
xor dil, bl
xor dil, r14b
not r11b
mov ebx, edi
or bl, r11b
or r11b, r10b
xor r10b, bl
xor r10b, 0x14
and r10b, bl
xor r11b, 0xeb
or r11b, dil
not r11b
or r11b, r10b
mov byte [r8 + r9], r11b
inc r8
cmp r8, 7
jne 0x180027890
mov byte [0x180046947], 1
jmp 0x180027ce4
lea rcx, [0x180044c40]
cmp byte [0x180046934], 0
jne 0x180027ce4
mov rax, qword [0x180044c10]
movabs rdx, 0x9db472ae35cd6507
movzx edx, byte [rax + rdx]
mov r8d, edx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x69
or r9b, r8b
xor dl, 0xd1
and dl, r9b
movabs r8, 0x9db472ae35cd651c
xor dl, byte [rax + r8]
xor dl, 0xd1
mov byte [0x18004692d], dl
movabs rdx, 0x9db472ae35cd6508
movzx edx, byte [rax + rdx]
mov r8d, edx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x69
or r9b, r8b
xor dl, 0xd1
and dl, r9b
movabs r8, 0x9db472ae35cd651d
xor dl, byte [rax + r8]
xor dl, 0xd1
mov byte [0x18004692e], dl
movabs rdx, 0x9db472ae35cd6509
movzx edx, byte [rax + rdx]
mov r8d, edx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x69
or r9b, r8b
xor dl, 0xd1
and dl, r9b
movabs r8, 0x9db472ae35cd651e
xor dl, byte [rax + r8]
xor dl, 0xd1
mov byte [0x18004692f], dl
movabs rdx, 0x9db472ae35cd650a
movzx edx, byte [rax + rdx]
mov r8d, edx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x69
or r9b, r8b
xor dl, 0xd1
and dl, r9b
movabs r8, 0x9db472ae35cd651f
xor dl, byte [rax + r8]
xor dl, 0xd1
mov byte [0x180046930], dl
movabs rdx, 0x9db472ae35cd650b
movzx edx, byte [rax + rdx]
mov r8d, edx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x69
or r9b, r8b
xor dl, 0xd1
and dl, r9b
movabs r8, 0x9db472ae35cd6520
xor dl, byte [rax + r8]
xor dl, 0xd1
mov byte [0x180046931], dl
movabs rdx, 0x9db472ae35cd650c
movzx edx, byte [rax + rdx]
mov r8d, edx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x69
or r9b, r8b
xor dl, 0xd1
and dl, r9b
movabs r8, 0x9db472ae35cd6521
xor dl, byte [rax + r8]
xor dl, 0xd1
mov byte [0x180046932], dl
movabs rdx, 0x9db472ae35cd650d
movzx edx, byte [rax + rdx]
mov r8d, edx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x69
or r9b, r8b
xor dl, 0xd1
and dl, r9b
movabs r8, 0x9db472ae35cd6522
xor dl, byte [rax + r8]
xor dl, 0xd1
mov byte [0x180046933], dl
mov byte [0x180046934], 1
jmp 0x180027ce4
lea rcx, [0x180044c48]
cmp byte [0x18004693f], 0
jne 0x180027ce4
mov r8, qword [0x180044c10]
movabs rax, 0x9db472ae35cd6540
add rax, r8
movabs rdx, 0x9db472ae35cd655a
add rdx, r8
xor r8d, r8d
lea r9, [0x180046935]
nop dword [rax + rax]
movzx r10d, byte [rax + r8]
mov r11d, r10d
or r11b, 0x40
and r11b, 0xfc
mov ebx, r10d
and bl, 0x43
xor bl, r11b
xor bl, 0xfc
xor r10b, 0x43
or r10b, bl
not r10b
or r10b, bl
xor r10b, byte [rdx + r8]
xor r10b, 0xbc
mov byte [r8 + r9], r10b
inc r8
cmp r8, 0xa
jne 0x180027b40
mov byte [0x18004693f], 1
jmp 0x180027ce4
lea rcx, [0x180044c38]
cmp byte [0x18004692c], 0
jne 0x180027ce4
mov r8, qword [0x180044c10]
movabs rax, 0x9db472ae35cd64cf
add rax, r8
movabs rdx, 0x9db472ae35cd64e4
add rdx, r8
xor r8d, r8d
lea r9, [0x180046924]
nop dword [rax]
movzx r10d, byte [rdx + r8]
mov r14d, r10d
not r14b
movzx ebx, byte [rax + r8]
mov r11d, ebx
not r11b
mov r15d, r14d
and r15b, 6
mov r12d, r10d
and r12b, 0x99
mov esi, ebx
xor sil, 0x64
and sil, r11b
mov edi, ebx
and dil, 0x99
mov r13d, r10d
and r13b, 0x60
xor r13b, 0x79
lea ebp, [r12 + 6]
or r15b, 0x80
and r15b, bpl
and r14b, 0x42
mov ebp, r10d
and bpl, 0x24
or bpl, r14b
or bpl, 0x90
xor bpl, r12b
mov r14d, r12d
xor r14b, 0xe0
and r14b, r13b
or r14b, r15b
mov r15d, ebx
and r15b, 0x20
and r11b, 0x46
or r11b, r15b
mov r15d, r11d
mov r12d, r11d
xor r11b, 0x20
mov r13d, r11d
or r11b, dil
not dil
xor bpl, 0xb4
xor r10b, 0x99
or r10b, bpl
not r10b
or r10b, r14b
xor r15b, 0xdf
xor r12b, 0x23
and r12b, r15b
and sil, 0x66
or sil, r12b
mov ebp, ebx
and bpl, 1
mov r14d, edi
and r14b, 0x2c
mov r12d, ebx
and r12b, 0x90
or r12b, r14b
or bpl, 0x2e
or r12b, 1
xor r12b, bpl
xor r12b, sil
and r13b, 0x62
and r15b, 0xc
or r15b, r13b
and bl, 0x91
and dil, 0xc
or dil, bl
xor dil, r15b
not r11b
or r11b, dil
not r11b
or r11b, r12b
xor r11b, r10b
mov byte [r8 + r9], r11b
inc r8
cmp r8, 8
jne 0x180027bd0
mov byte [0x18004692c], 1
movabs rax, 0x9db472ae35cd3cb5
add rax, qword [rcx]
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret