Function at 0x14049f9e5
Capabilities:
Encode data using xor

Disassembly:
push rbp
nop
push 0x4f15dfe7
mov qword [rsp], rsi
nop
mov qword [rsp - 8], rdi
sub rsp, 8
lea rbp, [rsp - 0x1f0]
mov dword [rsp - 0xc], 0x27cba107
sub rsp, 0x1aea52e2
add rsp, 0x1aea4ff2
lea r9, [rsp + 0x62]
xchg rsi, rcx
mov rcx, rsi
xchg rsi, rcx
neg r9
lea r8, [0x14000c382]
mov rcx, rcx
lea rdi, [rsp + 0x62]
nop word [rax + rax]
lea edx, [r9 + rdi]
mov eax, 0x4f9e99ea
sub eax, 0x21403a18
add eax, 0x20923e55
sub eax, 0x35fd445c
add eax, 0x2a3fd63a
mov ecx, edx
mov rcx, rcx
lea rdi, [rdi + 4]
rol eax, cl
lea ecx, [rdx + 1]
xchg r10, r10
xor al, byte [r8 - 2]
lea r8, [r8 + 4]
mov byte [rdi - 6], al
mov dword [rsp - 0x28], 0x7e2320af
mov eax, 0x59145190
sub eax, 0x4acf358
xor eax, 0x36b434ff
sub eax, 0x29086337
add eax, 0x9682875
rol eax, cl
lea ecx, [rdx + 2]
xchg r14, r14
xor al, byte [r8 - 5]
mov byte [rdi - 5], al
mov eax, 0xe6dd805
add eax, 0x4df475ae
xor eax, 0x28901f75
sub eax, 0x31bf22c1
rol eax, cl
mov rbx, rbx
lea ecx, [rdx + 3]
xor al, byte [r8 - 4]
mov byte [rdi - 4], al
xchg r13, r13
mov eax, 0x282a643f
xor eax, 0x7912a8d4
sub eax, 0x340ff0fe
add eax, 0x5463482
add eax, 0x20c41f96
rol eax, cl
xor al, byte [r8 - 3]
mov dword [rsp - 0x40], 0x62d7f40c
mov byte [rdi - 3], al
lea rax, [r9 + rdi]
cmp rax, 0x10
jb 0x14049f90a
xchg r12, r12
lea r9, [rsp + 0x52]
neg r9
lea r8, [0x14000c392]
lea rdi, [rsp + 0x52]
mov dword [rsp - 0x28], edi
nop dword [rax]
lea edx, [r9 + rdi]
mov eax, 0x3e16ba8f
add eax, 0x344eb32c
sub eax, 0x5f4bbf0f
add eax, 0x30198159
mov ecx, edx
lea rdi, [rdi + 4]
mov rbx, rbx
rol eax, cl
lea ecx, [rdx + 1]
xor al, byte [r8 - 2]
mov dword [rsp - 0x14], 0x6f2b046
lea r8, [r8 + 4]
mov byte [rdi - 6], al
mov eax, 0x5cc7f96c
add eax, 0xb8f358c
sub eax, 0x658570e2
xor eax, 0x41e28e13
rol eax, cl
lea ecx, [rdx + 2]
mov dword [rsp - 0x3c], 0x3c0d8ba
xor al, byte [r8 - 5]
mov byte [rdi - 5], al
mov eax, 0x6033bf9d
sub eax, 0x35ab0203
add eax, 0x4d1a6559
xor eax, 0x7078a656
add eax, 0x3b57ab60
rol eax, cl
mov dword [rsp - 0xc], esi
lea ecx, [rdx + 3]
xor al, byte [r8 - 4]
mov byte [rdi - 4], al
mov dword [rsp - 0xc], 0x11dedd5b
mov eax, 0x10a66ad3
xor eax, 0x6dc043f0
xor eax, 0x2a7429ce
sub eax, 0x13ded0e8
rol eax, cl
xor al, byte [r8 - 3]
mov rbp, rbp
mov byte [rdi - 3], al
lea rax, [r9 + rdi]
cmp rax, 0x10
xchg rdi, rdi
jb 0x14049f9ef
lea rcx, [0x1404ec8d0]
mov qword [rsp + 0x310], rbx
call fcn.140050740
mov dword [rsp - 0x20], ebx
xor ebx, ebx
xorps xmm0, xmm0
test al, al
mov dword [rsp - 0x34], ebp
jne 0x14049fb0f
lea rax, [rsi + 8]
xchg r8, rax
mov qword [rsi], r8
xchg r8, rax
xchg rdi, rax
movups xmmword [rdi], xmm0
xchg rdi, rax
xchg r12, rax
movups xmmword [r12 + 0x10], xmm0
xchg r12, rax
xchg r11, rax
movups xmmword [r11 + 0x20], xmm0
xchg r11, rax
xchg rdx, rbx
mov qword [rsi + 0x38], rdx
xchg rdx, rbx
jmp 0x1404a0585
lea rax, [rbp - 0x48]
mov dword [rsp - 0x28], ebp
mov qword [rsp + 0x2d8], r14
mov qword [rbp - 0x50], rax
movabs rcx, 0x1c6d7f5a13cb6c43
xor rcx, 0x28e26fc7
sub rcx, 0x83960fd
add rcx, 0x30d344ad
mov rax, qword [0x1404ec5a0]
not rax
mov dword [rsp - 0x10], 0x7bf045c3
mov qword [rbp - 0x18], rbx
add rax, rcx
movabs rcx, 0x79c5ac393743e10b
add rcx, 0x1b0bdbc4
sub rcx, 0x44246afd
sub rcx, 0xce7fcef
add rcx, 0x18062117
rol rax, 0x10
rol rax, 2
rol rax, 3
rol rax, 0x14
rol rax, 4
rol rax, 2
rol rax, 1
rol rax, 1
xor rax, rcx
xor ecx, ecx
xchg rsp, rbp
movups xmmword [rsp - 0x48], xmm0
xchg rsp, rbp
xchg rbp, rdx
movups xmmword [rdx - 0x38], xmm0
xchg rdx, rbp
xchg rcx, rbp
movups xmmword [rcx - 0x28], xmm0
xchg rbp, rcx
call rax
mov r11, r11
test eax, eax
js 0x1404a0444
mov rax, qword [0x1404ec5b0]
xchg rdx, rdx
lea r9, [rsp + 0x50]
rol rax, 0x17
rol rax, 1
rol rax, 1
rol rax, 1
movabs rcx, 0xd75f26cc6af8b629
sub rcx, 0x1bb9f060
xor rcx, 0x19e7382f
sub rcx, 0x55ca1f13
add rax, rcx
xor edx, edx
xchg rbp, rbp
lea rcx, [rsp + 0x40]
rol rax, 0x1e
rol rax, 1
rol rax, 1
rol rax, 4
rol rax, 1
mov qword [rsp + 0x20], rcx
xchg r14, r14
not rax
lea rcx, [rsp + 0x60]
mov r8d, 0x5a5de1bb
sub r8d, 0x1244141d
add r8d, 0x2f6c6ce4
sub r8d, 0x5c13b033
xor r8d, 0x1b728a58
call rax
test eax, eax
js 0x1404a0444
mov dword [rsp - 0x3c], 0xd39c9b9
mov rcx, qword [rsp + 0x40]
lea r8, [rbp + 0x228]
mov qword [rbp + 0x228], rbx
mov dword [rsp - 0x44], ecx
xor edx, edx
mov rax, qword [rcx]
call qword [rax + 0x28]
test eax, eax
mov rsi, rsi
js 0x1404a0433
mov rcx, qword [rsp + 0x40]
lea r8, [rbp + 0x220]
mov dword [rsp - 0x28], 0x1e727b03
xchg rdx, r12
mov r12, qword [rbp + 0x228]
xchg rdx, r12
xchg r13, rbx
mov qword [rbp + 0x220], r13
xchg rbx, r13
mov qword [rsp + 0x2e8], r12
mov rbp, rbp
mov rax, qword [rcx]
mov qword [rsp + 0x2e0], r13
mov qword [rsp + 0x2d0], r15
call qword [rax + 0x20]
mov dword [rsp - 0x18], 0x7747486d
movabs r15, 0xedf5847231f5afba
add r15, 0x1ff007ba
add r15, 0x1d12fac
xor r15, 0x63c5d843
add r15, 0x689812ac
movabs r12, 0x61fb24bc4202c413
sub r12, 0xb4f0b3a
add r12, 0x381cbc8b
sub r12, 0x2790f45d
add r12, 0x5774efb8
movabs r13, 0x20c54b663607d15a
add r13, 0x3dbf9e02
sub r13, 0x63a0e6a0
sub r13, 0x9e5339a
add r13, 0x7fffffff
add r13, 0x7927f7c6
test eax, eax
js 0x1404a03d1
mov r11, r11
mov rax, qword [0x1404ec400]
movabs rcx, 0x3a70a78639269c14
xor rcx, 0x53706d9b
sub rcx, 0x2c6548f2
sub rcx, 0x25c26477
add rcx, 0x7fffffff
xor rcx, 0xd33483a
xor rax, rcx
mov dword [rsp - 0x24], 0x3b3c56f0
movabs rcx, 0x36cacd8f2e660462
add rcx, 0x43b7576c
xor rcx, 0x64e0ac67
add rcx, 0xabb2d71
add rcx, 0x7fffffff
add rcx, 0x4255ebd0
sub rax, rcx
mov rsp, rsp
movabs rcx, 0x7e3902e3410cd2b8
add rcx, 0xb80dd82
add rcx, 0x213d51f3
xor rcx, 0x7d120718
xor rax, rcx
movabs rcx, 0xdb0d5286003619db
add rcx, 0x3f17fcd1
xor rcx, 0x24d5ffd
add rcx, 0x52becfc
rol rax, 0x1c
rol rax, 0x12
rol rax, 1
rol rax, 1
add rax, rcx
mov r13, r13
movabs rcx, 0x43380804d9f14b4
sub rcx, 0x2329b810
xor rcx, 0x699f292f
add rcx, 0x2d1b3e91
add rcx, 0x6d92309b
xor rax, rcx
lea rcx, [rbp + 0x50]
mov dword [rsp - 0x10], ecx
call rax
lea rcx, [rbp - 0x10]
call fcn.1400a8d10
xchg r8, r14
mov r8, qword [rbp + 0x220]
xchg r14, r8
lea rax, [rbp + 0xc8]
mov dword [rsp - 0x14], esp
xor edx, edx
xchg r9, rax
mov qword [rbp + 0xc0], r9
xchg r9, rax
mov r8d, 0x280a4f14
add r8d, 0x50977551
xor r8d, 0x5e0bb536
xor r8d, 0x26aa7053
lea rcx, [rbp + 0xc8]
call fcn.1400c2100
nop
movabs rdi, 0xffffffff14c85571
xor rdi, 0x349bf6ec
xor rdi, 0x619cbfd6
add rdi, 0x7fffffff
xor rdi, 0x3e30e3b5
mov rdx, rdi
nop dword [rax]
inc rdx
xchg r11, r11
cmp word [r14 + rdx*2], bx
jne 0x14049fef2
xchg rdx, rsp
mov qword [rbp + 0x1c8], rsp
xchg rsp, rdx
lea rcx, [rbp + 0xc0]
mov dword [rsp - 0x24], ecx
inc rdx
call fcn.140038230
test rax, rax
mov dword [rsp - 0x30], 0x11494ae4
je 0x14049ff58
mov r9, qword [rbp + 0x1c8]
xchg r14, r8
mov r14, r8
xchg r14, r8
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
lea rdx, [r9 + 1]
mov dword [rsp - 0x24], esp
call fcn.1400c2c80
xchg r14, rdx
mov rdx, qword [rbp + 0xc0]
xchg rdx, r14
lea rax, [rsp + 0x78]
xorps xmm0, xmm0
xchg rdi, rax
mov qword [rsp + 0x70], rdi
xchg rdi, rax
xchg rsp, r11
movups xmmword [r11 + 0x78], xmm0
xchg rsp, r11
movups xmmword [rbp - 0x78], xmm0
mov rsi, rsi
movups xmmword [rbp - 0x68], xmm0
nop dword [rax]
inc rdi
cmp word [r14 + rdi*2], bx
mov rcx, rcx
jne 0x14049ff90
xchg rdi, rbp
mov rdx, rbp
xchg rbp, rdi
xchg rdi, r9
mov qword [rbp - 0x58], r9
xchg r9, rdi
lea rcx, [rsp + 0x70]
call fcn.140011430
mov edx, 0x45801400
xor edx, 0x4f2c6895
add edx, 0x4334d457
xor edx, 0x7a8343e7
xchg rdx, rdi
mov rdx, rbx
xchg rdi, rdx
cmp qword [rbp - 0x58], rbx
jbe 0x1404a0045
xchg r10, r10
sub r14, rax
mov r8d, 0x52cccefc
sub r8d, 0x47db83cd
xor r8d, 0x7c1fe658
sub r8d, 0x190ff7f6
xor r8d, 0x5ddeb57e
movzx ecx, dx
mov dword [rsp - 0x28], ecx
lea rax, [rax + 2]
and cx, r8w
ror edx, 8
mov dword [rsp - 0x38], 0x5b22f8e0
xor cx, word [rax + r14 - 2]
inc rdi
mov word [rax - 2], cx
mov dword [rsp - 0x1c], edx
cmp rdi, qword [rbp - 0x58]
jb 0x1404a0010
mov byte [rsp + 0x38], bl
lea rdx, [rsp + 0x70]
mov dword [rsp - 0x34], 0x5a227ea2
mov dword [rsp + 0x30], 0x7d3d818
xor dword [rsp + 0x30], 0x3a09d6a4
xor dword [rsp + 0x30], 0x10b9b5ea
xor dword [rsp + 0x30], 0x2d63bb36
lea rcx, [rbp - 0x10]
mov dword [rsp + 0x28], 0x41e6515b
sub dword [rsp + 0x28], 0x321e2711
add dword [rsp + 0x28], 0x19a3245
xor dword [rsp + 0x28], 0x11625c8e
mov r9d, 0x19263772
add r9d, 0x9ca2b7f
xor r9d, 0xf06405c
sub r9d, 0x911fc8d
sub r9d, 0x24e425a0
mov r8d, 0xfa40547
add r8d, 0x21cf704b
xor r8d, 0x4212873
xor r8d, 0x3e847609
sub r8d, 0xbc42b5f
mov dword [rsp + 0x20], 0x673473eb
sub dword [rsp + 0x20], 0x5056116b
xor dword [rsp + 0x20], 0x1c69f536
xor dword [rsp + 0x20], 0xab797b7
call fcn.1400a9b60
xchg rsp, rsp
xchg rcx, r11
mov r11, qword [rsp + 0x70]
xchg r11, rcx
movzx r14d, al
xchg r12, r12
lea rax, [rsp + 0x78]
cmp rcx, rax
jne 0x1404a014e
lea rdi, [rsp + 0x78]
mov r13, r13
xor eax, eax
mov ecx, 0x7e635383
xor ecx, 0x151c5903
sub ecx, 0x67843f90
xor ecx, 0x3facac0
rep stosb byte [rdi], al
jmp 0x1404a015b
call fcn.1400c1b60
mov dword [rsp - 0x40], 0x4aa947e2
mov rcx, qword [rbp + 0xc0]
lea rax, [rbp + 0xc8]
cmp rcx, rax
jne 0x1404a01a6
mov dword [rsp - 0x28], ebp
lea rdi, [rbp + 0xc8]
xor eax, eax
mov ecx, 0x47862491
sub ecx, 0x3009c8f1
add ecx, 0x4b4315af
xor ecx, 0x842778
sub ecx, 0x623b5537
rep stosb byte [rdi], al
mov r13, r13
jmp 0x1404a01ab
call fcn.1400c1b60
test r14b, r14b
je 0x1404a02b3
xchg rdx, rdx
lea r8, [rbp + 0x218]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x10]
xchg r9, r9
call fcn.1400aa360
test al, al
je 0x1404a02b3
mov rax, qword [0x1404ec408]
mov r11, r11
movabs rcx, 0x6f05b91f66e419cf
sub rcx, 0x15fa5cd4
xor rcx, 0x18461f9b
xor rcx, 0x6477bace
mov r8d, dword [rbp + 0x218]
xchg r14, r14
xor rax, rcx
mov rdx, qword [rsp + 0x48]
movabs rcx, 0x11c7bff01bc18f64
xor rcx, 0x390e2556
xor rcx, 0x1b9e435d
xor rcx, 0x6803d120
add rcx, 0x7fffffff
xor rcx, 0x3ec60edd
sub rax, rcx
xchg rsp, rsp
movabs rcx, 0xee24260f7c782ebf
sub rcx, 0x4e128fca
xor rcx, 0x623acabf
xor rcx, 0x3cb65db7
sub rcx, 0x29dc3dfe
xor rax, rcx
movabs rcx, 0x1f87832979e29a44
sub rcx, 0x3f295de7
xor rcx, 0x19788084
add rcx, 0x297fa501
sub rcx, 0x37bfdefc
sub rax, rcx
xchg r10, r10
lea rcx, [rbp + 0x50]
call rax
xchg rcx, r11
mov r11, qword [rsp + 0x48]
xchg r11, rcx
call fcn.1400c1990
mov r10, r10
lea rcx, [rbp - 0x10]
call fcn.1400a8d30
mov rax, qword [0x1404ec410]
lea rcx, [rbp + 0x50]
mov dword [rsp - 0x1c], 0x63e2a777
ror rax, 0x22
ror rax, 1
ror rax, 0xb
ror rax, 1
not rax
ror rax, 5
ror rax, 0xb
ror rax, 8
ror rax, 0xb
ror rax, 1
ror rax, 1
ror rax, 1
not rax
ror rax, 6
not rax
mov dword [rsp - 0x24], 0xdf834d0
call rax
mov rax, qword [0x1404ec278]
mov rcx, qword [rbp + 0x220]
mov rdi, rdi
add rax, r15
rol rax, 1
add rax, r12
mov dword [rsp - 0x24], esi
not rax
rol rax, 3
rol rax, 3
rol rax, 5
rol rax, 1
rol rax, 1
not rax
add rax, r13
mov r13, r13
call rax
mov r8d, 0x66f4b36f
sub r8d, 0x35d9dc2a
sub r8d, 0x26924288
xor r8d, 0xa8894ad
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 8]
xchg rdx, rdx
call fcn.14006e310
xchg r9, rax
mov rdx, r9
xchg r9, rax
lea rcx, [rbp - 0x50]
call fcn.14006d170
mov dword [rsp - 0x24], 0x7b917c9
mov rcx, qword [rbp + 8]
lea rax, [rbp + 0x10]
cmp rcx, rax
jne 0x1404a03c9
mov r10, r10
lea rdi, [rbp + 0x10]
xor eax, eax
mov ecx, 0x2abd43d4
add ecx, 0x4ec7b222
sub ecx, 0x43565c1a
xor ecx, 0x362e99ec
rep stosb byte [rdi], al
jmp 0x1404a03d1
call fcn.1400c1b60
mov rbx, rbx
mov rax, qword [0x1404ec278]
xchg rcx, r8
mov r8, qword [rbp + 0x228]
xchg rcx, r8
add rax, r15
rol rax, 1
mov rdx, rdx
add rax, r12
not rax
rol rax, 7
rol rax, 1
rol rax, 1
rol rax, 1
rol rax, 1
rol rax, 1
rol rax, 1
not rax
add rax, r13
mov r8, r8
call rax
mov r15, qword [rsp + 0x2d0]
mov r13, qword [rsp + 0x2e0]
xchg rdx, r12
mov rdx, qword [rsp + 0x2e8]
xchg r12, rdx
xchg rcx, rbp
mov rbp, qword [rsp + 0x40]
xchg rbp, rcx
mov rax, qword [rcx]
call qword [rax + 0x10]
xchg rcx, r14
mov rcx, qword [rbp - 0x18]
xchg r14, rcx
lea rdi, [rsi + 8]
xchg r8, r8
mov qword [rsi], rdi
xorps xmm0, xmm0
xchg rdi, r15
movups xmmword [r15], xmm0
xchg r15, rdi
xchg rdi, rbx
movups xmmword [rbx + 0x10], xmm0
xchg rdi, rbx
xchg rcx, rdi
movups xmmword [rcx + 0x20], xmm0
xchg rcx, rdi
mov qword [rsi + 0x38], r14
mov rcx, qword [rsi]
mov dword [rsp - 0x2c], 0x1be035a6
cmp rcx, rdi
je 0x1404a0496
call fcn.1400c1b60
cmp r14, 0x18
xchg r13, r13
jbe 0x1404a04ce
lea rcx, [r14 + r14]
call fcn.1400c1e00
mov qword [rsi], rax
xchg r10, r10
test rax, rax
jne 0x1404a04de
mov qword [rsi], rdi
mov dword [rsp - 0x40], 0x1a6da2b3
mov rcx, rbx
jmp 0x1404a04fe
xchg rdi, rdx
mov qword [rsi], rdx
xchg rdx, rdi
xchg r13, rax
mov r13, rdi
xchg r13, rax
xorps xmm0, xmm0
mov r13, r13
xchg rdx, rax
movups xmmword [rdx], xmm0
xchg rdx, rax
xchg rbp, rax
movups xmmword [rbp + 0x10], xmm0
xchg rbp, rax
xchg rbp, rax
movups xmmword [rbp + 0x20], xmm0
xchg rbp, rax
mov rcx, qword [rsi]
xchg r14, r13
mov r13, qword [rsp + 0x2d8]
xchg r14, r13
cmp qword [rsi + 0x38], rbx
mov rsp, rsp
jbe 0x1404a053e
nop dword [rax + rax]
xchg r9, rax
mov r9, qword [rbp - 0x50]
xchg r9, rax
movzx edx, word [rax + rbx*2]
mov word [rcx + rbx*2], dx
xchg r13, r13
inc rbx
cmp rbx, qword [rsi + 0x38]
jb 0x1404a051e
xchg r10, rcx
mov r10, qword [rbp - 0x50]
xchg rcx, r10
lea rax, [rbp - 0x48]
mov dword [rsp - 0x44], ebx
cmp rcx, rax
jne 0x1404a0580
lea rdi, [rbp - 0x48]
mov rdi, rdi
xor eax, eax
mov ecx, 0x2061e264
xor ecx, 0x73e48007
xor ecx, 0x2f30655c
xor ecx, 0x7cb5070f
rep stosb byte [rdi], al
jmp 0x1404a0585
call fcn.1400c1b60
mov rbx, qword [rsp + 0x310]
lea rdi, [rsp + 0x50]
mov dword [rsp - 0x2c], esi
xor eax, eax
mov ecx, 0x4b5223e
add ecx, 0x42aca26a
sub ecx, 0x2fb4b786
sub ecx, 0x17ad0d12
rep stosb byte [rdi], al
xchg r8, r8
mov ecx, 0x6bd3b653
xor ecx, 0x1e7beec1
sub ecx, 0x3a4305f3
xor ecx, 0x3b65528f
lea rdi, [rsp + 0x60]
rep stosb byte [rdi], al
mov rax, rsi
mov dword [rsp - 0x28], edi
add rsp, 0x140d67a5
sub rsp, 0x140d64b5
nop
mov rdi, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rsi, qword [rsp - 8]
nop
mov rbp, qword [rsp]
add rsp, 8
ret