Function at 0x14046e040
Capabilities:
Encode data using xor
Encrypt data using chaskey

Disassembly:
push rbp
nop
mov qword [rsp - 8], rbx
sub rsp, 8
nop
mov qword [rsp - 8], rsi
sub rsp, 8
nop
mov qword [rsp - 8], rdi
sub rsp, 8
lea rbp, [rsp - 0x1e8]
mov dword [rsp - 0x34], ebx
sub rsp, 0x2e8
xor ebx, ebx
lea rdi, [0x140000000]
xchg rbx, rbx
mov edx, ebx
mov rsi, rcx
nop dword [rax]
mov dword [rsp - 0x38], 0x3cd34e24
nop word [rax + rax]
mov ecx, edx
mov eax, 0xe9cacac
add eax, 0x70c1bbc2
xor eax, 0x7ec5db1d
xor eax, 0x184d131
rol eax, cl
xor al, byte [rdx + rdi + 0xc370]
xchg rbx, rbx
mov byte [rsp + rdx + 0x60], al
inc rdx
cmp rdx, 0x10
jb 0x14046e09a
xchg r11, r11
xchg rdx, rbx
mov rbx, rdx
xchg rbx, rdx
mov ecx, edx
mov eax, 0x4c19a77d
sub eax, 0xd00e215
add eax, 0x3680cbae
sub eax, 0x757a2ed4
rol eax, cl
xor al, byte [rdx + rdi + 0xc380]
mov byte [rsp + rdx + 0x50], al
xchg r8, r8
inc rdx
cmp rdx, 0x10
jb 0x14046e0d9
lea rcx, [0x1404a38a0]
mov dword [rsp - 0x30], 0x3d62eb6
call fcn.140058610
xorps xmm0, xmm0
test al, al
xchg rbp, rbp
jne 0x14046e157
lea rax, [rsi + 8]
mov qword [rsi], rax
xchg r11, rax
movups xmmword [r11], xmm0
xchg r11, rax
xchg r8, rax
movups xmmword [r8 + 0x10], xmm0
xchg r8, rax
xchg rbx, rax
movups xmmword [rbx + 0x20], xmm0
xchg rbx, rax
mov qword [rsi + 0x38], rbx
jmp 0x14046ed17
mov rdx, qword [0x1404a30e0]
lea rax, [rbp - 0x48]
rol rdx, 8
rol rdx, 2
rol rdx, 1
movabs rcx, 0xa8a5e0dd09b055da
xor rcx, 0x7fb60c0f
xor rcx, 0x4913ef4d
add rcx, 0x7fffffff
add rcx, 0x9fbe996
add rdx, rcx
xchg r14, rax
mov qword [rbp - 0x50], r14
xchg r14, rax
not rdx
xchg r14, rbp
mov qword [rsp + 0x2d8], rbp
xchg rbp, r14
ror rdx, 2
ror rdx, 1
ror rdx, 4
ror rdx, 2
ror rdx, 1
movabs rax, 0x20ade67c31aede6b
add rax, 0x33bd45a8
sub rax, 0x3b434b35
xor rax, 0x504a053f
sub rax, 0xf6cdb29
add rdx, rax
mov r15, r15
xchg rdi, rbx
mov qword [rbp - 0x18], rdi
xchg rbx, rdi
rol rdx, 4
rol rdx, 0x26
rol rdx, 2
rol rdx, 6
rol rdx, 1
xor ecx, ecx
mov dword [rsp - 0x3c], 0x5fb4aa01
xchg rbp, r9
movups xmmword [r9 - 0x48], xmm0
xchg rbp, r9
movups xmmword [rbp - 0x38], xmm0
mov dword [rsp - 0x1c], ebx
movups xmmword [rbp - 0x28], xmm0
call rdx
test eax, eax
js 0x14046ebc1
xchg rcx, rcx
mov rax, qword [0x1404a30f0]
lea r9, [rsp + 0x50]
ror rax, 0x10
ror rax, 7
ror rax, 1
movabs rcx, 0x6f761f4a0f5009b4
add rcx, 0x38633fc0
xor rcx, 0x32f5d0a2
sub rcx, 0x223bff69
add rcx, 0x7fffffff
add rcx, 0x1d210d31
add rax, rcx
mov dword [rsp - 0x28], 0x78420c85
xor edx, edx
movabs rcx, 0x6cafda2e0de04dd8
xor rcx, 0x5aa99a3c
xor rcx, 0x2b65848c
xor rcx, 0x143711ce
xor rcx, 0x71abdfba
xor rax, rcx
movabs rcx, 0x69fb47083b1dc279
xor rcx, 0x4e53c100
xor rcx, 0x335eb3d
sub rcx, 0x2486a322
add rcx, 0x98553bc
not rax
mov dword [rsp - 0x20], 0x7695a1a7
rol rax, 0x1a
rol rax, 0x12
rol rax, 4
rol rax, 1
rol rax, 3
lea r8d, [rdx + 0x17]
xchg r15, r15
add rax, rcx
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x20], rcx
mov r13, r13
lea rcx, [rsp + 0x60]
ror rax, 3
call rax
test eax, eax
xchg r11, r11
js 0x14046ebc1
xchg rcx, rdx
mov rdx, qword [rsp + 0x40]
xchg rdx, rcx
lea r8, [rbp + 0x228]
xchg rbx, r9
mov qword [rbp + 0x228], r9
xchg rbx, r9
xor edx, edx
xchg r12, rax
mov r12, qword [rcx]
xchg r12, rax
call qword [rax + 0x28]
test eax, eax
mov r10, r10
js 0x14046ebae
xchg rcx, r11
mov r11, qword [rsp + 0x40]
xchg rcx, r11
lea r8, [rbp + 0x220]
mov dword [rsp - 0x20], 0x42c18662
xchg r13, rdx
mov r13, qword [rbp + 0x228]
xchg rdx, r13
xchg r9, rbx
mov qword [rbp + 0x220], r9
xchg r9, rbx
xchg r9, r12
mov qword [rsp + 0x310], r9
xchg r9, r12
xchg r12, rax
mov r12, qword [rcx]
xchg r12, rax
xchg r13, r15
mov qword [rsp + 0x2e0], r15
xchg r13, r15
mov qword [rsp + 0x2d0], r15
xchg r8, r8
call qword [rax + 0x20]
movabs r15, 0x152b74ad5c403a94
xor r15, 0x2ec08a48
sub r15, 0x489ad72
sub r15, 0x68831fe2
add r15, 0x7fffffff
add r15, 0x3a08f074
movabs r12, 0x462febf273fedf16
sub r12, 0x68686770
xor r12, 0x420ba88a
add r12, 0x61565ece
movabs r13, 0x72c1d988192b2c75
xor r13, 0x52f3cb09
add r13, 0x5c7c7fe
add r13, 0x1da8cf0a
sub r13, 0x32ecb5a
test eax, eax
js 0x14046eb29
mov rax, qword [0x1404a3888]
xchg r9, r9
movabs rcx, 0x4496280147b1f8db
add rcx, 0x2ee37742
sub rcx, 0x3a3fdb55
sub rcx, 0xc8c6904
add rcx, 0x701ff385
not rax
ror rax, 0x21
ror rax, 5
ror rax, 2
ror rax, 1
xor rax, rcx
movabs rcx, 0x5756cf51549d16a4
xor rcx, 0x394b23c2
sub rcx, 0x415ef1a
sub rcx, 0x210f922a
add rcx, 0x7c38a7ba
sub rax, rcx
movabs rcx, 0xca956ee27a520da2
xor rcx, 0x5dbfe61c
add rcx, 0x4c84d9e8
sub rcx, 0x713b934e
add rcx, 0x7fffffff
xor rcx, 0x38f7716e
ror rax, 6
mov dword [rsp - 0x10], 0x5c5fce8a
add rax, rcx
lea rcx, [rbp + 0x50]
call rax
lea rcx, [rbp - 0x10]
mov r13, r13
call fcn.1400837a0
mov r14, qword [rbp + 0x220]
lea rax, [rbp + 0xc8]
mov dword [rsp - 0x14], ebp
xor edx, edx
xchg rsp, rax
mov qword [rbp + 0xc0], rsp
xchg rsp, rax
mov r8d, 0x184487a
add r8d, 0x25ce8ac8
xor r8d, 0x3479d9c4
xor r8d, 0x58f673d9
sub r8d, 0x4bdd785f
lea rcx, [rbp + 0xc8]
mov dword [rsp - 0x2c], 0x5da4632
call fcn.140099800
nop
movabs rdi, 0xffffffff075966d3
xor rdi, 0x469b94dd
xor rdi, 0x3cc7297a
sub rdi, 0x349a9f89
add rdi, 0x7fffffff
xor rdi, 0x3794c415
xchg rdx, rsp
mov rsp, rdi
xchg rdx, rsp
inc rdx
cmp word [r14 + rdx*2], bx
mov rbp, rbp
jne 0x14046e57c
mov qword [rbp + 0x1c8], rdx
lea rcx, [rbp + 0xc0]
mov dword [rsp - 0x34], 0x3c90129c
inc rdx
call fcn.14003f0e0
test rax, rax
mov dword [rsp - 0x14], 0x5c06f7bc
je 0x14046e5db
mov r9, qword [rbp + 0x1c8]
xchg r14, r13
mov r8, r13
xchg r14, r13
mov rcx, rax
lea rdx, [r9 + 1]
mov r11, r11
call fcn.14009a230
mov r14, qword [rbp + 0xc0]
lea rax, [rsp + 0x78]
mov rbp, rbp
xorps xmm0, xmm0
mov qword [rsp + 0x70], rax
xchg rcx, rsp
movups xmmword [rcx + 0x78], xmm0
xchg rcx, rsp
xchg rbp, rsp
movups xmmword [rsp - 0x78], xmm0
xchg rbp, rsp
xchg r10, rbp
movups xmmword [r10 - 0x68], xmm0
xchg rbp, r10
inc rdi
mov dword [rsp - 0x30], 0x7d96c393
cmp word [r14 + rdi*2], bx
jne 0x14046e612
xchg rdi, rbx
mov rdx, rbx
xchg rbx, rdi
mov qword [rbp - 0x58], rdi
lea rcx, [rsp + 0x70]
mov dword [rsp - 0xc], 0x36aa3eec
call fcn.14000ee10
mov edx, 0x65c27c96
sub edx, 0x38ca7507
add edx, 0x4871240c
sub edx, 0x14248316
xor edx, 0x7bf4f892
mov rdi, rbx
xchg r14, r14
cmp qword [rbp - 0x58], rbx
jbe 0x14046e6d1
sub r14, rax
mov r8d, 0x6f611d09
sub r8d, 0x31e912d7
sub r8d, 0xc10adeb
sub r8d, 0x2533a2d0
xor r8d, 0xc33b988
movzx ecx, dx
lea rax, [rax + 2]
mov dword [rsp - 0x10], ebx
and cx, r8w
ror edx, 6
ror edx, 1
ror edx, 1
xor cx, word [r14 + rax - 2]
mov dword [rsp - 0x3c], 0x5077928f
inc rdi
mov word [rax - 2], cx
cmp rdi, qword [rbp - 0x58]
jb 0x14046e699
xchg rbx, rbx
mov byte [rsp + 0x38], bl
lea rdx, [rsp + 0x70]
mov dword [rsp + 0x30], 0x5df3e43e
sub dword [rsp + 0x30], 0x1bf17c10
sub dword [rsp + 0x30], 0x2853430d
add dword [rsp + 0x30], 0x561504e2
sub dword [rsp + 0x30], 0x6fc429a3
lea rcx, [rbp - 0x10]
mov dword [rsp + 0x28], 0x5ebfc5b3
add dword [rsp + 0x28], 0x6a23c3
sub dword [rsp + 0x28], 0x3aaf200c
xor dword [rsp + 0x28], 0x174d6905
sub dword [rsp + 0x28], 0x3337a06e
mov r9d, 0x2b8fd763
xor r9d, 0x32505631
add r9d, 0x35bb3b70
add r9d, 0x21e3226c
xor r9d, 0x717ddfae
mov r8d, 0x22a0c8d
xor r8d, 0x41edeb6c
sub r8d, 0x88352a3
sub r8d, 0x3b3294b5
mov dword [rsp + 0x20], 0x1ef16d7e
add dword [rsp + 0x20], 0x14782bde
add dword [rsp + 0x20], 0x416be5c6
xor dword [rsp + 0x20], 0x74d57f23
call fcn.1400845b0
mov dword [rsp - 0x28], ebx
xchg r14, rcx
mov r14, qword [rsp + 0x70]
xchg rcx, r14
movzx r14d, al
mov dword [rsp - 0x20], 0x3de3dd14
lea rax, [rsp + 0x78]
cmp rcx, rax
jne 0x14046e7eb
mov dword [rsp - 0x30], edi
lea rdi, [rsp + 0x78]
xor eax, eax
mov ecx, 0x56bdb150
sub ecx, 0x4ef67977
xor ecx, 0x15607cbd
xor ecx, 0x5b79d3a0
sub ecx, 0x49de9894
rep stosb byte [rdi], al
mov r10, r10
jmp 0x14046e7f0
call fcn.140099240
mov rcx, qword [rbp + 0xc0]
xchg rbp, rbp
lea rax, [rbp + 0xc8]
cmp rcx, rax
jne 0x14046e83d
mov dword [rsp - 0x20], 0x5e3991c9
lea rdi, [rbp + 0xc8]
xor eax, eax
mov ecx, 0x2dc3f49f
xor ecx, 0x3518babe
add ecx, 0x1913890
sub ecx, 0x1a6c85b1
rep stosb byte [rdi], al
mov dword [rsp - 0xc], edx
jmp 0x14046e845
call fcn.140099240
mov r15, r15
test r14b, r14b
je 0x14046e959
lea r8, [rbp + 0x218]
xchg r11, r11
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x10]
call fcn.140084d70
xchg rbp, rbp
test al, al
je 0x14046e959
mov rax, qword [0x1404a3890]
xchg rsp, rsp
movabs rcx, 0x45249d45340c6688
xor rcx, 0x78cf3583
sub rcx, 0x407cec0
add rcx, 0x7f32ddce
mov r8d, dword [rbp + 0x218]
mov dword [rsp - 0x34], ebp
not rax
mov rdx, qword [rsp + 0x48]
rol rax, 5
rol rax, 0xd
rol rax, 1
add rax, rcx
mov rbp, rbp
movabs rcx, 0x5b3a483512a1d13e
add rcx, 0x65ca2345
xor rcx, 0x6d18cd28
xor rcx, 0x2168cf82
add rcx, 0x6618b575
xor rax, rcx
mov rdx, rdx
movabs rcx, 0x7f41494b748013b0
xor rcx, 0x54f5e5a8
add rcx, 0x871596e
sub rcx, 0x1287f94b
sub rcx, 0x16074f2e
sub rax, rcx
mov r15, r15
movabs rcx, 0x7ac150424da933a5
xor rcx, 0x535f71a
add rcx, 0x2ed56af5
add rcx, 0x7fffffff
xor rcx, 0xca126da
xor rax, rcx
lea rcx, [rbp + 0x50]
rol rax, 2
rol rax, 1
call rax
mov r15, r15
mov rcx, qword [rsp + 0x48]
call fcn.140099080
lea rcx, [rbp - 0x10]
call fcn.1400837c0
mov rsp, rsp
movabs rcx, 0x6ad1e1f44f90d310
sub rcx, 0x12105196
xor rcx, 0x1a22e82
xor rcx, 0x69927ef3
add rcx, 0x7fffffff
xor rcx, 0x47e1a4c6
movabs rax, 0x42bad712773feaaa
sub rax, 0x2cdc0efa
sub rax, 0x2559f99c
sub rax, 0x207c9a67
add rcx, qword [0x1404a3898]
xchg rdi, rdi
ror rcx, 0x2d
ror rcx, 2
ror rcx, 3
ror rcx, 9
ror rcx, 1
ror rcx, 1
add rax, rcx
xchg r13, r13
movabs rcx, 0x25c591d08bbeb4e
xor rcx, 0x61e0b350
xor rcx, 0x525d5cf2
add rcx, 0xaf4624b
sub rcx, 0x1c2d09b6
not rax
rol rax, 7
rol rax, 0x19
rol rax, 8
rol rax, 2
rol rax, 1
add rax, rcx
lea rcx, [rbp + 0x50]
mov dword [rsp - 0xc], edi
not rax
call rax
mov rax, qword [0x1404a3710]
xchg r13, r13
movabs r14, 0x129694b21c0ba0b2
add r14, 0x4f3afc2d
xor r14, 0x7d604d34
add r14, 0x6b23f0b
sub r14, 0x66dd652
xchg r8, rcx
mov r8, qword [rbp + 0x220]
xchg r8, rcx
rol rax, 0x11
rol rax, 0x10
rol rax, 2
rol rax, 1
rol rax, 1
add rax, r15
mov dword [rsp - 0x10], 0x7700ba50
xor rax, r12
ror rax, 2
ror rax, 6
ror rax, 1
ror rax, 1
add rax, r13
xchg rsp, rsp
xor rax, r14
call rax
mov r8d, 0x52a08f11
xor r8d, 0x2e02c0d6
xor r8d, 0x763a136
xor r8d, 0x7bc1eee1
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 8]
call fcn.140053e70
mov r15, r15
xchg r11, rdx
mov r11, rax
xchg rdx, r11
lea rcx, [rbp - 0x50]
mov dword [rsp - 0x24], ecx
call fcn.140052cc0
mov rcx, qword [rbp + 8]
lea rax, [rbp + 0x10]
cmp rcx, rax
mov dword [rsp - 0x3c], 0x56f853a6
jne 0x14046eb1f
lea rdi, [rbp + 0x10]
xor eax, eax
mov ecx, 0xb7a3e72
xor ecx, 0x13ab88ec
add ecx, 0x6632b25b
sub ecx, 0x7f0468c9
rep stosb byte [rdi], al
mov dword [rsp - 0x40], 0x318929b7
jmp 0x14046eb4f
call fcn.140099240
jmp 0x14046eb4f
movabs r14, 0x129694b258d79096
xor r14, 0x13ae32dd
add r14, 0x7aa435f
sub r14, 0x18a7f8b0
sub r14, 0x2410b256
mov rax, qword [0x1404a3710]
mov dword [rsp - 0x34], esp
mov rcx, qword [rbp + 0x228]
rol rax, 0x25
add rax, r15
xor rax, r12
mov dword [rsp - 0x10], 0x41c432a3
ror rax, 4
ror rax, 5
ror rax, 1
add rax, r13
mov dword [rsp - 0x1c], esi
xor rax, r14
call rax
mov r15, qword [rsp + 0x2d0]
xchg r8, r13
mov r8, qword [rsp + 0x2e0]
xchg r8, r13
xchg r12, rcx
mov rcx, qword [rsp + 0x310]
xchg r12, rcx
mov rcx, qword [rsp + 0x40]
xchg r13, rax
mov r13, qword [rcx]
xchg r13, rax
call qword [rax + 0x10]
mov dword [rsp - 0x14], ecx
mov r14, qword [rbp - 0x18]
lea rdi, [rsi + 8]
xchg r8, rdi
mov qword [rsi], r8
xchg rdi, r8
xorps xmm0, xmm0
mov r13, r13
xchg r13, rdi
movups xmmword [r13], xmm0
xchg rdi, r13
xchg rdi, r9
movups xmmword [r9 + 0x10], xmm0
xchg r9, rdi
movups xmmword [rdi + 0x20], xmm0
mov qword [rsi + 0x38], r14
xchg r9, r9
mov rcx, qword [rsi]
cmp rcx, rdi
je 0x14046ec0d
mov rdx, rdx
call fcn.140099240
cmp r14, 0x18
jbe 0x14046ec4e
mov rsi, rsi
lea rcx, [r14 + r14]
call fcn.140099540
xchg r14, rax
mov qword [rsi], r14
xchg r14, rax
test rax, rax
jne 0x14046ec58
mov dword [rsp - 0x18], ecx
xchg r10, rdi
mov qword [rsi], r10
xchg r10, rdi
xchg rbx, rcx
mov rbx, rcx
xchg rcx, rbx
jmp 0x14046ec81
mov qword [rsi], rdi
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
xorps xmm0, xmm0
xchg r14, r14
xchg r13, rax
movups xmmword [r13], xmm0
xchg r13, rax
xchg r14, rax
movups xmmword [r14 + 0x10], xmm0
xchg r14, rax
xchg rcx, rax
movups xmmword [rcx + 0x20], xmm0
xchg rcx, rax
xchg r10, rcx
mov r10, qword [rsi]
xchg r10, rcx
mov r14, qword [rsp + 0x2d8]
cmp qword [rsi + 0x38], rbx
jbe 0x14046ecca
xchg r13, r13
nop word [rax + rax]
xchg r12, rax
mov r12, qword [rbp - 0x50]
xchg r12, rax
movzx edx, word [rax + rbx*2]
mov dword [rsp - 0x14], 0x7de91d2c
mov word [rcx + rbx*2], dx
inc rbx
cmp rbx, qword [rsi + 0x38]
jb 0x14046eca1
mov dword [rsp - 0x3c], ecx
mov rcx, qword [rbp - 0x50]
lea rax, [rbp - 0x48]
cmp rcx, rax
mov dword [rsp - 0x3c], edi
jne 0x14046ed0f
lea rdi, [rbp - 0x48]
xor eax, eax
mov rbp, rbp
mov ecx, 0x6844046d
xor ecx, 0x7d03b9de
add ecx, 0x48a7c186
sub ecx, 0x14dec8b2
sub ecx, 0x4910b657
rep stosb byte [rdi], al
xchg r8, r8
jmp 0x14046ed17
call fcn.140099240
mov r14, r14
xor eax, eax
lea rdi, [rsp + 0x50]
mov ecx, 0x6ee469b
add ecx, 0x5359ebd8
xor ecx, 0x200d40c2
xor ecx, 0x37baec4c
xor ecx, 0x4dff9eed
rep stosb byte [rdi], al
xchg rsi, rsi
mov ecx, 0x17965017
add ecx, 0xaa683ca
xor ecx, 0x437402f3
xor ecx, 0x7f3a8d11
sub ecx, 0x1e725bf3
lea rdi, [rsp + 0x60]
xchg rbp, rbp
rep stosb byte [rdi], al
mov rax, rsi
neg rsp
add rsp, 0xfffffffffffffd18
neg rsp
nop
add rsp, 8
mov rdi, qword [rsp - 8]
nop
add rsp, 8
mov rsi, qword [rsp - 8]
pop rbx
nop
mov rbp, qword [rsp]
add rsp, 8
ret