Function at 0x140497987
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
mov rsi, rsi
push rsi
nop
mov qword [rsp - 8], rdi
sub rsp, 8
lea rbp, [rsp - 0x1e8]
mov dword [rsp - 0x3c], esp
add rsp, 0x735d9dff
sub rsp, 0x735da0e7
xor ebx, ebx
lea rdi, [0x140000000]
mov dword [rsp - 0x18], edi
mov edx, ebx
xchg rcx, rsi
mov rcx, rsi
xchg rcx, rsi
nop dword [rax]
nop word [rax + rax]
mov ecx, edx
xchg r9, r9
mov eax, 0x4ea35d4a
add eax, 0x10c1512e
sub eax, 0x310b06a8
sub eax, 0x1b9e5bad
rol eax, cl
xor al, byte [rdx + rdi + 0x13d30]
mov byte [rsp + rdx + 0x60], al
xchg r12, r12
inc rdx
cmp rdx, 0x10
jb 0x140497921
mov rdx, rbx
mov dword [rsp - 0x28], ebx
mov ecx, edx
mov eax, 0x7b4367f
sub eax, 0x5b8b484
add eax, 0x4e9bbcfa
sub eax, 0x3ddbf2d2
rol eax, cl
xchg rsp, rsp
xor al, byte [rdx + rdi + 0x13d40]
mov byte [rsp + rdx + 0x50], al
inc rdx
mov dword [rsp - 0x34], esi
cmp rdx, 0x10
jb 0x14049795e
lea rcx, [0x1404e0860]
call fcn.140052ed0
xchg r14, r14
xorps xmm0, xmm0
test al, al
jne 0x1404979d6
lea rax, [rsi + 8]
mov dword [rsp - 0x10], esi
mov qword [rsi], rax
xchg rbp, rax
movups xmmword [rbp], xmm0
xchg rbp, rax
movups xmmword [rax + 0x10], xmm0
xchg rbp, rbp
movups xmmword [rax + 0x20], xmm0
mov qword [rsi + 0x38], rbx
jmp 0x1404984ee
mov rdx, qword [0x1404e0830]
xchg r11, r11
lea rax, [rbp - 0x48]
movabs rcx, 0xfcd2db731dce1b
sub rcx, 0x302c9297
xor rcx, 0xe93c419
add rcx, 0x7fffffff
add rcx, 0x2f62be40
xchg r14, rax
mov qword [rbp - 0x50], r14
xchg r14, rax
add rdx, rcx
mov qword [rsp + 0x2d8], r14
not rdx
mov r14, r14
mov qword [rbp - 0x18], rbx
ror rdx, 0x19
ror rdx, 7
ror rdx, 2
ror rdx, 0x10
ror rdx, 1
movabs rax, 0x30d194d0b95f6fd
add rax, 0x4de8a804
xor rax, 0x7dda9b20
add rax, 0x1d09ea69
xor rdx, rax
mov dword [rsp - 0x14], ebx
xor ecx, ecx
movups xmmword [rbp - 0x48], xmm0
xchg rbp, rdi
movups xmmword [rdi - 0x38], xmm0
xchg rbp, rdi
movups xmmword [rbp - 0x28], xmm0
call rdx
xchg rbx, rbx
test eax, eax
js 0x140498387
mov rax, qword [str.L___]
lea r9, [rsp + 0x50]
mov rdx, rdx
movabs rcx, 0x1d007cf75a4ae7ac
xor rcx, 0x506924d
sub rcx, 0x2b494fa
add rcx, 0x1aed16ed
xor edx, edx
xor rax, rcx
movabs rcx, 0x67dd58b417cb873
sub rcx, 0x1a542525
xor rcx, 0x4581a85
add rcx, 0x300f19b
xor rcx, 0x592b287e
rol rax, 1
rol rax, 4
sub rax, rcx
xchg rdx, rdx
lea rcx, [rsp + 0x40]
rol rax, 0xc
rol rax, 7
rol rax, 0xb
rol rax, 3
rol rax, 1
lea r8d, [rdx + 0x17]
mov dword [rsp - 0x18], 0x2f2993cb
not rax
mov qword [rsp + 0x20], rcx
ror rax, 4
ror rax, 1
ror rax, 4
ror rax, 1
lea rcx, [rsp + 0x60]
mov r10, r10
call rax
test eax, eax
js 0x140498387
mov dword [rsp - 0x20], 0x27c08d7b
xchg rcx, rdx
mov rdx, qword [rsp + 0x40]
xchg rdx, rcx
lea r8, [rbp + 0x228]
mov qword [rbp + 0x228], rbx
xor edx, edx
mov r13, r13
mov rax, qword [rcx]
call qword [rax + 0x28]
test eax, eax
mov dword [rsp - 0x34], edx
js 0x140498375
mov rcx, qword [rsp + 0x40]
lea r8, [rbp + 0x220]
mov rdx, qword [rbp + 0x228]
mov dword [rsp - 0x3c], 0x155a3360
mov qword [rbp + 0x220], rbx
xchg r12, r15
mov qword [rsp + 0x310], r15
xchg r12, r15
xchg r8, rax
mov r8, qword [rcx]
xchg r8, rax
xchg r14, r13
mov qword [rsp + 0x2e0], r14
xchg r14, r13
xchg r12, r15
mov qword [rsp + 0x2d0], r12
xchg r12, r15
call qword [rax + 0x20]
movabs rcx, 0x544a5eb7366c6faa
sub rcx, 0x2e0466c1
xor rcx, 0x61115742
add rcx, 0x7fffffff
add rcx, 0xabd592f
movabs r15, 0x48a93aa1730e6877
sub r15, 0x595f5209
add r15, 0x28d75115
xor r15, 0x52c79afd
movabs r12, 0xcb52e3153baa3dd6
add r12, 0x29c97544
sub r12, 0x167f2e18
add r12, 0x209b0b76
sub r12, 0x10bd63d4
movabs r13, 0x445b3e0c61c960f8
xor r13, 0x6afc495e
add r13, 0x301ecc29
xor r13, 0x7e348a0d
test eax, eax
mov rsp, rsp
js 0x140498313
mov rdx, qword [0x1404e0730]
movabs rcx, 0xe515461e6c6466ee
sub rcx, 0x5d5db1fc
xor rcx, 0x2be47883
add rcx, 0x2f2369c0
add rcx, 0x3a4f30a6
ror rdx, 0x12
movabs rax, 0x2923e8915c15590
add rax, 0x422bc9c6
xor rax, 0x6a08a85a
add rax, 0x7fffffff
xor rax, 0x935bd2d
add rdx, rcx
mov dword [rsp - 0x34], esi
lea rcx, [rbp + 0x50]
xor rdx, rax
movabs rax, 0x537aef962130def3
add rax, 0x9ca0a39
add rax, 0x24eda264
xor rax, 0x44a8ac1
ror rdx, 0x1f
ror rdx, 8
ror rdx, 2
xor rdx, rax
not rdx
mov dword [rsp - 0x1c], ebx
call rdx
lea rcx, [rbp - 0x10]
call fcn.1400a1a00
xchg r14, r14
mov r14, qword [rbp + 0x220]
lea rax, [rbp + 0xc8]
xor edx, edx
xchg rbx, rbx
xchg rdi, rax
mov qword [rbp + 0xc0], rdi
xchg rdi, rax
mov r8d, 0x5e7ad5f3
add r8d, 0x92931b1
sub r8d, 0x63a07add
add r8d, 0x1053d3da
xor r8d, 0x145761a1
lea rcx, [rbp + 0xc8]
call fcn.1400bc6c0
mov dword [rsp - 0x24], ebx
nop
movabs rdi, 0xffffffff3905eb75
sub rdi, 0x15224189
xor rdi, 0x492cd0c9
sub rdi, 0x339bc6df
add rdi, 0x7fffffff
add rdi, 0x48cc4dba
xchg rdx, r15
mov r15, rdi
xchg rdx, r15
nop dword [rax]
inc rdx
mov dword [rsp - 0x2c], ebp
cmp word [r14 + rdx*2], bx
jne 0x140497d82
mov qword [rbp + 0x1c8], rdx
mov r9, r9
lea rcx, [rbp + 0xc0]
inc rdx
call fcn.140043690
test rax, rax
mov dword [rsp - 0xc], 0x6e9897f7
je 0x140497de3
xchg r10, r9
mov r10, qword [rbp + 0x1c8]
xchg r9, r10
xchg r14, r8
mov r14, r8
xchg r8, r14
mov rcx, rax
mov r13, r13
lea rdx, [r9 + 1]
call fcn.1400bd2b0
xchg r14, r11
mov r11, qword [rbp + 0xc0]
xchg r14, r11
lea rax, [rsp + 0x78]
xorps xmm0, xmm0
xchg r9, r9
xchg r12, rax
mov qword [rsp + 0x70], r12
xchg r12, rax
movups xmmword [rsp + 0x78], xmm0
mov dword [rsp - 0x40], esp
xchg r13, rbp
movups xmmword [r13 - 0x78], xmm0
xchg r13, rbp
xchg rbp, r9
movups xmmword [r9 - 0x68], xmm0
xchg r9, rbp
nop dword [rax]
inc rdi
mov r9, r9
cmp word [r14 + rdi*2], bx
jne 0x140497e27
xchg rbx, rdi
mov rdx, rbx
xchg rbx, rdi
xchg rdx, rdi
mov qword [rbp - 0x58], rdx
xchg rdi, rdx
lea rcx, [rsp + 0x70]
call fcn.140018ab0
mov edx, 0x45f07c4e
sub edx, 0x1f4342cb
add edx, 0x3a5c094a
sub edx, 0x34b837c4
add edx, 0x20c24ae9
xchg rdi, r8
mov r8, rbx
xchg r8, rdi
cmp qword [rbp - 0x58], rbx
jbe 0x140497edb
sub r14, rax
mov dword [rsp - 0x40], 0x5053ecd7
mov r8d, 0x37b99498
add r8d, 0x215707bf
xor r8d, 0x7d7b304c
sub r8d, 0x246bab1c
movzx ecx, dx
lea rax, [rax + 2]
mov r15, r15
and cx, r8w
ror edx, 7
ror edx, 1
xor cx, word [rax + r14 - 2]
xchg rbx, rbx
inc rdi
mov word [rax - 2], cx
cmp rdi, qword [rbp - 0x58]
xchg rsp, rsp
jb 0x140497eab
mov byte [rsp + 0x38], bl
lea rdx, [rsp + 0x70]
mov dword [rsp + 0x30], 0x70957a0c
sub dword [rsp + 0x30], 0x12801a13
sub dword [rsp + 0x30], 0x1aa50d6
xor dword [rsp + 0x30], 0x174d0136
sub dword [rsp + 0x30], 0x4b260db5
lea rcx, [rbp - 0x10]
xchg rsp, rsp
mov dword [rsp + 0x28], 0x7b9ec7bd
sub dword [rsp + 0x28], 0x3529a646
sub dword [rsp + 0x28], 0x2d4a5842
add dword [rsp + 0x28], 0x3ca0969a
xor dword [rsp + 0x28], 0x55cb5fce
mov r9d, 0x12635b06
xor r9d, 0x4a268834
add r9d, 0x1748456d
xor r9d, 0x6f8e181f
mov r8d, 0x60c40aaa
sub r8d, 0x52bb4055
sub r8d, 0xb0509e6
sub r8d, 0x2f1bfe6
mov dword [rsp + 0x20], 0x7ba17b58
sub dword [rsp + 0x20], 0x2a8328e
add dword [rsp + 0x20], 0x12c58e0
sub dword [rsp + 0x20], 0x234d3932
sub dword [rsp + 0x20], 0x56d86877
call fcn.1400a28c0
mov rcx, qword [rsp + 0x70]
mov dword [rsp - 0x2c], 0x71507186
movzx r14d, al
lea rax, [rsp + 0x78]
cmp rcx, rax
mov dword [rsp - 0x2c], 0x2bb02870
jne 0x140497ff3
lea rdi, [rsp + 0x78]
xor eax, eax
mov ecx, 0x5d71d499
add ecx, 0x3d52fc
sub ecx, 0x1d52b883
add ecx, 0x2d1505a1
sub ecx, 0x6d717483
rep stosb byte [rdi], al
xchg r15, r15
jmp 0x140497ff8
call fcn.1400bc0d0
xchg r15, rcx
mov r15, qword [rbp + 0xc0]
xchg r15, rcx
lea rax, [rbp + 0xc8]
mov dword [rsp - 0x10], ebp
cmp rcx, rax
jne 0x140498049
lea rdi, [rbp + 0xc8]
xor eax, eax
mov rsp, rsp
mov ecx, 0x5cc40c0a
sub ecx, 0x3d4d6712
xor ecx, 0x10dfc277
add ecx, 0x679fb6bd
sub ecx, 0x77491c4c
rep stosb byte [rdi], al
jmp 0x140498051
call fcn.1400bc0d0
mov rsp, rsp
test r14b, r14b
je 0x140498125
lea r8, [rbp + 0x218]
lea rdx, [rsp + 0x48]
mov dword [rsp - 0x38], 0x8d337ae
lea rcx, [rbp - 0x10]
call fcn.1400a3170
test al, al
mov rdi, rdi
je 0x140498125
mov rax, qword [0x1404e0738]
movabs rcx, 0x4f159aa9010f01f3
add rcx, 0x26c72bcc
sub rcx, 0x246b2dd1
add rcx, 0x7fffffff
add rcx, 0x77dba7d6
mov r8d, dword [rbp + 0x218]
mov dword [rsp - 0x3c], edx
mov rdx, qword [rsp + 0x48]
rol rax, 2
rol rax, 1
rol rax, 2
rol rax, 1
rol rax, 1
add rax, rcx
movabs rcx, 0x1c7e012a473c0c12
sub rcx, 0x6ba64f2
xor rcx, 0x1dc59df4
xor rcx, 0x4a9eee8
not rax
rol rax, 9
rol rax, 1
rol rax, 1
not rax
add rax, rcx
mov dword [rsp - 0x14], edx
lea rcx, [rbp + 0x50]
not rax
call rax
xchg r12, r12
xchg rcx, r11
mov r11, qword [rsp + 0x48]
xchg r11, rcx
call fcn.1400bbf90
lea rcx, [rbp - 0x10]
call fcn.1400a1a20
mov dword [rsp - 0x24], edx
mov rdx, qword [0x1404e0740]
movabs rcx, 0x76fae70c08cdacf9
xor rcx, 0x4f3ca58
xor rcx, 0x20182e7
add rcx, 0x308d9166
add rcx, 0x7fffffff
add rcx, 0x29b9aedd
rol rdx, 0x13
rol rdx, 0xf
rol rdx, 1
rol rdx, 3
rol rdx, 1
movabs rax, 0x4dfa9b342aebbe8c
add rax, 0x48845767
sub rax, 0x28de2309
sub rax, 0x283c05d4
add rax, 0x7fffffff
add rax, 0xf7dcfac
add rdx, rcx
xchg r12, r12
lea rcx, [rbp + 0x50]
not rdx
sub rdx, rax
mov rdi, rdi
rol rdx, 5
rol rdx, 0x15
rol rdx, 1
call rdx
xchg r15, r15
mov rax, qword [0x1404e05e0]
movabs rcx, 0x544a5eb722474d4d
sub rcx, 0x117efe25
add rcx, 0x155ed7b5
sub rcx, 0x2472f569
add rcx, 0x7fffffff
xor rcx, 0x758289aa
not rax
sub rax, r15
mov dword [rsp - 0x24], 0xb4af0e1
not rax
rol rax, 5
rol rax, 0xa
rol rax, 0x11
rol rax, 5
rol rax, 0xb
rol rax, 4
rol rax, 4
rol rax, 2
rol rax, 2
rol rax, 1
rol rax, 1
add rax, r12
xor rax, r13
mov rcx, rcx
sub rax, rcx
xchg r8, rcx
mov r8, qword [rbp + 0x220]
xchg r8, rcx
call rax
mov dword [rsp - 0x24], 0x6a7d4a56
mov r8d, 0x6d8a9381
sub r8d, 0x6aafecd1
xor r8d, 0x6ce348b8
sub r8d, 0x84e032d
xor r8d, 0x65ebeacb
lea rdx, [rbp + 0xa8]
xchg rbp, rbp
lea rcx, [rbp + 8]
call fcn.14006d690
mov rdx, rax
mov dword [rsp - 0x10], 0x4716840c
lea rcx, [rbp - 0x50]
call fcn.14006c530
xchg rcx, r8
mov r8, qword [rbp + 8]
xchg r8, rcx
lea rax, [rbp + 0x10]
mov dword [rsp - 0x28], ebx
cmp rcx, rax
jne 0x1404982e1
lea rdi, [rbp + 0x10]
xor eax, eax
mov dword [rsp - 0xc], ebp
mov ecx, 0xa990df9
add ecx, 0x13ee7072
xor ecx, 0x6c16e64a
sub ecx, 0x729197f1
rep stosb byte [rdi], al
jmp 0x1404982e6
call fcn.1400bc0d0
movabs rcx, 0x544a5eb738616473
xor rcx, 0x523950c0
sub rcx, 0x324ac907
add rcx, 0x40c5d5d0
add rcx, 0x7fffffff
xor rcx, 0xce5f9a2
mov rax, qword [0x1404e05e0]
not rax
mov dword [rsp - 0x40], esi
sub rax, r15
not rax
rol rax, 0x24
rol rax, 0x18
rol rax, 1
rol rax, 1
add rax, r12
mov dword [rsp - 0x44], 0x4d436d89
xor rax, r13
sub rax, rcx
mov rcx, qword [rbp + 0x228]
mov dword [rsp - 0x14], 0x3ba3e453
call rax
mov r15, qword [rsp + 0x2d0]
xchg r10, r13
mov r10, qword [rsp + 0x2e0]
xchg r10, r13
mov r12, qword [rsp + 0x310]
mov rcx, qword [rsp + 0x40]
xchg r9, rax
mov r9, qword [rcx]
xchg r9, rax
call qword [rax + 0x10]
mov r8, r8
xchg r13, r14
mov r13, qword [rbp - 0x18]
xchg r14, r13
lea rdi, [rsi + 8]
mov r12, r12
xchg r11, rdi
mov qword [rsi], r11
xchg r11, rdi
xorps xmm0, xmm0
mov dword [rsp - 0x1c], ebp
xchg rdi, rbp
movups xmmword [rbp], xmm0
xchg rdi, rbp
xchg rdi, rdx
movups xmmword [rdx + 0x10], xmm0
xchg rdx, rdi
xchg rdi, r13
movups xmmword [r13 + 0x20], xmm0
xchg rdi, r13
mov qword [rsi + 0x38], r14
mov rcx, qword [rsi]
xchg rdx, rdx
cmp rcx, rdi
je 0x1404983e2
call fcn.1400bc0d0
mov r11, r11
cmp r14, 0x18
jbe 0x140498427
lea rcx, [r14 + r14]
call fcn.1400bc380
mov dword [rsp - 0x20], 0x6aa2334b
xchg rbx, rax
mov qword [rsi], rbx
xchg rbx, rax
test rax, rax
xchg r8, r8
jne 0x14049843b
xchg rdx, rdi
mov qword [rsi], rdx
xchg rdi, rdx
xchg rcx, rbx
mov rbx, rcx
xchg rcx, rbx
jmp 0x14049845a
mov qword [rsi], rdi
mov dword [rsp - 0x18], 0x3dc8468d
xchg rdx, rdi
mov rax, rdx
xchg rdi, rdx
xorps xmm0, xmm0
xchg rsi, rax
movups xmmword [rsi], xmm0
xchg rsi, rax
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
mov dword [rsp - 0x24], ecx
xchg rcx, rdx
mov rdx, qword [rsi]
xchg rdx, rcx
xchg r14, r12
mov r12, qword [rsp + 0x2d8]
xchg r14, r12
cmp qword [rsi + 0x38], rbx
jbe 0x1404984a8
nop word [rax + rax]
mov dword [rsp - 0x10], 0x79a3560a
xchg r9, rax
mov r9, qword [rbp - 0x50]
xchg r9, rax
movzx edx, word [rax + rbx*2]
mov dword [rsp - 0x38], ecx
mov word [rcx + rbx*2], dx
inc rbx
cmp rbx, qword [rsi + 0x38]
xchg rdx, rdx
jb 0x140498484
mov rcx, qword [rbp - 0x50]
lea rax, [rbp - 0x48]
cmp rcx, rax
mov r12, r12
jne 0x1404984e6
lea rdi, [rbp - 0x48]
xor eax, eax
mov ecx, 0x51bc4fd6
xor ecx, 0x7df48aa7
add ecx, 0x2ed33df5
xor ecx, 0x2c7c5064
xor ecx, 0x77605332
rep stosb byte [rdi], al
jmp 0x1404984ee
call fcn.1400bc0d0
xchg r15, r15
xor eax, eax
lea rdi, [rsp + 0x50]
mov ecx, 0x9c87be8
xor ecx, 0x32ba17c8
add ecx, 0x5eaa777
sub ecx, 0x2a21173a
sub ecx, 0x173bfc4d
rep stosb byte [rdi], al
mov ecx, 0x4dd6b773
sub ecx, 0x1bbd6146
xor ecx, 0x4289873c
sub ecx, 0x7090d101
lea rdi, [rsp + 0x60]
mov dword [rsp - 0x3c], ebx
rep stosb byte [rdi], al
mov rax, rsi
sub rsp, 0x4e1b36dd
add rsp, 0x4e1b39c5
pop rdi
nop
add rsp, 8
mov rsi, qword [rsp - 8]
nop
add rsp, 8
mov rbx, qword [rsp - 8]
nop
mov rbp, qword [rsp]
add rsp, 8
ret