Function at 0x140169ac0
Capabilities:
Encode data using xor

Disassembly:
xchg rbx, r12
mov qword [rsp + 8], r12
xchg r12, rbx
xchg r10, rbp
mov qword [rsp + 0x10], r10
xchg rbp, r10
xchg rsi, rbp
mov qword [rsp + 0x18], rbp
xchg rbp, rsi
nop
mov qword [rsp - 8], rdi
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r12
push r13
nop
sub rsp, 8
mov qword [rsp], r14
nop
sub rsp, 8
mov qword [rsp], r15
sub rsp, 0x40
xchg r8, r9
mov r14, r8
xchg r9, r8
xchg rbx, r8
mov r8, rbx
xchg rbx, r8
mov r12, rdx
xchg rcx, r15
mov rcx, r15
xchg r15, rcx
xchg r10, r15
mov r15, qword [r8 + 0x10]
xchg r10, r15
cmp qword [r8 + 0x18], 0x10
jb 0x140169b42
mov r8, qword [r8]
movabs rdi, 0xcbf29ce44b020e27
sub rdi, 0x16e2e2c3
add rdi, 0x170c0dc1
xor rdi, 0x18a3e0df
sub rdi, 0x2fea1293
add rdi, 0x60835bbe
xor r13d, r13d
mov ecx, r13d
test r10, r10
je 0x140169bee
movabs rdx, 0x1002226838c
add rdx, 0xe51ea18
xor rdx, 0x3826dbca
xor rdx, 0x36d8ae24
add rdx, 0x2deb2c72
xor rdx, 0x6c71450f
nop word [rax + rax]
movzx eax, byte [rcx + r8]
push rdi
xor edi, eax
push rdi
xor rdi, qword [rsp + 8]
shr rdi, 0x20
ror rax, 0x20
xor edi, eax
ror rax, 0x20
shl rdi, 0x20
xor rdi, qword [rsp]
add rsp, 0x10
imul rdi, rdx
inc rcx
cmp rcx, r10
jb 0x140169bb6
xchg rdi, r9
mov rdi, r9
xchg r9, rdi
xchg rdi, r8
mov rdi, rbx
xchg rdi, r8
lea rdx, [rsp + 0x20]
xchg r15, rdi
mov rcx, rdi
xchg rdi, r15
call fcn.140168930
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x140169c33
xchg rcx, rax
mov qword [r12], rcx
xchg rcx, rax
mov byte [r12 + 8], r13b
jmp 0x14016a107
movabs rax, 0x33333336316df92
sub rax, 0x388a98e4
add rax, 0x45c27661
sub rax, 0x1d9c5cb1
add rax, 0x2d25b1e0
sub rax, 0x76e71a15
xor rax, 0x74fd6e10
sub rax, 0x48da6306
cmp qword [r15 + 0x10], rax
je 0x14016a177
lea rbp, [r15 + 8]
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x38], r13
mov ecx, 0x6c137e77
xor ecx, 0x2c1c7c47
xor ecx, 0x3cb44493
xor ecx, 0x1760f65f
sub ecx, 0x4713db0e
add ecx, 0x2ea9b7d9
sub ecx, 0x53718d77
call fcn.1401fe224
xchg rsi, rax
mov rax, rsi
xchg rsi, rax
mov qword [rsp + 0x38], rax
xorps xmm0, xmm0
xchg r14, rax
movups xmmword [r14 + 0x10], xmm0
xchg r14, rax
xchg rbx, r13
mov qword [rax + 0x20], rbx
xchg rbx, r13
mov qword [rax + 0x28], r13
xchg rbx, r8
movups xmm0, xmmword [r8]
xchg r8, rbx
xchg r14, rax
movups xmmword [r14 + 0x10], xmm0
xchg r14, rax
xchg rdi, rbx
movups xmm1, xmmword [rdi + 0x10]
xchg rbx, rdi
xchg r12, rax
movups xmmword [r12 + 0x20], xmm1
xchg r12, rax
xchg r13, rcx
mov qword [rbx + 0x10], rcx
xchg r13, rcx
mov qword [rbx + 0x18], 0x51f06749
xor qword [rbx + 0x18], 0x6c63073f
add qword [rbx + 0x18], 0xc72b514
sub qword [rbx + 0x18], 0x26530e17
add qword [rbx + 0x18], 0x17c1b577
sub qword [rbx + 0x18], 0x3b74bcdb
mov byte [rbx], 0x18
xor byte [rbx], 0x28
xor byte [rbx], 0x5e
sub byte [rbx], 7
sub byte [rbx], 0x5b
xor byte [rbx], 0xc
xorps xmm0, xmm0
xchg r8, rax
movups xmmword [r8 + 0x30], xmm0
xchg r8, rax
mov qword [rax + 0x40], r13
mov qword [rax + 0x48], r13
movups xmm0, xmmword [r14]
xchg rdi, rax
movups xmmword [rdi + 0x30], xmm0
xchg rdi, rax
xchg r14, r11
movups xmm1, xmmword [r11 + 0x10]
xchg r11, r14
xchg rbx, rax
movups xmmword [rbx + 0x40], xmm1
xchg rbx, rax
xchg r11, r13
mov qword [r14 + 0x10], r11
xchg r11, r13
mov qword [r14 + 0x18], 0x8936bd2
add qword [r14 + 0x18], 0x299f6041
add qword [r14 + 0x18], 0x7c7ddee
xor qword [r14 + 0x18], 0x14cc3e6c
xor qword [r14 + 0x18], 0x793520b9
sub qword [r14 + 0x18], 0x455493da
add qword [r14 + 0x18], 0x17f91825
sub qword [r14 + 0x18], 0x33a101
sub qword [r14 + 0x18], 0x2674980f
mov byte [r14], 0x5b
xor byte [r14], 0x2e
xor byte [r14], 0x55
add byte [r14], 0x1b
sub byte [r14], 0x27
sub byte [r14], 0x14
mov rcx, qword [r15 + 0x10]
xchg r15, rdx
movss xmm3, dword [rdx]
xchg rdx, r15
add rcx, 1
xorps xmm0, xmm0
js 0x140169e08
cvtsi2ss xmm0, rcx
jmp 0x140169e23
xchg r9, rcx
mov rax, r9
xchg rcx, r9
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rbx, qword [r15 + 0x38]
xorps xmm2, xmm2
test rbx, rbx
js 0x140169e3d
cvtsi2ss xmm2, rbx
jmp 0x140169e61
xchg rcx, rbx
mov rbx, rcx
xchg rcx, rbx
shr rcx, 1
xchg rbp, rbx
mov rax, rbp
xchg rbx, rbp
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm1, xmm0
divss xmm1, xmm2
comiss xmm1, xmm3
seta al
test al, al
je 0x14016a065
divss xmm0, xmm3
call fcn.1401ff326
xor ecx, ecx
movss xmm1, dword [0x140001590]
comiss xmm0, xmm1
jb 0x140169ed4
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x140169ed4
movabs rax, 0x800000001d843a66
xor rax, 0x698ef356
sub rax, 0x227d46dc
sub rax, 0x42a755a8
add rax, 0x49125a16
sub rax, 0x2fd4eca5
sub rax, 0x28239a1d
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 0x59ad2013
sub ecx, 0x37243fdd
sub ecx, 0x384e61c
xor ecx, 0x1e7a37bf
xor ecx, 0x1459669e
sub ecx, 0x1520ab33
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x140169f30
cmp rbx, 0x200
jae 0x140169f2d
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x140169f30
mov rbx, rcx
xchg rdx, r12
mov r12, rbx
xchg rdx, r12
xchg rcx, r13
mov r13, r15
xchg rcx, r13
call fcn.140172430
xchg rdi, rax
mov rdi, qword [r15 + 0x30]
xchg rdi, rax
and rax, rdi
add rax, rax
xchg r13, r12
mov r12, qword [r15 + 0x18]
xchg r13, r12
mov rbx, qword [r13 + rax*8 + 8]
mov rcx, qword [rbp]
cmp rbx, rcx
jne 0x140169f81
xchg rbx, rcx
mov qword [rsp + 0x20], rbx
xchg rcx, rbx
jmp 0x14016a024
mov r13, qword [r13 + rax*8]
xchg rbp, r14
mov r14, qword [rsi + 0x20]
xchg r14, rbp
nop word [rax + rax]
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x140169fb1
mov rdx, qword [rdx]
lea rcx, [rsi + 0x10]
cmp qword [rsi + 0x28], 0x10
jb 0x140169fca
xchg rdi, rcx
mov rdi, qword [rsi + 0x10]
xchg rcx, rdi
cmp rbp, rax
jne 0x140169fe9
xchg rbp, rsi
mov r8, rsi
xchg rsi, rbp
call fcn.1401ff302
test eax, eax
je 0x140169ffb
cmp rbx, r13
je 0x14016a01b
mov rbx, qword [rbx + 8]
jmp 0x140169f9b
mov rax, qword [rbx]
xchg rdi, rax
mov qword [rsp + 0x20], rdi
xchg rdi, rax
xchg rcx, rbx
mov qword [rsp + 0x28], rcx
xchg rbx, rcx
lea rbp, [r15 + 8]
jmp 0x14016a05a
mov qword [rsp + 0x20], rbx
lea rbp, [r15 + 8]
mov qword [rsp + 0x28], 0x6e2094e5
xor qword [rsp + 0x28], 0x77791f05
add qword [rsp + 0x28], 0x122d975
sub qword [rsp + 0x28], 0x15f381cc
add qword [rsp + 0x28], 0x5525f6b2
sub qword [rsp + 0x28], 0x59aeda3b
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
mov rdx, qword [rsp + 0x20]
mov r8, qword [rdx + 8]
inc qword [r15 + 0x10]
mov qword [rsi], rdx
xchg r9, r8
mov qword [rsi + 8], r9
xchg r8, r9
mov qword [r8], rsi
xchg r13, rsi
mov qword [rdx + 8], r13
xchg rsi, r13
mov rcx, qword [r15 + 0x18]
mov rax, qword [r15 + 0x30]
and rax, rdi
add rax, rax
xchg rsi, r9
mov rsi, qword [rcx + rax*8]
xchg rsi, r9
cmp r9, qword [rbp]
jne 0x14016a0b7
mov qword [rcx + rax*8], rsi
jmp 0x14016a0d4
cmp r9, rdx
jne 0x14016a0c9
mov qword [rcx + rax*8], rsi
jmp 0x14016a0d9
cmp qword [rcx + rax*8 + 8], r8
jne 0x14016a0d9
mov qword [rcx + rax*8 + 8], rsi
xchg r8, rsi
mov qword [r12], r8
xchg r8, rsi
mov byte [r12 + 8], 0x60
sub byte [r12 + 8], 0x12
sub byte [r12 + 8], 0x29
add byte [r12 + 8], 0xd
add byte [r12 + 8], 0x18
sub byte [r12 + 8], 0x49
mov rax, r12
xchg rbx, r13
mov r13, qword [rsp + 0x70]
xchg r13, rbx
xchg rbp, rbx
mov rbx, qword [rsp + 0x78]
xchg rbx, rbp
mov rsi, qword [rsp + 0x80]
add rsp, 0x40
nop
xchg qword [rsp], r15
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], r14
nop
xchg qword [rsp], r13
add rsp, 8
push rax
push rdx
push rdx
push rbx
push rcx
push rax
push rcx
xchg qword [rsp + 0x38], r12
pop rcx
pop rax
pop rcx
pop rbx
pop rdx
pop rdx
pop rax
add rsp, 8
push rcx
push rax
push rdx
push rax
push rax
push rdx
push rbx
xchg qword [rsp + 0x38], rdi
pop rbx
pop rdx
pop rax
pop rax
pop rdx
pop rax
pop rcx
add rsp, 8
ret
lea rcx, [0x140001510]
call fcn.1401fee80
int3