Function at 0x1401aeb10
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x50]
sub rsp, 0x150
movaps xmmword [rsp + 0x140], xmm6
mov rax, qword [0x1404c39e8]
xor rax, rsp
mov qword [rbp + 0x38], rax
mov qword [rbp - 0x70], r8
mov qword [rbp - 0x48], rdx
mov qword [rsp + 0x60], rcx
mov qword [rbp + 8], rcx
mov r13, rdx
mov qword [rbp + 0x10], rdx
mov qword [rbp + 0x18], r8
xor ebx, ebx
mov dword [rbp - 0x80], ebx
mov dword [rbp - 0x50], ebx
mov rcx, qword [r8 + 8]
sub rcx, qword [r8]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov r12, rdx
sar r12, 2
mov rax, r12
shr rax, 0x3f
add r12, rax
shr r12, 2
dec r12d
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
mov eax, ebx
mov qword [rbp + 0x30], rbx
mov esi, ebx
mov r15d, ebx
movsd xmm6, qword [0x1403ca7e8]
nop dword [rax]
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], rbx
mov rdx, qword [rbp + 0x28]
cmp rdx, rax
je 0x1401aebdf
mov r8, rbx
mov rax, rbx
mov qword [rdx], rbx
mov qword [rdx + 8], rbx
mov qword [rdx + 0x10], rbx
add qword [rbp + 0x28], 0x18
jmp 0x1401aebf7
lea r8, [rsp + 0x68]
lea rcx, [rbp + 0x20]
call fcn.1401ad7e0
mov r8, qword [rsp + 0x78]
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x1401aec10
sub r8, rax
sar r8, 2
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.1401afca0
mov eax, esi
and eax, 3
lea r14, [rax + rax*2]
mov rax, qword [rbp + 0x20]
lea rcx, [rax + r14*8]
mov dword [rbp - 0x78], ebx
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1401aec37
mov dword [rdx], ebx
add qword [rcx + 8], 4
jmp 0x1401aec40
lea r8, [rbp - 0x78]
call fcn.1401ad3e0
mov rax, qword [r13]
mov edi, dword [r15 + rax]
mov rbx, qword [rbp + 0x20]
movd xmm0, esi
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm6
call fcn.140399178
cvttsd2si rcx, xmm0
mov ecx, ecx
mov rax, qword [rbx + r14*8]
mov dword [rax + rcx*4], edi
inc esi
add r15, 4
cmp esi, 0x10
jge 0x1401aec81
mov rax, qword [rbp + 0x30]
xor ebx, ebx
jmp 0x1401aebb0
lea rax, [rsp + 0x68]
mov qword [rbp - 0x78], rax
mov r15, qword [rbp - 0x70]
mov rdx, r15
lea rcx, [rsp + 0x68]
call fcn.1401adc00
mov rbx, rax
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x68]
call fcn.1401adc00
nop
mov dword [rsp + 0x20], 4
xor r9d, r9d
mov r8, rbx
mov rdx, rax
lea rcx, [rbp - 0x40]
call fcn.1401ae5b0
mov rdx, rax
lea rcx, [rbp + 0x20]
call fcn.1401ade80
lea rcx, [rbp - 0x40]
call fcn.1401ae520
movsxd rdi, r12d
mov qword [rbp - 0x70], rdi
cmp r12d, 1
mov r13, qword [rsp + 0x60]
jle 0x1401af715
mov r14d, 1
xor r12d, r12d
movabs r8, 0xaaaaaaaaaaaaaaa
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], r12
mov rcx, qword [rbp + 0x28]
sub rcx, qword [rbp + 0x20]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x1401aee15
cmp rdx, r8
ja 0x1401afc38
lea rax, [rdx + rdx*2]
lea rdi, [rax*8]
cmp rdi, 0x1000
jb 0x1401aed82
lea rcx, [rdi + 0x27]
cmp rcx, rdi
jbe 0x1401afc32
call fcn.140382738
test rax, rax
je 0x1401afc3e
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x1401aed97
test rdi, rdi
je 0x1401aed94
mov rcx, rdi
call fcn.140382738
mov rbx, rax
jmp 0x1401aed97
mov rbx, r12
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rbx
lea rax, [rdi + rbx]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x60], rax
mov rdi, qword [rbp + 0x20]
mov rsi, qword [rbp + 0x28]
xorps xmm0, xmm0
movups xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x28], rbx
mov qword [rbp - 0x20], rbx
lea rax, [rsp + 0x30]
mov qword [rbp - 0x18], rax
cmp rdi, rsi
je 0x1401aedfc
nop dword [rax]
mov rdx, rdi
mov rcx, rbx
call fcn.1401adad0
add rbx, 0x18
mov qword [rbp - 0x20], rbx
add rdi, 0x18
cmp rdi, rsi
jne 0x1401aede0
mov qword [rbp - 0x28], rbx
lea r8, [rsp + 0x30]
mov rdx, rbx
mov rcx, rbx
call fcn.1401ad350
mov qword [rsp + 0x38], rbx
mov r9, r12
nop dword [rax + rax]
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + r9]
movsxd rcx, dword [rdx]
mov rax, qword [0x1404dc910]
mov ecx, dword [rax + rcx*4]
mov dword [rdx], ecx
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + r9]
movsxd rcx, dword [rdx + 4]
mov rax, qword [0x1404dc910]
mov ecx, dword [rax + rcx*4]
mov dword [rdx + 4], ecx
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + r9]
movsxd rcx, dword [rdx + 8]
mov rax, qword [0x1404dc910]
mov ecx, dword [rax + rcx*4]
mov dword [rdx + 8], ecx
mov rax, qword [rsp + 0x30]
mov r8, qword [rax + r9]
movsxd rcx, dword [r8 + 0xc]
mov rax, qword [0x1404dc910]
mov edx, dword [rax + rcx*4]
mov dword [r8 + 0xc], edx
add r9, 0x18
cmp r9, 0x60
jl 0x1401aee20
mov rsi, qword [rsp + 0x40]
mov qword [rsp + 0x40], r12
mov rbx, qword [rsp + 0x38]
mov qword [rsp + 0x38], r12
mov rdi, qword [rsp + 0x30]
mov qword [rsp + 0x30], r12
lea rcx, [rsp + 0x30]
call fcn.1401ae520
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x1401aef2a
lea r8, [rbp + 0x20]
mov rdx, qword [rbp + 0x28]
call fcn.1401ad350
mov rcx, qword [rbp + 0x30]
mov r8, qword [rbp + 0x20]
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, r8
cmp rdx, 0x1000
jb 0x1401aef22
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401afc3e
mov rcx, r8
call fcn.140382774
mov qword [rbp + 0x20], rdi
mov qword [rbp + 0x28], rbx
mov qword [rbp + 0x30], rsi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r12
sub rbx, rdi
movabs rdi, 0x2aaaaaaaaaaaaaab
mov rax, rdi
imul rbx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x1401af052
movabs rax, 0xaaaaaaaaaaaaaaa
cmp rdx, rax
ja 0x1401afc4a
lea rax, [rdx + rdx*2]
lea rdi, [rax*8]
cmp rdi, 0x1000
jb 0x1401aefbc
lea rcx, [rdi + 0x27]
cmp rcx, rdi
jbe 0x1401afc44
call fcn.140382738
test rax, rax
je 0x1401afc50
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x1401aefd1
test rdi, rdi
je 0x1401aefce
mov rcx, rdi
call fcn.140382738
mov rbx, rax
jmp 0x1401aefd1
mov rbx, r12
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rbx
lea rax, [rbx + rdi]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x60], rax
mov rdi, qword [rbp + 0x20]
mov rsi, qword [rbp + 0x28]
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp - 0x10], rbx
mov qword [rbp - 8], rbx
lea rax, [rsp + 0x48]
mov qword [rbp], rax
cmp rdi, rsi
je 0x1401af02f
mov rdx, rdi
mov rcx, rbx
call fcn.1401adad0
add rbx, 0x18
mov qword [rbp - 8], rbx
add rdi, 0x18
cmp rdi, rsi
jne 0x1401af013
mov qword [rbp - 0x10], rbx
lea r8, [rsp + 0x48]
mov rdx, rbx
mov rcx, rbx
call fcn.1401ad350
mov qword [rsp + 0x50], rbx
movabs rdi, 0x2aaaaaaaaaaaaaab
mov r8d, 4
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x30]
call fcn.1401b2e90
mov rbx, rax
lea rax, [rbp + 0x20]
cmp rax, rbx
je 0x1401af10f
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x1401af0ed
lea r8, [rbp + 0x20]
mov rdx, qword [rbp + 0x28]
call fcn.1401ad350
mov rcx, qword [rbp + 0x30]
mov r8, qword [rbp + 0x20]
sub rcx, r8
mov rax, rdi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, r8
cmp rdx, 0x1000
jb 0x1401af0d9
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401afc50
mov rcx, r8
call fcn.140382774
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], r12
mov rax, qword [rbx]
mov qword [rbp + 0x20], rax
mov rax, qword [rbx + 8]
mov qword [rbp + 0x28], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0x30], rax
mov qword [rbx], r12
mov qword [rbx + 8], r12
mov qword [rbx + 0x10], r12
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1401af17e
lea r8, [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
call fcn.1401ad350
mov rcx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x30]
sub rcx, r8
mov rax, rdi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, r8
cmp rdx, 0x1000
jb 0x1401af176
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401afc50
mov rcx, r8
call fcn.140382774
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r12
mov rcx, qword [rbp + 0x28]
sub rcx, qword [rbp + 0x20]
mov rax, rdi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x1401af29f
movabs rax, 0xaaaaaaaaaaaaaaa
cmp rdx, rax
ja 0x1401afc5c
lea rax, [rdx + rdx*2]
lea rdi, [rax*8]
cmp rdi, 0x1000
jb 0x1401af1ff
lea rcx, [rdi + 0x27]
cmp rcx, rdi
jbe 0x1401afc56
call fcn.140382738
test rax, rax
je 0x1401afc62
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x1401af214
test rdi, rdi
je 0x1401af211
mov rcx, rdi
call fcn.140382738
mov rbx, rax
jmp 0x1401af214
mov rbx, r12
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rbx
lea rax, [rdi + rbx]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x60], rax
mov rdi, qword [rbp + 0x20]
mov rsi, qword [rbp + 0x28]
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x38], rbx
lea rax, [rsp + 0x48]
mov qword [rbp - 0x30], rax
cmp rdi, rsi
je 0x1401af27c
nop word [rax + rax]
mov rdx, rdi
mov rcx, rbx
call fcn.1401adad0
add rbx, 0x18
mov qword [rbp - 0x38], rbx
add rdi, 0x18
cmp rdi, rsi
jne 0x1401af260
mov qword [rbp - 0x40], rbx
lea r8, [rsp + 0x48]
mov rdx, rbx
mov rcx, rbx
call fcn.1401ad350
mov qword [rsp + 0x50], rbx
movabs rdi, 0x2aaaaaaaaaaaaaab
mov r8d, 4
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x30]
call fcn.1401b26f0
mov rbx, rax
lea rax, [rbp + 0x20]
cmp rax, rbx
je 0x1401af35c
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x1401af33a
lea r8, [rbp + 0x20]
mov rdx, qword [rbp + 0x28]
call fcn.1401ad350
mov rcx, qword [rbp + 0x30]
mov r8, qword [rbp + 0x20]
sub rcx, r8
mov rax, rdi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, r8
cmp rdx, 0x1000
jb 0x1401af326
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401afc62
mov rcx, r8
call fcn.140382774
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], r12
mov rax, qword [rbx]
mov qword [rbp + 0x20], rax
mov rax, qword [rbx + 8]
mov qword [rbp + 0x28], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0x30], rax
mov qword [rbx], r12
mov qword [rbx + 8], r12
mov qword [rbx + 0x10], r12
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1401af3cb
lea r8, [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
call fcn.1401ad350
mov rcx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x30]
sub rcx, r8
mov rax, rdi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, r8
cmp rdx, 0x1000
jb 0x1401af3c3
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401afc62
mov rcx, r8
call fcn.140382774
lea rax, [rsp + 0x48]
mov qword [rsp + 0x60], rax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r12
mov rcx, qword [r15 + 8]
sub rcx, qword [r15]
mov rax, rdi
imul rcx
mov rdi, rdx
sar rdi, 2
mov rax, rdi
shr rax, 0x3f
add rdi, rax
je 0x1401af4a5
movabs rax, 0xaaaaaaaaaaaaaaa
cmp rdi, rax
ja 0x1401afc68
mov rdx, rdi
lea rcx, [rsp + 0x48]
call fcn.1401ae760
mov rbx, rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rdi + rdi*2]
lea rcx, [rbx + rax*8]
mov qword [rsp + 0x58], rcx
lea rax, [rsp + 0x48]
mov qword [rbp - 0x78], rax
mov rsi, qword [r15 + 8]
mov rdi, qword [r15]
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x68], rbx
mov qword [rbp - 0x60], rbx
lea rax, [rsp + 0x48]
mov qword [rbp - 0x58], rax
cmp rdi, rsi
je 0x1401af48c
nop
mov rdx, rdi
mov rcx, rbx
call fcn.1401adad0
add rbx, 0x18
mov qword [rbp - 0x60], rbx
add rdi, 0x18
cmp rdi, rsi
jne 0x1401af470
mov qword [rbp - 0x68], rbx
lea r8, [rsp + 0x48]
mov rdx, rbx
mov rcx, rbx
call fcn.1401ad350
mov qword [rsp + 0x50], rbx
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], r12
mov rcx, qword [rbp + 0x28]
sub rcx, qword [rbp + 0x20]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x1401af5c7
movabs rax, 0xaaaaaaaaaaaaaaa
cmp rdx, rax
ja 0x1401afc7a
lea rax, [rdx + rdx*2]
lea rdi, [rax*8]
cmp rdi, 0x1000
jb 0x1401af52d
lea rcx, [rdi + 0x27]
cmp rcx, rdi
jbe 0x1401afc74
call fcn.140382738
test rax, rax
je 0x1401afc6e
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x1401af542
test rdi, rdi
je 0x1401af53f
mov rcx, rdi
call fcn.140382738
mov rbx, rax
jmp 0x1401af542
mov rbx, r12
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rbx
lea rax, [rdi + rbx]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x30]
mov qword [rbp - 0x78], rax
mov rdi, qword [rbp + 0x20]
mov rsi, qword [rbp + 0x28]
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rbx
lea rax, [rsp + 0x30]
mov qword [rsp + 0x78], rax
cmp rdi, rsi
je 0x1401af5ad
nop word [rax + rax]
mov rdx, rdi
mov rcx, rbx
call fcn.1401adad0
add rbx, 0x18
mov qword [rsp + 0x70], rbx
add rdi, 0x18
cmp rdi, rsi
jne 0x1401af590
mov qword [rsp + 0x68], rbx
lea r8, [rsp + 0x30]
mov rdx, rbx
mov rcx, rbx
call fcn.1401ad350
mov qword [rsp + 0x38], rbx
lea rax, [r14*4]
lea r10, [rax + rax*2]
lea r11, [rax + rax*2]
lea rbx, [rax + rax*2]
mov r9, r12
mov r8, r12
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + r9]
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + r10*8]
mov eax, dword [rcx + r8]
xor dword [rdx], eax
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + r9]
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + r10*8 + 0x18]
mov eax, dword [rcx + r8]
xor dword [rdx + 4], eax
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + r9]
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + r11*8 + 0x30]
mov eax, dword [rcx + r8]
xor dword [rdx + 8], eax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + rbx*8 + 0x48]
mov edx, dword [r8 + rcx]
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax + r9]
xor dword [rcx + 0xc], edx
add r8, 4
lea r9, [r9 + 0x18]
cmp r8, 0x10
jl 0x1401af5e1
mov rbx, qword [rsp + 0x40]
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x38]
mov qword [rsp + 0x38], r12
mov rsi, qword [rsp + 0x30]
mov qword [rsp + 0x30], r12
lea rcx, [rsp + 0x30]
call fcn.1401ae520
lea rcx, [rsp + 0x48]
call fcn.1401ae520
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x1401af6f8
lea r8, [rbp + 0x20]
mov rdx, qword [rbp + 0x28]
call fcn.1401ad350
mov rcx, qword [rbp + 0x30]
mov r8, qword [rbp + 0x20]
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, r8
cmp rdx, 0x1000
jb 0x1401af6f0
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401afc80
mov rcx, r8
call fcn.140382774
mov qword [rbp + 0x20], rsi
mov qword [rbp + 0x28], rdi
mov qword [rbp + 0x30], rbx
inc r14
mov rdi, qword [rbp - 0x70]
cmp r14, rdi
jge 0x1401af718
jmp 0x1401aecfa
xor r12d, r12d
lea rdx, [rbp + 0x20]
lea rcx, [rsp + 0x68]
call fcn.1401adc00
mov r9, rax
mov r10, r12
nop dword [rax]
mov rax, qword [r9]
mov rdx, qword [r10 + rax]
movsxd rcx, dword [rdx]
mov rax, qword [0x1404dc910]
mov ecx, dword [rax + rcx*4]
mov dword [rdx], ecx
mov rax, qword [r9]
mov rdx, qword [rax + r10]
movsxd rcx, dword [rdx + 4]
mov rax, qword [0x1404dc910]
mov ecx, dword [rax + rcx*4]
mov dword [rdx + 4], ecx
mov rax, qword [r9]
mov rdx, qword [rax + r10]
movsxd rcx, dword [rdx + 8]
mov rax, qword [0x1404dc910]
mov ecx, dword [rax + rcx*4]
mov dword [rdx + 8], ecx
mov rax, qword [r9]
mov r8, qword [r10 + rax]
movsxd rcx, dword [r8 + 0xc]
mov rax, qword [0x1404dc910]
mov edx, dword [rax + rcx*4]
mov dword [r8 + 0xc], edx
add r10, 0x18
cmp r10, 0x60
jl 0x1401af730
mov rdx, qword [r9 + 0x10]
mov qword [r9 + 0x10], r12
mov rcx, qword [r9 + 8]
mov qword [r9 + 8], r12
mov rax, qword [r9]
mov qword [r9], r12
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], rdx
mov rcx, r9
call fcn.1401ae520
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x20]
call fcn.1401ade80
mov rbx, qword [rsp + 0x48]
test rbx, rbx
je 0x1401af84d
lea r8, [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.1401ad350
mov rcx, qword [rsp + 0x58]
sub rcx, rbx
movabs r14, 0x2aaaaaaaaaaaaaab
mov rax, r14
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, rbx
cmp rdx, 0x1000
jb 0x1401af843
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401afc86
mov rcx, rbx
call fcn.140382774
jmp 0x1401af857
movabs r14, 0x2aaaaaaaaaaaaaab
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x68]
call fcn.1401adc00
mov r8d, 4
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.1401b2e90
mov rdx, rax
lea rcx, [rbp + 0x20]
call fcn.1401ade80
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x1401af8f2
lea r8, [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
call fcn.1401ad350
mov rcx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x68]
sub rcx, r8
mov rax, r14
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, r8
cmp rdx, 0x1000
jb 0x1401af8ea
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401afc8c
mov rcx, r8
call fcn.140382774
lea rax, [rsp + 0x68]
mov qword [rsp + 0x60], rax
mov rdx, r15
lea rcx, [rsp + 0x68]
call fcn.1401adc00
mov rbx, rax
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x68]
call fcn.1401adc00
mov r8, rax
lea rax, [rdi*4]
lea r11, [rax + rax*2]
lea rdi, [rax + rax*2]
lea rsi, [rax + rax*2]
mov r10, r12
mov r9, r12
nop word [rax + rax]
mov rax, qword [r8]
mov rdx, qword [r10 + rax]
mov rax, qword [rbx]
mov rcx, qword [rax + r11*8]
mov eax, dword [rcx + r9]
xor dword [rdx], eax
mov rax, qword [r8]
mov rdx, qword [r10 + rax]
mov rax, qword [rbx]
mov rcx, qword [rax + r11*8 + 0x18]
mov eax, dword [rcx + r9]
xor dword [rdx + 4], eax
mov rax, qword [r8]
mov rdx, qword [r10 + rax]
mov rax, qword [rbx]
mov rcx, qword [rax + rdi*8 + 0x30]
mov eax, dword [rcx + r9]
xor dword [rdx + 8], eax
mov rax, qword [rbx]
mov rcx, qword [rax + rsi*8 + 0x48]
mov edx, dword [r9 + rcx]
mov rax, qword [r8]
mov rcx, qword [r10 + rax]
xor dword [rcx + 0xc], edx
add r9, 4
lea r10, [r10 + 0x18]
cmp r9, 0x10
jl 0x1401af940
mov rdx, qword [r8 + 0x10]
mov qword [r8 + 0x10], r12
mov rcx, qword [r8 + 8]
mov qword [r8 + 8], r12
mov rax, qword [r8]
mov qword [r8], r12
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], rdx
mov rcx, r8
call fcn.1401ae520
mov rcx, rbx
call fcn.1401ae520
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x20]
call fcn.1401ade80
mov rbx, qword [rsp + 0x48]
test rbx, rbx
je 0x1401afa54
lea r8, [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.1401ad350
mov rcx, qword [rsp + 0x58]
sub rcx, rbx
mov rax, r14
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, rbx
cmp rdx, 0x1000
jb 0x1401afa4c
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401afc92
mov rcx, rbx
call fcn.140382774
xorps xmm0, xmm0
movups xmmword [r13], xmm0
mov dword [rbp - 0x78], reloc.WS2_32.dll_recv
mov qword [r13], r12
mov qword [r13 + 8], r12
mov qword [r13 + 0x10], r12
mov edx, 1
mov rcx, r13
call fcn.1401ae680
mov rcx, rax
mov qword [r13], rax
add rax, 4
mov qword [r13 + 0x10], rax
mov dword [rcx], reloc.WS2_32.dll_recv
lea rdx, [rcx + 4]
mov qword [r13 + 8], rdx
mov eax, dword [rbp - 0x80]
or eax, 1
mov dword [rbp - 0x50], eax
mov ebx, reloc.WS2_32.dll_ntohs
nop word [rax + rax]
mov dword [rbp - 0x80], r12d
cmp rdx, qword [r13 + 0x10]
je 0x1401afac4
mov dword [rdx], r12d
add qword [r13 + 8], 4
jmp 0x1401afad0
lea r8, [rbp - 0x80]
mov rcx, r13
call fcn.1401ad3e0
mov rdx, qword [r13 + 8]
sub rbx, 1
jne 0x1401afab0
mov esi, r12d
mov r14, r12
mov eax, esi
and eax, 3
lea rdi, [rax + rax*2]
mov rbx, qword [rbp + 0x20]
movd xmm0, esi
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm6
call fcn.140399178
cvttsd2si rcx, xmm0
mov ecx, ecx
mov rax, qword [rbx + rdi*8]
mov edx, dword [rax + rcx*4]
mov rax, qword [r13]
mov dword [r14 + rax], edx
inc esi
lea r14, [r14 + 4]
cmp esi, 0x10
jl 0x1401afae0
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x1401afb9c
lea r8, [rbp + 0x20]
mov rdx, qword [rbp + 0x28]
call fcn.1401ad350
mov rcx, qword [rbp + 0x30]
mov r8, qword [rbp + 0x20]
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, r8
cmp rdx, 0x1000
jb 0x1401afb88
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401afc26
mov rcx, r8
call fcn.140382774
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], r12
mov rbx, qword [rbp - 0x48]
mov rcx, qword [rbx]
test rcx, rcx
je 0x1401afbec
mov rax, qword [rbx + 0x10]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
cmp rdx, 0x1000
jb 0x1401afbdc
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1401afc2c
mov rcx, r8
call fcn.140382774
mov qword [rbx], r12
mov qword [rbx + 8], r12
mov qword [rbx + 0x10], r12
mov rcx, r15
call fcn.1401ae520
mov rax, r13
mov rcx, qword [rbp + 0x38]
xor rcx, rsp
call fcn.140382da0
mov rbx, qword [rsp + 0x1a8]
movaps xmm6, xmmword [rsp + 0x140]
add rsp, 0x150
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140389824
nop
call fcn.140389824
nop
call fcn.140129f80
int3
call fcn.14012cc10
int3
call fcn.140389824
int3
call fcn.140129f80
int3
call fcn.14012cc10
int3
call fcn.140389824
int3
call fcn.140129f80
int3
call fcn.14012cc10
int3
call fcn.140389824
int3
call fcn.14012cc10
nop
call fcn.140389824
int3
call fcn.140129f80
int3
call fcn.14012cc10
nop
call fcn.140389824
int3
call fcn.140389824
int3
call fcn.140389824
int3
call fcn.140389824
int3