Function at 0x1400d63f8
Capabilities:
Encode data using xor

Disassembly:
push rbp
xchg rdi, rdi
push rbx
nop
push 0x68f1485e
mov qword [rsp], rsi
nop
sub rsp, 8
mov qword [rsp], rdi
nop
sub rsp, 8
mov qword [rsp], r12
push r13
push r14
push r15
mov qword [rsp], r15
lea rbp, [rsp - 0x98]
sub rsp, 0x198
xor r13d, r13d
mov dword [rsp - 0x2c], 0x789f883e
lea rdx, [rsp + 0x68]
mov dword [rbp + 0xe0], r13d
xorps xmm0, xmm0
xchg r11, rcx
mov r12, r11
xchg rcx, r11
mov dword [rsp + 0x50], 0x45dfc92e
xor dword [rsp + 0x50], 0x4e61f7c1
add dword [rsp + 0x50], 0x31ebeb17
sub dword [rsp + 0x50], 0x307899cc
xor dword [rsp + 0x50], 0x2f4957f
lea rcx, [rsp + 0x68]
mov rsi, rsi
mov dword [rsp + 0x54], 0x48eaad73
add dword [rsp + 0x54], 0x2ca062f4
sub dword [rsp + 0x54], 0x5d274208
sub dword [rsp + 0x54], 0x109bbbe9
mov dword [rsp + 0x58], 0x6244b400
sub dword [rsp + 0x58], 0xb3ebf0
xor dword [rsp + 0x58], 0x65f736d0
add dword [rsp + 0x58], 0x6614c6f9
xor dword [rsp + 0x58], 0x65adc086
lea eax, [r13 + 0xc]
mov dword [rsp - 0x3c], esi
mov qword [rbp - 0x68], rax
mov r14d, r13d
xchg r10, rcx
mov qword [rsp + 0x60], r10
xchg r10, rcx
xchg rsp, r15
movups xmmword [r15 + 0x68], xmm0
xchg rsp, r15
movups xmmword [rsp + 0x78], xmm0
xchg r11, rbp
movups xmmword [r11 - 0x78], xmm0
xchg r11, rbp
cmp rcx, rdx
mov dword [rsp - 0x1c], 0x40f50489
je 0x1400d6520
call fcn.140099eb0
mov rax, qword [rbp - 0x68]
xchg rsp, rsp
lea rdx, [rsp + 0x68]
xorps xmm0, xmm0
mov qword [rsp + 0x60], rdx
xchg r13, r13
mov rcx, r13
movups xmmword [rsp + 0x68], xmm0
movups xmmword [rsp + 0x78], xmm0
xchg r9, rbp
movups xmmword [r9 - 0x78], xmm0
xchg rbp, r9
test rax, rax
mov r9, r9
je 0x1400d656e
movzx eax, byte [rsp + rcx + 0x50]
mov word [rdx + rcx*2], ax
mov dword [rsp - 0x34], ecx
inc rcx
cmp rcx, qword [rbp - 0x68]
jb 0x1400d6554
lea rcx, [rsp + 0x60]
mov rbx, rbx
call fcn.14008a8c0
xchg r13, rcx
mov r13, qword [rsp + 0x60]
xchg r13, rcx
mov ebx, eax
lea rax, [rsp + 0x68]
mov dword [rsp - 0x40], 0x1d25e88c
cmp rcx, rax
jne 0x1400d65b7
xor eax, eax
mov dword [rsp - 0x44], edx
lea rdi, [rsp + 0x68]
lea ecx, [rax + 0x30]
rep stosb byte [rdi], al
mov dword [rsp - 0x3c], esp
jmp 0x1400d65bc
call fcn.140099eb0
test ebx, ebx
mov dword [rsp - 0x20], 0x6b9e082c
je 0x1400d6eec
lea r8, [rbp + 0xe8]
mov edx, 0x1a36a67f
add edx, 0x22eed6d3
add edx, 0x331da6af
sub edx, 0x5fd9dee9
sub edx, 0x10694108
mov ecx, ebx
mov r8, r8
call fcn.14008c580
test eax, eax
js 0x1400d6eec
mov r12, r12
mov rax, qword [0x1401443d8]
lea rdx, [rbp + 0xe0]
movabs rcx, 0x531adfea48e2d641
xor rcx, 0x78fe72b8
add rcx, 0x51eaacf
add rcx, 0x555e342d
add rax, rcx
movabs rcx, 0xcb76f97e1cb1cf61
xor rcx, 0x46b2bc3
add rcx, 0x2d2593e8
add rcx, 0x704166ae
xor rax, rcx
mov dword [rsp - 0x20], ecx
movabs rcx, 0x4ca053be25b34624
xor rcx, 0x5722e09
add rcx, 0x31a42860
add rcx, 0x7e3f71
add rcx, 0x52522f71
sub rax, rcx
mov dword [rsp - 0x44], 0x3c37fa67
movabs rcx, 0x1da448c01c7271d3
add rcx, 0x444dd7c5
xor rcx, 0x2eeddf63
add rcx, 0x5a32c8fb
xor rax, rcx
mov dword [rsp - 0x40], 0x51599ff8
xchg rcx, rdi
mov rdi, qword [rbp + 0xe8]
xchg rcx, rdi
not rax
mov dword [rsp - 0x20], 0x3c7ecc8d
call rax
test eax, eax
je 0x1400d6edc
mov dword [rsp - 0x34], esp
cmp dword [rbp + 0xe0], r13d
jne 0x1400d6edc
mov rdx, qword [rbp + 0xe8]
mov dword [rsp - 0x20], 0x235c200a
lea r8, [rbp - 0x60]
xchg r12, r13
mov rcx, r13
xchg r13, r12
call fcn.1400d2e1c
test al, al
je 0x1400d6edc
mov dword [rsp - 0xc], 0x787cbe8b
mov rdx, qword [rbp - 0x60]
lea r8, [rbp + 0xf0]
mov rcx, qword [rbp + 0xe8]
mov dword [rsp - 0x1c], 0x660b9943
mov r9d, 0x7caff843
xor r9d, 0x72296995
xor r9d, 0x6f146b9f
sub r9d, 0x494122f6
sub r9d, 0x1851d74b
mov qword [rbp + 0xf0], r13
mov rcx, rcx
xchg r13, r14
mov qword [rsp + 0x20], r14
xchg r14, r13
call fcn.140056f70
mov dword [rsp - 0x1c], 0x1d8b7442
test eax, eax
js 0x1400d6edc
mov rax, qword [rbp + 0xf0]
mov dword [rsp - 0x40], 0x34693cf5
test rax, rax
je 0x1400d6edc
mov edx, dword [rbp - 0x58]
lea r8, [rbp + 0xf0]
mov rcx, rcx
xchg rbx, rcx
mov rbx, qword [rbp + 0xe8]
xchg rbx, rcx
add rdx, rax
mov dword [rsp - 0x30], 0x136d1466
mov r9d, 0x15665857
add r9d, 0x3bbb59aa
add r9d, 0x16d6dc4d
xor r9d, 0x67f88e46
xchg r13, rcx
mov qword [rsp + 0x20], rcx
xchg r13, rcx
call fcn.140056f70
mov r8, r8
test eax, eax
js 0x1400d6edc
mov rax, qword [rbp + 0xf0]
test rax, rax
xchg r15, r15
je 0x1400d6edc
mov edx, dword [rbp - 0x54]
lea r8, [rsp + 0x50]
mov rcx, qword [rbp + 0xe8]
mov dword [rsp - 0x1c], edx
xorps xmm0, xmm0
add rdx, rax
mov qword [rsp + 0x20], r13
mov rsi, rsi
mov r9d, 0x5a7a6fea
sub r9d, 0x119b4905
sub r9d, 0x526c814
sub r9d, 0x3673c515
sub r9d, 0xd4499ac
xchg rsp, rcx
movups xmmword [rcx + 0x50], xmm0
xchg rcx, rsp
call fcn.140056f70
mov r9, r9
test eax, eax
js 0x1400d6edc
mov rsi, qword [rsp + 0x50]
cmp rsi, qword [rsp + 0x58]
xchg r14, r14
je 0x1400d6edc
mov r15d, r13d
cmp r15d, 4
jge 0x1400d6edc
mov dword [rsp - 0x1c], ebp
xchg rcx, r11
mov r11, qword [rbp + 0xe8]
xchg r11, rcx
lea r8, [rbp + 0xf0]
mov r9d, 0x666c760c
sub r9d, 0x56e2f14f
add r9d, 0xd831503
add r9d, 0x389b51e
sub r9d, 0x20964ed6
mov qword [rsp + 0x20], r13
mov dword [rsp - 0xc], edx
mov rdx, rsi
call fcn.140056f70
test eax, eax
js 0x1400d6ebc
mov rdi, rdi
mov rdx, qword [rbp + 0xf0]
test rdx, rdx
je 0x1400d6ebc
mov rcx, qword [rbp + 0xe8]
mov dword [rsp - 0x18], 0x2a85483c
lea r8, [rbp - 0x10]
mov r9d, 0x20d72a1f
xor r9d, 0x6ad237bb
add r9d, 0x2283326e
sub r9d, 0x6c884f7a
mov qword [rsp + 0x20], r13
call fcn.140056f70
mov dword [rsp - 0x34], 0xa878eaf
test eax, eax
js 0x1400d6ebc
cmp dword [rbp - 0xc], r13d
mov rcx, rcx
je 0x1400d6ebc
mov edx, 0x44013bd9
xor edx, 0x95b75b
add edx, 0x2d5df011
sub edx, 0x1d4a92c3
sub edx, 0x54a7e991
lea rcx, [rbp + 8]
mov rcx, rcx
call fcn.14009b0c0
movsxd rcx, dword [rbp - 0xc]
cmp rax, rcx
xchg r8, r8
jne 0x1400d6ebc
mov ecx, 0x1bfa2d33
sub ecx, 0x8fac7d4
add ecx, 0x553c3ac7
xor ecx, 0x741ca124
xor ecx, 0x1c27018a
mov qword [rsp + 0x30], r13
mov dword [rsp - 0xc], 0x1f548b8f
xchg r13, rcx
mov qword [rsp + 0x38], rcx
xchg r13, rcx
xchg r13, rbp
mov qword [rsp + 0x40], rbp
xchg rbp, r13
mov qword [rsp + 0x48], 0x728314f9
xor qword [rsp + 0x48], 0x5cd77037
xor qword [rsp + 0x48], 0x648b074
sub qword [rsp + 0x48], 0x281cd4b8
call fcn.140099d50
test rax, rax
mov dword [rsp - 0x18], ebx
je 0x1400d6a22
mov edx, 0x765cf0ef
sub edx, 0x2dc5737c
sub edx, 0x22318dfe
add edx, 0x43ae9123
sub edx, 0x6a148092
xchg r8, rax
mov rcx, r8
xchg r8, rax
call fcn.1400d7280
mov rbx, rax
mov dword [rsp - 0x38], edx
jmp 0x1400d6a28
mov rbx, r13
xchg r14, r14
xchg rdx, rcx
mov rdx, qword [rsp + 0x38]
xchg rdx, rcx
test rcx, rcx
mov dword [rsp - 0x20], 0x7d7bddf0
je 0x1400d6b0c
mov rax, qword [rsp + 0x40]
cmp rcx, rax
mov dword [rsp - 0x1c], 0x70eeb636
jb 0x1400d6aff
add rax, qword [rsp + 0x48]
mov qword [rsp + 0x40], rax
xchg rcx, rcx
lea rcx, [rax*8]
call fcn.14009a150
xchg rcx, r8
mov r8, qword [rsp + 0x38]
xchg r8, rcx
xchg r13, rdi
mov r13, rax
xchg r13, rdi
mov rdx, r13
mov dword [rsp - 0x2c], ebx
test rcx, rcx
je 0x1400d6acd
xchg r15, rax
mov r15, qword [rsp + 0x30]
xchg r15, rax
mov rcx, qword [rax + rdx*8]
mov r9, r9
xchg rbx, rcx
mov qword [rdi + rdx*8], rbx
xchg rcx, rbx
inc rdx
xchg rdi, rcx
mov rdi, qword [rsp + 0x38]
xchg rdi, rcx
cmp rdx, rcx
mov dword [rsp - 0xc], edi
jb 0x1400d6a98
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x1400d6aef
xchg r9, r9
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
call fcn.140099eb0
mov rcx, qword [rsp + 0x38]
xchg r15, rdi
mov qword [rsp + 0x30], r15
xchg r15, rdi
jmp 0x1400d6b5f
mov rdi, qword [rsp + 0x30]
mov rsp, rsp
jmp 0x1400d6b5f
mov rdi, qword [rsp + 0x30]
test rdi, rdi
jne 0x1400d6b5f
mov dword [rsp - 0x44], 0x1ca9dd25
xchg r15, rcx
mov r15, qword [rsp + 0x48]
xchg r15, rcx
xchg r12, rcx
mov qword [rsp + 0x40], r12
xchg r12, rcx
shl rcx, 2
shl rcx, 1
call fcn.14009a150
mov dword [rsp - 0x28], edi
mov rcx, qword [rsp + 0x38]
xchg rdi, r12
mov r12, rax
xchg r12, rdi
xchg r10, rax
mov qword [rsp + 0x30], r10
xchg r10, rax
lea rax, [rdi + rcx*8]
inc rcx
xchg rbx, rbx
xchg rsi, rcx
mov qword [rsp + 0x38], rsi
xchg rcx, rsi
mov ecx, 0x5ba0ba5d
xor ecx, 0x104ba905
add ecx, 0x19a48c20
sub ecx, 0x658f9ef0
mov qword [rax], rbx
xchg r15, r15
call fcn.140099d50
mov rbx, rax
test rax, rax
mov r11, r11
je 0x1400d6ca6
xorps xmm0, xmm0
lea rax, [rbp - 0x48]
mov rcx, rcx
or r14d, 1
xchg rdi, rax
mov qword [rbp - 0x50], rdi
xchg rdi, rax
lea rax, [rbp + 8]
or rdx, 0xffffffffffffffff
xchg rsi, rsi
movups xmmword [rbp - 0x48], xmm0
xchg rbp, r10
movups xmmword [r10 - 0x38], xmm0
xchg rbp, r10
movups xmmword [rbp - 0x28], xmm0
mov dword [rsp - 0x34], 0x595334a3
inc rdx
cmp word [rax + rdx*2], r13w
jne 0x1400d6be1
lea rcx, [rbp - 0x50]
mov r12, r12
mov qword [rbp - 0x18], rdx
call fcn.140017ab0
xchg r12, rcx
mov r12, rax
xchg r12, rcx
mov edx, 0x6ca9d4d6
xor edx, 0x2b19f145
add edx, 0x37dbe5a3
sub edx, 0x14e2ab25
xchg r13, r8
mov r13, r8
xchg r8, r13
cmp qword [rbp - 0x18], r13
mov dword [rsp - 0xc], 0x4eb5b6a8
jbe 0x1400d6c89
lea rdi, [rbp + 8]
sub rdi, rax
mov r12, r12
movzx eax, dx
mov r9d, 0x5b9c4f9b
sub r9d, 0x45b3755a
xor r9d, 0x395603f3
sub r9d, 0x2cbed8b3
and ax, r9w
ror edx, 1
ror edx, 7
xor ax, word [rcx + rdi]
xchg rdx, rdx
inc r8
mov word [rcx], ax
lea rcx, [rcx + 2]
cmp r8, qword [rbp - 0x18]
xchg rsi, rsi
jb 0x1400d6c44
lea rdx, [rbp - 0x50]
xchg r15, rcx
mov r15, rbx
xchg rcx, r15
call fcn.1400d7120
xchg r10, r10
mov rbx, rax
jmp 0x1400d6caf
xchg rsi, rbx
mov rsi, r13
xchg rsi, rbx
xchg rsi, rcx
mov rsi, qword [rsp + 0x38]
xchg rcx, rsi
test rcx, rcx
mov dword [rsp - 0x38], 0xb39ccae
je 0x1400d6d81
xchg r11, rax
mov r11, qword [rsp + 0x40]
xchg r11, rax
cmp rcx, rax
jb 0x1400d6d77
mov dword [rsp - 0x18], ecx
add rax, qword [rsp + 0x48]
mov qword [rsp + 0x40], rax
lea rcx, [rax*8]
call fcn.14009a150
mov dword [rsp - 0x3c], 0x7709e85
mov rcx, qword [rsp + 0x38]
xchg r9, rax
mov rdi, r9
xchg r9, rax
mov rdx, r13
test rcx, rcx
mov dword [rsp - 0x14], esi
je 0x1400d6d44
xchg r11, rax
mov r11, qword [rsp + 0x30]
xchg r11, rax
mov rcx, qword [rax + rdx*8]
xchg r9, r9
mov qword [rdi + rdx*8], rcx
inc rdx
mov rcx, qword [rsp + 0x38]
mov r8, r8
cmp rdx, rcx
jb 0x1400d6d1c
mov rax, qword [rsp + 0x30]
test rax, rax
mov dword [rsp - 0x44], ebp
je 0x1400d6d67
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
call fcn.140099eb0
mov rcx, qword [rsp + 0x38]
xchg rdi, r13
mov qword [rsp + 0x30], r13
xchg r13, rdi
jmp 0x1400d6dd1
mov rdi, qword [rsp + 0x30]
jmp 0x1400d6dd1
xchg r13, rdi
mov r13, qword [rsp + 0x30]
xchg r13, rdi
test rdi, rdi
jne 0x1400d6dd1
mov rcx, qword [rsp + 0x48]
mov rbp, rbp
mov qword [rsp + 0x40], rcx
shl rcx, 2
shl rcx, 1
call fcn.14009a150
mov dword [rsp - 0x18], edx
xchg rcx, r9
mov r9, qword [rsp + 0x38]
xchg r9, rcx
xchg r8, rax
mov rdi, r8
xchg r8, rax
mov qword [rsp + 0x30], rax
mov dword [rsp - 0x18], 0x72727930
lea rax, [rdi + rcx*8]
inc rcx
mov qword [rsp + 0x38], rcx
mov rsp, rsp
mov qword [rax], rbx
test r14b, 1
je 0x1400d6e2b
xchg r9, rcx
mov r9, qword [rbp - 0x50]
xchg rcx, r9
lea rax, [rbp - 0x48]
and r14d, 0xfffffffe
cmp rcx, rax
mov rbp, rbp
jne 0x1400d6e1e
xor eax, eax
lea rdi, [rbp - 0x48]
lea ecx, [rax + 0x30]
xchg rbp, rbp
rep stosb byte [rdi], al
jmp 0x1400d6e2b
call fcn.140099eb0
mov dword [rsp - 0x10], 0x1a10682c
mov ecx, 0x355747ab
add ecx, 0x3d49fa76
add ecx, 0x133cc28
sub ecx, 0x62ee8b3b
sub ecx, 0x10e68286
call fcn.140099d50
mov rbp, rbp
test rax, rax
je 0x1400d6e76
xor r8d, r8d
lea rdx, [rsp + 0x30]
mov dword [rsp - 0x14], 0x5f50ed23
mov rcx, rax
call fcn.1400d6f50
jmp 0x1400d6e7f
xchg r13, r11
mov rax, r11
xchg r13, r11
lea rdx, [rbp + 0xf8]
xchg r13, rax
mov qword [rbp + 0xf8], r13
xchg r13, rax
xchg r10, rcx
mov r10, r12
xchg rcx, r10
call fcn.14009cc90
xchg rcx, r12
mov r12, qword [rsp + 0x30]
xchg rcx, r12
test rcx, rcx
mov dword [rsp - 0x10], edx
je 0x1400d6ebc
call fcn.140099eb0
nop
sub rsi, 0x49370fee
add rsi, 0x49370ff6
inc r15d
mov rdi, rdi
cmp rsi, qword [rsp + 0x58]
jne 0x1400d6879
mov rcx, qword [rbp + 0xe8]
mov dword [rsp - 0x44], ecx
call fcn.140056da0
xchg r9, rax
mov r9, r12
xchg r9, rax
sub rsp, 0x5af5c6e0
add rsp, 0x5af5c878
nop
mov r15, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
add rsp, 8
mov r12, qword [rsp - 8]
pop rdi
mov dword [rsp - 0x1c], 0x57020f63
nop
mov rsi, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rbx, qword [rsp - 8]
nop
mov rbp, qword [rsp]
add rsp, 8
ret