Function at 0x14001ce50
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 0x14001d540
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 0x14001d500
mov r10, qword [rax + 0x38]
cmp ecx, esi
je 0x14001d51a
cmp ecx, 1
sete al
cmp esi, 2
sete r8b
test al, al
je 0x14001d188
test r8b, r8b
je 0x14001d188
lea rbx, [rdx + r9]
and r9, 0xfffffffffffffffc
lea rcx, [r10 + r11*2]
lea r8, [rdx + r9]
cmp rdx, r8
jae 0x14001d00c
sub r9, 1
mov rdi, rdx
cmp r9, 3
jbe 0x14001d740
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 0x14001cf16
add rax, rdx
cmp rcx, rax
jb 0x14001d740
cmp r9, 0xb
jbe 0x14001dfad
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 0x14001cf40
test sil, 3
je 0x14001cff7
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 0x14001cfcd
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 0x14001cff7
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 0x14001d176
mov r9, rbx
sub r9, rdx
lea rax, [r9 - 1]
cmp rax, 6
jbe 0x14001d7c0
lea r8, [rcx + r9*2]
cmp rdx, r8
jae 0x14001d03b
cmp rcx, rbx
jb 0x14001d7c0
cmp rax, 0xe
jbe 0x14001dfbd
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 0x14001d080
mov rax, r10
lea r10, [rdx + r8]
shl rax, 5
add rax, rcx
cmp r9, r8
je 0x14001d176
sub r9, r8
lea r11, [r9 - 1]
cmp r11, 6
jbe 0x14001d103
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 0x14001d176
movzx edx, byte [r10]
mov word [rax], dx
lea rdx, [r10 + 1]
cmp rdx, rbx
jae 0x14001d176
movzx edx, byte [r10 + 1]
mov word [rax + 2], dx
lea rdx, [r10 + 2]
cmp rdx, rbx
jae 0x14001d176
movzx edx, byte [r10 + 2]
mov word [rax + 4], dx
lea rdx, [r10 + 3]
cmp rdx, rbx
jae 0x14001d176
movzx edx, byte [r10 + 3]
mov word [rax + 6], dx
lea rdx, [r10 + 4]
cmp rdx, rbx
jae 0x14001d176
movzx edx, byte [r10 + 4]
mov word [rax + 8], dx
lea rdx, [r10 + 5]
cmp rdx, rbx
jae 0x14001d176
movzx edx, byte [r10 + 5]
mov word [rax + 0xa], dx
lea rdx, [r10 + 6]
cmp rdx, rbx
jae 0x14001d176
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 0x14001d560
test bl, bl
je 0x14001d560
lea rsi, [rdx + r9]
and r9, 0xfffffffffffffffc
lea rbx, [r10 + r11*4]
lea r8, [rdx + r9]
cmp rdx, r8
jae 0x14001d346
sub r9, 1
mov rdi, rdx
cmp r9, 3
jbe 0x14001df55
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 0x14001d1f5
add rax, rdx
cmp rbx, rax
jb 0x14001df55
cmp r9, 0xb
jbe 0x14001e1d1
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 0x14001d220
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 0x14001d32b
sub rbp, rax
cmp r12, rax
je 0x14001d30d
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 0x14001d32b
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 0x14001d176
mov r9, rsi
mov rcx, rdx
sub r9, rdx
lea rax, [r9 - 1]
cmp rax, 6
jbe 0x14001df38
lea r8, [rbx + r9*4]
cmp rdx, r8
jae 0x14001d378
cmp rbx, rsi
jb 0x14001df38
cmp rax, 0xe
jbe 0x14001e1e1
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 0x14001d3a0
mov rax, r11
shl rax, 6
add rax, rbx
cmp r9, r10
je 0x14001d176
sub r9, r10
lea rcx, [r9 - 1]
cmp rcx, 6
jbe 0x14001d475
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 0x14001d176
movzx edx, byte [r8]
mov dword [rax], edx
lea rdx, [r8 + 1]
cmp rdx, rsi
jae 0x14001d176
movzx edx, byte [r8 + 1]
mov dword [rax + 4], edx
lea rdx, [r8 + 2]
cmp rdx, rsi
jae 0x14001d176
movzx edx, byte [r8 + 2]
mov dword [rax + 8], edx
lea rdx, [r8 + 3]
cmp rdx, rsi
jae 0x14001d176
movzx edx, byte [r8 + 3]
mov dword [rax + 0xc], edx
lea rdx, [r8 + 4]
cmp rdx, rsi
jae 0x14001d176
movzx edx, byte [r8 + 4]
mov dword [rax + 0x10], edx
lea rdx, [r8 + 5]
cmp rdx, rsi
jae 0x14001d176
movzx edx, byte [r8 + 5]
mov dword [rax + 0x14], edx
lea rdx, [r8 + 6]
cmp rdx, rsi
jae 0x14001d176
movzx edx, byte [r8 + 6]
mov dword [rax + 0x18], edx
jmp 0x14001d176
lea rdi, [rax + 0x28]
add rax, 0x38
and ebx, 0x40
cmove rdi, rax
mov r10, rdi
cmp ecx, esi
jne 0x14001cea2
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 0x14001ce7a
cmp ecx, 2
sete al
test bl, bl
je 0x14001d800
test al, al
je 0x14001d800
lea r8, [r9 + r9]
lea rcx, [r10 + r11*4]
lea rsi, [rdx + r8]
and r8, 0xfffffffffffffff8
lea rax, [rdx + r8]
cmp rdx, rax
jae 0x14001d62b
sub r8, 1
mov rbx, r8
shr rbx, 3
add rbx, 1
cmp r8, 7
jbe 0x14001e235
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 0x14001d5c0
test bl, 1
je 0x14001d61b
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 0x14001d176
lea rax, [rsi - 1]
sub rax, rdx
mov r9, rax
shr r9, 1
lea r10, [r9 + 1]
cmp rax, 0xd
jbe 0x14001e23d
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 0x14001d680
mov rax, r10
and rax, 0xfffffffffffffff8
and r10d, 7
lea rbx, [rcx + rax*4]
lea r11, [rdx + rax*2]
je 0x14001d176
sub r9, rax
lea r8, [r9 + 1]
cmp r9, 2
jbe 0x14001d706
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 0x14001d176
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 0x14001d176
movzx eax, word [r11 + 2]
mov dword [rbx + 4], eax
lea rax, [r11 + 4]
cmp rax, rsi
jae 0x14001d176
movzx eax, word [r11 + 4]
mov dword [rbx + 8], eax
jmp 0x14001d176
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 0x14001d780
jmp 0x14001cff7
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 0x14001d7e0
jmp 0x14001d176
cmp esi, 1
sete bl
test al, al
je 0x14001db40
test bl, bl
je 0x14001db40
add r9, r9
lea rcx, [r10 + r11]
lea rbx, [rdx + r9]
and r9, 0xfffffffffffffff8
lea r8, [rdx + r9]
cmp rdx, r8
jae 0x14001d990
sub r9, 1
mov rdi, rdx
cmp r9, 7
jbe 0x14001e1ef
mov rbp, r9
shr rbp, 3
lea rsi, [rbp + 1]
lea rax, [r11 + rsi*4]
add rax, r10
cmp rdx, rax
jae 0x14001d867
lea rax, [rdx + rsi*8]
cmp rcx, rax
jb 0x14001e1ef
cmp r9, 0x17
jbe 0x14001e2bf
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 0x14001d8c0
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 0x14001d97b
sub rsi, r14
cmp rbp, r14
je 0x14001d955
movq xmm1, qword [0x1400cf2f8]
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 0x14001d97b
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 0x14001d176
lea rax, [rbx - 1]
sub rax, rdx
cmp rax, 0xd
jbe 0x14001db20
mov r8, rax
shr r8, 1
lea r9, [r8 + 1]
lea r10, [rdx + r9*2]
cmp rcx, r10
jae 0x14001d9ca
lea r10, [rcx + r9]
cmp rdx, r10
jb 0x14001db20
cmp rax, 0x1d
jbe 0x14001e2b1
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 0x14001da00
mov rax, rsi
lea r10, [rcx + r11]
shl rax, 5
add rax, rdx
cmp r11, r9
je 0x14001d176
sub r8, r11
lea r9, [r8 + 1]
cmp r8, 6
jbe 0x14001da8c
movq xmm1, qword [0x1400cf2f8]
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 0x14001d176
movzx edx, word [rax]
mov byte [r10], dl
lea rdx, [rax + 2]
cmp rdx, rbx
jae 0x14001d176
movzx edx, word [rax + 2]
mov byte [r10 + 1], dl
lea rdx, [rax + 4]
cmp rdx, rbx
jae 0x14001d176
movzx edx, word [rax + 4]
mov byte [r10 + 2], dl
lea rdx, [rax + 6]
cmp rdx, rbx
jae 0x14001d176
movzx edx, word [rax + 6]
mov byte [r10 + 3], dl
lea rdx, [rax + 8]
cmp rdx, rbx
jae 0x14001d176
movzx edx, word [rax + 8]
mov byte [r10 + 4], dl
lea rdx, [rax + 0xa]
cmp rdx, rbx
jae 0x14001d176
movzx edx, word [rax + 0xa]
mov byte [r10 + 5], dl
lea rdx, [rax + 0xc]
cmp rdx, rbx
jae 0x14001d176
movzx eax, word [rax + 0xc]
mov byte [r10 + 6], al
jmp 0x14001d176
movzx eax, word [rdx]
add rdx, 2
add rcx, 1
mov byte [rcx - 1], al
cmp rdx, rbx
jb 0x14001db20
jmp 0x14001d176
cmp ecx, 4
sete al
test bl, bl
je 0x14001dfcb
test al, al
je 0x14001dfcb
shl r9, 2
lea r8, [r10 + r11]
lea rbx, [rdx + r9]
and r9, 0xfffffffffffffff0
lea rcx, [rdx + r9]
cmp rdx, rcx
jae 0x14001dd22
lea rsi, [r9 - 1]
mov rbp, rdx
cmp rsi, 0xf
jbe 0x14001e24a
mov r12, rsi
shr r12, 4
lea rdi, [r12 + 1]
lea rax, [r11 + rdi*4]
add rax, r10
cmp rdx, rax
jae 0x14001dbaf
mov rax, rdi
shl rax, 4
add rax, rdx
cmp r8, rax
jb 0x14001e24a
cmp rsi, 0x2f
jbe 0x14001e2de
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 0x14001dbe0
test dil, 3
je 0x14001dd0d
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 0x14001dcf3
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 [0x1400cf2f8]
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 0x14001dd0d
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 0x14001d176
lea rcx, [rbx - 1]
mov rax, rdx
sub rcx, rdx
cmp rcx, 0x1b
jbe 0x14001df20
mov r11, rcx
shr r11, 2
lea r10, [r11 + 1]
lea r9, [rdx + r10*4]
cmp r8, r9
jae 0x14001dd60
lea r9, [r8 + r10]
cmp rdx, r9
jb 0x14001df20
cmp rcx, 0x3b
jbe 0x14001e2cf
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 0x14001dd90
mov rsi, r10
and rsi, 0xfffffffffffffff0
and r10d, 0xf
lea rax, [rsi*4]
lea r9, [r8 + rsi]
lea rcx, [rdx + rax]
je 0x14001d176
sub r11, rsi
lea r10, [r11 + 1]
cmp r11, 6
jbe 0x14001de9d
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 [0x1400cf2f8]
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 0x14001d176
mov eax, dword [rcx]
mov byte [r9], al
lea rax, [rcx + 4]
cmp rax, rbx
jae 0x14001d176
mov eax, dword [rcx + 4]
mov byte [r9 + 1], al
lea rax, [rcx + 8]
cmp rax, rbx
jae 0x14001d176
mov eax, dword [rcx + 8]
mov byte [r9 + 2], al
lea rax, [rcx + 0xc]
cmp rax, rbx
jae 0x14001d176
mov eax, dword [rcx + 0xc]
mov byte [r9 + 3], al
lea rax, [rcx + 0x10]
cmp rax, rbx
jae 0x14001d176
mov eax, dword [rcx + 0x10]
mov byte [r9 + 4], al
lea rax, [rcx + 0x14]
cmp rax, rbx
jae 0x14001d176
mov eax, dword [rcx + 0x14]
mov byte [r9 + 5], al
lea rax, [rcx + 0x18]
cmp rax, rbx
jae 0x14001d176
mov eax, dword [rcx + 0x18]
mov byte [r9 + 6], al
jmp 0x14001d176
mov eax, dword [rdx]
add rdx, 4
add r8, 1
mov byte [r8 - 1], al
cmp rdx, rbx
jb 0x14001df20
jmp 0x14001d176
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 0x14001df40
jmp 0x14001d176
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 0x14001df80
jmp 0x14001d32b
mov r8, rcx
mov r12, rdx
xor eax, eax
xor r13d, r13d
jmp 0x14001cf8c
mov rax, rcx
mov r10, rdx
xor r8d, r8d
jmp 0x14001d0c7
test r8b, r8b
je 0x14001d176
test al, al
je 0x14001d176
lea rax, [r9*4]
lea r8, [r10 + r11*2]
lea rsi, [rdx + rax]
and rax, 0xfffffffffffffff0
lea rcx, [rdx + rax]
cmp rdx, rcx
jae 0x14001e0c0
sub rax, 1
mov rbx, rax
shr rbx, 4
add rbx, 1
cmp rax, 0xf
jbe 0x14001e2fb
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 0x14001e040
test bl, 1
je 0x14001e0b3
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 0x14001d176
lea rax, [rsi - 1]
sub rax, rdx
mov r9, rax
shr r9, 2
lea r11, [r9 + 1]
cmp rax, 0x1b
jbe 0x14001e2ee
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 0x14001e100
mov rcx, r11
and rcx, 0xfffffffffffffff8
and r11d, 7
lea r10, [r8 + rcx*2]
lea rax, [rdx + rcx*4]
je 0x14001d176
sub r9, rcx
lea r11, [r9 + 1]
cmp r9, 2
jbe 0x14001e19c
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 0x14001d176
mov edx, dword [rax]
mov word [r10], dx
lea rdx, [rax + 4]
cmp rdx, rsi
jae 0x14001d176
mov edx, dword [rax + 4]
mov word [r10 + 2], dx
lea rdx, [rax + 8]
cmp rdx, rsi
jae 0x14001d176
mov eax, dword [rax + 8]
mov word [r10 + 4], ax
jmp 0x14001d176
mov rcx, rbx
mov r8, rdx
xor eax, eax
xor r13d, r13d
jmp 0x14001d294
mov rax, rbx
mov r8, rdx
xor r10d, r10d
jmp 0x14001d405
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 0x14001e200
jmp 0x14001d97b
xor r9d, r9d
jmp 0x14001d5ef
mov rbx, rcx
mov r11, rdx
xor eax, eax
jmp 0x14001d6bc
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 0x14001e280
jmp 0x14001dd0d
mov r10, rcx
mov rax, rdx
xor r11d, r11d
jmp 0x14001da48
mov r8, rcx
mov r12, rdx
xor r13d, r13d
xor eax, eax
jmp 0x14001d911
mov r9, r8
mov rcx, rdx
xor esi, esi
xor eax, eax
jmp 0x14001de26
mov r9, r8
mov rcx, rdx
xor eax, eax
xor r13d, r13d
jmp 0x14001dc77
mov r10, r8
mov rax, rdx
xor ecx, ecx
jmp 0x14001e14e
xor r9d, r9d
jmp 0x14001e081