Function at 0x140073dc0
Capabilities:
Encrypt data using salsa20 or chacha

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x160
movdqa xmmword [rsp + 0x150], xmm15
movdqa xmmword [rsp + 0x140], xmm14
movdqa xmmword [rsp + 0x130], xmm13
movdqa xmmword [rsp + 0x120], xmm12
movdqa xmmword [rsp + 0x110], xmm11
movdqa xmmword [rsp + 0x100], xmm10
movdqa xmmword [rsp + 0xf0], xmm9
movdqa xmmword [rsp + 0xe0], xmm8
movdqa xmmword [rsp + 0xd0], xmm7
movdqa xmmword [rsp + 0xc0], xmm6
mov rdi, rcx
mov rcx, qword [0x141ddc4e8]
mov rsi, rdx
nop dword [rax]
mov eax, dword [0x141dcbfd8]
xor edx, edx
div dword [0x141dcbfdc]
and eax, 0xda235820
add eax, 0x2c7773bc
shr eax, 3
imul rax, rax, 0x435ab39
shr rax, 0x36
cmp eax, 0xe8bcc8a0
je 0x140072a80
test rcx, rcx
je 0x140072da6
nop word cs:[rax + rax]
mov eax, dword [0x141dcbfe8]
add eax, dword [0x141dcbfec]
imul eax, eax, 0xb1e1980
add eax, 0x11792958
cmp eax, 0x3c9c196c
jb 0x140072ac0
and ecx, 0x8000
xor eax, eax
nop word cs:[rax + rax]
mov edx, dword [0x141dcbff0]
imul edx, dword [0x141dcbff4]
or edx, 0x32d6eb53
imul edx, edx, 0xf2ebd7de
or edx, 0x95ea0945
cmp edx, 0x6b44ccbe
je 0x140072af0
or rcx, rax
je 0x140072be5
mov eax, dword [0x141dcc018]
or eax, dword [0x141dcc01c]
imul eax, eax, 0xe55746fa
or eax, 0x6c1268ac
xor eax, 0xcdbf8118
cmp eax, 0xcea0fab2
jbe 0x140072b4e
mov rcx, rdi
mov rdx, rsi
call fcn.140073980
xor ebx, ebx
mov rcx, rdi
mov rdx, rsi
call fcn.140073980
test bl, bl
jne 0x140072b50
nop
mov eax, dword [0x141dcc020]
and eax, dword [0x141dcc024]
add eax, 0x93e2f571
or eax, 0xb386b75
add eax, 0xd792a3a0
cmp eax, 0x468d7e46
jbe 0x140072b60
movaps xmm6, xmmword [rsp + 0xc0]
movaps xmm7, xmmword [rsp + 0xd0]
movaps xmm8, xmmword [rsp + 0xe0]
movaps xmm9, xmmword [rsp + 0xf0]
movaps xmm10, xmmword [rsp + 0x100]
movaps xmm11, xmmword [rsp + 0x110]
movaps xmm12, xmmword [rsp + 0x120]
movaps xmm13, xmmword [rsp + 0x130]
movaps xmm14, xmmword [rsp + 0x140]
movaps xmm15, xmmword [rsp + 0x150]
add rsp, 0x160
pop rbx
pop rdi
pop rsi
ret
mov rcx, qword [0x141ddc4e8]
mov eax, dword [0x141dcbff8]
xor edx, edx
div dword [0x141dcbffc]
nop word [rax + rax]
mov eax, dword [0x141dcc000]
add eax, dword [0x141dcc004]
imul eax, eax, 0xae5edfdf
add eax, 0xe259172f
imul rax, rax, 0x7ad565bf
shr rax, 0x3e
cmp eax, 0xeedee7a7
ja 0x140072c00
test rcx, rcx
je 0x140072e14
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140072c40
and ecx, 0x4000
xor r8d, r8d
nop dword [rax]
mov eax, dword [0x141dcc008]
xor edx, edx
div dword [0x141dcc00c]
and eax, 0x6e4a18b8
cmp eax, 0xf146f244
je 0x140072c50
mov eax, 0x8bd58ddb
nop
mov edx, dword [0x141dcc010]
add edx, dword [0x141dcc014]
imul rdx, rax
shr rdx, 0x3e
xor edx, 0x78e5e85
imul edx, edx, 0xbf8523fe
cmp edx, 0x842dede
je 0x140072c70
or rcx, r8
je 0x140072d0a
mov rcx, rdi
mov rdx, rsi
movaps xmm6, xmmword [rsp + 0xc0]
movaps xmm7, xmmword [rsp + 0xd0]
movaps xmm8, xmmword [rsp + 0xe0]
movaps xmm9, xmmword [rsp + 0xf0]
movaps xmm10, xmmword [rsp + 0x100]
movaps xmm11, xmmword [rsp + 0x110]
movaps xmm12, xmmword [rsp + 0x120]
movaps xmm13, xmmword [rsp + 0x130]
movaps xmm14, xmmword [rsp + 0x140]
movaps xmm15, xmmword [rsp + 0x150]
add rsp, 0x160
pop rbx
pop rdi
pop rsi
jmp 0x140073dc0
mov rcx, qword [0x141ddc4e8]
nop word cs:[rax + rax]
mov eax, dword [0x141dcc028]
xor edx, edx
div dword [0x141dcc02c]
and eax, 0x18220106
add eax, 0x2c8a6322
cmp eax, 0x4dea3f33
ja 0x140072d20
nop
mov eax, dword [0x141dcc030]
imul eax, dword [0x141dcc034]
add eax, 0xc85e3334
and eax, 0xc6fd52b8
cmp eax, 0x23ad6657
je 0x140072d40
test rcx, rcx
je 0x140072df5
and ecx, 0x400
mov eax, dword [0x141dcc048]
xor edx, edx
div dword [0x141dcc04c]
xor eax, eax
nop dword [rax]
mov edx, dword [0x141dcc050]
imul edx, dword [0x141dcc054]
imul edx, edx, 0xaa42a97a
add edx, 0x21799e10
cmp edx, 0x21de1673
jb 0x140072d80
jmp 0x140072e70
call fcn.1400fd3e0
mov rcx, rax
and ecx, 0x8000
xor eax, eax
mov edx, 0xe7501225
nop dword [rax + rax]
mov r8d, dword [0x141dcbfe0]
mov r9d, dword [0x141dcbfe4]
add r8d, r9d
add r8d, 0x41fbd17e
imul r8, rdx
shr r8, 0x38
or r8d, 0x3e49b444
cmp r8d, 0xf7c49c69
jae 0x140072dc0
jmp 0x140072b17
mov eax, dword [0x141dcc038]
sub eax, dword [0x141dcc03c]
or eax, 0xfffeaf1f
add eax, 0x7a9dad27
cmp eax, 0xf22883d
jae 0x140072e2a
jmp 0x140072e55
call fcn.1400fd3e0
mov rcx, rax
and ecx, 0x4000
xor r8d, r8d
jmp 0x140072c6a
mov eax, dword [0x141dcc040]
xor eax, dword [0x141dcc044]
xor eax, 0xd8283fbd
mov ebx, 0x859a6e2d
imul rbx, rax
shr rbx, 0x3e
call fcn.1400fd3e0
cmp ebx, 0xd232732a
jne 0x140072e5c
call fcn.1400fd3e0
jmp 0x140072e2a
mov rcx, rax
and ecx, 0x400
xor eax, eax
nop word [rax + rax]
mov edx, dword [0x141dcc058]
xor edx, dword [0x141dcc05c]
and edx, 0xcc9a5836
xor edx, 0x906f8c0
add edx, 0xd0057776
cmp edx, 0x14d1b26e
jb 0x140072e70
or rcx, rax
je 0x140072ec1
mov eax, dword [0x141dcc0a0]
sub eax, dword [0x141dcc0a4]
or eax, 0xad14741f
add eax, 0x93e9ef39
cmp eax, 0xb4fe5a5b
jbe 0x140073891
jmp 0x1400738d1
mov eax, dword [0x141dcc060]
xor edx, edx
div dword [0x141dcc064]
imul eax, eax, 0x6b21a1f7
cmp eax, 0x78d5614c
je 0x140072f06
mov eax, dword [0x141dcc068]
or eax, dword [0x141dcc06c]
add eax, 0x5a9a56e2
imul rax, rax, 0x2e80884d
shr rax, 0x3d
mov rcx, qword [0x141ddc4e8]
cmp eax, 0xf278e84d
jbe 0x140072f10
mov rax, qword [0x141ddc4e8]
jmp 0x140072edc
mov eax, dword [0x141dcc070]
imul eax, dword [0x141dcc074]
and eax, 0xb56da2b3
cmp eax, 0x73a9b813
je 0x140072f10
nop dword [rax]
mov eax, dword [0x141dcc078]
imul eax, dword [0x141dcc07c]
or eax, 0x73b40341
add eax, 0xd35a47b0
imul rax, rax, 0x484a4261
shr rax, 0x3d
cmp eax, 0x235a319c
ja 0x140072f30
test rcx, rcx
je 0x140073666
mov eax, dword [0x141dcc088]
xor edx, edx
div dword [0x141dcc08c]
mov eax, dword [0x141dcc090]
or eax, dword [0x141dcc094]
or eax, 0xfffff7d7
cmp eax, 0x53101c3
je 0x140072f70
and ecx, 0x200
xor eax, eax
mov edx, dword [0x141dcc098]
or edx, dword [0x141dcc09c]
xor edx, 0x100c4151
or edx, 0xdd39ea6
imul edx, edx, 0xb1c3c5ac
cmp edx, 0xa776e8f4
je 0x140072f90
or rcx, rax
je 0x140072fe0
mov eax, dword [0x141dcc0d0]
or eax, dword [0x141dcc0d4]
cmp eax, 0x61e3fba1
jne 0x140073909
jmp 0x140073940
mov eax, dword [0x141dcc0b8]
sub eax, dword [0x141dcc0bc]
add eax, 0xf0c25415
or eax, 0x41a3731d
cmp eax, 0xd0819aea
je 0x140072fe0
mov rcx, qword [rdi + 0x20]
lea rax, [rcx + 1]
movd xmm7, eax
shr rax, 0x20
lea rdx, [rcx + 2]
movd xmm9, edx
shr rdx, 0x20
movdqa xmm5, xmmword [rdi + 0x20]
pshufd xmm2, xmm5, 0xf8
pslldq xmm2, 4
movd xmm0, eax
pslldq xmm0, 8
shufps xmm0, xmm5, 0xe8
por xmm7, xmm0
movd xmm0, edx
por xmm0, xmm2
movdqa xmm1, xmm0
pslldq xmm1, 8
shufps xmm1, xmm0, 0xe8
por xmm9, xmm1
lea rax, [rcx + 3]
movd xmm3, eax
shr rax, 0x20
movd xmm0, eax
movdqa xmmword [rsp + 0x60], xmm2
por xmm0, xmm2
movdqa xmm1, xmm0
pslldq xmm1, 8
shufps xmm1, xmm0, 0xe8
por xmm3, xmm1
movdqa xmm6, xmmword [rdi]
movdqa xmm14, xmmword [rdi + 0x10]
movdqa xmm13, xmmword [0x140103d50]
mov eax, 6
movdqa xmmword [rsp + 0xa0], xmm3
movdqa xmm12, xmm3
movdqa xmmword [rsp + 0xb0], xmm9
movdqa xmm2, xmm13
movdqa xmm3, xmm13
movdqa xmm4, xmm13
movdqa xmmword [rsp + 0x50], xmm7
movaps xmmword [rsp + 0x90], xmm5
movdqa xmm0, xmm5
movdqa xmmword [rsp + 0x30], xmm14
movdqa xmmword [rsp + 0x20], xmm14
movdqa xmmword [rsp + 0x40], xmm14
movdqa xmmword [rsp + 0x80], xmm14
movdqa xmm15, xmm6
movdqa xmm10, xmm6
movdqa xmm5, xmm6
movdqa xmmword [rsp + 0x70], xmm6
nop word cs:[rax + rax]
paddd xmm13, xmm5
paddd xmm2, xmm6
paddd xmm3, xmm10
paddd xmm4, xmm15
pxor xmm0, xmm13
pxor xmm7, xmm2
pxor xmm9, xmm3
pxor xmm12, xmm4
pshuflw xmm0, xmm0, 0xb1
pshufhw xmm1, xmm0, 0xb1
pshuflw xmm0, xmm7, 0xb1
pshufhw xmm11, xmm0, 0xb1
pshuflw xmm0, xmm9, 0xb1
pshufhw xmm9, xmm0, 0xb1
pshuflw xmm0, xmm12, 0xb1
pshufhw xmm12, xmm0, 0xb1
paddd xmm14, xmm1
movdqa xmm0, xmmword [rsp + 0x40]
paddd xmm0, xmm11
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmm7, xmmword [rsp + 0x20]
paddd xmm7, xmm9
movdqa xmm8, xmmword [rsp + 0x30]
paddd xmm8, xmm12
pxor xmm5, xmm14
pxor xmm6, xmm0
pxor xmm10, xmm7
pxor xmm15, xmm8
movdqa xmm0, xmm5
psrld xmm0, 0x14
pslld xmm5, 0xc
por xmm5, xmm0
movdqa xmm0, xmm6
psrld xmm0, 0x14
pslld xmm6, 0xc
por xmm6, xmm0
movdqa xmm0, xmm10
psrld xmm0, 0x14
pslld xmm10, 0xc
por xmm10, xmm0
movdqa xmm0, xmm15
psrld xmm0, 0x14
pslld xmm15, 0xc
por xmm15, xmm0
paddd xmm13, xmm5
paddd xmm2, xmm6
paddd xmm3, xmm10
paddd xmm4, xmm15
pxor xmm1, xmm13
movdqa xmm0, xmm1
psrld xmm0, 0x18
pslld xmm1, 8
por xmm1, xmm0
pxor xmm11, xmm2
movdqa xmm0, xmm11
psrld xmm0, 0x18
pslld xmm11, 8
por xmm11, xmm0
pxor xmm9, xmm3
movdqa xmm0, xmm9
psrld xmm0, 0x18
pslld xmm9, 8
por xmm9, xmm0
pxor xmm12, xmm4
movdqa xmm0, xmm12
psrld xmm0, 0x18
pslld xmm12, 8
por xmm12, xmm0
paddd xmm14, xmm1
movdqa xmm0, xmmword [rsp + 0x40]
paddd xmm0, xmm11
movdqa xmmword [rsp + 0x40], xmm0
paddd xmm7, xmm9
movdqa xmmword [rsp + 0x20], xmm7
paddd xmm8, xmm12
movdqa xmmword [rsp + 0x30], xmm8
pxor xmm5, xmm14
pxor xmm6, xmm0
pxor xmm10, xmm7
pxor xmm15, xmm8
movdqa xmm0, xmm5
psrld xmm0, 0x19
pslld xmm5, 7
por xmm5, xmm0
movdqa xmm0, xmm6
psrld xmm0, 0x19
pslld xmm6, 7
por xmm6, xmm0
movdqa xmm0, xmm10
psrld xmm0, 0x19
pslld xmm10, 7
por xmm10, xmm0
movdqa xmm0, xmm15
psrld xmm0, 0x19
pslld xmm15, 7
por xmm15, xmm0
pshufd xmm0, xmm5, 0x39
pshufd xmm6, xmm6, 0x39
pshufd xmm7, xmm10, 0x39
pshufd xmm8, xmm15, 0x39
pshufd xmm14, xmm14, 0x4e
pshufd xmm15, xmmword [rsp + 0x40], 0x4e
pshufd xmm5, xmmword [rsp + 0x20], 0x4e
movdqa xmmword [rsp + 0x20], xmm5
pshufd xmm5, xmmword [rsp + 0x30], 0x4e
movdqa xmmword [rsp + 0x30], xmm5
pshufd xmm1, xmm1, 0x93
pshufd xmm5, xmm11, 0x93
pshufd xmm10, xmm9, 0x93
pshufd xmm12, xmm12, 0x93
paddd xmm13, xmm0
paddd xmm2, xmm6
paddd xmm3, xmm7
paddd xmm4, xmm8
pshuflw xmm9, xmm13, 0xb1
pshufhw xmm11, xmm9, 0xb1
pshuflw xmm1, xmm1, 0xb1
pshufhw xmm9, xmm1, 0xb1
pxor xmm9, xmm11
pshuflw xmm1, xmm2, 0xb1
pshufhw xmm11, xmm1, 0xb1
pshuflw xmm1, xmm5, 0xb1
pshufhw xmm1, xmm1, 0xb1
pxor xmm1, xmm11
pshuflw xmm5, xmm3, 0xb1
pshufhw xmm5, xmm5, 0xb1
pshuflw xmm10, xmm10, 0xb1
pshufhw xmm11, xmm10, 0xb1
pxor xmm11, xmm5
pshuflw xmm5, xmm4, 0xb1
pshufhw xmm5, xmm5, 0xb1
pshuflw xmm10, xmm12, 0xb1
pshufhw xmm12, xmm10, 0xb1
pxor xmm12, xmm5
paddd xmm14, xmm9
paddd xmm15, xmm1
movdqa xmm5, xmmword [rsp + 0x20]
paddd xmm5, xmm11
movdqa xmmword [rsp + 0x20], xmm5
movdqa xmm10, xmmword [rsp + 0x30]
paddd xmm10, xmm12
pxor xmm0, xmm14
pxor xmm6, xmm15
pxor xmm7, xmm5
pxor xmm8, xmm10
movdqa xmm5, xmm0
psrld xmm5, 0x14
pslld xmm0, 0xc
por xmm0, xmm5
movdqa xmm5, xmm6
psrld xmm5, 0x14
pslld xmm6, 0xc
por xmm6, xmm5
movdqa xmm5, xmm7
psrld xmm5, 0x14
pslld xmm7, 0xc
por xmm7, xmm5
movdqa xmm5, xmm8
psrld xmm5, 0x14
pslld xmm8, 0xc
por xmm8, xmm5
paddd xmm13, xmm0
paddd xmm2, xmm6
paddd xmm3, xmm7
paddd xmm4, xmm8
pxor xmm9, xmm13
movdqa xmm5, xmm9
psrld xmm5, 0x18
pslld xmm9, 8
por xmm9, xmm5
pxor xmm1, xmm2
movdqa xmm5, xmm1
psrld xmm5, 0x18
pslld xmm1, 8
por xmm1, xmm5
pxor xmm11, xmm3
movdqa xmm5, xmm11
psrld xmm5, 0x18
pslld xmm11, 8
por xmm11, xmm5
pxor xmm12, xmm4
movdqa xmm5, xmm12
psrld xmm5, 0x18
pslld xmm12, 8
por xmm12, xmm5
paddd xmm14, xmm9
paddd xmm15, xmm1
movdqa xmmword [rsp + 0x40], xmm15
movdqa xmm5, xmmword [rsp + 0x20]
paddd xmm5, xmm11
movdqa xmmword [rsp + 0x20], xmm5
paddd xmm10, xmm12
movdqa xmmword [rsp + 0x30], xmm10
pxor xmm0, xmm14
pxor xmm6, xmm15
pxor xmm7, xmm5
pxor xmm8, xmm10
movdqa xmm5, xmm0
psrld xmm5, 0x19
pslld xmm0, 7
por xmm0, xmm5
movdqa xmm5, xmm6
psrld xmm5, 0x19
pslld xmm6, 7
por xmm6, xmm5
movdqa xmm5, xmm7
psrld xmm5, 0x19
pslld xmm7, 7
por xmm7, xmm5
movdqa xmm5, xmm8
psrld xmm5, 0x19
pslld xmm8, 7
por xmm8, xmm5
pshufd xmm5, xmm0, 0x93
pshufd xmm6, xmm6, 0x93
pshufd xmm10, xmm7, 0x93
pshufd xmm15, xmm8, 0x93
pshufd xmm14, xmm14, 0x4e
pshufd xmm0, xmmword [rsp + 0x40], 0x4e
movdqa xmmword [rsp + 0x40], xmm0
pshufd xmm0, xmmword [rsp + 0x20], 0x4e
movdqa xmmword [rsp + 0x20], xmm0
pshufd xmm0, xmmword [rsp + 0x30], 0x4e
movdqa xmmword [rsp + 0x30], xmm0
pshufd xmm0, xmm9, 0x39
pshufd xmm7, xmm1, 0x39
pshufd xmm9, xmm11, 0x39
pshufd xmm12, xmm12, 0x39
dec eax
jne 0x140073110
paddd xmm0, xmmword [rsp + 0x90]
paddd xmm7, xmmword [rsp + 0x50]
paddd xmm9, xmmword [rsp + 0xb0]
movdqa xmm1, xmmword [rsp + 0x70]
paddd xmm5, xmm1
paddd xmm6, xmm1
paddd xmm10, xmm1
paddd xmm15, xmm1
movdqa xmm1, xmmword [rsp + 0x80]
paddd xmm14, xmm1
movdqa xmm8, xmmword [rsp + 0x40]
paddd xmm8, xmm1
movdqa xmmword [rsp + 0x40], xmm8
movdqa xmm8, xmmword [rsp + 0x20]
paddd xmm8, xmm1
movdqa xmmword [rsp + 0x20], xmm8
movdqa xmm8, xmmword [rsp + 0x30]
paddd xmm8, xmm1
movdqa xmmword [rsp + 0x30], xmm8
paddd xmm12, xmmword [rsp + 0xa0]
movdqa xmmword [rsp + 0x50], xmm12
mov eax, dword [0x141dcc0c0]
xor edx, edx
div dword [0x141dcc0c4]
or eax, 0x463fd43
imul eax, eax, 0x6582983a
xor eax, 0xbbb63037
cmp eax, 0xa6868d5a
jae 0x1400736aa
jmp 0x1400737ad
call fcn.1400fd3e0
mov rcx, rax
and ecx, 0x200
xor eax, eax
test al, al
jne 0x140073676
mov edx, dword [0x141dcc080]
sub edx, dword [str.J_]
imul rdx, rdx, 0x41391021
shr rdx, 0x3e
or edx, 0x920949ce
xor edx, 0x99107119
cmp edx, 0xb8ac34a3
jae 0x14007367a
jmp 0x140072fb6
mov eax, dword [0x141dcc0c8]
xor eax, dword [0x141dcc0cc]
lea rdx, [rcx + 4]
movd xmm1, edx
shr rdx, 0x20
movdqa xmm11, xmmword [0x140103d50]
movd xmm8, edx
por xmm8, xmmword [rsp + 0x60]
movdqa xmm12, xmm8
pslldq xmm12, 8
shufps xmm12, xmm8, 0xe8
movdqa xmm8, xmm4
paddd xmm8, xmm11
por xmm1, xmm12
movdqa xmm12, xmm3
paddd xmm12, xmm11
movdqa xmmword [rdi + 0x20], xmm1
movdqa xmm1, xmm2
paddd xmm1, xmm11
paddd xmm11, xmm13
movdqu xmmword [rsi], xmm11
movdqu xmmword [rsi + 0x10], xmm5
movdqu xmmword [rsi + 0x20], xmm14
movdqu xmmword [rsi + 0x30], xmm0
movdqu xmmword [rsi + 0x40], xmm1
movdqu xmmword [rsi + 0x50], xmm6
movaps xmm1, xmmword [rsp + 0x40]
movups xmmword [rsi + 0x60], xmm1
movdqu xmmword [rsi + 0x70], xmm7
movdqu xmmword [rsi + 0x80], xmm12
movdqu xmmword [rsi + 0x90], xmm10
movaps xmm1, xmmword [rsp + 0x20]
movups xmmword [rsi + 0xa0], xmm1
movdqu xmmword [rsi + 0xb0], xmm9
movdqu xmmword [rsi + 0xc0], xmm8
or eax, 0x1c210c00
xor eax, 0xd990800
or eax, 0xe242d2cf
movdqu xmmword [rsi + 0xd0], xmm15
movaps xmm1, xmmword [rsp + 0x30]
movups xmmword [rsi + 0xe0], xmm1
movdqa xmm1, xmmword [rsp + 0x50]
movdqu xmmword [rsi + 0xf0], xmm1
cmp eax, 0x290fe45a
jne 0x140072b82
movdqa xmm1, xmmword [0x140103d50]
lea rax, [rcx + 4]
movd xmm8, eax
shr rax, 0x20
movd xmm11, eax
por xmm11, xmmword [rsp + 0x60]
movdqa xmm12, xmm11
pslldq xmm12, 8
shufps xmm12, xmm11, 0xe8
movdqa xmm11, xmm4
paddd xmm11, xmm1
por xmm8, xmm12
movdqa xmm12, xmm3
paddd xmm12, xmm1
movdqa xmmword [rdi + 0x20], xmm8
movdqa xmm8, xmm2
paddd xmm8, xmm1
paddd xmm1, xmm13
movdqu xmmword [rsi], xmm1
movdqu xmmword [rsi + 0x10], xmm5
movdqu xmmword [rsi + 0x20], xmm14
movdqu xmmword [rsi + 0x30], xmm0
movdqu xmmword [rsi + 0x40], xmm8
movdqu xmmword [rsi + 0x50], xmm6
movaps xmm1, xmmword [rsp + 0x40]
movups xmmword [rsi + 0x60], xmm1
movdqu xmmword [rsi + 0x70], xmm7
movdqu xmmword [rsi + 0x80], xmm12
movdqu xmmword [rsi + 0x90], xmm10
movaps xmm1, xmmword [rsp + 0x20]
movups xmmword [rsi + 0xa0], xmm1
movdqu xmmword [rsi + 0xb0], xmm9
movdqu xmmword [rsi + 0xc0], xmm11
movdqu xmmword [rsi + 0xd0], xmm15
movaps xmm1, xmmword [rsp + 0x30]
movups xmmword [rsi + 0xe0], xmm1
movdqa xmm1, xmmword [rsp + 0x50]
movdqu xmmword [rsi + 0xf0], xmm1
jmp 0x1400736aa
mov eax, dword [0x141dcc0a8]
imul eax, dword [0x141dcc0ac]
imul eax, eax, 0x9ed4c42d
imul rcx, rax, 0x275b99d3
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1b
imul ebx, eax, 0x288b42a6
mov rcx, rdi
mov rdx, rsi
call fcn.140074450
cmp ebx, 0xabac1e90
jne 0x1400738e0
mov rcx, rdi
mov rdx, rsi
call fcn.140074450
jmp 0x140073891
mov eax, dword [0x141dcc0b0]
xor edx, edx
div dword [0x141dcc0b4]
or eax, 0x92bb1c78
add eax, 0x560a45e2
or eax, 0x60bbaa9
cmp eax, 0xc0af95c8
jbe 0x1400738e0
jmp 0x140072b82
mov eax, dword [0x141dcc0d8]
xor eax, dword [0x141dcc0dc]
or eax, 0x19631b2f
mov ebx, 0x9ab07f55
imul rbx, rax
shr rbx, 0x3e
or ebx, 0x347cdb50
mov rcx, rdi
mov rdx, rsi
call fcn.140074bc0
cmp ebx, 0x3f8dcc2c
jbe 0x140073950
mov rcx, rdi
mov rdx, rsi
call fcn.140074bc0
jmp 0x140073909
mov eax, dword [0x141dcc0e0]
and eax, dword [0x141dcc0e4]
xor eax, 0x90b39773
imul eax, eax, 0x54ee8819
cmp eax, 0x6f72eb15
je 0x140073950
jmp 0x140072b82
push rsi
sub rsp, 0x160
vmovaps xmmword [rsp + 0x150], xmm15
vmovaps xmmword [rsp + 0x140], xmm14
vmovaps xmmword [rsp + 0x130], xmm13
vmovaps xmmword [rsp + 0x120], xmm12
vmovaps xmmword [rsp + 0x110], xmm11
vmovaps xmmword [rsp + 0x100], xmm10
vmovaps xmmword [rsp + 0xf0], xmm9
vmovdqa xmmword [rsp + 0xe0], xmm8
vmovaps xmmword [rsp + 0xd0], xmm7
vmovaps xmmword [rsp + 0xc0], xmm6
vmovdqa xmm1, xmmword [rcx + 0x20]
mov rax, qword [rcx + 0x20]
vmovdqa xmm9, xmm1
lea r8, [rax + 1]
vpinsrd xmm0, xmm1, r8d, 0
mov rsi, r8
shr rsi, 0x20
lea r11, [rax + 2]
mov r10, r11
shr r10, 0x20
lea r9, [rax + 3]
mov r8, r9
shr r8, 0x20
vpinsrd xmm14, xmm0, esi, 1
nop dword [rax]
mov esi, dword [0x141dcc0f8]
sub esi, dword [0x141dcc0fc]
imul rsi, rsi, 0x7bf2e749
shr rsi, 0x3d
or esi, 0x3a924f89
cmp esi, 0x97b80f7f
ja 0x140073e60
vpinsrd xmm0, xmm1, r11d, 0
vpinsrd xmm12, xmm0, r10d, 1
vmovdqa xmmword [rsp + 0xb0], xmm1
vpinsrd xmm0, xmm1, r9d, 0
vpinsrd xmm0, xmm0, r8d, 1
vmovdqa xmm6, xmmword [rcx]
vmovdqa xmm7, xmmword [rcx + 0x10]
vmovdqa xmm10, xmmword [0x140103d50]
mov r8d, 6
vmovdqa xmmword [rsp + 0x90], xmm0
vmovdqa xmmword [rsp + 0x50], xmm0
vmovdqa xmmword [rsp + 0x80], xmm12
vmovdqa xmm11, xmm10
vmovdqa xmm13, xmm10
vmovdqa xmmword [rsp], xmm10
vmovdqa xmmword [rsp + 0xa0], xmm14
vmovdqa xmmword [rsp + 0x40], xmm7
vmovdqa xmm15, xmm7
vmovdqa xmmword [rsp + 0x10], xmm7
vmovdqa xmm0, xmm6
vmovdqa xmm2, xmm6
vmovdqa xmmword [rsp + 0x20], xmm6
nop dword [rax + rax]
vpaddd xmm1, xmm10, xmm2
vmovdqa xmmword [rsp + 0x30], xmm1
vpxor xmm9, xmm9, xmm1
vpshuflw xmm9, xmm9, 0xb1
vpshufhw xmm9, xmm9, 0xb1
vpaddd xmm1, xmm9, xmm7
vmovdqa xmmword [rsp + 0x70], xmm1
vpxor xmm2, xmm1, xmm2
vpsrld xmm4, xmm2, 0x14
vpslld xmm2, xmm2, 0xc
vpor xmm10, xmm2, xmm4
vpaddd xmm7, xmm11, xmm6
vpxor xmm4, xmm14, xmm7
vpshuflw xmm4, xmm4, 0xb1
vpshufhw xmm8, xmm4, 0xb1
vpaddd xmm1, xmm15, xmm8
vmovdqa xmmword [rsp + 0x60], xmm1
vpxor xmm6, xmm1, xmm6
vpsrld xmm11, xmm6, 0x14
vpslld xmm6, xmm6, 0xc
vpor xmm15, xmm11, xmm6
vpaddd xmm6, xmm13, xmm0
vpxor xmm1, xmm12, xmm6
vpshuflw xmm1, xmm1, 0xb1
vpshufhw xmm12, xmm1, 0xb1
vpaddd xmm14, xmm12, xmmword [rsp + 0x40]
vpxor xmm1, xmm14, xmm0
vpsrld xmm5, xmm1, 0x14
vpslld xmm1, xmm1, 0xc
vpor xmm5, xmm1, xmm5
vmovdqa xmm2, xmmword [rsp + 0x20]
vpaddd xmm3, xmm2, xmmword [rsp]
vpxor xmm1, xmm3, xmmword [rsp + 0x50]
vpshuflw xmm1, xmm1, 0xb1
vpshufhw xmm4, xmm1, 0xb1
vpaddd xmm13, xmm4, xmmword [rsp + 0x10]
vpxor xmm11, xmm13, xmm2
vpsrld xmm2, xmm11, 0x14
vpslld xmm11, xmm11, 0xc
vpor xmm2, xmm11, xmm2
vpaddd xmm1, xmm10, xmmword [rsp + 0x30]
vmovdqa xmmword [rsp + 0x30], xmm1
vmovdqa xmm0, xmmword [0x140103900]
vpshufb xmm9, xmm9, xmm0
vpshufb xmm11, xmm1, xmm0
vpxor xmm9, xmm11, xmm9
vpaddd xmm7, xmm15, xmm7
vmovdqa xmmword [rsp + 0x20], xmm7
vpshufb xmm1, xmm8, xmm0
vpshufb xmm11, xmm7, xmm0
vpxor xmm7, xmm11, xmm1
vpaddd xmm6, xmm5, xmm6
vpshufb xmm11, xmm12, xmm0
vpshufb xmm12, xmm6, xmm0
vpxor xmm12, xmm12, xmm11
vpaddd xmm3, xmm2, xmm3
vmovdqa xmmword [rsp + 0x10], xmm3
vpshufb xmm1, xmm4, xmm0
vpshufb xmm11, xmm3, xmm0
vpxor xmm1, xmm11, xmm1
vpaddd xmm0, xmm9, xmmword [rsp + 0x70]
vmovdqa xmmword [rsp], xmm0
vpxor xmm8, xmm10, xmm0
vpsrld xmm10, xmm8, 0x19
vpslld xmm8, xmm8, 7
vpor xmm10, xmm8, xmm10
vpaddd xmm0, xmm7, xmmword [rsp + 0x60]
vmovdqa xmm3, xmm7
vmovdqa xmmword [rsp + 0x50], xmm0
vpxor xmm8, xmm15, xmm0
vpsrld xmm11, xmm8, 0x19
vpslld xmm8, xmm8, 7
vpor xmm15, xmm8, xmm11
vpaddd xmm0, xmm14, xmm12
vmovdqa xmmword [rsp + 0x40], xmm0
vpxor xmm5, xmm0, xmm5
vpsrld xmm8, xmm5, 0x19
vpslld xmm5, xmm5, 7
vpor xmm5, xmm8, xmm5
vpaddd xmm8, xmm13, xmm1
vmovdqa xmm14, xmm1
vpxor xmm2, xmm8, xmm2
vpsrld xmm7, xmm2, 0x19
vpslld xmm2, xmm2, 7
vpor xmm7, xmm2, xmm7
vpshufd xmm1, xmm10, 0x39
vpaddd xmm11, xmm1, xmmword [rsp + 0x30]
vpshuflw xmm2, xmm11, 0xb1
vpshufhw xmm2, xmm2, 0xb1
vmovdqa xmm0, xmmword [0x140103d80]
vpshufb xmm9, xmm9, xmm0
vpxor xmm10, xmm9, xmm2
vpshufd xmm9, xmm15, 0x39
vpaddd xmm15, xmm9, xmmword [rsp + 0x20]
vpshuflw xmm2, xmm15, 0xb1
vpshufhw xmm2, xmm2, 0xb1
vpshufb xmm3, xmm3, xmm0
vpxor xmm4, xmm3, xmm2
vpshufd xmm13, xmm5, 0x39
vpaddd xmm3, xmm13, xmm6
vmovdqa xmmword [rsp + 0x20], xmm3
vpshuflw xmm3, xmm3, 0xb1
vpshufhw xmm3, xmm3, 0xb1
vpshufb xmm5, xmm12, xmm0
vpxor xmm5, xmm5, xmm3
vmovdqa xmmword [rsp + 0x60], xmm5
vpshufd xmm7, xmm7, 0x39
vpaddd xmm3, xmm7, xmmword [rsp + 0x10]
vmovdqa xmmword [rsp + 0x10], xmm3
vpshuflw xmm6, xmm3, 0xb1
vpshufhw xmm6, xmm6, 0xb1
vpshufb xmm12, xmm14, xmm0
vpxor xmm2, xmm12, xmm6
vmovdqa xmmword [rsp + 0x70], xmm2
vpshufd xmm12, xmmword [rsp], 0x4e
vpaddd xmm3, xmm12, xmm10
vpxor xmm1, xmm3, xmm1
vpsrld xmm12, xmm1, 0x14
vpslld xmm1, xmm1, 0xc
vpor xmm1, xmm12, xmm1
vpshufd xmm12, xmmword [rsp + 0x50], 0x4e
vpaddd xmm12, xmm12, xmm4
vpxor xmm9, xmm12, xmm9
vpsrld xmm14, xmm9, 0x14
vpslld xmm9, xmm9, 0xc
vpor xmm6, xmm9, xmm14
vpshufd xmm9, xmmword [rsp + 0x40], 0x4e
vpaddd xmm9, xmm9, xmm5
vpxor xmm0, xmm9, xmm13
vpsrld xmm13, xmm0, 0x14
vpslld xmm0, xmm0, 0xc
vpor xmm0, xmm13, xmm0
vpshufd xmm8, xmm8, 0x4e
vpaddd xmm14, xmm8, xmm2
vpxor xmm7, xmm14, xmm7
vpsrld xmm8, xmm7, 0x14
vpslld xmm7, xmm7, 0xc
vpor xmm8, xmm8, xmm7
vpaddd xmm2, xmm11, xmm1
vmovdqa xmmword [rsp + 0x30], xmm2
vpxor xmm7, xmm10, xmm2
vmovdqa xmm11, xmmword [0x140103900]
vpshufb xmm10, xmm7, xmm11
vpaddd xmm3, xmm10, xmm3
vpxor xmm1, xmm3, xmm1
vpsrld xmm7, xmm1, 0x19
vpslld xmm1, xmm1, 7
vpor xmm7, xmm1, xmm7
vpaddd xmm5, xmm15, xmm6
vpxor xmm1, xmm5, xmm4
vpshufb xmm4, xmm1, xmm11
vpaddd xmm12, xmm12, xmm4
vpxor xmm1, xmm12, xmm6
vpsrld xmm2, xmm1, 0x19
vpslld xmm1, xmm1, 7
vpor xmm15, xmm1, xmm2
vpaddd xmm1, xmm0, xmmword [rsp + 0x20]
vpxor xmm2, xmm1, xmmword [rsp + 0x60]
vpshufb xmm13, xmm2, xmm11
vpaddd xmm9, xmm9, xmm13
vpxor xmm0, xmm9, xmm0
vpsrld xmm2, xmm0, 0x19
vpslld xmm0, xmm0, 7
vpor xmm0, xmm0, xmm2
vpaddd xmm2, xmm8, xmmword [rsp + 0x10]
vmovdqa xmmword [rsp], xmm2
vpxor xmm2, xmm2, xmmword [rsp + 0x70]
vpshufb xmm11, xmm2, xmm11
vpaddd xmm14, xmm14, xmm11
vpxor xmm2, xmm14, xmm8
vpsrld xmm6, xmm2, 0x19
vpslld xmm2, xmm2, 7
vpor xmm8, xmm2, xmm6
vpshufd xmm2, xmm7, 0x93
vpshufd xmm6, xmm15, 0x93
vpshufd xmm0, xmm0, 0x93
vpshufd xmm7, xmm8, 0x93
vmovdqa xmmword [rsp + 0x20], xmm7
vpshufd xmm7, xmm3, 0x4e
vpshufd xmm15, xmm12, 0x4e
vpshufd xmm3, xmm9, 0x4e
vmovdqa xmmword [rsp + 0x40], xmm3
vpshufd xmm3, xmm14, 0x4e
vmovdqa xmmword [rsp + 0x10], xmm3
vpshufd xmm9, xmm10, 0x39
vmovdqa xmm10, xmmword [rsp + 0x30]
vpshufd xmm14, xmm4, 0x39
vpshufd xmm12, xmm13, 0x39
vmovdqa xmm13, xmm1
vpshufd xmm3, xmm11, 0x39
vmovdqa xmm11, xmm5
vmovdqa xmmword [rsp + 0x50], xmm3
dec r8d
jne 0x140073f10
vmovdqa xmm3, xmmword [0x140103d50]
vpaddd xmm1, xmm3, xmmword [rsp]
vmovdqa xmmword [rsp], xmm1
vpaddd xmm1, xmm13, xmm3
vpaddd xmm4, xmm11, xmm3
add rax, 4
mov r8, rax
shr r8, 0x20
vmovdqa xmm13, xmmword [rsp + 0xb0]
vpinsrd xmm8, xmm13, eax, 0
vpinsrd xmm8, xmm8, r8d, 1
vpaddd xmm3, xmm10, xmm3
vmovdqa xmm10, xmmword [rcx]
vmovdqa xmm11, xmmword [rcx + 0x10]
vmovdqa xmmword [rcx + 0x20], xmm8
vmovdqu xmmword [rdx], xmm3
vpaddd xmm2, xmm10, xmm2
vmovdqu xmmword [rdx + 0x10], xmm2
vpaddd xmm2, xmm11, xmm7
vmovdqu xmmword [rdx + 0x20], xmm2
vpaddd xmm2, xmm9, xmm13
vmovdqu xmmword [rdx + 0x30], xmm2
vmovdqu xmmword [rdx + 0x40], xmm4
vpaddd xmm2, xmm10, xmm6
vmovdqu xmmword [rdx + 0x50], xmm2
vpaddd xmm2, xmm15, xmm11
vmovdqu xmmword [rdx + 0x60], xmm2
vpaddd xmm2, xmm14, xmmword [rsp + 0xa0]
vmovdqu xmmword [rdx + 0x70], xmm2
vmovdqu xmmword [rdx + 0x80], xmm1
vpaddd xmm1, xmm10, xmm0
vmovdqu xmmword [rdx + 0x90], xmm1
vpaddd xmm1, xmm11, xmmword [rsp + 0x40]
vmovdqu xmmword [rdx + 0xa0], xmm1
vpaddd xmm1, xmm12, xmmword [rsp + 0x80]
vmovdqu xmmword [rdx + 0xb0], xmm1
vmovaps xmm0, xmmword [rsp]
vmovups xmmword [rdx + 0xc0], xmm0
vpaddd xmm0, xmm10, xmmword [rsp + 0x20]
vmovdqu xmmword [rdx + 0xd0], xmm0
vpaddd xmm0, xmm11, xmmword [rsp + 0x10]
vmovdqu xmmword [rdx + 0xe0], xmm0
vmovdqa xmm0, xmmword [rsp + 0x50]
vpaddd xmm0, xmm0, xmmword [rsp + 0x90]
vmovdqu xmmword [rdx + 0xf0], xmm0
vzeroupper
vmovaps xmm6, xmmword [rsp + 0xc0]
vmovaps xmm7, xmmword [rsp + 0xd0]
vmovaps xmm8, xmmword [rsp + 0xe0]
vmovaps xmm9, xmmword [rsp + 0xf0]
vmovaps xmm10, xmmword [rsp + 0x100]
vmovaps xmm11, xmmword [rsp + 0x110]
vmovaps xmm12, xmmword [rsp + 0x120]
vmovaps xmm13, xmmword [rsp + 0x130]
vmovaps xmm14, xmmword [rsp + 0x140]
vmovaps xmm15, xmmword [rsp + 0x150]
add rsp, 0x160
pop rsi
ret