Function at 0x14000e810
Capabilities:
Enumerate pe sections

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
mov r11, rdx
movzx edx, byte [r8 + 0x20]
mov rax, rcx
mov ecx, edx
shr cl, 2
and ecx, 7
test dl, 0x20
jne 0x14000ef00
mov rdx, qword [r8 + 0x38]
movzx ebx, byte [rax + 0x20]
mov r8d, ebx
shr r8b, 2
and r8d, 7
movzx esi, r8b
test bl, 0x20
jne 0x14000eec0
mov r10, qword [rax + 0x38]
cmp ecx, esi
je 0x14000eeda
cmp ecx, 1
sete al
cmp esi, 2
sete r8b
test al, al
je 0x14000eb48
test r8b, r8b
je 0x14000eb48
lea rbx, [rdx + r9]
and r9, 0xfffffffffffffffc
lea rcx, [r10 + r11*2]
lea r8, [rdx + r9]
cmp rdx, r8
jae 0x14000e9cc
sub r9, 1
mov rdi, rdx
cmp r9, 3
jbe 0x14000f100
mov rbp, r9
shr rbp, 2
lea rsi, [rbp + 1]
lea rax, [rsi*4]
lea r12, [r11 + rax]
lea r12, [r10 + r12*2]
cmp rdx, r12
jae 0x14000e8d6
add rax, rdx
cmp rcx, rax
jb 0x14000f100
cmp r9, 0xb
jbe 0x14000f96d
mov r8, rsi
xor eax, eax
pxor xmm1, xmm1
shr r8, 2
shl r8, 4
nop word cs:[rax + rax]
nop dword [rax]
movdqu xmm0, xmmword [rdx + rax]
movdqa xmm2, xmm0
punpckhbw xmm0, xmm1
punpcklbw xmm2, xmm1
movups xmmword [rcx + rax*2 + 0x10], xmm0
movups xmmword [rcx + rax*2], xmm2
add rax, 0x10
cmp rax, r8
jne 0x14000e900
test sil, 3
je 0x14000e9b7
mov rax, rsi
and rax, 0xfffffffffffffffc
lea r13, [rax*4]
lea r8, [rcx + rax*8]
sub rsi, rax
lea r12, [rdx + r13]
cmp rbp, rax
je 0x14000e98d
movq xmm0, qword [rdx + rax*4]
pxor xmm1, xmm1
add r13, r11
lea r10, [r10 + r13*2]
movdqa xmm2, xmm0
punpcklbw xmm0, xmm1
punpcklbw xmm2, xmm1
pshufd xmm0, xmm0, 0x4e
movq qword [r10], xmm2
movq qword [r10 + 8], xmm0
test sil, 1
je 0x14000e9b7
mov rax, rsi
and rax, 0xfffffffffffffffe
lea r8, [r8 + rax*8]
lea r12, [r12 + rax*4]
movzx eax, byte [r12]
mov word [r8], ax
movzx eax, byte [r12 + 1]
mov word [r8 + 2], ax
movzx eax, byte [r12 + 2]
mov word [r8 + 4], ax
movzx eax, byte [r12 + 3]
mov word [r8 + 6], ax
mov rax, r9
and r9, 0xfffffffffffffffc
shr rax, 2
lea rdx, [rdi + r9 + 4]
lea rcx, [rcx + rax*8 + 8]
cmp rdx, rbx
jae 0x14000eb36
mov r9, rbx
sub r9, rdx
lea rax, [r9 - 1]
cmp rax, 6
jbe 0x14000f180
lea r8, [rcx + r9*2]
cmp rdx, r8
jae 0x14000e9fb
cmp rcx, rbx
jb 0x14000f180
cmp rax, 0xe
jbe 0x14000f97d
mov r10, r9
mov r8, r9
pxor xmm1, xmm1
xor eax, eax
shr r10, 4
and r8, 0xfffffffffffffff0
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word [rax + rax]
movdqu xmm0, xmmword [rdx + rax]
movdqa xmm2, xmm0
punpckhbw xmm0, xmm1
punpcklbw xmm2, xmm1
movups xmmword [rcx + rax*2 + 0x10], xmm0
movups xmmword [rcx + rax*2], xmm2
add rax, 0x10
cmp r8, rax
jne 0x14000ea40
mov rax, r10
lea r10, [rdx + r8]
shl rax, 5
add rax, rcx
cmp r9, r8
je 0x14000eb36
sub r9, r8
lea r11, [r9 - 1]
cmp r11, 6
jbe 0x14000eac3
movq xmm0, qword [rdx + r8]
pxor xmm1, xmm1
mov rdx, r9
lea rcx, [rcx + r8*2]
and rdx, 0xfffffffffffffff8
movdqa xmm2, xmm0
punpcklbw xmm0, xmm1
lea rax, [rax + rdx*2]
add r10, rdx
punpcklbw xmm2, xmm1
pshufd xmm0, xmm0, 0x4e
and r9d, 7
movq qword [rcx], xmm2
movq qword [rcx + 8], xmm0
je 0x14000eb36
movzx edx, byte [r10]
mov word [rax], dx
lea rdx, [r10 + 1]
cmp rdx, rbx
jae 0x14000eb36
movzx edx, byte [r10 + 1]
mov word [rax + 2], dx
lea rdx, [r10 + 2]
cmp rdx, rbx
jae 0x14000eb36
movzx edx, byte [r10 + 2]
mov word [rax + 4], dx
lea rdx, [r10 + 3]
cmp rdx, rbx
jae 0x14000eb36
movzx edx, byte [r10 + 3]
mov word [rax + 6], dx
lea rdx, [r10 + 4]
cmp rdx, rbx
jae 0x14000eb36
movzx edx, byte [r10 + 4]
mov word [rax + 8], dx
lea rdx, [r10 + 5]
cmp rdx, rbx
jae 0x14000eb36
movzx edx, byte [r10 + 5]
mov word [rax + 0xa], dx
lea rdx, [r10 + 6]
cmp rdx, rbx
jae 0x14000eb36
movzx edx, byte [r10 + 6]
mov word [rax + 0xc], dx
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
cmp esi, 4
sete bl
test al, al
je 0x14000ef20
test bl, bl
je 0x14000ef20
lea rsi, [rdx + r9]
and r9, 0xfffffffffffffffc
lea rbx, [r10 + r11*4]
lea r8, [rdx + r9]
cmp rdx, r8
jae 0x14000ed06
sub r9, 1
mov rdi, rdx
cmp r9, 3
jbe 0x14000f915
mov r12, r9
shr r12, 2
lea rbp, [r12 + 1]
lea rax, [rbp*4]
lea rcx, [r11 + rax]
lea rcx, [r10 + rcx*4]
cmp rdx, rcx
jae 0x14000ebb5
add rax, rdx
cmp rbx, rax
jb 0x14000f915
cmp r9, 0xb
jbe 0x14000fb91
mov r8, rbp
mov rax, rbx
pxor xmm3, xmm3
mov rcx, rdx
shr r8, 2
pxor xmm2, xmm2
shl r8, 4
add r8, rdx
nop dword [rax + rax]
movdqu xmm0, xmmword [rcx]
add rcx, 0x10
add rax, 0x40
movdqa xmm1, xmm0
punpckhbw xmm0, xmm3
punpcklbw xmm1, xmm3
movdqa xmm4, xmm1
punpckhwd xmm1, xmm2
movups xmmword [rax - 0x30], xmm1
movdqa xmm1, xmm0
punpcklwd xmm4, xmm2
punpckhwd xmm0, xmm2
punpcklwd xmm1, xmm2
movups xmmword [rax - 0x40], xmm4
movups xmmword [rax - 0x20], xmm1
movups xmmword [rax - 0x10], xmm0
cmp r8, rcx
jne 0x14000ebe0
mov rax, rbp
and rax, 0xfffffffffffffffc
mov rcx, rax
lea r13, [rax*4]
shl rcx, 4
lea r8, [rdx + r13]
add rcx, rbx
test bpl, 3
je 0x14000eceb
sub rbp, rax
cmp r12, rax
je 0x14000eccd
movq xmm0, qword [rdx + rax*4]
pxor xmm1, xmm1
add r13, r11
lea r10, [r10 + r13*4]
movdqa xmm2, xmm0
punpcklbw xmm0, xmm1
punpcklbw xmm2, xmm1
pxor xmm1, xmm1
pshufd xmm0, xmm0, 0x4e
movdqa xmm3, xmm2
punpcklwd xmm2, xmm1
pshufd xmm2, xmm2, 0x4e
punpcklwd xmm3, xmm1
movq qword [r10 + 8], xmm2
movdqa xmm2, xmm0
punpcklwd xmm0, xmm1
punpcklwd xmm2, xmm1
pshufd xmm0, xmm0, 0x4e
movq qword [r10], xmm3
movq qword [r10 + 0x10], xmm2
movq qword [r10 + 0x18], xmm0
test bpl, 1
je 0x14000eceb
mov rax, rbp
and rax, 0xfffffffffffffffe
mov rdx, rax
lea r8, [r8 + rax*4]
shl rdx, 4
add rcx, rdx
movzx eax, byte [r8]
mov dword [rcx], eax
movzx eax, byte [r8 + 1]
mov dword [rcx + 4], eax
movzx eax, byte [r8 + 2]
mov dword [rcx + 8], eax
movzx eax, byte [r8 + 3]
mov dword [rcx + 0xc], eax
mov rax, r9
and r9, 0xfffffffffffffffc
shr rax, 2
lea rdx, [rdi + r9 + 4]
add rax, 1
shl rax, 4
add rbx, rax
cmp rdx, rsi
jae 0x14000eb36
mov r9, rsi
mov rcx, rdx
sub r9, rdx
lea rax, [r9 - 1]
cmp rax, 6
jbe 0x14000f8f8
lea r8, [rbx + r9*4]
cmp rdx, r8
jae 0x14000ed38
cmp rbx, rsi
jb 0x14000f8f8
cmp rax, 0xe
jbe 0x14000fba1
mov r10, r9
mov r11, r9
pxor xmm3, xmm3
mov rax, rbx
and r10, 0xfffffffffffffff0
shr r11, 4
pxor xmm2, xmm2
lea r8, [rdx + r10]
nop
movdqu xmm0, xmmword [rcx]
add rcx, 0x10
add rax, 0x40
movdqa xmm1, xmm0
punpckhbw xmm0, xmm3
punpcklbw xmm1, xmm3
movdqa xmm4, xmm1
punpckhwd xmm1, xmm2
movups xmmword [rax - 0x30], xmm1
movdqa xmm1, xmm0
punpcklwd xmm4, xmm2
punpckhwd xmm0, xmm2
punpcklwd xmm1, xmm2
movups xmmword [rax - 0x40], xmm4
movups xmmword [rax - 0x20], xmm1
movups xmmword [rax - 0x10], xmm0
cmp r8, rcx
jne 0x14000ed60
mov rax, r11
shl rax, 6
add rax, rbx
cmp r9, r10
je 0x14000eb36
sub r9, r10
lea rcx, [r9 - 1]
cmp rcx, 6
jbe 0x14000ee35
movq xmm0, qword [rdx + r10]
pxor xmm1, xmm1
lea rcx, [rbx + r10*4]
mov rdx, r9
and rdx, 0xfffffffffffffff8
movdqa xmm2, xmm0
punpcklbw xmm0, xmm1
lea rax, [rax + rdx*4]
add r8, rdx
punpcklbw xmm2, xmm1
pxor xmm1, xmm1
pshufd xmm0, xmm0, 0x4e
and r9d, 7
movdqa xmm3, xmm2
punpcklwd xmm2, xmm1
pshufd xmm2, xmm2, 0x4e
punpcklwd xmm3, xmm1
movq qword [rcx + 8], xmm2
movdqa xmm2, xmm0
punpcklwd xmm0, xmm1
punpcklwd xmm2, xmm1
pshufd xmm0, xmm0, 0x4e
movq qword [rcx], xmm3
movq qword [rcx + 0x10], xmm2
movq qword [rcx + 0x18], xmm0
je 0x14000eb36
movzx edx, byte [r8]
mov dword [rax], edx
lea rdx, [r8 + 1]
cmp rdx, rsi
jae 0x14000eb36
movzx edx, byte [r8 + 1]
mov dword [rax + 4], edx
lea rdx, [r8 + 2]
cmp rdx, rsi
jae 0x14000eb36
movzx edx, byte [r8 + 2]
mov dword [rax + 8], edx
lea rdx, [r8 + 3]
cmp rdx, rsi
jae 0x14000eb36
movzx edx, byte [r8 + 3]
mov dword [rax + 0xc], edx
lea rdx, [r8 + 4]
cmp rdx, rsi
jae 0x14000eb36
movzx edx, byte [r8 + 4]
mov dword [rax + 0x10], edx
lea rdx, [r8 + 5]
cmp rdx, rsi
jae 0x14000eb36
movzx edx, byte [r8 + 5]
mov dword [rax + 0x14], edx
lea rdx, [r8 + 6]
cmp rdx, rsi
jae 0x14000eb36
movzx edx, byte [r8 + 6]
mov dword [rax + 0x18], edx
jmp 0x14000eb36
lea rdi, [rax + 0x28]
add rax, 0x38
and ebx, 0x40
cmove rdi, rax
mov r10, rdi
cmp ecx, esi
jne 0x14000e862
movzx r8d, r8b
imul r11, r8
imul r8, r9
lea rcx, [r10 + r11]
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
jmp sub.msvcrt.dll_memcpy
lea r10, [r8 + 0x28]
add r8, 0x38
and edx, 0x40
mov rdx, r10
cmove rdx, r8
jmp 0x14000e83a
cmp ecx, 2
sete al
test bl, bl
je 0x14000f1c0
test al, al
je 0x14000f1c0
lea r8, [r9 + r9]
lea rcx, [r10 + r11*4]
lea rsi, [rdx + r8]
and r8, 0xfffffffffffffff8
lea rax, [rdx + r8]
cmp rdx, rax
jae 0x14000efeb
sub r8, 1
mov rbx, r8
shr rbx, 3
add rbx, 1
cmp r8, 7
jbe 0x14000fbf5
mov r9, rbx
xor eax, eax
pxor xmm1, xmm1
shr r9, 1
shl r9, 4
nop dword [rax]
movdqu xmm0, xmmword [rdx + rax]
movdqa xmm2, xmm0
punpckhwd xmm0, xmm1
punpcklwd xmm2, xmm1
movups xmmword [rcx + rax*2 + 0x10], xmm0
movups xmmword [rcx + rax*2], xmm2
add rax, 0x10
cmp rax, r9
jne 0x14000ef80
test bl, 1
je 0x14000efdb
mov r9, rbx
and r9, 0xfffffffffffffffe
movq xmm0, qword [rdx + r9*8]
pxor xmm1, xmm1
lea rax, [r11 + r9*4]
lea rax, [r10 + rax*4]
movdqa xmm2, xmm0
punpcklwd xmm0, xmm1
punpcklwd xmm2, xmm1
pshufd xmm0, xmm0, 0x4e
movq qword [rax], xmm2
movq qword [rax + 8], xmm0
shl rbx, 4
and r8, 0xfffffffffffffff8
add rcx, rbx
lea rdx, [rdx + r8 + 8]
cmp rdx, rsi
jae 0x14000eb36
lea rax, [rsi - 1]
sub rax, rdx
mov r9, rax
shr r9, 1
lea r10, [r9 + 1]
cmp rax, 0xd
jbe 0x14000fbfd
mov r8, r10
xor eax, eax
pxor xmm1, xmm1
shr r8, 3
shl r8, 4
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
movdqu xmm0, xmmword [rdx + rax]
movdqa xmm2, xmm0
punpckhwd xmm0, xmm1
punpcklwd xmm2, xmm1
movups xmmword [rcx + rax*2 + 0x10], xmm0
movups xmmword [rcx + rax*2], xmm2
add rax, 0x10
cmp rax, r8
jne 0x14000f040
mov rax, r10
and rax, 0xfffffffffffffff8
and r10d, 7
lea rbx, [rcx + rax*4]
lea r11, [rdx + rax*2]
je 0x14000eb36
sub r9, rax
lea r8, [r9 + 1]
cmp r9, 2
jbe 0x14000f0c6
movq xmm0, qword [rdx + rax*2]
pxor xmm1, xmm1
lea rcx, [rcx + rax*4]
movdqa xmm2, xmm0
punpcklwd xmm0, xmm1
punpcklwd xmm2, xmm1
pshufd xmm0, xmm0, 0x4e
movq qword [rcx], xmm2
movq qword [rcx + 8], xmm0
test r8b, 3
je 0x14000eb36
and r8, 0xfffffffffffffffc
lea rbx, [rbx + r8*4]
lea r11, [r11 + r8*2]
movzx eax, word [r11]
mov dword [rbx], eax
lea rax, [r11 + 2]
cmp rax, rsi
jae 0x14000eb36
movzx eax, word [r11 + 2]
mov dword [rbx + 4], eax
lea rax, [r11 + 4]
cmp rax, rsi
jae 0x14000eb36
movzx eax, word [r11 + 4]
mov dword [rbx + 8], eax
jmp 0x14000eb36
mov rax, rcx
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word [rax + rax]
movzx r10d, byte [rdx]
add rdx, 4
add rax, 8
mov word [rax - 8], r10w
movzx r10d, byte [rdx - 3]
mov word [rax - 6], r10w
movzx r10d, byte [rdx - 2]
mov word [rax - 4], r10w
movzx r10d, byte [rdx - 1]
mov word [rax - 2], r10w
cmp rdx, r8
jb 0x14000f140
jmp 0x14000e9b7
xor eax, eax
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop dword [rax + rax]
movzx r8d, byte [rdx + rax]
mov word [rcx + rax*2], r8w
add rax, 1
cmp r9, rax
jne 0x14000f1a0
jmp 0x14000eb36
cmp esi, 1
sete bl
test al, al
je 0x14000f500
test bl, bl
je 0x14000f500
add r9, r9
lea rcx, [r10 + r11]
lea rbx, [rdx + r9]
and r9, 0xfffffffffffffff8
lea r8, [rdx + r9]
cmp rdx, r8
jae 0x14000f350
sub r9, 1
mov rdi, rdx
cmp r9, 7
jbe 0x14000fbaf
mov rbp, r9
shr rbp, 3
lea rsi, [rbp + 1]
lea rax, [r11 + rsi*4]
add rax, r10
cmp rdx, rax
jae 0x14000f227
lea rax, [rdx + rsi*8]
cmp rcx, rax
jb 0x14000fbaf
cmp r9, 0x17
jbe 0x14000fc7f
mov r8, rsi
mov r14d, 0xff00ff
xor eax, eax
shr r8, 2
movd xmm2, r14d
shl r8, 4
pshufd xmm2, xmm2, 0
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word [rax + rax]
movdqu xmm0, xmmword [rdx + rax*2]
movdqu xmm1, xmmword [rdx + rax*2 + 0x10]
pand xmm0, xmm2
pand xmm1, xmm2
packuswb xmm0, xmm1
movups xmmword [rcx + rax], xmm0
add rax, 0x10
cmp r8, rax
jne 0x14000f280
mov r14, rsi
and r14, 0xfffffffffffffffc
lea r13, [r14*4]
lea rax, [r14*8]
lea r8, [rcx + r13]
lea r12, [rdx + rax]
test sil, 3
je 0x14000f33b
sub rsi, r14
cmp rbp, r14
je 0x14000f315
movq xmm1, qword [0x1400c01b8]
add rax, rdx
add r13, r10
movq xmm0, qword [rax]
movq xmm2, qword [rax + 8]
pand xmm0, xmm1
pand xmm1, xmm2
packuswb xmm0, xmm1
pshufd xmm0, xmm0, 8
movq qword [r13 + r11], xmm0
test sil, 1
je 0x14000f33b
mov rax, rsi
and rax, 0xfffffffffffffffe
lea r8, [r8 + rax*4]
lea r12, [r12 + rax*8]
movzx eax, word [r12]
mov byte [r8], al
movzx eax, word [r12 + 2]
mov byte [r8 + 1], al
movzx eax, word [r12 + 4]
mov byte [r8 + 2], al
movzx eax, word [r12 + 6]
mov byte [r8 + 3], al
mov rax, r9
and r9, 0xfffffffffffffff8
shr rax, 3
lea rdx, [rdi + r9 + 8]
lea rcx, [rcx + rax*4 + 4]
cmp rdx, rbx
jae 0x14000eb36
lea rax, [rbx - 1]
sub rax, rdx
cmp rax, 0xd
jbe 0x14000f4e0
mov r8, rax
shr r8, 1
lea r9, [r8 + 1]
lea r10, [rdx + r9*2]
cmp rcx, r10
jae 0x14000f38a
lea r10, [rcx + r9]
cmp rdx, r10
jb 0x14000f4e0
cmp rax, 0x1d
jbe 0x14000fc71
mov rsi, r9
mov r11, r9
mov edi, 0xff00ff
xor eax, eax
movd xmm2, edi
shr rsi, 4
and r11, 0xfffffffffffffff0
pshufd xmm2, xmm2, 0
nop word cs:[rax + rax]
nop dword [rax]
movdqu xmm0, xmmword [rdx + rax*2]
movdqu xmm1, xmmword [rdx + rax*2 + 0x10]
pand xmm0, xmm2
pand xmm1, xmm2
packuswb xmm0, xmm1
movups xmmword [rcx + rax], xmm0
add rax, 0x10
cmp r11, rax
jne 0x14000f3c0
mov rax, rsi
lea r10, [rcx + r11]
shl rax, 5
add rax, rdx
cmp r11, r9
je 0x14000eb36
sub r8, r11
lea r9, [r8 + 1]
cmp r8, 6
jbe 0x14000f44c
movq xmm1, qword [0x1400c01b8]
lea rdx, [rdx + r11*2]
movq xmm0, qword [rdx]
movq xmm2, qword [rdx + 8]
mov rdx, r9
and rdx, 0xfffffffffffffff8
pand xmm0, xmm1
pand xmm1, xmm2
lea rax, [rax + rdx*2]
add r10, rdx
packuswb xmm0, xmm1
and r9d, 7
pshufd xmm0, xmm0, 8
movq qword [rcx + r11], xmm0
je 0x14000eb36
movzx edx, word [rax]
mov byte [r10], dl
lea rdx, [rax + 2]
cmp rdx, rbx
jae 0x14000eb36
movzx edx, word [rax + 2]
mov byte [r10 + 1], dl
lea rdx, [rax + 4]
cmp rdx, rbx
jae 0x14000eb36
movzx edx, word [rax + 4]
mov byte [r10 + 2], dl
lea rdx, [rax + 6]
cmp rdx, rbx
jae 0x14000eb36
movzx edx, word [rax + 6]
mov byte [r10 + 3], dl
lea rdx, [rax + 8]
cmp rdx, rbx
jae 0x14000eb36
movzx edx, word [rax + 8]
mov byte [r10 + 4], dl
lea rdx, [rax + 0xa]
cmp rdx, rbx
jae 0x14000eb36
movzx edx, word [rax + 0xa]
mov byte [r10 + 5], dl
lea rdx, [rax + 0xc]
cmp rdx, rbx
jae 0x14000eb36
movzx eax, word [rax + 0xc]
mov byte [r10 + 6], al
jmp 0x14000eb36
movzx eax, word [rdx]
add rdx, 2
add rcx, 1
mov byte [rcx - 1], al
cmp rdx, rbx
jb 0x14000f4e0
jmp 0x14000eb36
cmp ecx, 4
sete al
test bl, bl
je 0x14000f98b
test al, al
je 0x14000f98b
shl r9, 2
lea r8, [r10 + r11]
lea rbx, [rdx + r9]
and r9, 0xfffffffffffffff0
lea rcx, [rdx + r9]
cmp rdx, rcx
jae 0x14000f6e2
lea rsi, [r9 - 1]
mov rbp, rdx
cmp rsi, 0xf
jbe 0x14000fc0a
mov r12, rsi
shr r12, 4
lea rdi, [r12 + 1]
lea rax, [r11 + rdi*4]
add rax, r10
cmp rdx, rax
jae 0x14000f56f
mov rax, rdi
shl rax, 4
add rax, rdx
cmp r8, rax
jb 0x14000fc0a
cmp rsi, 0x2f
jbe 0x14000fc9e
mov r9, rdi
mov r14d, 0xff00ff
mov rcx, r8
mov rax, rdx
shr r9, 2
movd xmm4, r14d
shl r9, 6
pshufd xmm4, xmm4, 0
add r9, rdx
nop dword [rax]
movdqu xmm2, xmmword [rax + 0x10]
movdqu xmm0, xmmword [rax]
add rax, 0x40
add rcx, 0x10
movdqu xmm3, xmmword [rax - 0x10]
movdqa xmm1, xmm0
punpcklwd xmm0, xmm2
punpckhwd xmm1, xmm2
movdqa xmm2, xmm0
punpckhwd xmm2, xmm1
punpcklwd xmm0, xmm1
movdqu xmm1, xmmword [rax - 0x20]
punpcklwd xmm0, xmm2
movdqa xmm2, xmm1
punpcklwd xmm1, xmm3
pand xmm0, xmm4
punpckhwd xmm2, xmm3
movdqa xmm3, xmm1
punpckhwd xmm3, xmm2
punpcklwd xmm1, xmm2
punpcklwd xmm1, xmm3
pand xmm1, xmm4
packuswb xmm0, xmm1
movups xmmword [rcx - 0x10], xmm0
cmp rax, r9
jne 0x14000f5a0
test dil, 3
je 0x14000f6cd
mov rax, rdi
and rax, 0xfffffffffffffffc
mov rcx, rax
lea r13, [rax*4]
sub rdi, rax
shl rcx, 4
lea r9, [r8 + r13]
add rcx, rdx
cmp r12, rax
je 0x14000f6b3
shl rax, 4
add r13, r10
add rax, rdx
movq xmm0, qword [rax]
movq xmm1, qword [rax + 8]
movdqa xmm2, xmm0
punpcklwd xmm0, xmm1
punpcklwd xmm2, xmm1
movq xmm1, qword [rax + 0x10]
pshufd xmm2, xmm2, 0x4e
punpcklwd xmm0, xmm2
movq xmm2, qword [rax + 0x18]
movdqa xmm3, xmm1
punpcklwd xmm3, xmm2
punpcklwd xmm1, xmm2
movq xmm2, qword [0x1400c01b8]
pshufd xmm3, xmm3, 0x4e
punpcklwd xmm1, xmm3
pand xmm0, xmm2
pand xmm2, xmm1
packuswb xmm0, xmm2
pshufd xmm0, xmm0, 8
movq qword [r13 + r11], xmm0
test dil, 1
je 0x14000f6cd
and rdi, 0xfffffffffffffffe
lea r9, [r9 + rdi*4]
shl rdi, 4
add rcx, rdi
mov eax, dword [rcx]
mov byte [r9], al
mov eax, dword [rcx + 4]
mov byte [r9 + 1], al
mov eax, dword [rcx + 8]
mov byte [r9 + 2], al
mov eax, dword [rcx + 0xc]
mov byte [r9 + 3], al
mov rax, rsi
and rsi, 0xfffffffffffffff0
shr rax, 4
lea rdx, [rbp + rsi + 0x10]
lea r8, [r8 + rax*4 + 4]
cmp rdx, rbx
jae 0x14000eb36
lea rcx, [rbx - 1]
mov rax, rdx
sub rcx, rdx
cmp rcx, 0x1b
jbe 0x14000f8e0
mov r11, rcx
shr r11, 2
lea r10, [r11 + 1]
lea r9, [rdx + r10*4]
cmp r8, r9
jae 0x14000f720
lea r9, [r8 + r10]
cmp rdx, r9
jb 0x14000f8e0
cmp rcx, 0x3b
jbe 0x14000fc8f
mov r9, r10
mov edi, 0xff00ff
mov rcx, r8
shr r9, 4
movd xmm4, edi
shl r9, 6
pshufd xmm4, xmm4, 0
add r9, rdx
nop dword [rax]
movdqu xmm2, xmmword [rax + 0x10]
movdqu xmm0, xmmword [rax]
add rax, 0x40
add rcx, 0x10
movdqu xmm3, xmmword [rax - 0x10]
movdqa xmm1, xmm0
punpcklwd xmm0, xmm2
punpckhwd xmm1, xmm2
movdqa xmm2, xmm0
punpckhwd xmm2, xmm1
punpcklwd xmm0, xmm1
movdqu xmm1, xmmword [rax - 0x20]
punpcklwd xmm0, xmm2
movdqa xmm2, xmm1
punpcklwd xmm1, xmm3
pand xmm0, xmm4
punpckhwd xmm2, xmm3
movdqa xmm3, xmm1
punpckhwd xmm3, xmm2
punpcklwd xmm1, xmm2
punpcklwd xmm1, xmm3
pand xmm1, xmm4
packuswb xmm0, xmm1
movups xmmword [rcx - 0x10], xmm0
cmp r9, rax
jne 0x14000f750
mov rsi, r10
and rsi, 0xfffffffffffffff0
and r10d, 0xf
lea rax, [rsi*4]
lea r9, [r8 + rsi]
lea rcx, [rdx + rax]
je 0x14000eb36
sub r11, rsi
lea r10, [r11 + 1]
cmp r11, 6
jbe 0x14000f85d
add rax, rdx
movq xmm0, qword [rax]
movq xmm1, qword [rax + 8]
movdqa xmm2, xmm0
punpcklwd xmm0, xmm1
punpcklwd xmm2, xmm1
movq xmm1, qword [rax + 0x10]
pshufd xmm2, xmm2, 0x4e
punpcklwd xmm0, xmm2
movq xmm2, qword [rax + 0x18]
movdqa xmm3, xmm1
mov rax, r10
and rax, 0xfffffffffffffff8
punpcklwd xmm3, xmm2
punpcklwd xmm1, xmm2
lea rcx, [rcx + rax*4]
add r9, rax
movq xmm2, qword [0x1400c01b8]
pshufd xmm3, xmm3, 0x4e
and r10d, 7
punpcklwd xmm1, xmm3
pand xmm0, xmm2
pand xmm2, xmm1
packuswb xmm0, xmm2
pshufd xmm0, xmm0, 8
movq qword [r8 + rsi], xmm0
je 0x14000eb36
mov eax, dword [rcx]
mov byte [r9], al
lea rax, [rcx + 4]
cmp rax, rbx
jae 0x14000eb36
mov eax, dword [rcx + 4]
mov byte [r9 + 1], al
lea rax, [rcx + 8]
cmp rax, rbx
jae 0x14000eb36
mov eax, dword [rcx + 8]
mov byte [r9 + 2], al
lea rax, [rcx + 0xc]
cmp rax, rbx
jae 0x14000eb36
mov eax, dword [rcx + 0xc]
mov byte [r9 + 3], al
lea rax, [rcx + 0x10]
cmp rax, rbx
jae 0x14000eb36
mov eax, dword [rcx + 0x10]
mov byte [r9 + 4], al
lea rax, [rcx + 0x14]
cmp rax, rbx
jae 0x14000eb36
mov eax, dword [rcx + 0x14]
mov byte [r9 + 5], al
lea rax, [rcx + 0x18]
cmp rax, rbx
jae 0x14000eb36
mov eax, dword [rcx + 0x18]
mov byte [r9 + 6], al
jmp 0x14000eb36
mov eax, dword [rdx]
add rdx, 4
add r8, 1
mov byte [r8 - 1], al
cmp rdx, rbx
jb 0x14000f8e0
jmp 0x14000eb36
xor eax, eax
nop word [rax + rax]
movzx ecx, byte [rdx + rax]
mov dword [rbx + rax*4], ecx
add rax, 1
cmp r9, rax
jne 0x14000f900
jmp 0x14000eb36
mov rax, rbx
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop dword [rax]
movzx ecx, byte [rdx]
add rdx, 4
add rax, 0x10
mov dword [rax - 0x10], ecx
movzx ecx, byte [rdx - 3]
mov dword [rax - 0xc], ecx
movzx ecx, byte [rdx - 2]
mov dword [rax - 8], ecx
movzx ecx, byte [rdx - 1]
mov dword [rax - 4], ecx
cmp rdx, r8
jb 0x14000f940
jmp 0x14000eceb
mov r8, rcx
mov r12, rdx
xor eax, eax
xor r13d, r13d
jmp 0x14000e94c
mov rax, rcx
mov r10, rdx
xor r8d, r8d
jmp 0x14000ea87
test r8b, r8b
je 0x14000eb36
test al, al
je 0x14000eb36
lea rax, [r9*4]
lea r8, [r10 + r11*2]
lea rsi, [rdx + rax]
and rax, 0xfffffffffffffff0
lea rcx, [rdx + rax]
cmp rdx, rcx
jae 0x14000fa80
sub rax, 1
mov rbx, rax
shr rbx, 4
add rbx, 1
cmp rax, 0xf
jbe 0x14000fcbb
mov r9, rbx
xor ecx, ecx
shr r9, 1
shl r9, 4
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop dword [rax + rax]
movdqu xmm2, xmmword [rdx + rcx*2 + 0x10]
movdqu xmm0, xmmword [rdx + rcx*2]
movdqa xmm1, xmm0
punpcklwd xmm0, xmm2
punpckhwd xmm1, xmm2
movdqa xmm2, xmm0
punpckhwd xmm2, xmm1
punpcklwd xmm0, xmm1
punpcklwd xmm0, xmm2
movups xmmword [r8 + rcx], xmm0
add rcx, 0x10
cmp rcx, r9
jne 0x14000fa00
test bl, 1
je 0x14000fa73
mov r9, rbx
and r9, 0xfffffffffffffffe
mov rcx, r9
shl rcx, 4
add rcx, rdx
movq xmm0, qword [rcx]
movq xmm1, qword [rcx + 8]
lea rcx, [r11 + r9*4]
movdqa xmm2, xmm0
punpcklwd xmm0, xmm1
punpcklwd xmm2, xmm1
pshufd xmm2, xmm2, 0x4e
punpcklwd xmm0, xmm2
movq qword [r10 + rcx*2], xmm0
and rax, 0xfffffffffffffff0
lea r8, [r8 + rbx*8]
lea rdx, [rdx + rax + 0x10]
cmp rdx, rsi
jae 0x14000eb36
lea rax, [rsi - 1]
sub rax, rdx
mov r9, rax
shr r9, 2
lea r11, [r9 + 1]
cmp rax, 0x1b
jbe 0x14000fcae
mov rcx, r11
xor eax, eax
shr rcx, 3
shl rcx, 4
nop word cs:[rax + rax]
nop dword [rax]
movdqu xmm2, xmmword [rdx + rax*2 + 0x10]
movdqu xmm0, xmmword [rdx + rax*2]
movdqa xmm1, xmm0
punpcklwd xmm0, xmm2
punpckhwd xmm1, xmm2
movdqa xmm2, xmm0
punpckhwd xmm2, xmm1
punpcklwd xmm0, xmm1
punpcklwd xmm0, xmm2
movups xmmword [r8 + rax], xmm0
add rax, 0x10
cmp rax, rcx
jne 0x14000fac0
mov rcx, r11
and rcx, 0xfffffffffffffff8
and r11d, 7
lea r10, [r8 + rcx*2]
lea rax, [rdx + rcx*4]
je 0x14000eb36
sub r9, rcx
lea r11, [r9 + 1]
cmp r9, 2
jbe 0x14000fb5c
lea rdx, [rdx + rcx*4]
movq xmm0, qword [rdx]
movq xmm1, qword [rdx + 8]
mov rdx, r11
and rdx, 0xfffffffffffffffc
and r11d, 3
movdqa xmm2, xmm0
punpcklwd xmm0, xmm1
lea r10, [r10 + rdx*2]
punpcklwd xmm2, xmm1
lea rax, [rax + rdx*4]
pshufd xmm2, xmm2, 0x4e
punpcklwd xmm0, xmm2
movq qword [r8 + rcx*2], xmm0
je 0x14000eb36
mov edx, dword [rax]
mov word [r10], dx
lea rdx, [rax + 4]
cmp rdx, rsi
jae 0x14000eb36
mov edx, dword [rax + 4]
mov word [r10 + 2], dx
lea rdx, [rax + 8]
cmp rdx, rsi
jae 0x14000eb36
mov eax, dword [rax + 8]
mov word [r10 + 4], ax
jmp 0x14000eb36
mov rcx, rbx
mov r8, rdx
xor eax, eax
xor r13d, r13d
jmp 0x14000ec54
mov rax, rbx
mov r8, rdx
xor r10d, r10d
jmp 0x14000edc5
mov rax, rcx
nop word cs:[rax + rax]
nop dword [rax]
movzx r10d, word [rdx]
add rdx, 8
add rax, 4
mov byte [rax - 4], r10b
movzx r10d, word [rdx - 6]
mov byte [rax - 3], r10b
movzx r10d, word [rdx - 4]
mov byte [rax - 2], r10b
movzx r10d, word [rdx - 2]
mov byte [rax - 1], r10b
cmp rdx, r8
jb 0x14000fbc0
jmp 0x14000f33b
xor r9d, r9d
jmp 0x14000efaf
mov rbx, rcx
mov r11, rdx
xor eax, eax
jmp 0x14000f07c
mov rax, r8
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop dword [rax]
mov r9d, dword [rdx]
add rdx, 0x10
add rax, 4
mov byte [rax - 4], r9b
mov r9d, dword [rdx - 0xc]
mov byte [rax - 3], r9b
mov r9d, dword [rdx - 8]
mov byte [rax - 2], r9b
mov r9d, dword [rdx - 4]
mov byte [rax - 1], r9b
cmp rdx, rcx
jb 0x14000fc40
jmp 0x14000f6cd
mov r10, rcx
mov rax, rdx
xor r11d, r11d
jmp 0x14000f408
mov r8, rcx
mov r12, rdx
xor r13d, r13d
xor eax, eax
jmp 0x14000f2d1
mov r9, r8
mov rcx, rdx
xor esi, esi
xor eax, eax
jmp 0x14000f7e6
mov r9, r8
mov rcx, rdx
xor eax, eax
xor r13d, r13d
jmp 0x14000f637
mov r10, r8
mov rax, rdx
xor ecx, ecx
jmp 0x14000fb0e
xor r9d, r9d
jmp 0x14000fa41