Function at 0x14020d580
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rbp
mov rbp, rsp
push r15
push r14
push r13
mov r13, rcx
mov ecx, 0x64
push r12
push rdi
mov rdi, r9
push rsi
push rbx
and rsp, 0xfffffffffffffff0
sub rsp, 0x100
mov qword [rbp + 0x18], rdx
mov qword [rbp + 0x20], r8
call sub.msvcrt.dll_malloc
mov edx, dword [rdi]
mov rcx, rax
mov qword [rsp + 0xd0], rax
mov rbx, rax
call fcn.14020f280
test al, al
je 0x14020f1dd
mov eax, dword [rbx + 0x58]
cmp qword [r13 + 0x10], rax
jb 0x14020f1e7
mov ecx, 0x20
call sub.msvcrt.dll_malloc
mov ecx, 0x20
mov qword [rsp + 0x70], rax
call sub.msvcrt.dll_malloc
mov ecx, 0x20
mov qword [rsp + 0x40], rax
call sub.msvcrt.dll_malloc
mov r15, qword [rsp + 0xd0]
mov qword [rsp + 0x58], rax
mov ebx, dword [r15 + 0x38]
lea rcx, [rbx*4]
call sub.msvcrt.dll_malloc
lea rcx, [rbx + rbx]
mov qword [rsp + 0x68], rax
call sub.msvcrt.dll_malloc
mov ebx, dword [r15 + 4]
mov qword [rsp + 0x60], rax
mov eax, dword [r15 + 0x30]
imul eax, ebx
mov r12d, eax
mov dword [rsp + 0xf4], eax
lea rcx, [r12*4]
shl r12, 3
call sub.msvcrt.dll_malloc
mov rcx, r12
mov qword [rsp + 0xf8], rax
call sub.msvcrt.dll_malloc
mov rcx, r12
mov qword [rsp + 0x50], rax
call sub.msvcrt.dll_malloc
mov rcx, r12
mov r12d, ebx
shl r12, 3
mov qword [rsp + 0xc8], rax
call sub.msvcrt.dll_malloc
mov rcx, r12
mov qword [rsp + 0x48], rax
call sub.msvcrt.dll_malloc
mov rcx, r12
mov rsi, rax
call sub.msvcrt.dll_malloc
mov qword [rsp + 0x38], rax
mov rax, qword [r13 + 8]
mov r13d, dword [r15]
cmp r13d, 1
jbe 0x14020de08
lea edx, [r13 - 2]
cmp edx, 1
ja 0x14020d9f8
test ebx, ebx
je 0x14020e724
xor edx, edx
xor ecx, ecx
nop word cs:[rax + rax]
mov r8d, ecx
mov r9d, edx
lea r11d, [rdx + 1]
lea r10, [rax + r8*4]
mov r8d, dword [r10]
shl r8d, 0xa
sar r8d, 0xa
movsxd r8, r8d
mov qword [rsi + r9*8], r8
lea r8d, [rcx + 1]
mov r10d, dword [r10]
lea r9, [rax + r8*4]
mov r8d, dword [r9]
shr r10d, 0x16
shl r8d, 0x14
sar r8d, 0xa
or r8d, r10d
movsxd r8, r8d
mov qword [rsi + r11*8], r8
lea r8d, [rcx + 2]
mov r9d, dword [r9]
lea r11d, [rdx + 2]
lea r10, [rax + r8*4]
mov r8d, dword [r10]
shr r9d, 0xc
shl r8d, 0x1e
sar r8d, 0xa
or r8d, r9d
lea r9d, [rdx + 3]
movsxd r8, r8d
mov qword [rsi + r11*8], r8
mov r8d, dword [r10]
lea r11d, [rdx + 4]
shl r8d, 8
sar r8d, 0xa
movsxd r8, r8d
mov qword [rsi + r9*8], r8
lea r8d, [rcx + 3]
mov r10d, dword [r10]
lea r9, [rax + r8*4]
mov r8d, dword [r9]
shr r10d, 0x18
shl r8d, 0x12
sar r8d, 0xa
or r8d, r10d
movsxd r8, r8d
mov qword [rsi + r11*8], r8
lea r8d, [rcx + 4]
mov r9d, dword [r9]
lea r11d, [rdx + 5]
lea r10, [rax + r8*4]
mov r8d, dword [r10]
shr r9d, 0xe
shl r8d, 0x1c
sar r8d, 0xa
or r8d, r9d
lea r9d, [rdx + 6]
movsxd r8, r8d
mov qword [rsi + r11*8], r8
mov r8d, dword [r10]
shl r8d, 6
sar r8d, 0xa
movsxd r8, r8d
mov qword [rsi + r9*8], r8
lea r8d, [rcx + 5]
mov r10d, dword [r10]
lea r9d, [rdx + 7]
lea r11, [rax + r8*4]
movsx r8d, word [r11]
shr r10d, 0x1a
shl r8d, 6
or r8d, r10d
lea r10d, [rdx + 8]
movsxd r8, r8d
mov qword [rsi + r9*8], r8
lea r8d, [rcx + 6]
mov r11d, dword [r11]
lea r9, [rax + r8*4]
mov r8d, dword [r9]
shr r11d, 0x10
shl r8d, 0x1a
sar r8d, 0xa
or r8d, r11d
movsxd r8, r8d
mov qword [rsi + r10*8], r8
mov r8d, dword [r9]
lea r10d, [rdx + 9]
shl r8d, 4
sar r8d, 0xa
movsxd r8, r8d
mov qword [rsi + r10*8], r8
lea r8d, [rcx + 7]
mov r9d, dword [r9]
lea r10d, [rdx + 0xa]
lea r11, [rax + r8*4]
mov r8d, dword [r11]
shl r8d, 0xe
sar r8d, 0xa
shr r9d, 0x1c
or r8d, r9d
lea r9d, [rdx + 0xb]
movsxd r8, r8d
mov qword [rsi + r10*8], r8
lea r8d, [rcx + 8]
mov r11d, dword [r11]
lea r10, [rax + r8*4]
movsx r8d, byte [r10]
shr r11d, 0x12
shl r8d, 0xe
or r8d, r11d
lea r11d, [rdx + 0xd]
movsxd r8, r8d
mov qword [rsi + r9*8], r8
mov r15d, dword [r10]
lea r9d, [rdx + 0xc]
lea r8d, [r15*4]
sar r8d, 0xa
movsxd r8, r8d
mov qword [rsi + r9*8], r8
lea r8d, [rcx + 9]
mov r10d, dword [r10]
lea r9, [rax + r8*4]
mov r8d, dword [r9]
shr r10d, 0x1e
shl r8d, 0xc
sar r8d, 0xa
or r8d, r10d
movsxd r8, r8d
mov qword [rsi + r11*8], r8
lea r8d, [rcx + 0xa]
mov r9d, dword [r9]
lea r11d, [rdx + 0xe]
lea r10, [rax + r8*4]
add ecx, 0xb
mov r8d, dword [r10]
shr r9d, 0x14
shl r8d, 0x16
sar r8d, 0xa
or r8d, r9d
lea r9d, [rdx + 0xf]
add edx, 0x10
movsxd r8, r8d
mov qword [rsi + r11*8], r8
mov r8d, dword [r10]
sar r8d, 0xa
movsxd r8, r8d
mov qword [rsi + r9*8], r8
cmp ebx, edx
ja 0x14020d6e0
mov rcx, qword [rsp + 0xd0]
mov edx, dword [rcx + 0x3c]
mov rcx, qword [rsp + 0x70]
imul edx, ebx
shr edx, 3
add rax, rdx
movdqu xmm2, xmmword [rax]
movups xmmword [rcx], xmm2
movdqu xmm2, xmmword [rax + 0x10]
movaps xmmword [rsp + 0xe0], xmm2
movups xmmword [rcx + 0x10], xmm2
mov rcx, qword [rsp + 0xd0]
mov eax, dword [rcx + 0x50]
mov ecx, dword [rcx + 0x28]
mov r8, rax
sub r8, rcx
sub rcx, rax
xor eax, eax
jmp 0x14020d961
cmp rdx, rcx
jg 0x14020d96a
add rax, 1
cmp ebx, eax
jbe 0x14020da98
mov rdx, qword [rsi + rax*8]
cmp rdx, r8
jge 0x14020d950
mov rcx, qword [rsp + 0x70]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x40]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0xd0]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x58]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x68]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x60]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0xf8]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x50]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0xc8]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x48]
call sub.msvcrt.dll_free
mov rcx, rsi
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x38]
call sub.msvcrt.dll_free
mov eax, 0xfffffffe
jmp 0x14020dd01
cmp r13d, 4
jne 0x14020f1fe
test ebx, ebx
je 0x14020e724
xor ecx, ecx
xor r8d, r8d
nop
mov edx, r8d
mov r9d, ecx
lea r11d, [rcx + 1]
lea r10, [rax + rdx*4]
mov edx, dword [r10]
shl edx, 8
sar edx, 8
movsxd rdx, edx
mov qword [rsi + r9*8], rdx
lea edx, [r8 + 1]
mov r10d, dword [r10]
lea r9, [rax + rdx*4]
movsx edx, word [r9]
shr r10d, 0x18
shl edx, 8
or edx, r10d
movsxd rdx, edx
mov qword [rsi + r11*8], rdx
lea edx, [r8 + 2]
mov r9d, dword [r9]
lea r11d, [rcx + 2]
lea r10, [rax + rdx*4]
add r8d, 3
movsx edx, byte [r10]
shr r9d, 0x10
shl edx, 0x10
or edx, r9d
lea r9d, [rcx + 3]
add ecx, 4
movsxd rdx, edx
mov qword [rsi + r11*8], rdx
mov edx, dword [r10]
sar edx, 8
movsxd rdx, edx
mov qword [rsi + r9*8], rdx
cmp ebx, ecx
ja 0x14020da10
jmp 0x14020d902
mov rax, qword [rsp + 0xd0]
mov r12, qword [rdi + 8]
mov edi, dword [rax + 0x18]
mov eax, 1
mov ecx, edi
mov dword [rsp + 0x78], edi
shl eax, cl
sub eax, 1
movd xmm2, eax
movd xmm0, eax
mov dword [rsp + 0xf0], eax
pshufd xmm2, xmm2, 0xe0
pshufd xmm0, xmm0, 0
cmp r13d, 1
jbe 0x14020e2b0
cmp r13d, 2
jne 0x14020e788
xor r9d, r9d
xor ecx, ecx
test ebx, ebx
je 0x14020db6a
mov r10, qword [rsp + 0xf8]
mov r8d, dword [rsp + 0xf0]
nop dword [rax]
mov eax, ecx
lea r11d, [rcx + 2]
mov edx, dword [r12 + rax*4]
lea eax, [rcx + 1]
mov r11d, dword [r12 + r11*4]
add ecx, 3
mov eax, dword [r12 + rax*4]
mov edi, edx
shr edx, 0x18
and edi, r8d
movd xmm0, edi
mov edi, eax
shr eax, 0x10
shl edi, 8
or edx, edi
mov edi, r11d
shr r11d, 8
shl edi, 0x10
movd xmm2, r11d
and edx, r8d
or eax, edi
and eax, r8d
movd xmm1, eax
mov eax, r9d
add r9d, 4
punpckldq xmm1, xmm2
movd xmm2, edx
punpckldq xmm0, xmm2
punpcklqdq xmm0, xmm1
movups xmmword [r10 + rax*4], xmm0
cmp ebx, r9d
ja 0x14020db00
mov eax, dword [rsp + 0xf4]
imul eax, dword [rsp + 0x78]
mov rdx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xc8]
shr eax, 3
mov r8, rdi
add rax, r12
movdqu xmm2, xmmword [rax]
movups xmmword [rdx], xmm2
movdqu xmm2, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm2
movaps xmmword [rsp + 0xe0], xmm2
call fcn.140155f20
mov r8, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x60]
mov r9, rdi
mov rcx, qword [rsp + 0x68]
call fcn.140112180
cmp dword [rdi], 2
ja 0x14020dd38
mov rdi, qword [rsp + 0xd0]
mov rbx, qword [rsp + 0x50]
mov r8, rsi
mov rdx, qword [rsp + 0xc8]
mov r9, rdi
mov rcx, rbx
call fcn.1401526b0
mov r15, qword [rsp + 0x48]
mov qword [rsp + 0x20], rdi
mov r9, qword [rsp + 0x60]
mov r8, qword [rsp + 0x68]
mov rdx, qword [rsp + 0xf8]
mov rcx, r15
call fcn.140209b90
mov r9, rdi
mov r8, r15
mov rdx, rbx
mov rcx, rbx
call fcn.140155050
mov rbx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0x40]
mov r15, qword [rsp + 0x50]
mov r9, qword [rbp + 0x20]
mov qword [rsp + 0x20], rbx
mov r8, qword [rbp + 0x18]
mov rcx, rdi
mov rdx, r15
call fcn.1401263a0
mov rcx, rbx
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x58]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x68]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x60]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0xf8]
call sub.msvcrt.dll_free
mov rcx, r15
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0xc8]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x48]
call sub.msvcrt.dll_free
mov rcx, rsi
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x38]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rcx]
mov rax, qword [rcx + 8]
xor rdx, qword [rdi]
xor rax, qword [rdi + 8]
or rax, rdx
jne 0x14020dd18
mov rdx, qword [rcx + 0x10]
mov rax, qword [rcx + 0x18]
xor rdx, qword [rdi + 0x10]
xor rax, qword [rdi + 0x18]
or rax, rdx
jne 0x14020dd18
xor eax, eax
mov dword [rsp + 0xf8], eax
call sub.msvcrt.dll_free
mov rcx, rdi
call sub.msvcrt.dll_free
mov eax, dword [rsp + 0xf8]
lea rsp, [rbp - 0x38]
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rcx, qword [rsp + 0x70]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x40]
call sub.msvcrt.dll_free
mov eax, 0xfffffffd
jmp 0x14020dd01
mov r14, qword [rsp + 0xd0]
mov r15, qword [rsp + 0x38]
mov rdx, rsi
mov r8, r14
mov rcx, r15
call fcn.140154c90
mov edx, dword [r14 + 0x30]
test edx, edx
je 0x14020dc29
mov qword [rsp + 0xe0], rsi
mov r12, qword [rsp + 0x68]
xor ebx, ebx
mov r13, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
nop dword [rax]
mov ecx, ebx
imul ecx, dword [r14 + 4]
mov r9, r14
mov r8, r15
mov rax, qword [rsp + 0xc8]
shl rcx, 3
lea rdx, [rax + rcx]
add rcx, rsi
call fcn.1401526b0
mov edx, ebx
imul edx, dword [r14 + 4]
mov r9, r13
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x20], r14
mov r8, r12
lea r10, [rax + rdx*4]
lea rcx, [rdi + rdx*8]
mov rdx, r10
call fcn.140209b90
mov edx, ebx
imul edx, dword [r14 + 4]
mov r9, r14
add ebx, 1
shl rdx, 3
lea rcx, [rsi + rdx]
lea r8, [rdi + rdx]
mov rdx, rcx
call fcn.140155050
cmp dword [r14 + 0x30], ebx
ja 0x14020dd80
mov rsi, qword [rsp + 0xe0]
jmp 0x14020dc29
test ebx, ebx
je 0x14020e257
xor edx, edx
xor ecx, ecx
nop dword [rax]
mov r8d, ecx
mov r9d, edx
lea r11d, [rdx + 1]
lea r10, [rax + r8*4]
mov r8d, dword [r10]
shl r8d, 0xb
sar r8d, 0xb
movsxd r8, r8d
mov qword [rsi + r9*8], r8
lea r8d, [rcx + 1]
mov r10d, dword [r10]
lea r9, [rax + r8*4]
mov r8d, dword [r9]
shr r10d, 0x15
shl r8d, 0x16
sar r8d, 0xb
or r8d, r10d
lea r10d, [rdx + 2]
movsxd r8, r8d
mov qword [rsi + r11*8], r8
mov r15d, dword [r9]
lea r11d, [rdx + 3]
lea r8d, [r15 + r15]
sar r8d, 0xb
movsxd r8, r8d
mov qword [rsi + r10*8], r8
lea r8d, [rcx + 2]
mov r9d, dword [r9]
lea r10, [rax + r8*4]
mov r8d, dword [r10]
shr r9d, 0x1f
shl r8d, 0xc
sar r8d, 0xb
or r8d, r9d
movsxd r8, r8d
mov qword [rsi + r11*8], r8
lea r8d, [rcx + 3]
mov r10d, dword [r10]
lea r11d, [rdx + 4]
lea r9, [rax + r8*4]
mov r8d, dword [r9]
shr r10d, 0x14
shl r8d, 0x17
sar r8d, 0xb
or r8d, r10d
lea r10d, [rdx + 5]
movsxd r8, r8d
mov qword [rsi + r11*8], r8
mov r15d, dword [r9]
lea r8d, [r15*4]
sar r8d, 0xb
movsxd r8, r8d
mov qword [rsi + r10*8], r8
lea r8d, [rcx + 4]
mov r9d, dword [r9]
lea r10d, [rdx + 6]
lea r11, [rax + r8*4]
mov r8d, dword [r11]
shr r9d, 0x1e
shl r8d, 0xd
sar r8d, 0xb
or r8d, r9d
lea r9d, [rdx + 7]
movsxd r8, r8d
mov qword [rsi + r10*8], r8
lea r8d, [rcx + 5]
mov r11d, dword [r11]
lea r10, [rax + r8*4]
movsx r8d, byte [r10]
shr r11d, 0x13
shl r8d, 0xd
or r8d, r11d
lea r11d, [rdx + 9]
movsxd r8, r8d
mov qword [rsi + r9*8], r8
mov r15d, dword [r10]
lea r9d, [rdx + 8]
lea r8d, [r15*8]
sar r8d, 0xb
movsxd r8, r8d
mov qword [rsi + r9*8], r8
lea r8d, [rcx + 6]
mov r10d, dword [r10]
lea r9, [rax + r8*4]
mov r8d, dword [r9]
shr r10d, 0x1d
shl r8d, 0xe
sar r8d, 0xb
or r8d, r10d
movsxd r8, r8d
mov qword [rsi + r11*8], r8
lea r8d, [rcx + 7]
mov r9d, dword [r9]
lea r11d, [rdx + 0xa]
lea r10, [rax + r8*4]
mov r8d, dword [r10]
shr r9d, 0x12
shl r8d, 0x19
sar r8d, 0xb
or r8d, r9d
lea r9d, [rdx + 0xb]
movsxd r8, r8d
mov qword [rsi + r11*8], r8
mov r8d, dword [r10]
lea r11d, [rdx + 0xc]
shl r8d, 4
sar r8d, 0xb
movsxd r8, r8d
mov qword [rsi + r9*8], r8
lea r8d, [rcx + 8]
lea r9, [rax + r8*4]
mov r8d, dword [r9]
mov r10d, dword [r10]
shl r8d, 0xf
shr r10d, 0x1c
sar r8d, 0xb
or r8d, r10d
movsxd r8, r8d
mov qword [rsi + r11*8], r8
lea r8d, [rcx + 9]
mov r9d, dword [r9]
lea r11d, [rdx + 0xd]
lea r10, [rax + r8*4]
mov r8d, dword [r10]
shr r9d, 0x11
shl r8d, 0x1a
sar r8d, 0xb
or r8d, r9d
lea r9d, [rdx + 0xe]
movsxd r8, r8d
mov qword [rsi + r11*8], r8
mov r8d, dword [r10]
shl r8d, 5
sar r8d, 0xb
movsxd r8, r8d
mov qword [rsi + r9*8], r8
lea r8d, [rcx + 0xa]
mov r10d, dword [r10]
lea r9d, [rdx + 0xf]
lea r11, [rax + r8*4]
movsx r8d, word [r11]
shr r10d, 0x1b
shl r8d, 5
or r8d, r10d
lea r10d, [rdx + 0x10]
movsxd r8, r8d
mov qword [rsi + r9*8], r8
lea r8d, [rcx + 0xb]
mov r11d, dword [r11]
lea r9, [rax + r8*4]
mov r8d, dword [r9]
shr r11d, 0x10
shl r8d, 0x1b
sar r8d, 0xb
or r8d, r11d
lea r11d, [rdx + 0x12]
movsxd r8, r8d
mov qword [rsi + r10*8], r8
mov r8d, dword [r9]
lea r10d, [rdx + 0x11]
shl r8d, 6
sar r8d, 0xb
movsxd r8, r8d
mov qword [rsi + r10*8], r8
lea r8d, [rcx + 0xc]
mov r9d, dword [r9]
lea r10, [rax + r8*4]
mov r8d, dword [r10]
shr r9d, 0x1a
shl r8d, 0x11
sar r8d, 0xb
or r8d, r9d
movsxd r8, r8d
mov qword [rsi + r11*8], r8
lea r8d, [rcx + 0xd]
mov r10d, dword [r10]
lea r11d, [rdx + 0x13]
lea r9, [rax + r8*4]
mov r8d, dword [r9]
shr r10d, 0xf
shl r8d, 0x1c
sar r8d, 0xb
or r8d, r10d
lea r10d, [rdx + 0x14]
movsxd r8, r8d
mov qword [rsi + r11*8], r8
mov r8d, dword [r9]
lea r11d, [rdx + 0x15]
shl r8d, 7
sar r8d, 0xb
movsxd r8, r8d
mov qword [rsi + r10*8], r8
lea r8d, [rcx + 0xe]
mov r9d, dword [r9]
lea r10, [rax + r8*4]
mov r8d, dword [r10]
shl r8d, 0x12
sar r8d, 0xb
shr r9d, 0x19
or r8d, r9d
movsxd r8, r8d
mov qword [rsi + r11*8], r8
lea r8d, [rcx + 0xf]
mov r10d, dword [r10]
lea r11d, [rdx + 0x16]
lea r9, [rax + r8*4]
mov r8d, dword [r9]
shr r10d, 0xe
shl r8d, 0x1d
sar r8d, 0xb
or r8d, r10d
lea r10d, [rdx + 0x17]
movsxd r8, r8d
mov qword [rsi + r11*8], r8
mov r8d, dword [r9]
lea r11d, [rdx + 0x18]
shl r8d, 8
sar r8d, 0xb
movsxd r8, r8d
mov qword [rsi + r10*8], r8
lea r8d, [rcx + 0x10]
lea r10, [rax + r8*4]
mov r8d, dword [r10]
mov r9d, dword [r9]
shl r8d, 0x13
shr r9d, 0x18
sar r8d, 0xb
or r8d, r9d
movsxd r8, r8d
mov qword [rsi + r11*8], r8
lea r8d, [rcx + 0x11]
mov r10d, dword [r10]
lea r11d, [rdx + 0x19]
lea r9, [rax + r8*4]
mov r8d, dword [r9]
shr r10d, 0xd
shl r8d, 0x1e
sar r8d, 0xb
or r8d, r10d
lea r10d, [rdx + 0x1a]
movsxd r8, r8d
mov qword [rsi + r11*8], r8
mov r8d, dword [r9]
lea r11d, [rdx + 0x1b]
shl r8d, 9
sar r8d, 0xb
movsxd r8, r8d
mov qword [rsi + r10*8], r8
lea r8d, [rcx + 0x12]
mov r9d, dword [r9]
lea r10, [rax + r8*4]
mov r8d, dword [r10]
shr r9d, 0x17
shl r8d, 0x14
sar r8d, 0xb
or r8d, r9d
movsxd r8, r8d
mov qword [rsi + r11*8], r8
lea r8d, [rcx + 0x13]
mov r10d, dword [r10]
lea r11d, [rdx + 0x1c]
lea r9, [rax + r8*4]
mov r8d, dword [r9]
shr r10d, 0xc
shl r8d, 0x1f
sar r8d, 0xb
or r8d, r10d
lea r10d, [rdx + 0x1d]
movsxd r8, r8d
mov qword [rsi + r11*8], r8
mov r8d, dword [r9]
lea r11d, [rdx + 0x1e]
shl r8d, 0xa
sar r8d, 0xb
movsxd r8, r8d
mov qword [rsi + r10*8], r8
lea r8d, [rcx + 0x14]
mov r9d, dword [r9]
lea r10, [rax + r8*4]
mov r8d, dword [r10]
shr r9d, 0x16
shl r8d, 0x15
sar r8d, 0xb
or r8d, r9d
lea r9d, [rdx + 0x1f]
add edx, 0x20
add ecx, 0x15
movsxd r8, r8d
mov qword [rsi + r11*8], r8
mov r8d, dword [r10]
sar r8d, 0xb
movsxd r8, r8d
mov qword [rsi + r9*8], r8
cmp ebx, edx
ja 0x14020de18
jmp 0x14020d902
movdqu xmm2, xmmword [rax]
mov rbx, qword [rsp + 0x70]
mov r12, qword [rdi + 8]
movups xmmword [rbx], xmm2
movdqu xmm2, xmmword [rax + 0x10]
mov rax, qword [rsp + 0xd0]
mov edi, dword [rax + 0x18]
mov eax, 1
movaps xmmword [rsp + 0xe0], xmm2
movups xmmword [rbx + 0x10], xmm2
mov ecx, edi
mov dword [rsp + 0x78], edi
shl eax, cl
sub eax, 1
mov dword [rsp + 0xf0], eax
movd xmm2, eax
movd xmm0, eax
pshufd xmm2, xmm2, 0xe0
pshufd xmm0, xmm0, 0
nop dword [rax]
mov eax, dword [rsp + 0xf4]
xor edi, edi
xor r11d, r11d
test eax, eax
je 0x14020db6a
mov qword [rsp + 0x90], rsi
mov r15d, edi
nop
mov eax, r11d
mov rdi, qword [rsp + 0xf8]
mov eax, dword [r12 + rax*4]
mov dword [rsp + 0xdc], eax
mov eax, r15d
lea r10, [rdi + rax*4]
lea eax, [r11 + 1]
mov r9d, dword [r12 + rax*4]
lea eax, [r11 + 2]
mov ecx, dword [r12 + rax*4]
lea eax, [r11 + 3]
mov r13d, dword [r12 + rax*4]
lea eax, [r11 + 4]
mov r8d, dword [r12 + rax*4]
lea eax, [r11 + 5]
mov dword [rsp + 0xe0], ecx
mov edx, dword [r12 + rax*4]
lea eax, [r11 + 6]
mov edi, dword [r12 + rax*4]
lea eax, [r11 + 7]
mov esi, dword [r12 + rax*4]
lea eax, [r11 + 8]
mov ebx, dword [r12 + rax*4]
lea eax, [r11 + 9]
mov dword [rsp + 0xd8], ebx
mov ebx, dword [r12 + rax*4]
lea eax, [r11 + 0xa]
mov dword [rsp + 0xc4], ebx
mov ebx, dword [r12 + rax*4]
lea eax, [r11 + 0xb]
mov r14d, dword [r12 + rax*4]
lea eax, [r11 + 0xc]
mov eax, dword [r12 + rax*4]
mov dword [rsp + 0xc0], r14d
lea r14d, [r11 + 0xd]
mov ecx, dword [r12 + r14*4]
lea r14d, [r11 + 0xe]
mov dword [rsp + 0xbc], ecx
mov ecx, dword [r12 + r14*4]
lea r14d, [r11 + 0xf]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xb8], ecx
mov dword [rsp + 0xb4], r14d
lea r14d, [r11 + 0x10]
mov ecx, dword [r12 + r14*4]
lea r14d, [r11 + 0x11]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xb0], ecx
mov dword [rsp + 0xac], r14d
lea r14d, [r11 + 0x12]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xa8], r14d
lea r14d, [r11 + 0x13]
mov ecx, dword [r12 + r14*4]
lea r14d, [r11 + 0x14]
mov dword [rsp + 0xa4], ecx
mov ecx, dword [rsp + 0xdc]
mov r14d, dword [r12 + r14*4]
shr ecx, 0x17
mov dword [rsp + 0xa0], ecx
mov ecx, r9d
shr r9d, 0xe
shl ecx, 9
mov dword [rsp + 0x9c], ecx
mov ecx, dword [rsp + 0xa0]
or ecx, dword [rsp + 0x9c]
movd xmm4, ecx
mov ecx, dword [rsp + 0xe0]
shl ecx, 0x12
or r9d, ecx
mov ecx, dword [rsp + 0xe0]
movd xmm3, r9d
mov r9d, r13d
shr r13d, 0x13
shr ecx, 5
shl r9d, 4
movd xmm1, ecx
mov ecx, dword [rsp + 0xe0]
punpckldq xmm3, xmm1
movd xmm1, dword [rsp + 0xdc]
shr ecx, 0x1c
or ecx, r9d
mov r9d, r8d
shr r8d, 0xa
punpckldq xmm1, xmm4
shl r9d, 0xd
punpcklqdq xmm1, xmm3
or r13d, r9d
mov r9d, edx
pand xmm1, xmm0
shl r9d, 0x16
movups xmmword [r10], xmm1
movd xmm1, ecx
or r8d, r9d
mov r9d, edx
shr edx, 0x18
movd xmm3, r8d
mov r8d, edi
shr r9d, 1
shl r8d, 8
movd xmm5, r9d
shr edi, 0xf
mov r9d, dword [rsp + 0xd8]
or edx, r8d
mov r8d, esi
punpckldq xmm3, xmm5
shl r8d, 0x11
lea ecx, [r9*8]
movd xmm5, r13d
or edi, r8d
mov r8d, esi
shr esi, 0x1d
punpckldq xmm1, xmm5
or esi, ecx
punpcklqdq xmm1, xmm3
shr r8d, 6
movd xmm4, edi
movd xmm5, esi
mov esi, dword [rsp + 0xc4]
pand xmm1, xmm0
movd xmm3, r8d
movups xmmword [r10 + 0x10], xmm1
movd xmm1, edx
mov edx, r9d
punpckldq xmm3, xmm5
mov ecx, esi
punpckldq xmm1, xmm4
shr esi, 0xb
mov r8d, ebx
shl ecx, 0xc
shr edx, 0x14
punpcklqdq xmm1, xmm3
mov r9d, dword [rsp + 0xbc]
or edx, ecx
mov ecx, esi
mov esi, dword [rsp + 0xc0]
shl r8d, 0x15
pand xmm1, xmm0
or ecx, r8d
mov rdi, qword [rsp + 0xf8]
movups xmmword [r10 + 0x20], xmm1
mov r8d, esi
movd xmm1, edx
mov edx, ebx
shr edx, 2
shl r8d, 7
movd xmm4, ecx
lea ecx, [r9*4]
shr ebx, 0x19
movd xmm3, edx
shr esi, 0x10
punpckldq xmm1, xmm4
or ebx, r8d
mov r8d, eax
mov edx, esi
mov esi, dword [rsp + 0xb8]
shl r8d, 0x10
movd xmm5, ebx
shr r9d, 0x15
mov ebx, dword [rsp + 0xb4]
punpckldq xmm3, xmm5
or edx, r8d
mov r8d, esi
punpcklqdq xmm1, xmm3
shl r8d, 0xb
pand xmm1, xmm0
movups xmmword [r10 + 0x30], xmm1
movd xmm1, edx
mov edx, eax
shr eax, 0x1e
or eax, ecx
mov ecx, r9d
shr edx, 7
or ecx, r8d
movd xmm4, edx
movd xmm3, eax
mov edx, ebx
movd xmm5, ecx
punpckldq xmm1, xmm4
mov eax, esi
shl edx, 0x14
punpckldq xmm3, xmm5
shr eax, 0xc
mov esi, dword [rsp + 0xb0]
punpcklqdq xmm1, xmm3
or eax, edx
pand xmm1, xmm0
mov ecx, esi
shr esi, 0x11
movups xmmword [r10 + 0x40], xmm1
movd xmm1, eax
mov eax, ebx
shr ebx, 0x1a
shl ecx, 6
mov edx, ebx
mov ebx, dword [rsp + 0xac]
shr eax, 3
or edx, ecx
mov ecx, esi
movd xmm4, eax
mov esi, dword [rsp + 0xa8]
mov r8d, ebx
movd xmm3, edx
punpckldq xmm1, xmm4
mov eax, ebx
shl r8d, 0xf
shr eax, 8
lea edx, [rsi + rsi]
or ecx, r8d
shr ebx, 0x1f
movd xmm5, ecx
mov ecx, r14d
punpckldq xmm3, xmm5
shl ecx, 0x13
punpcklqdq xmm1, xmm3
pand xmm1, xmm0
movups xmmword [r10 + 0x50], xmm1
movd xmm1, eax
mov eax, ebx
mov ebx, dword [rsp + 0xa4]
or eax, edx
mov r8d, eax
mov edx, ebx
mov eax, esi
shr ebx, 0xd
shl edx, 0xa
shr eax, 0x16
movd xmm4, r8d
or eax, edx
mov edx, ebx
punpckldq xmm1, xmm4
mov ebx, r14d
movd xmm3, eax
lea eax, [r11 + 0x15]
or edx, ecx
shr ebx, 4
mov eax, dword [r12 + rax*4]
movd xmm5, edx
mov edx, r14d
lea ecx, [r15 + 0x1c]
shr edx, 0x1b
punpckldq xmm3, xmm5
mov r8d, eax
punpcklqdq xmm1, xmm3
shr eax, 0x12
shl r8d, 5
pand xmm1, xmm0
or edx, r8d
movups xmmword [r10 + 0x60], xmm1
movd xmm1, ebx
movd xmm5, edx
lea edx, [r11 + 0x16]
add r11d, 0x17
mov edx, dword [r12 + rdx*4]
punpckldq xmm1, xmm5
pand xmm1, xmm2
mov r8d, edx
movq qword [rdi + rcx*4], xmm1
lea ecx, [r15 + 0x1e]
shr edx, 9
shl r8d, 0xe
or eax, r8d
and eax, dword [rsp + 0xf0]
mov dword [rdi + rcx*4], eax
lea eax, [r15 + 0x1f]
add r15d, 0x20
mov dword [rdi + rax*4], edx
cmp dword [rsp + 0xf4], r15d
ja 0x14020e2d0
mov rsi, qword [rsp + 0x90]
jmp 0x14020db6a
movdqu xmm2, xmmword [rax]
mov rbx, qword [rsp + 0x70]
mov r12, qword [rdi + 8]
movups xmmword [rbx], xmm2
movdqu xmm2, xmmword [rax + 0x10]
mov rax, qword [rsp + 0xd0]
mov edi, dword [rax + 0x18]
mov eax, 1
movaps xmmword [rsp + 0xe0], xmm2
movups xmmword [rbx + 0x10], xmm2
mov ecx, edi
mov dword [rsp + 0x78], edi
shl eax, cl
sub eax, 1
movd xmm2, eax
movd xmm0, eax
mov dword [rsp + 0xf0], eax
pshufd xmm2, xmm2, 0xe0
pshufd xmm0, xmm0, 0
cmp r13d, 2
je 0x14020db6a
nop dword [rax + rax]
cmp r13d, 3
jne 0x14020ec96
mov r8d, dword [rsp + 0xf4]
xor ebx, ebx
xor edi, edi
test r8d, r8d
je 0x14020db6a
mov qword [rsp + 0x80], rsi
mov r15d, ebx
nop word [rax + rax]
lea r14d, [rdi + 0xa]
mov eax, edi
mov rbx, qword [rsp + 0xf8]
lea r10d, [rdi + 8]
mov r14d, dword [r12 + r14*4]
mov eax, dword [r12 + rax*4]
mov r11d, dword [r12 + r10*4]
lea r10d, [rdi + 9]
mov dword [rsp + 0xdc], r14d
lea r14d, [rdi + 0xb]
mov r10d, dword [r12 + r10*4]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xe0], eax
mov eax, r15d
lea r9, [rbx + rax*4]
lea eax, [rdi + 1]
mov dword [rsp + 0xd8], r14d
lea r14d, [rdi + 0xc]
mov r8d, dword [r12 + rax*4]
lea eax, [rdi + 2]
mov r14d, dword [r12 + r14*4]
mov r13d, dword [r12 + rax*4]
lea eax, [rdi + 3]
mov ecx, dword [r12 + rax*4]
lea eax, [rdi + 4]
mov dword [rsp + 0xc4], r14d
lea r14d, [rdi + 0xd]
mov ebx, dword [r12 + rax*4]
lea eax, [rdi + 5]
mov r14d, dword [r12 + r14*4]
mov edx, dword [r12 + rax*4]
lea eax, [rdi + 6]
mov esi, dword [r12 + rax*4]
lea eax, [rdi + 7]
mov dword [rsp + 0xc0], r14d
lea r14d, [rdi + 0xe]
mov eax, dword [r12 + rax*4]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xbc], r14d
lea r14d, [rdi + 0xf]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xb8], r14d
lea r14d, [rdi + 0x10]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xb4], r14d
lea r14d, [rdi + 0x11]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xb0], r14d
lea r14d, [rdi + 0x12]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xac], r14d
lea r14d, [rdi + 0x13]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xa8], r14d
lea r14d, [rdi + 0x14]
mov r14d, dword [r12 + r14*4]
movd xmm1, dword [rsp + 0xe0]
mov dword [rsp + 0xa4], r14d
lea r14d, [rdi + 0x15]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xa0], r14d
lea r14d, [rdi + 0x16]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0x9c], r14d
lea r14d, [rdi + 0x17]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0x90], r14d
lea r14d, [rdi + 0x18]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0x98], r14d
lea r14d, [rdi + 0x19]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0x8c], r14d
mov r14d, dword [rsp + 0xe0]
shr r14d, 0x1d
mov dword [rsp + 0x88], r14d
lea r14d, [r8*8]
or r14d, dword [rsp + 0x88]
shr r8d, 0x1a
movd xmm4, r14d
mov r14d, r13d
shr r13d, 0x17
shl r14d, 6
punpckldq xmm1, xmm4
or r14d, r8d
mov r8d, ecx
shr ecx, 0x14
shl r8d, 9
movd xmm3, r14d
or r13d, r8d
mov r8d, ebx
shr ebx, 0x11
shl r8d, 0xc
movd xmm5, r13d
or ecx, r8d
mov r8d, edx
shr edx, 0xe
punpckldq xmm3, xmm5
shl r8d, 0xf
punpcklqdq xmm1, xmm3
or ebx, r8d
mov r8d, esi
shr esi, 0xb
pand xmm1, xmm0
shl r8d, 0x12
movups xmmword [r9], xmm1
movd xmm1, ecx
mov ecx, dword [rsp + 0xdc]
or edx, r8d
mov r8d, eax
shr eax, 8
movd xmm3, edx
mov edx, r11d
shl r8d, 0x15
shl edx, 0x18
or esi, r8d
shr r11d, 5
or eax, edx
mov edx, r10d
movd xmm4, esi
mov esi, dword [rsp + 0xd8]
shl edx, 0x1b
punpckldq xmm3, xmm4
movd xmm4, ebx
mov ebx, dword [rsp + 0xa8]
or r11d, edx
mov edx, r10d
punpckldq xmm1, xmm4
shr r10d, 0x1f
shr edx, 2
punpcklqdq xmm1, xmm3
movd xmm4, r11d
mov r11d, dword [rsp + 0xa4]
movd xmm3, edx
lea edx, [rcx + rcx]
pand xmm1, xmm0
shr ecx, 0x1c
or r10d, edx
movups xmmword [r9 + 0x10], xmm1
movd xmm1, eax
mov edx, esi
movd xmm5, r10d
punpckldq xmm1, xmm4
mov eax, dword [rsp + 0xc4]
shl edx, 4
punpckldq xmm3, xmm5
or ecx, edx
shr esi, 0x19
punpcklqdq xmm1, xmm3
mov edx, esi
mov esi, dword [rsp + 0xb8]
pand xmm1, xmm0
movups xmmword [r9 + 0x20], xmm1
movd xmm1, ecx
mov ecx, eax
shr eax, 0x16
shl ecx, 7
or edx, ecx
mov ecx, eax
mov eax, dword [rsp + 0xc0]
movd xmm4, edx
mov edx, esi
shr esi, 0xd
mov r8d, eax
shr eax, 0x13
punpckldq xmm1, xmm4
shl r8d, 0xa
shl edx, 0x10
or ecx, r8d
mov r8d, eax
mov eax, dword [rsp + 0xbc]
movd xmm3, ecx
mov r10d, eax
shr eax, 0x10
shl r10d, 0xd
mov ecx, eax
mov eax, dword [rsp + 0xb4]
or r8d, r10d
or ecx, edx
mov edx, esi
movd xmm5, r8d
punpckldq xmm3, xmm5
punpcklqdq xmm1, xmm3
pand xmm1, xmm0
movups xmmword [r9 + 0x30], xmm1
movd xmm1, ecx
mov ecx, eax
shr eax, 0xa
shl ecx, 0x13
or edx, ecx
mov ecx, eax
mov eax, dword [rsp + 0xb0]
movd xmm4, edx
mov edx, ebx
mov r8d, eax
shr eax, 7
punpckldq xmm1, xmm4
shl r8d, 0x16
shl edx, 0x1c
or ecx, r8d
mov r8d, eax
mov eax, dword [rsp + 0xac]
movd xmm3, ecx
lea ecx, [r11*4]
mov r10d, eax
shr eax, 4
shl r10d, 0x19
or eax, edx
or r8d, r10d
movd xmm5, r8d
punpckldq xmm3, xmm5
punpcklqdq xmm1, xmm3
pand xmm1, xmm0
movups xmmword [r9 + 0x40], xmm1
mov esi, dword [rsp + 0xa0]
movd xmm1, eax
mov eax, ebx
shr ebx, 0x1e
shr eax, 1
mov edx, ebx
mov r8d, esi
movd xmm4, eax
mov eax, esi
or edx, ecx
mov ecx, r11d
shl r8d, 5
mov esi, dword [rsp + 0x9c]
shr ecx, 0x1b
movd xmm3, edx
punpckldq xmm1, xmm4
shr eax, 0x18
or ecx, r8d
mov edx, esi
mov rbx, qword [rsp + 0xf8]
movd xmm5, ecx
shl edx, 8
punpckldq xmm3, xmm5
or eax, edx
punpcklqdq xmm1, xmm3
pand xmm1, xmm0
movups xmmword [r9 + 0x50], xmm1
movd xmm1, eax
mov eax, esi
mov esi, dword [rsp + 0x90]
shr eax, 0x15
mov edx, esi
shl edx, 0xb
or eax, edx
mov r8d, eax
mov eax, esi
mov esi, dword [rsp + 0x98]
shr eax, 0x12
movd xmm4, r8d
mov edx, esi
shr esi, 0xf
punpckldq xmm1, xmm4
shl edx, 0xe
or eax, edx
mov edx, esi
mov esi, dword [rsp + 0x8c]
movd xmm3, eax
lea eax, [rdi + 0x1a]
mov ecx, esi
mov r8d, dword [r12 + rax*4]
lea eax, [rdi + 0x1b]
shl ecx, 0x11
or edx, ecx
lea ecx, [r15 + 0x1c]
movd xmm5, edx
mov edx, dword [r12 + rax*4]
mov eax, esi
punpckldq xmm3, xmm5
shr eax, 0xc
punpcklqdq xmm1, xmm3
pand xmm1, xmm0
movups xmmword [r9 + 0x60], xmm1
mov r9d, r8d
shr r8d, 9
shl r9d, 0x14
or eax, r9d
movd xmm1, eax
mov eax, edx
shr edx, 6
shl eax, 0x17
or r8d, eax
lea eax, [rdi + 0x1c]
add edi, 0x1d
mov eax, dword [r12 + rax*4]
movd xmm5, r8d
punpckldq xmm1, xmm5
mov r8d, eax
pand xmm1, xmm2
shr eax, 3
shl r8d, 0x1a
movq qword [rbx + rcx*4], xmm1
lea ecx, [r15 + 0x1e]
or edx, r8d
and edx, dword [rsp + 0xf0]
mov dword [rbx + rcx*4], edx
lea edx, [r15 + 0x1f]
add r15d, 0x20
mov dword [rbx + rdx*4], eax
cmp dword [rsp + 0xf4], r15d
ja 0x14020e7b8
mov rsi, qword [rsp + 0x80]
jmp 0x14020db6a
cmp r13d, 4
jne 0x14020db6a
mov ecx, dword [rsp + 0xf4]
xor edi, edi
xor r11d, r11d
test ecx, ecx
je 0x14020db6a
mov qword [rsp + 0x30], rsi
mov r15d, edi
nop dword [rax]
lea r14d, [r11 + 0xa]
mov eax, r11d
mov rdi, qword [rsp + 0xf8]
mov r14d, dword [r12 + r14*4]
mov eax, dword [r12 + rax*4]
mov dword [rsp + 0xdc], r14d
lea r14d, [r11 + 0xb]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xe0], eax
mov eax, r15d
lea r10, [rdi + rax*4]
lea eax, [r11 + 1]
mov dword [rsp + 0xd8], r14d
lea r14d, [r11 + 0xc]
mov r9d, dword [r12 + rax*4]
lea eax, [r11 + 2]
mov r14d, dword [r12 + r14*4]
mov r13d, dword [r12 + rax*4]
lea eax, [r11 + 3]
mov r8d, dword [r12 + rax*4]
lea eax, [r11 + 4]
mov dword [rsp + 0xc4], r14d
lea r14d, [r11 + 0xd]
mov esi, dword [r12 + rax*4]
lea eax, [r11 + 5]
mov r14d, dword [r12 + r14*4]
mov ecx, dword [r12 + rax*4]
lea eax, [r11 + 6]
mov edi, dword [r12 + rax*4]
lea eax, [r11 + 7]
mov dword [rsp + 0xc0], r14d
lea r14d, [r11 + 0xe]
mov edx, dword [r12 + rax*4]
lea eax, [r11 + 8]
mov r14d, dword [r12 + r14*4]
mov ebx, dword [r12 + rax*4]
lea eax, [r11 + 9]
mov eax, dword [r12 + rax*4]
mov dword [rsp + 0xbc], r14d
lea r14d, [r11 + 0xf]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xb8], r14d
lea r14d, [r11 + 0x10]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xb4], r14d
lea r14d, [r11 + 0x11]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xb0], r14d
lea r14d, [r11 + 0x12]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xac], r14d
lea r14d, [r11 + 0x13]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xa8], r14d
lea r14d, [r11 + 0x14]
mov r14d, dword [r12 + r14*4]
movd xmm1, dword [rsp + 0xe0]
mov dword [rsp + 0xa4], r14d
lea r14d, [r11 + 0x15]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0xa0], r14d
lea r14d, [r11 + 0x16]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0x9c], r14d
lea r14d, [r11 + 0x17]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0x90], r14d
lea r14d, [r11 + 0x18]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0x98], r14d
lea r14d, [r11 + 0x19]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0x8c], r14d
lea r14d, [r11 + 0x1a]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0x88], r14d
lea r14d, [r11 + 0x1b]
mov r14d, dword [r12 + r14*4]
mov dword [rsp + 0x80], r14d
mov r14d, dword [rsp + 0xe0]
shr r14d, 0x1f
mov dword [rsp + 0x7c], r14d
lea r14d, [r9 + r9]
or r14d, dword [rsp + 0x7c]
shr r9d, 0x1e
movd xmm4, r14d
lea r14d, [r13*4]
shr r13d, 0x1d
or r14d, r9d
lea r9d, [r8*8]
shr r8d, 0x1c
punpckldq xmm1, xmm4
or r13d, r9d
mov r9d, esi
shr esi, 0x1b
movd xmm3, r14d
shl r9d, 4
movd xmm5, r13d
or r8d, r9d
mov r9d, ecx
shr ecx, 0x1a
punpckldq xmm3, xmm5
shl r9d, 5
punpcklqdq xmm1, xmm3
or esi, r9d
mov r9d, edi
shr edi, 0x19
pand xmm1, xmm0
shl r9d, 6
movups xmmword [r10], xmm1
movd xmm1, r8d
or ecx, r9d
mov r9d, edx
shr edx, 0x18
shl r9d, 7
movd xmm3, ecx
mov ecx, ebx
shr ebx, 0x17
or edi, r9d
shl ecx, 8
movd xmm4, edi
or edx, ecx
mov ecx, eax
shr eax, 0x16
punpckldq xmm3, xmm4
movd xmm4, esi
mov esi, dword [rsp + 0xdc]
shl ecx, 9
or ebx, ecx
punpckldq xmm1, xmm4
mov ecx, esi
shr esi, 0x15
movd xmm4, ebx
punpcklqdq xmm1, xmm3
shl ecx, 0xa
mov ebx, dword [rsp + 0xc4]
pand xmm1, xmm0
or eax, ecx
mov ecx, esi
mov esi, dword [rsp + 0xd8]
movups xmmword [r10 + 0x10], xmm1
movd xmm3, eax
movd xmm1, edx
mov edx, ebx
mov eax, esi
mov r8d, esi
shl edx, 0xc
punpckldq xmm1, xmm4
shr eax, 0x14
shl r8d, 0xb
mov esi, eax
mov eax, dword [rsp + 0xc0]
or ecx, r8d
movd xmm5, ecx
or esi, edx
shr ebx, 0x13
mov ecx, eax
mov edx, ebx
shr eax, 0x12
punpckldq xmm3, xmm5
shl ecx, 0xd
punpcklqdq xmm1, xmm3
mov ebx, dword [rsp + 0xb4]
or edx, ecx
mov ecx, eax
mov eax, dword [rsp + 0xbc]
pand xmm1, xmm0
movd xmm4, edx
movups xmmword [r10 + 0x20], xmm1
movd xmm1, esi
mov edx, ebx
shl edx, 0x10
mov r8d, eax
shr eax, 0x11
punpckldq xmm1, xmm4
shl r8d, 0xe
shr ebx, 0xf
or ecx, r8d
mov r8d, eax
mov eax, dword [rsp + 0xb8]
movd xmm3, ecx
mov r9d, eax
shr eax, 0x10
shl r9d, 0xf
mov esi, eax
mov eax, dword [rsp + 0xb0]
or r8d, r9d
or esi, edx
mov edx, ebx
movd xmm5, r8d
mov ecx, eax
shr eax, 0xe
punpckldq xmm3, xmm5
shl ecx, 0x11
punpcklqdq xmm1, xmm3
or edx, ecx
mov ecx, eax
pand xmm1, xmm0
movd xmm4, edx
movups xmmword [r10 + 0x30], xmm1
mov eax, dword [rsp + 0xac]
movd xmm1, esi
mov ebx, dword [rsp + 0xa4]
punpckldq xmm1, xmm4
mov rdi, qword [rsp + 0xf8]
mov r8d, eax
shr eax, 0xd
mov edx, ebx
shl r8d, 0x12
shl edx, 0x14
or ecx, r8d
mov r8d, eax
mov eax, dword [rsp + 0xa8]
shr ebx, 0xb
movd xmm3, ecx
mov r9d, eax
shr eax, 0xc
mov esi, eax
mov eax, dword [rsp + 0xa0]
shl r9d, 0x13
or esi, edx
mov edx, ebx
or r8d, r9d
mov ebx, dword [rsp + 0x98]
mov ecx, eax
shr eax, 0xa
movd xmm5, r8d
shl ecx, 0x15
punpckldq xmm3, xmm5
or edx, ecx
mov ecx, eax
mov eax, dword [rsp + 0x9c]
punpcklqdq xmm1, xmm3
pand xmm1, xmm0
movd xmm4, edx
mov edx, ebx
mov r8d, eax
shr eax, 9
movups xmmword [r10 + 0x40], xmm1
movd xmm1, esi
shl r8d, 0x16
punpckldq xmm1, xmm4
or ecx, r8d
mov r8d, eax
mov eax, dword [rsp + 0x90]
movd xmm3, ecx
mov r9d, eax
shl r9d, 0x17
shl edx, 0x18
or r8d, r9d
shr eax, 8
movd xmm5, r8d
or eax, edx
punpckldq xmm3, xmm5
punpcklqdq xmm1, xmm3
pand xmm1, xmm0
movups xmmword [r10 + 0x50], xmm1
movd xmm1, eax
mov eax, ebx
mov ebx, dword [rsp + 0x8c]
shr eax, 7
mov edx, ebx
shl edx, 0x19
or eax, edx
mov r8d, eax
mov eax, ebx
mov ebx, dword [rsp + 0x88]
shr eax, 6
movd xmm4, r8d
mov edx, ebx
shr ebx, 5
punpckldq xmm1, xmm4
shl edx, 0x1a
or eax, edx
mov edx, ebx
mov ebx, dword [rsp + 0x80]
movd xmm3, eax
lea eax, [r11 + 0x1c]
mov ecx, ebx
mov r8d, dword [r12 + rax*4]
lea eax, [r11 + 0x1d]
shl ecx, 0x1b
or edx, ecx
mov r9d, r8d
shr r8d, 3
lea ecx, [r15 + 0x1c]
movd xmm5, edx
mov edx, dword [r12 + rax*4]
mov eax, ebx
shl r9d, 0x1c
punpckldq xmm3, xmm5
shr eax, 4
punpcklqdq xmm1, xmm3
or eax, r9d
pand xmm1, xmm0
movups xmmword [r10 + 0x60], xmm1
movd xmm1, eax
mov eax, edx
shr edx, 2
shl eax, 0x1d
or r8d, eax
lea eax, [r11 + 0x1e]
add r11d, 0x1f
mov eax, dword [r12 + rax*4]
movd xmm5, r8d
punpckldq xmm1, xmm5
mov r8d, eax
pand xmm1, xmm2
shr eax, 1
shl r8d, 0x1e
movq qword [rdi + rcx*4], xmm1
lea ecx, [r15 + 0x1e]
or edx, r8d
and edx, dword [rsp + 0xf0]
mov dword [rdi + rcx*4], edx
lea edx, [r15 + 0x1f]
add r15d, 0x20
mov dword [rdi + rdx*4], eax
cmp dword [rsp + 0xf4], r15d
ja 0x14020ecc0
mov rsi, qword [rsp + 0x30]
jmp 0x14020db6a
mov eax, 0xffffffff
jmp 0x14020dd01
mov rcx, qword [rsp + 0xd0]
call sub.msvcrt.dll_free
mov eax, 0xffffffff
jmp 0x14020dd01
mov rcx, qword [rsp + 0xd0]
mov edx, dword [rcx + 0x3c]
mov rcx, qword [rsp + 0x70]
imul edx, ebx
shr edx, 3
add rax, rdx
movdqu xmm2, xmmword [rax]
movups xmmword [rcx], xmm2
movdqu xmm2, xmmword [rax + 0x10]
movaps xmmword [rsp + 0xe0], xmm2
movups xmmword [rcx + 0x10], xmm2
test ebx, ebx
jne 0x14020d933
mov rax, qword [rsp + 0xd0]
mov r12, qword [rdi + 8]
mov edi, dword [rax + 0x18]
mov eax, 1
mov ecx, edi
mov dword [rsp + 0x78], edi
shl eax, cl
sub eax, 1
movd xmm2, eax
movd xmm0, eax
mov dword [rsp + 0xf0], eax
pshufd xmm2, xmm2, 0xe0
pshufd xmm0, xmm0, 0
jmp 0x14020dada