Function at 0x1404b957e
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp - 0xc], ebx
mov qword [rsp + 0x10], rdx
xchg rcx, rbp
mov qword [rsp + 8], rbp
xchg rcx, rbp
nop
sub rsp, 8
mov qword [rsp], rbp
nop
sub rsp, 8
mov qword [rsp], rsi
push rdi
nop
sub rsp, 8
mov qword [rsp], r12
nop
sub rsp, 8
mov qword [rsp], r14
nop
mov qword [rsp - 8], r15
sub rsp, 8
lea rbp, [rsp - 0x1a8]
mov dword [rsp - 0x24], 0x49db3e91
neg rsp
sub rsp, 0xfffffffffffffd58
neg rsp
mov ecx, dword [r8]
xchg r10, r10
mov edx, 0x323eeb86
xor edx, 0x76fb81f4
xor edx, 0x6ece567c
xor edx, 0x9207213
xor edx, 0x232b4e3f
add rcx, r9
xchg rbx, r9
mov r12, rbx
xchg rbx, r9
xchg r8, rsi
mov r8, rsi
xchg r8, rsi
call fcn.1400bd8a0
mov r10, r10
xchg r8, rax
mov r14, r8
xchg r8, rax
test rax, rax
je 0x1404b9e96
inc r14
mov r8, r8
mov edx, 0x69f13cbb
sub edx, 0x20199c19
xor edx, 0x6883abe8
sub edx, 0x21540b28
xchg rcx, r15
mov r15, r14
xchg r15, rcx
call fcn.1400bd8a0
mov dword [rsp - 0x18], 0x7b7a3448
xchg r13, rax
mov qword [rbp + 0x1f0], r13
xchg r13, rax
mov rdi, rax
mov dword [rsp - 0x3c], 0x75b687dc
test rax, rax
je 0x1404b9e96
mov edx, 0x140c44c
add edx, 0x7d229c6f
sub edx, 0x3f08c5d9
sub edx, 0x3f5049cd
sub edx, 0xa510b
xchg rcx, r14
mov r14, rcx
xchg rcx, r14
call fcn.1400bd8a0
xchg r10, r15
mov r10, rax
xchg r15, r10
test rax, rax
xchg rsi, rsi
je 0x1404b9e96
cmp rdi, rax
ja 0x1404b9e96
xchg rbx, r14
mov qword [rsp + 0x2a0], r14
xchg rbx, r14
mov ebx, edi
mov dword [rsp - 0x24], 0x1a98721b
sub ebx, r14d
mov qword [rsp + 0x298], r13
lea ecx, [rbx + 1]
movsxd rdi, ecx
xchg r15, r15
xchg rcx, rdx
mov rdx, rdi
xchg rcx, rdx
call fcn.1400bbf80
mov r11, r11
movsxd r9, ebx
xchg r9, r8
mov r9, r14
xchg r8, r9
xchg rdi, rdx
mov rdi, rdx
xchg rdx, rdi
xchg r10, rcx
mov r10, rax
xchg r10, rcx
mov r13, rax
call fcn.1400bdad0
mov r10, r10
lea rax, [rsp + 0x78]
xor edx, edx
mov r8d, 0x54158cc1
sub r8d, 0x2ba8bcfb
add r8d, 0x52d2f1bf
sub r8d, 0x7b3fc085
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x78]
call fcn.1400bc6c0
xchg rdx, rdx
nop
movabs r14, 0xffffffff24e638ec
xor r14, 0x7502d76f
add r14, 0x197009f3
add r14, 0x7fffffff
add r14, 0x14ab068a
xchg r14, r13
mov r8, r13
xchg r13, r14
nop dword [rax + rax]
inc r8
cmp byte [r8 + r13], 0
mov dword [rsp - 0x18], esp
jne 0x1404b970f
xchg rdx, r13
mov r13, rdx
xchg r13, rdx
lea rcx, [rsp + 0x70]
call fcn.1400a16c0
xchg r9, rdi
mov r9, qword [rsp + 0x70]
xchg rdi, r9
lea rax, [rsp + 0x38]
xorps xmm0, xmm0
mov dword [rsp - 0x18], edi
xchg r12, rax
mov qword [rsp + 0x30], r12
xchg r12, rax
xchg rbp, rsp
movups xmmword [rbp + 0x38], xmm0
xchg rbp, rsp
xchg r14, r15
mov rdx, r15
xchg r14, r15
xchg rsp, rbx
movups xmmword [rbx + 0x48], xmm0
xchg rsp, rbx
xchg rsp, r12
movups xmmword [r12 + 0x58], xmm0
xchg rsp, r12
nop dword [rax + rax]
mov rsp, rsp
inc rdx
cmp word [rdi + rdx*2], 0
jne 0x1404b9785
mov r14, r14
lea rcx, [rsp + 0x30]
xchg rcx, rdx
mov qword [rsp + 0x68], rcx
xchg rcx, rdx
call fcn.140018ab0
xor ebx, ebx
mov r9, r9
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
mov ecx, 0x3154d632
xor ecx, 0x3a8057f8
xor ecx, 0x4d65122a
xor ecx, 0xba2c612
mov r8d, ebx
cmp qword [rsp + 0x68], rbx
mov dword [rsp - 0x10], 0x13db6d1f
jbe 0x1404b9844
sub rdi, rax
mov r9d, 0x2cad7a06
add r9d, 0x190511af
xor r9d, 0x2ee226fa
xor r9d, 0x6b50adb0
nop word [rax + rax]
movzx eax, cx
mov dword [rsp - 0x18], 0xe9040ab
lea rdx, [rdx + 2]
and ax, r9w
ror ecx, 3
ror ecx, 5
xor ax, word [rdi + rdx - 2]
inc r8
mov dword [rsp - 0x3c], 0x5a12ee81
mov word [rdx - 2], ax
cmp r8, qword [rsp + 0x68]
jb 0x1404b980c
mov rcx, qword [rsp + 0x70]
mov r12, r12
lea rax, [rsp + 0x78]
cmp rcx, rax
jne 0x1404b9888
mov rcx, rcx
lea rdi, [rsp + 0x78]
xor eax, eax
mov ecx, 0x2f077b84
xor ecx, 0x6d0c4bae
sub ecx, 0x162683b
sub ecx, 0xd23fe19
xor ecx, 0x3384c8d6
rep stosb byte [rdi], al
jmp 0x1404b988d
call fcn.1400bc0d0
xchg r10, r13
mov rcx, r10
xchg r13, r10
call fcn.1400bbf90
mov r8, r8
xchg r12, rdi
mov r12, qword [rbp + 0x1f0]
xchg rdi, r12
mov edx, 0x7295a4e1
xor edx, 0x1f63b9d1
sub edx, 0x60850959
add edx, 0x70d3d8d
sub edx, 0x147e5142
lea rcx, [rdi + 1]
mov rdx, rdx
call fcn.1400bd8a0
mov r13, rax
test rax, rax
mov dword [rsp - 0x28], 0x619efb7e
je 0x1404b9bf5
cmp rax, r15
jae 0x1404b9bf5
inc r13
mov dword [rsp - 0x10], 0x3b0267d0
mov edx, 0x40285280
sub edx, 0x232dcbfc
xor edx, 0x7ef01cb2
sub edx, 0x620a9a14
xchg r13, r15
mov rcx, r15
xchg r15, r13
call fcn.1400bd8a0
mov dword [rsp - 0x24], esp
mov qword [rbp + 0x1f0], rax
test rax, rax
je 0x1404b9e3f
mov ebx, eax
xchg r14, r14
sub ebx, r13d
lea ecx, [rbx + 1]
movsxd rdi, ecx
mov dword [rsp - 0x40], 0x172c41f8
xchg rdi, r8
mov rcx, r8
xchg rdi, r8
call fcn.1400bbf80
mov dword [rsp - 0xc], 0x1b014849
movsxd r9, ebx
mov r8, r13
xchg rdx, rdi
mov rdi, rdx
xchg rdi, rdx
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
xchg r12, r15
mov r15, rax
xchg r15, r12
call fcn.1400bdad0
mov dword [rsp - 0x28], ebp
mov ecx, 0x2afa034e
add ecx, 0x183bbd5
add ecx, 0x5005bd62
sub ecx, 0x7c837bdd
call fcn.1400bbf80
test rax, rax
je 0x1404b99e1
mov dword [rsp - 0x34], ebp
mov r8d, 0x515a5ee6
sub r8d, 0x360cbeba
add r8d, 0x4219e198
sub r8d, 0x5d6781c3
lea rdx, [rsp + 0x30]
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
call fcn.1404b8bd0
xchg rsi, rsi
xchg rdi, r11
mov r11, qword [rbp + 0x1e8]
xchg rdi, r11
lea rcx, [rbp + 0x88]
xor edx, edx
mov r12, r12
mov r8d, 0x6cafa99
add r8d, 0x386e29fc
add r8d, 0x38973c26
sub r8d, 0x77d05fbb
mov qword [rdi], rax
lea rax, [rbp + 0x88]
mov rbx, rbx
xchg rdx, rax
mov qword [rbp + 0x80], rdx
xchg rdx, rax
call fcn.1400bc6c0
nop dword [rax]
inc r14
mov dword [rsp - 0x18], 0x377511fc
cmp byte [r12 + r14], 0
jne 0x1404b9a36
xchg r14, r11
mov r8, r11
xchg r11, r14
lea rcx, [rbp + 0x80]
mov rdx, r12
mov rbx, rbx
call fcn.1400a16c0
xchg r12, rcx
mov r12, qword [rdi]
xchg rcx, r12
mov rdx, qword [rbp + 0x80]
mov dword [rsp - 0x44], ecx
sub rcx, 0xffffffffffffffb8
call fcn.14006c5d0
xchg rcx, rbx
mov rbx, qword [rbp + 0x80]
xchg rcx, rbx
lea rax, [rbp + 0x88]
mov dword [rsp - 0x14], ebx
cmp rcx, rax
jne 0x1404b9ad7
lea rdi, [rbp + 0x88]
xor eax, eax
xchg r14, r14
mov ecx, 0x3d4a57f0
sub ecx, 0x124934bc
add ecx, 0x3c5d40d9
sub ecx, 0x675e630d
rep stosb byte [rdi], al
mov dword [rsp - 0x14], 0x65ec8381
jmp 0x1404b9adc
call fcn.1400bc0d0
xchg rsp, r12
mov rcx, rsp
xchg r12, rsp
call fcn.1400bbf90
mov rcx, qword [rbp + 0x1f0]
mov r10, r10
cmp rcx, r15
jbe 0x1404b9b2c
mov edx, 0x604b1288
sub edx, 0x2206dd64
add edx, 0x2c315449
sub edx, 0x6a758963
call fcn.1400bd8a0
xchg r15, rax
mov rax, r15
xchg r15, rax
test rax, rax
xchg r14, r14
je 0x1404b9e3f
sub r15d, dword [rbp + 0x1f8]
inc r15d
mov dword [rsp - 0x10], 0x57b4c961
mov dword [rsi], r15d
mov bl, 0x74
sub bl, 0x65
xor bl, 0x56
xor bl, 0x58
xchg rcx, r14
mov r14, qword [rsp + 0x30]
xchg rcx, r14
lea rax, [rsp + 0x38]
mov dword [rsp - 0x1c], 0x8c29654
xchg r9, r13
mov r9, qword [rsp + 0x298]
xchg r13, r9
cmp rcx, rax
mov dword [rsp - 0x10], esi
jne 0x1404b9e49
xor eax, eax
lea rdi, [rsp + 0x38]
mov ecx, 0x776b8d18
sub ecx, 0x759361d0
add ecx, 0x4590867a
xor ecx, 0x4768b1f2
rep stosb byte [rdi], al
mov r12, r12
movzx eax, bl
xchg r11, rbx
mov r11, qword [rsp + 0x2a0]
xchg rbx, r11
neg rsp
add rsp, 0xfffffffffffffd58
neg rsp
nop
mov r15, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
add rsp, 8
mov r12, qword [rsp - 8]
nop
mov rdi, qword [rsp]
add rsp, 8
nop
mov rsi, qword [rsp]
add rsp, 8
pop rbp
mov dword [rsp - 0x28], ebx
ret
mov edx, 0x135df99e
add edx, 0x5ac2ff32
xor edx, 0x7c2a2f17
xor edx, 0x181ec8c9
sub edx, 0xa141e93
lea rcx, [rdi + 1]
mov dword [rsp - 0x1c], esp
call fcn.1400bd8a0
test rax, rax
je 0x1404b9b4c
mov r9, r9
sub eax, r12d
mov ecx, 0xc7e6dd2
add ecx, 0x21ed77b7
xor ecx, 0x63242eca
add ecx, 0xbadd9e9
xor ecx, 0x58fda584
add eax, 2
mov dword [rsp - 0x18], edi
mov dword [rsi], eax
call fcn.1400bbf80
test rax, rax
je 0x1404b9c84
mov dword [rsp - 0x30], 0x676a578e
xor r8d, r8d
lea rdx, [rsp + 0x30]
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
call fcn.1404b8bd0
xchg r10, r10
mov rbx, rax
mov r14, qword [rbp + 0x1e8]
xchg r13, rbx
mov qword [r14], r13
xchg r13, rbx
mov eax, dword [rsi]
mov ebx, dword [rbp + 0x200]
mov r13, r13
cmp eax, ebx
jae 0x1404b9b41
mov r15, qword [rbp + 0x1e0]
nop word [rax + rax]
mov dword [rsp - 0x10], 0x28e4f914
mov ecx, eax
mov edx, 0x7a55d025
sub edx, 0xb2503de
sub edx, 0x5a51f35
xor edx, 0x698bad6f
add rcx, r12
mov r15, r15
call fcn.1400bd8a0
mov ecx, dword [rsi]
mov edx, 0x2456f89
add edx, 0x4226110c
sub edx, 0x428e06eb
add edx, 0x7230aa71
xor edx, 0x740e2439
add rcx, r12
mov dword [rsp - 0x24], ebp
mov rdi, rax
call fcn.1400bd8a0
cmp rdi, rax
mov dword [rsp - 0x30], 0x3eef0677
je 0x1404b9df2
jb 0x1404b9de2
test rax, rax
mov dword [rsp - 0xc], 0x44c6f3ab
je 0x1404b9dcd
xchg r14, r12
mov r9, r14
xchg r12, r14
mov dword [rsp + 0x20], ebx
xchg rsp, rsp
mov r8, rsi
lea rdx, [rbp + 0x1f8]
xchg r10, r15
mov rcx, r10
xchg r10, r15
call fcn.1404b94f0
mov rdi, qword [r14]
mov dword [rsp - 0x38], 0x55f32063
test al, al
je 0x1404b9dfb
mov dword [rdi + 0x40], 0x4852efbc
sub dword [rdi + 0x40], 0x2e4f5dad
xor dword [rdi + 0x40], 0x318e84ea
xor dword [rdi + 0x40], 0x1392fdba
sub dword [rdi + 0x40], 0x381feb5d
lea rdx, [rbp + 0x1f8]
mov dword [rsp - 0x28], edi
xchg r13, rcx
mov r13, qword [r14]
xchg r13, rcx
sub rcx, 0x2a32f216
add rcx, 0x2a32f29e
call fcn.1404b8a00
mov dword [rsp - 0x38], 0x45d631ef
jmp 0x1404b9dd3
mov dword [rsi], ebx
mov dword [rsp - 0x38], esp
mov eax, dword [rsi]
cmp eax, ebx
jb 0x1404b9cc1
jmp 0x1404b9b41
sub edi, r12d
inc edi
mov dword [rsi], edi
mov dword [rsp - 0x2c], ebp
jmp 0x1404b9b41
xchg r9, rdi
mov r9, qword [r14]
xchg rdi, r9
test rdi, rdi
mov dword [rsp - 0x30], 0x7e2caa9e
je 0x1404b9e3f
xchg r11, rcx
mov r11, rdi
xchg rcx, r11
call fcn.1404b8e80
mov edx, 0x7d607a7b
xor edx, 0x71947ec0
add edx, 0x567c0695
sub edx, 0x63700aa8
xchg rbx, rcx
mov rbx, rdi
xchg rbx, rcx
call fcn.1400bbf90
xor bl, bl
xchg r8, r8
jmp 0x1404b9b4c
call fcn.1400bc0d0
mov r14, r14
movzx eax, bl
xchg rbx, rdx
mov rdx, qword [rsp + 0x2a0]
xchg rdx, rbx
add rsp, 0x2a8
xchg rsi, rsi
pop r15
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
add rsp, 8
mov r12, qword [rsp - 8]
pop rdi
nop
mov rsi, qword [rsp]
add rsp, 8
nop
mov rbp, qword [rsp]
add rsp, 8
ret
xor al, al
sub rsp, 0xfffffffffffffd58
mov dword [rsp - 0x44], 0x15f91cb
pop r15
nop
add rsp, 8
mov r14, qword [rsp - 8]
pop r12
pop rdi
pop rsi
xchg rbx, rbx
nop
add rsp, 8
mov rbp, qword [rsp - 8]
ret