Function at 0x1400028e0
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
mov rsi, r8
mov rdi, rdx
mov eax, dword [0x141dbc378]
xor edx, edx
div dword [0x141dbc37c]
nop word cs:[rax + rax]
mov eax, dword [0x141dbc380]
and eax, dword [0x141dbc384]
imul eax, eax, 0x4016cae9
add eax, 0x48412140
and eax, 0x8ebe250
cmp eax, 0xd7c4e92e
ja 0x140002910
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140002940
test rsi, rsi
je 0x140003188
nop dword [rax]
mov eax, dword [0x141dbc388]
sub eax, dword [0x141dbc38c]
and eax, 0x767e03f
imul eax, eax, 0x4ed77d88
add eax, 0x78fd5cc8
cmp eax, 0xf5888c4d
ja 0x140002950
mov rbx, qword [rcx]
nop word cs:[rax + rax]
mov eax, dword [0x141dbc390]
and eax, dword [0x141dbc394]
or eax, 0x60845a0
and eax, 0x260b65e3
xor eax, 0x6572c07c
cmp eax, 0x1e939da5
jb 0x140002980
mov r15d, 0xad21bb81
mov ebp, 0xa8829b95
lea r13, [0x141db6f94]
mov r12d, 0xa52ffac7
jmp 0x1400029e9
test rsi, rsi
je 0x140003188
mov eax, dword [0x141dbc398]
imul eax, dword [0x141dbc39c]
add eax, 0x56c63fc3
imul rax, r15
shr rax, 0x3f
or eax, 0x2c304294
cmp eax, 0x11febc57
jb 0x140002a44
nop
mov r14d, dword [0x141dbc3a0]
imul r14d, dword [0x141dbc3a4]
or r14d, 0x2c2697b6
add r14d, 0x88a0b3e0
mov rcx, rbx
mov rdx, rdi
mov r8, rsi
call fcn.140086140
cmp r14d, 0xb9394ba8
jae 0x140002a60
mov rcx, rbx
mov rdx, rdi
mov r8, rsi
call fcn.140086140
jmp 0x140002a10
mov rcx, rdx
test rax, rax
je 0x140002ad0
mov r8d, ecx
and r8d, 3
cmp r8, 3
ja case.default.0x140002a81
movsxd rax, dword [r13 + r8*4]
add rax, r13
jmp rax
mov eax, dword [0x141dbc478]
xor edx, edx
div dword [0x141dbc47c]
xor eax, 0xbac360eb
imul eax, eax, 0x8b91e62e
imul rax, rax, 0x5f1cbe27
shr rax, 0x3e
cmp eax, 0x381cc4bd
je case.0x140002a81.0
movzx edx, byte [rcx + 0x10]
jmp 0x140002fd9
mov eax, dword [0x141dbc3b0]
xor edx, edx
div dword [0x141dbc3b4]
or eax, 0x90821852
xor eax, 0x12b1323d
imul rax, rbp
shr rax, 0x3d
cmp eax, 0xed8a3a3e
ja 0x140002ad0
test rcx, rcx
je 0x1400031bf
mov eax, dword [0x141dbc440]
or eax, dword [str._G_7]
add eax, 0xf94341af
xor eax, 0x1eff8811
cmp eax, 0x15d2c6fd
jb 0x140002b00
nop dword [rax]
mov eax, dword [0x141dbc448]
xor eax, dword [0x141dbc44c]
imul eax, eax, 0xbd9cc7ec
xor eax, 0x77238b5b
imul eax, eax, 0x5bd06128
cmp eax, 0x70e3b8b1
jb 0x140002b20
sub rsi, rcx
jb 0x1400031c8
mov eax, dword [0x141dbc460]
xor edx, edx
div dword [0x141dbc464]
nop dword [rax + rax]
mov eax, dword [0x141dbc468]
imul eax, dword [0x141dbc46c]
imul eax, eax, 0x5acd92ee
imul rax, rax, 0x4a2d9cf7
shr rax, 0x38
or eax, 0x88e8c7f0
cmp eax, 0xc8067c2e
ja 0x140002b60
add rdi, rcx
jmp 0x1400029e0
mov eax, dword [0x141dbc480]
xor edx, edx
div dword [0x141dbc484]
xor eax, 0x12c22520
and eax, 0xbbca2f2e
imul rax, rax, 0x5da2eef5
shr rax, 0x3d
cmp eax, 0x878dfd5
je case.0x140002a81.1
movzx edx, byte [rcx + 0xf]
nop
mov eax, dword [0x141dbc488]
imul eax, dword [0x141dbc48c]
imul eax, eax, 0x9536fb49
add eax, 0x475bcc8f
and eax, 0x85d9a5a1
cmp eax, 0x863f0b8e
je 0x140002bd0
jmp 0x140002fd9
mov rax, rcx
shr rax, 0x20
cmp eax, 0x28
ja case.default.0x140002c1e
lea rdx, [0x141db6fa4]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
xor edx, edx
jmp 0x140002fc0
mov eax, dword [0x141dbc438]
and eax, dword [0x141dbc43c]
xor eax, 0x550aeaee
add eax, 0xf51fd511
and eax, 0xc97681f5
mov dl, 0x23
cmp eax, 0xd67b696a
je case.0x140002c1e.35
jmp 0x140002fc0
mov eax, dword [0x141dbc430]
and eax, dword [0x141dbc434]
mov r9d, 0xca542b33
imul r9, rax
shr r9, 0x3a
add r9d, 0x2f0b60b9
mov dl, 0x22
cmp r9d, 0x1601200d
jb case.0x140002c1e.34
jmp 0x140002fc0
mov eax, dword [0x141dbc3d8]
mov edx, dword [0x141dbc3dc]
add eax, edx
add eax, 0x5debb8e5
or eax, 0x1800e040
and eax, 0x1931e243
mov dl, 0xb
cmp eax, 0xa873ce0b
ja case.0x140002c1e.11
jmp 0x140002fc0
mov eax, dword [0x141dbc3c0]
imul eax, dword [0x141dbc3c4]
add eax, 0xed13c549
or eax, 0xcca6ccc5
imul eax, eax, 0x4a6a83c0
mov dl, 4
cmp eax, 0x2ba29fbc
jb case.0x140002c1e.4
jmp 0x140002fc0
mov eax, dword [0x141dbc410]
imul eax, dword [0x141dbc414]
add eax, 0x2962f711
or eax, 0x32c0914
and eax, 0x63ec1915
mov dl, 0x19
cmp eax, 0xfd0628dc
jae case.0x140002c1e.25
jmp 0x140002fc0
mov eax, dword [0x141dbc3e0]
or eax, dword [0x141dbc3e4]
xor eax, 0x900b5674
add eax, 0x8df2e581
xor eax, 0x318462ea
mov dl, 0xf
cmp eax, 0x4f9901b9
jae case.0x140002c1e.15
jmp 0x140002fc0
mov eax, dword [0x141dbc3d0]
sub eax, dword [0x141dbc3d4]
and eax, 0xcff0271d
add eax, 0xc3c06dcd
mov dl, 7
cmp eax, 0x59068f76
jae case.0x140002c1e.7
jmp 0x140002fc0
mov eax, dword [0x141dbc3e8]
xor eax, dword [0x141dbc3ec]
or eax, 0x9f135ad8
add eax, 0x9fd1b06d
mov dl, 0x11
cmp eax, 0xf525b39e
ja case.0x140002c1e.17
jmp 0x140002fc0
mov eax, dword [0x141dbc420]
xor edx, edx
div dword [0x141dbc424]
or eax, 0xf143f0a3
mov dl, 0x1f
cmp eax, 0x458943ee
je case.0x140002c1e.31
jmp 0x140002fc0
mov eax, dword [0x141dbc3c8]
xor eax, dword [0x141dbc3cc]
or eax, 0x2ffffbcd
xor eax, 0xd1c81880
mov dl, 5
cmp eax, 0x13366abe
jbe case.0x140002c1e.5
jmp 0x140002fc0
mov dl, 6
mov al, 1
test al, al
je case.0x140002c1e.6
jmp 0x140002fc0
mov eax, dword [0x141dbc3f8]
xor eax, dword [0x141dbc3fc]
imul eax, eax, 0xba2cd646
or eax, 0x4fd9949b
add eax, 0x9fd36839
mov dl, 0x15
cmp eax, 0x5d5a0e77
jb case.0x140002c1e.21
jmp 0x140002fc0
mov eax, dword [str..Qn]
sub eax, dword [0x141dbc42c]
imul eax, eax, 0x60aa9e1c
and eax, 0x990f908
add eax, 0x99c3df84
mov dl, 0x20
cmp eax, 0xfb89ec10
ja case.0x140002c1e.32
jmp 0x140002fc0
mov eax, dword [0x141dbc400]
and eax, dword [0x141dbc404]
or eax, 0xd9821b0
and eax, 0xcdd82bb4
add eax, 0x31b4c02b
mov dl, 0x16
cmp eax, 0x87a7ddf1
jae case.0x140002c1e.22
jmp 0x140002fc0
mov eax, dword [0x141dbc3f0]
and eax, dword [0x141dbc3f4]
xor eax, 0x6d6a79ea
imul eax, eax, 0x66988e54
or eax, 0x4c44c906
mov dl, 0x13
cmp eax, 0x3309fb48
jb case.0x140002c1e.19
jmp 0x140002fc0
mov dl, 0x27
mov al, 1
test al, al
je case.0x140002c1e.39
jmp 0x140002fc0
mov eax, dword [0x141dbc408]
imul eax, dword [0x141dbc40c]
xor eax, 0x9784b1ff
imul eax, eax, 0x45a7da34
add eax, 0x337ff51c
mov dl, 0x17
cmp eax, 0xfaf0c26c
jae case.0x140002c1e.23
jmp 0x140002fc0
mov eax, dword [0x141dbc418]
mov edx, dword [0x141dbc41c]
add eax, edx
add eax, 0x22ed9c28
and eax, 0x72231eec
add eax, 0x3cd47c0c
mov dl, 0x1a
cmp eax, 0x72f46549
ja case.0x140002c1e.26
jmp 0x140002fc0
mov dl, 0x25
jmp 0x140002fc0
mov dl, 0xe
jmp 0x140002fc0
mov dl, 0x10
jmp 0x140002fc0
mov dl, 0x1b
jmp 0x140002fc0
mov dl, 0x21
jmp 0x140002fc0
mov dl, 0x24
jmp 0x140002fc0
mov dl, 0x29
jmp 0x140002fc0
mov dl, 1
jmp 0x140002fc0
mov dl, 2
jmp 0x140002fc0
mov dl, 3
jmp 0x140002fc0
mov dl, 8
jmp 0x140002fc0
mov dl, 9
jmp 0x140002fc0
mov dl, 0xa
jmp 0x140002fc0
mov dl, 0xc
jmp 0x140002fc0
mov dl, 0xd
jmp 0x140002fc0
mov dl, 0x12
jmp 0x140002fc0
mov dl, 0x14
jmp 0x140002fc0
mov dl, 0x18
jmp 0x140002fc0
mov dl, 0x1e
jmp 0x140002fc0
mov dl, 0x28
jmp 0x140002fc0
mov dl, 0x1c
jmp 0x140002fc0
mov dl, 0x1d
jmp 0x140002fc0
mov dl, 0x26
nop word cs:[rax + rax]
mov eax, dword [0x141dbc470]
sub eax, dword [0x141dbc474]
imul eax, eax, 0xeab775a8
cmp eax, 0xa312d3cf
je 0x140002fc0
cmp dl, 0x23
jne case.0x140002a81.2
nop word cs:[rax + rax]
mov eax, dword [0x141dbc490]
sub eax, dword [0x141dbc494]
or eax, 0x2d155a79
add eax, 0x7fb2227c
imul rax, r12
shr rax, 0x3d
cmp eax, 0x81349136
ja 0x140002ff0
lea rdx, [0x141db7048]
movsxd rax, dword [rdx + r8*4]
add rax, rdx
jmp rax
mov eax, dword [0x141dbc3b8]
imul eax, dword [0x141dbc3bc]
imul eax, eax, 0x81c8e231
or eax, 0x640b86f3
imul rcx, rax, 0x41ebf809
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1d
cmp eax, 0x50bd8808
je case.default.0x140002a81
jmp 0x14000321c
xor ecx, ecx
nop word [rax + rax]
mov eax, dword [0x141dbc3a8]
xor edx, edx
div dword [0x141dbc3ac]
imul eax, eax, 0x29df8111
cmp eax, 0x95b0aab2
je case.0x140002a81.2
mov rax, rcx
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [0x141db64e0]
jmp case.0x140002a81.2
mov eax, dword [0x141dbc450]
add eax, dword [0x141dbc454]
and eax, 0x884140c
add eax, 0x9e9b5a16
cmp eax, 0x323f6c03
jae 0x1400031f0
ud2
mov eax, dword [0x141dbc458]
xor edx, edx
div dword [0x141dbc45c]
add eax, 0x497d6038
imul rax, rax, 0x6f0169bf
shr rax, 0x3e
or eax, 0x87587d9c
ud2
ud2