Function at 0x14011c170
Capabilities:
Enumerate pe sections

Disassembly:
push rbp
push rdi
push rsi
push rbx
mov r10, rdx
movzx edx, byte [r8 + 0x20]
mov rbx, rcx
mov eax, edx
shr al, 2
and eax, 7
test dl, 0x20
jne 0x14011c828
mov rdx, qword [r8 + 0x48]
movzx ecx, byte [rbx + 0x20]
mov r8d, ecx
shr r8b, 2
and r8d, 7
movzx r11d, r8b
test cl, 0x20
jne 0x14011c7f0
mov rbx, qword [rbx + 0x48]
cmp eax, r11d
je 0x14011c808
cmp eax, 1
sete cl
cmp r11d, 2
sete r8b
test cl, cl
je 0x14011c4c0
test r8b, r8b
je 0x14011c4c0
lea r11, [rdx + r9]
and r9, 0xfffffffffffffffc
lea rcx, [rbx + r10*2]
lea rdi, [rdx + r9]
cmp rdx, rdi
jae 0x14011d1d0
sub r9, 1
mov rsi, r9
shr rsi, 2
add rsi, 1
lea rax, [rsi*4]
lea r8, [rdx + rax]
add rax, r10
lea rax, [rbx + rax*2]
cmp rdx, rax
setae al
cmp rcx, r8
setae r10b
or al, r10b
je 0x14011cd60
cmp r9, 0xb
jbe 0x14011cd60
mov r9, rsi
xor eax, eax
pxor xmm1, xmm1
shr r9, 2
shl r9, 4
nop dword [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 r9, rax
jne 0x14011c250
mov r9, rsi
and r9, 0xfffffffffffffffc
lea rax, [rdx + r9*4]
lea rdx, [rcx + r9*8]
cmp rsi, r9
je 0x14011c311
movzx r9d, byte [rax]
mov word [rdx], r9w
movzx r9d, byte [rax + 1]
mov word [rdx + 2], r9w
movzx r9d, byte [rax + 2]
mov word [rdx + 4], r9w
movzx r9d, byte [rax + 3]
mov word [rdx + 6], r9w
lea r9, [rax + 4]
cmp rdi, r9
jbe 0x14011c311
movzx r9d, byte [rax + 4]
mov word [rdx + 8], r9w
movzx r9d, byte [rax + 5]
mov word [rdx + 0xa], r9w
movzx r9d, byte [rax + 6]
mov word [rdx + 0xc], r9w
movzx r9d, byte [rax + 7]
mov word [rdx + 0xe], r9w
lea r9, [rax + 8]
cmp rdi, r9
jbe 0x14011c311
movzx r9d, byte [rax + 8]
mov word [rdx + 0x10], r9w
movzx r9d, byte [rax + 9]
mov word [rdx + 0x12], r9w
movzx r9d, byte [rax + 0xa]
mov word [rdx + 0x14], r9w
movzx eax, byte [rax + 0xb]
mov word [rdx + 0x16], ax
lea rcx, [rcx + rsi*8]
cmp r11, r8
jbe 0x14011c4ba
mov rdx, r11
sub rdx, r8
lea rax, [rcx + rdx*2]
cmp r8, rax
setae al
cmp r11, rcx
setbe r9b
or al, r9b
je 0x14011cd40
lea rax, [rdx - 1]
cmp rax, 0xe
jbe 0x14011cd40
mov r9, rdx
xor eax, eax
pxor xmm1, xmm1
and r9, 0xfffffffffffffff0
nop dword [rax]
movdqu xmm0, xmmword [r8 + 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 r9, rax
jne 0x14011c360
mov r9, rdx
and r9, 0xfffffffffffffff0
add r8, r9
lea rax, [rcx + r9*2]
cmp rdx, r9
je 0x14011c4ba
movzx edx, byte [r8]
mov word [rax], dx
lea rdx, [r8 + 1]
cmp r11, rdx
jbe 0x14011c4ba
movzx edx, byte [r8 + 1]
mov word [rax + 2], dx
lea rdx, [r8 + 2]
cmp r11, rdx
jbe 0x14011c4ba
movzx edx, byte [r8 + 2]
mov word [rax + 4], dx
lea rdx, [r8 + 3]
cmp r11, rdx
jbe 0x14011c4ba
movzx edx, byte [r8 + 3]
mov word [rax + 6], dx
lea rdx, [r8 + 4]
cmp r11, rdx
jbe 0x14011c4ba
movzx edx, byte [r8 + 4]
mov word [rax + 8], dx
lea rdx, [r8 + 5]
cmp r11, rdx
jbe 0x14011c4ba
movzx edx, byte [r8 + 5]
mov word [rax + 0xa], dx
lea rdx, [r8 + 6]
cmp r11, rdx
jbe 0x14011c4ba
movzx edx, byte [r8 + 6]
mov word [rax + 0xc], dx
lea rdx, [r8 + 7]
cmp r11, rdx
jbe 0x14011c4ba
movzx edx, byte [r8 + 7]
mov word [rax + 0xe], dx
lea rdx, [r8 + 8]
cmp r11, rdx
jbe 0x14011c4ba
movzx edx, byte [r8 + 8]
mov word [rax + 0x10], dx
lea rdx, [r8 + 9]
cmp r11, rdx
jbe 0x14011c4ba
movzx edx, byte [r8 + 9]
mov word [rax + 0x12], dx
lea rdx, [r8 + 0xa]
cmp r11, rdx
jbe 0x14011c4ba
movzx edx, byte [r8 + 0xa]
mov word [rax + 0x14], dx
lea rdx, [r8 + 0xb]
cmp r11, rdx
jbe 0x14011c4ba
movzx edx, byte [r8 + 0xb]
mov word [rax + 0x16], dx
lea rdx, [r8 + 0xc]
cmp r11, rdx
jbe 0x14011c4ba
movzx edx, byte [r8 + 0xc]
mov word [rax + 0x18], dx
lea rdx, [r8 + 0xd]
cmp r11, rdx
jbe 0x14011c4ba
movzx edx, byte [r8 + 0xd]
mov word [rax + 0x1a], dx
lea rdx, [r8 + 0xe]
cmp r11, rdx
jbe 0x14011c4ba
movzx edx, byte [r8 + 0xe]
mov word [rax + 0x1c], dx
pop rbx
pop rsi
pop rdi
pop rbp
ret
cmp r11d, 4
sete sil
test cl, cl
je 0x14011c870
test sil, sil
je 0x14011c870
lea rsi, [rdx + r9]
and r9, 0xfffffffffffffffc
lea r11, [rbx + r10*4]
lea rbp, [rdx + r9]
cmp rdx, rbp
jae 0x14011d3d6
sub r9, 1
mov rcx, rdx
mov rdi, r9
shr rdi, 2
add rdi, 1
lea rax, [rdi*4]
lea r8, [rdx + rax]
add rax, r10
lea rax, [rbx + rax*4]
cmp rdx, rax
setae al
cmp r11, r8
setae r10b
or al, r10b
mov rax, r11
je 0x14011c840
cmp r9, 0xb
jbe 0x14011c840
mov r9, rdi
pxor xmm3, xmm3
pxor xmm2, xmm2
shr r9, 2
shl r9, 4
add r9, rdx
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 r9, rcx
jne 0x14011c550
mov rcx, rdi
and rcx, 0xfffffffffffffffc
mov rax, rcx
lea rdx, [rdx + rcx*4]
shl rax, 4
add rax, r11
cmp rdi, rcx
je 0x14011c613
movzx ecx, byte [rdx]
mov dword [rax], ecx
movzx ecx, byte [rdx + 1]
mov dword [rax + 4], ecx
movzx ecx, byte [rdx + 2]
mov dword [rax + 8], ecx
movzx ecx, byte [rdx + 3]
mov dword [rax + 0xc], ecx
lea rcx, [rdx + 4]
cmp rbp, rcx
jbe 0x14011c613
movzx ecx, byte [rdx + 4]
mov dword [rax + 0x10], ecx
movzx ecx, byte [rdx + 5]
mov dword [rax + 0x14], ecx
movzx ecx, byte [rdx + 6]
mov dword [rax + 0x18], ecx
movzx ecx, byte [rdx + 7]
mov dword [rax + 0x1c], ecx
lea rcx, [rdx + 8]
cmp rbp, rcx
jbe 0x14011c613
movzx ecx, byte [rdx + 8]
mov dword [rax + 0x20], ecx
movzx ecx, byte [rdx + 9]
mov dword [rax + 0x24], ecx
movzx ecx, byte [rdx + 0xa]
mov dword [rax + 0x28], ecx
movzx edx, byte [rdx + 0xb]
mov dword [rax + 0x2c], edx
shl rdi, 4
add r11, rdi
cmp rsi, r8
jbe 0x14011c4ba
mov r9, rsi
mov rdx, r8
sub r9, r8
lea rax, [r11 + r9*4]
cmp r8, rax
setae al
cmp rsi, r11
setbe cl
or al, cl
je 0x14011d1d8
lea rax, [r9 - 1]
cmp rax, 0xe
jbe 0x14011d1d8
mov rcx, r9
pxor xmm3, xmm3
pxor xmm2, xmm2
mov rax, r11
and rcx, 0xfffffffffffffff0
add rcx, r8
nop word [rax + rax]
movdqu xmm0, xmmword [rdx]
add rdx, 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 rdx, rcx
jne 0x14011c670
mov rcx, r9
and rcx, 0xfffffffffffffff0
lea rax, [r8 + rcx]
lea rdx, [r11 + rcx*4]
cmp r9, rcx
je 0x14011c4ba
movzx ecx, byte [rax]
mov dword [rdx], ecx
lea rcx, [rax + 1]
cmp rsi, rcx
jbe 0x14011c4ba
movzx ecx, byte [rax + 1]
mov dword [rdx + 4], ecx
lea rcx, [rax + 2]
cmp rsi, rcx
jbe 0x14011c4ba
movzx ecx, byte [rax + 2]
mov dword [rdx + 8], ecx
lea rcx, [rax + 3]
cmp rsi, rcx
jbe 0x14011c4ba
movzx ecx, byte [rax + 3]
mov dword [rdx + 0xc], ecx
lea rcx, [rax + 4]
cmp rsi, rcx
jbe 0x14011c4ba
movzx ecx, byte [rax + 4]
mov dword [rdx + 0x10], ecx
lea rcx, [rax + 5]
cmp rsi, rcx
jbe 0x14011c4ba
movzx ecx, byte [rax + 5]
mov dword [rdx + 0x14], ecx
lea rcx, [rax + 6]
cmp rsi, rcx
jbe 0x14011c4ba
movzx ecx, byte [rax + 6]
mov dword [rdx + 0x18], ecx
lea rcx, [rax + 7]
cmp rsi, rcx
jbe 0x14011c4ba
movzx ecx, byte [rax + 7]
mov dword [rdx + 0x1c], ecx
lea rcx, [rax + 8]
cmp rsi, rcx
jbe 0x14011c4ba
movzx ecx, byte [rax + 8]
mov dword [rdx + 0x20], ecx
lea rcx, [rax + 9]
cmp rsi, rcx
jbe 0x14011c4ba
movzx ecx, byte [rax + 9]
mov dword [rdx + 0x24], ecx
lea rcx, [rax + 0xa]
cmp rsi, rcx
jbe 0x14011c4ba
movzx ecx, byte [rax + 0xa]
mov dword [rdx + 0x28], ecx
lea rcx, [rax + 0xb]
cmp rsi, rcx
jbe 0x14011c4ba
movzx ecx, byte [rax + 0xb]
mov dword [rdx + 0x2c], ecx
lea rcx, [rax + 0xc]
cmp rsi, rcx
jbe 0x14011c4ba
movzx ecx, byte [rax + 0xc]
mov dword [rdx + 0x30], ecx
lea rcx, [rax + 0xd]
cmp rsi, rcx
jbe 0x14011c4ba
movzx ecx, byte [rax + 0xd]
mov dword [rdx + 0x34], ecx
lea rcx, [rax + 0xe]
cmp rsi, rcx
jbe 0x14011c4ba
movzx eax, byte [rax + 0xe]
mov dword [rdx + 0x38], eax
jmp 0x14011c4ba
lea rsi, [rbx + 0x30]
add rbx, 0x48
and ecx, 0x40
cmovne rbx, rsi
cmp eax, r11d
jne 0x14011c1bd
movzx r8d, r8b
imul r10, r8
imul r8, r9
lea rcx, [rbx + r10]
pop rbx
pop rsi
pop rdi
pop rbp
jmp sub.msvcrt.dll_memcpy
lea rcx, [r8 + 0x30]
add r8, 0x48
and edx, 0x40
cmove rcx, r8
mov rdx, rcx
jmp 0x14011c194
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 rbp, rdx
ja 0x14011c840
jmp 0x14011c613
cmp eax, 2
sete cl
test sil, sil
je 0x14011ca40
test cl, cl
je 0x14011ca40
add r9, r9
lea rcx, [rbx + r10*4]
lea r10, [rdx + r9]
and r9, 0xfffffffffffffff8
lea rax, [rdx + r9]
cmp rdx, rax
jae 0x14011c949
lea rax, [r9 - 1]
mov r9, rax
shr r9, 3
add r9, 1
cmp rax, 7
jbe 0x14011d3de
mov r8, r9
xor eax, eax
pxor xmm1, xmm1
shr r8, 1
shl r8, 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, r8
jne 0x14011c8d0
mov r8, r9
and r8, 0xfffffffffffffffe
mov r11, r8
lea rax, [rdx + r8*8]
shl r11, 4
add r11, rcx
cmp r9, r8
je 0x14011c93e
movzx edi, word [rax]
movzx r8d, word [rax + 2]
movd xmm0, edi
movzx edi, word [rax + 4]
movzx eax, word [rax + 6]
movd xmm1, edi
movd xmm5, eax
punpckldq xmm1, xmm5
movd xmm5, r8d
punpckldq xmm0, xmm5
punpcklqdq xmm0, xmm1
movups xmmword [r11], xmm0
lea rdx, [rdx + r9*8]
shl r9, 4
add rcx, r9
cmp r10, rdx
jbe 0x14011c4ba
lea rax, [r10 - 1]
sub rax, rdx
mov r9, rax
shr r9, 1
add r9, 1
cmp rax, 0xd
jbe 0x14011c9bb
mov r8, r9
xor eax, eax
pxor xmm1, xmm1
shr r8, 3
shl r8, 4
nop word [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 0x14011c980
mov rax, r9
and rax, 0xfffffffffffffff8
lea rdx, [rdx + rax*2]
lea rcx, [rcx + rax*4]
cmp r9, rax
je 0x14011c4ba
movzx eax, word [rdx]
mov dword [rcx], eax
lea rax, [rdx + 2]
cmp r10, rax
jbe 0x14011c4ba
movzx eax, word [rdx + 2]
mov dword [rcx + 4], eax
lea rax, [rdx + 4]
cmp r10, rax
jbe 0x14011c4ba
movzx eax, word [rdx + 4]
mov dword [rcx + 8], eax
lea rax, [rdx + 6]
cmp r10, rax
jbe 0x14011c4ba
movzx eax, word [rdx + 6]
mov dword [rcx + 0xc], eax
lea rax, [rdx + 8]
cmp r10, rax
jbe 0x14011c4ba
movzx eax, word [rdx + 8]
mov dword [rcx + 0x10], eax
lea rax, [rdx + 0xa]
cmp r10, rax
jbe 0x14011c4ba
movzx eax, word [rdx + 0xa]
mov dword [rcx + 0x14], eax
lea rax, [rdx + 0xc]
cmp r10, rax
jbe 0x14011c4ba
movzx eax, word [rdx + 0xc]
mov dword [rcx + 0x18], eax
jmp 0x14011c4ba
cmp r11d, 1
sete r11b
test cl, cl
je 0x14011ce00
test r11b, r11b
je 0x14011ce00
add r9, r9
lea r11, [rbx + r10]
lea rsi, [rdx + r9]
and r9, 0xfffffffffffffff8
lea rbp, [rdx + r9]
cmp rdx, rbp
jae 0x14011d3e9
sub r9, 1
mov rdi, r9
shr rdi, 3
add rdi, 1
lea r8, [r10 + rdi*4]
lea rcx, [rdx + rdi*8]
add r8, rbx
cmp r11, rcx
setae al
cmp rdx, r8
setae r10b
or al, r10b
je 0x14011cda8
cmp r9, 0x17
jbe 0x14011cda8
mov r9, rdi
movdqa xmm1, xmmword [0x1401c5470]
xor eax, eax
shr r9, 2
shl r9, 4
nop dword [rax]
movdqu xmm0, xmmword [rdx + rax*2]
movdqu xmm2, xmmword [rdx + rax*2 + 0x10]
pand xmm0, xmm1
pand xmm2, xmm1
packuswb xmm0, xmm2
movups xmmword [r11 + rax], xmm0
add rax, 0x10
cmp rax, r9
jne 0x14011cac8
mov r9, rdi
and r9, 0xfffffffffffffffc
lea rax, [rdx + r9*8]
lea rdx, [r11 + r9*4]
cmp rdi, r9
je 0x14011cb7b
movzx r9d, word [rax]
mov byte [rdx], r9b
movzx r9d, word [rax + 2]
mov byte [rdx + 1], r9b
movzx r9d, word [rax + 4]
mov byte [rdx + 2], r9b
movzx r9d, word [rax + 6]
mov byte [rdx + 3], r9b
lea r9, [rax + 8]
cmp rbp, r9
jbe 0x14011cb7b
movzx r9d, word [rax + 8]
mov byte [rdx + 4], r9b
movzx r9d, word [rax + 0xa]
mov byte [rdx + 5], r9b
movzx r9d, word [rax + 0xc]
mov byte [rdx + 6], r9b
movzx r9d, word [rax + 0xe]
mov byte [rdx + 7], r9b
lea r9, [rax + 0x10]
cmp rbp, r9
jbe 0x14011cb7b
movzx r9d, word [rax + 0x10]
mov byte [rdx + 8], r9b
movzx r9d, word [rax + 0x12]
mov byte [rdx + 9], r9b
movzx r9d, word [rax + 0x14]
mov byte [rdx + 0xa], r9b
movzx eax, word [rax + 0x16]
mov byte [rdx + 0xb], al
cmp rsi, rcx
jbe 0x14011c4ba
lea rax, [rsi - 1]
sub rax, rcx
mov rdx, rax
shr rdx, 1
add rdx, 1
lea r9, [rcx + rdx*2]
lea r10, [r8 + rdx]
cmp r8, r9
setae r9b
cmp rcx, r10
setae r10b
or r9b, r10b
je 0x14011cde0
cmp rax, 0x1d
jbe 0x14011cde0
mov r9, rdx
movdqa xmm1, xmmword [0x1401c5470]
xor eax, eax
and r9, 0xfffffffffffffff0
nop
movdqu xmm0, xmmword [rcx + rax*2]
movdqu xmm2, xmmword [rcx + rax*2 + 0x10]
pand xmm0, xmm1
pand xmm2, xmm1
packuswb xmm0, xmm2
movups xmmword [r8 + rax], xmm0
add rax, 0x10
cmp rax, r9
jne 0x14011cbd0
mov r9, rdx
and r9, 0xfffffffffffffff0
lea rax, [rcx + r9*2]
add r8, r9
cmp rdx, r9
je 0x14011c4ba
movzx edx, word [rax]
mov byte [r8], dl
lea rdx, [rax + 2]
cmp rsi, rdx
jbe 0x14011c4ba
movzx edx, word [rax + 2]
mov byte [r8 + 1], dl
lea rdx, [rax + 4]
cmp rsi, rdx
jbe 0x14011c4ba
movzx edx, word [rax + 4]
mov byte [r8 + 2], dl
lea rdx, [rax + 6]
cmp rsi, rdx
jbe 0x14011c4ba
movzx edx, word [rax + 6]
mov byte [r8 + 3], dl
lea rdx, [rax + 8]
cmp rsi, rdx
jbe 0x14011c4ba
movzx edx, word [rax + 8]
mov byte [r8 + 4], dl
lea rdx, [rax + 0xa]
cmp rsi, rdx
jbe 0x14011c4ba
movzx edx, word [rax + 0xa]
mov byte [r8 + 5], dl
lea rdx, [rax + 0xc]
cmp rsi, rdx
jbe 0x14011c4ba
movzx edx, word [rax + 0xc]
mov byte [r8 + 6], dl
lea rdx, [rax + 0xe]
cmp rsi, rdx
jbe 0x14011c4ba
movzx edx, word [rax + 0xe]
mov byte [r8 + 7], dl
lea rdx, [rax + 0x10]
cmp rsi, rdx
jbe 0x14011c4ba
movzx edx, word [rax + 0x10]
mov byte [r8 + 8], dl
lea rdx, [rax + 0x12]
cmp rsi, rdx
jbe 0x14011c4ba
movzx edx, word [rax + 0x12]
mov byte [r8 + 9], dl
lea rdx, [rax + 0x14]
cmp rsi, rdx
jbe 0x14011c4ba
movzx edx, word [rax + 0x14]
mov byte [r8 + 0xa], dl
lea rdx, [rax + 0x16]
cmp rsi, rdx
jbe 0x14011c4ba
movzx edx, word [rax + 0x16]
mov byte [r8 + 0xb], dl
lea rdx, [rax + 0x18]
cmp rsi, rdx
jbe 0x14011c4ba
movzx edx, word [rax + 0x18]
mov byte [r8 + 0xc], dl
lea rdx, [rax + 0x1a]
cmp rsi, rdx
jbe 0x14011c4ba
movzx edx, word [rax + 0x1a]
mov byte [r8 + 0xd], dl
lea rdx, [rax + 0x1c]
cmp rsi, rdx
jbe 0x14011c4ba
movzx eax, word [rax + 0x1c]
mov byte [r8 + 0xe], al
jmp 0x14011c4ba
xor eax, eax
nop word [rax + rax]
movzx r9d, byte [r8 + rax]
mov word [rcx + rax*2], r9w
add rax, 1
cmp rax, rdx
jne 0x14011cd48
jmp 0x14011c4ba
mov rax, rcx
nop dword [rax + rax]
movzx r9d, byte [rdx]
add rdx, 4
add rax, 8
mov word [rax - 8], r9w
movzx r9d, byte [rdx - 3]
mov word [rax - 6], r9w
movzx r9d, byte [rdx - 2]
mov word [rax - 4], r9w
movzx r9d, byte [rdx - 1]
mov word [rax - 2], r9w
cmp rdi, rdx
ja 0x14011cd68
jmp 0x14011c311
movzx eax, word [rdx]
add rdx, 8
add r11, 4
mov byte [r11 - 4], al
movzx eax, word [rdx - 6]
mov byte [r11 - 3], al
movzx eax, word [rdx - 4]
mov byte [r11 - 2], al
movzx eax, word [rdx - 2]
mov byte [r11 - 1], al
cmp rbp, rdx
ja 0x14011cda8
jmp 0x14011cb7b
movzx eax, word [rcx]
add rcx, 2
add r8, 1
mov byte [r8 - 1], al
cmp rsi, rcx
ja 0x14011cde0
jmp 0x14011c4ba
cmp eax, 4
sete al
test r11b, r11b
je 0x14011d1f7
test al, al
je 0x14011d1f7
shl r9, 2
lea r11, [rbx + r10]
lea rsi, [rdx + r9]
and r9, 0xfffffffffffffff0
lea rbp, [rdx + r9]
cmp rdx, rbp
jae 0x14011d3f4
sub r9, 1
mov rax, rdx
mov rdi, r9
shr rdi, 4
add rdi, 1
mov r8, rdi
lea rcx, [r10 + rdi*4]
shl r8, 4
add rcx, rbx
add r8, rdx
cmp r11, r8
setae r10b
cmp rdx, rcx
setae bl
or r10b, bl
je 0x14011d180
cmp r9, 0x2f
jbe 0x14011d180
mov r10, rdi
movdqa xmm1, xmmword [0x1401c5470]
mov r9, r11
shr r10, 2
shl r10, 6
add r10, rdx
movdqu xmm5, xmmword [rax + 0x10]
movdqu xmm0, xmmword [rax]
add rax, 0x40
add r9, 0x10
movdqa xmm2, xmm0
punpcklwd xmm0, xmm5
punpckhwd xmm2, xmm5
movdqa xmm3, xmm0
movdqu xmm5, xmmword [rax - 0x10]
punpckhwd xmm3, xmm2
punpcklwd xmm0, xmm2
movdqu xmm2, xmmword [rax - 0x20]
punpcklwd xmm0, xmm3
movdqa xmm3, xmm2
punpcklwd xmm2, xmm5
pand xmm0, xmm1
punpckhwd xmm3, xmm5
movdqa xmm4, xmm2
punpckhwd xmm4, xmm3
punpcklwd xmm2, xmm3
punpcklwd xmm2, xmm4
pand xmm2, xmm1
packuswb xmm0, xmm2
movups xmmword [r9 - 0x10], xmm0
cmp rax, r10
jne 0x14011ce90
mov r9, rdi
and r9, 0xfffffffffffffffc
mov rax, r9
shl rax, 4
add rax, rdx
lea rdx, [r11 + r9*4]
cmp rdi, r9
je 0x14011cf81
mov r9d, dword [rax]
mov byte [rdx], r9b
mov r9d, dword [rax + 4]
mov byte [rdx + 1], r9b
mov r9d, dword [rax + 8]
mov byte [rdx + 2], r9b
mov r9d, dword [rax + 0xc]
mov byte [rdx + 3], r9b
lea r9, [rax + 0x10]
cmp rbp, r9
jbe 0x14011cf81
mov r9d, dword [rax + 0x10]
mov byte [rdx + 4], r9b
mov r9d, dword [rax + 0x14]
mov byte [rdx + 5], r9b
mov r9d, dword [rax + 0x18]
mov byte [rdx + 6], r9b
mov r9d, dword [rax + 0x1c]
mov byte [rdx + 7], r9b
lea r9, [rax + 0x20]
cmp rbp, r9
jbe 0x14011cf81
mov r9d, dword [rax + 0x20]
mov byte [rdx + 8], r9b
mov r9d, dword [rax + 0x24]
mov byte [rdx + 9], r9b
mov r9d, dword [rax + 0x28]
mov byte [rdx + 0xa], r9b
mov eax, dword [rax + 0x2c]
mov byte [rdx + 0xb], al
cmp rsi, r8
jbe 0x14011c4ba
lea rdx, [rsi - 1]
mov rax, r8
sub rdx, r8
mov r10, rdx
shr r10, 2
add r10, 1
lea r9, [r8 + r10*4]
lea r11, [rcx + r10]
cmp rcx, r9
setae r9b
cmp r8, r11
setae r11b
or r9b, r11b
je 0x14011d1b0
cmp rdx, 0x3b
jbe 0x14011d1b0
mov r9, r10
movdqa xmm1, xmmword [0x1401c5470]
mov rdx, rcx
shr r9, 4
shl r9, 6
add r9, r8
nop dword [rax]
movdqu xmm5, xmmword [rax + 0x10]
movdqu xmm0, xmmword [rax]
add rax, 0x40
add rdx, 0x10
movdqa xmm2, xmm0
punpcklwd xmm0, xmm5
punpckhwd xmm2, xmm5
movdqa xmm3, xmm0
movdqu xmm5, xmmword [rax - 0x10]
punpckhwd xmm3, xmm2
punpcklwd xmm0, xmm2
movdqu xmm2, xmmword [rax - 0x20]
punpcklwd xmm0, xmm3
movdqa xmm3, xmm2
punpcklwd xmm2, xmm5
pand xmm0, xmm1
punpckhwd xmm3, xmm5
movdqa xmm4, xmm2
punpckhwd xmm4, xmm3
punpcklwd xmm2, xmm3
punpcklwd xmm2, xmm4
pand xmm2, xmm1
packuswb xmm0, xmm2
movups xmmword [rdx - 0x10], xmm0
cmp r9, rax
jne 0x14011cfe8
mov rdx, r10
and rdx, 0xfffffffffffffff0
lea rax, [r8 + rdx*4]
add rcx, rdx
cmp r10, rdx
je 0x14011c4ba
mov edx, dword [rax]
mov byte [rcx], dl
lea rdx, [rax + 4]
cmp rsi, rdx
jbe 0x14011c4ba
mov edx, dword [rax + 4]
mov byte [rcx + 1], dl
lea rdx, [rax + 8]
cmp rsi, rdx
jbe 0x14011c4ba
mov edx, dword [rax + 8]
mov byte [rcx + 2], dl
lea rdx, [rax + 0xc]
cmp rsi, rdx
jbe 0x14011c4ba
mov edx, dword [rax + 0xc]
mov byte [rcx + 3], dl
lea rdx, [rax + 0x10]
cmp rsi, rdx
jbe 0x14011c4ba
mov edx, dword [rax + 0x10]
mov byte [rcx + 4], dl
lea rdx, [rax + 0x14]
cmp rsi, rdx
jbe 0x14011c4ba
mov edx, dword [rax + 0x14]
mov byte [rcx + 5], dl
lea rdx, [rax + 0x18]
cmp rsi, rdx
jbe 0x14011c4ba
mov edx, dword [rax + 0x18]
mov byte [rcx + 6], dl
lea rdx, [rax + 0x1c]
cmp rsi, rdx
jbe 0x14011c4ba
mov edx, dword [rax + 0x1c]
mov byte [rcx + 7], dl
lea rdx, [rax + 0x20]
cmp rsi, rdx
jbe 0x14011c4ba
mov edx, dword [rax + 0x20]
mov byte [rcx + 8], dl
lea rdx, [rax + 0x24]
cmp rsi, rdx
jbe 0x14011c4ba
mov edx, dword [rax + 0x24]
mov byte [rcx + 9], dl
lea rdx, [rax + 0x28]
cmp rsi, rdx
jbe 0x14011c4ba
mov edx, dword [rax + 0x28]
mov byte [rcx + 0xa], dl
lea rdx, [rax + 0x2c]
cmp rsi, rdx
jbe 0x14011c4ba
mov edx, dword [rax + 0x2c]
mov byte [rcx + 0xb], dl
lea rdx, [rax + 0x30]
cmp rsi, rdx
jbe 0x14011c4ba
mov edx, dword [rax + 0x30]
mov byte [rcx + 0xc], dl
lea rdx, [rax + 0x34]
cmp rsi, rdx
jbe 0x14011c4ba
mov edx, dword [rax + 0x34]
mov byte [rcx + 0xd], dl
lea rdx, [rax + 0x38]
cmp rsi, rdx
jbe 0x14011c4ba
mov eax, dword [rax + 0x38]
mov byte [rcx + 0xe], al
jmp 0x14011c4ba
mov eax, dword [rdx]
add rdx, 0x10
add r11, 4
mov byte [r11 - 4], al
mov eax, dword [rdx - 0xc]
mov byte [r11 - 3], al
mov eax, dword [rdx - 8]
mov byte [r11 - 2], al
mov eax, dword [rdx - 4]
mov byte [r11 - 1], al
cmp rbp, rdx
ja 0x14011d180
jmp 0x14011cf81
mov eax, dword [r8]
add r8, 4
add rcx, 1
mov byte [rcx - 1], al
cmp rsi, r8
ja 0x14011d1b0
jmp 0x14011c4ba
mov r8, rdx
jmp 0x14011c315
xor eax, eax
nop word [rax + rax]
movzx edx, byte [r8 + rax]
mov dword [r11 + rax*4], edx
add rax, 1
cmp r9, rax
jne 0x14011d1e0
jmp 0x14011c4ba
test r8b, r8b
je 0x14011c4ba
test al, al
je 0x14011c4ba
lea rax, [r9*4]
lea rcx, [rbx + r10*2]
lea r8, [rdx + rax]
and rax, 0xfffffffffffffff0
lea r9, [rdx + rax]
cmp rdx, r9
jae 0x14011d2d7
sub rax, 1
mov r10, rax
shr r10, 4
add r10, 1
cmp rax, 0xf
jbe 0x14011d3ff
mov r9, r10
xor eax, eax
shr r9, 1
shl r9, 4
nop
movdqu xmm0, xmmword [rdx + rax*2]
movdqu xmm5, xmmword [rdx + rax*2 + 0x10]
movdqa xmm1, xmm0
punpcklwd xmm0, xmm5
punpckhwd xmm1, xmm5
movdqa xmm2, xmm0
punpckhwd xmm2, xmm1
punpcklwd xmm0, xmm1
punpcklwd xmm0, xmm2
movups xmmword [rcx + rax], xmm0
add rax, 0x10
cmp rax, r9
jne 0x14011d250
mov rax, r10
and rax, 0xfffffffffffffffe
mov r9, rax
lea rbx, [rcx + rax*8]
shl r9, 4
add r9, rdx
cmp r10, rax
je 0x14011d2c9
movzx eax, word [r9 + 0xc]
movzx r11d, word [r9 + 8]
shl rax, 0x10
or rax, r11
movzx r11d, word [r9 + 4]
movzx r9d, word [r9]
shl rax, 0x10
or rax, r11
shl rax, 0x10
or rax, r9
mov qword [rbx], rax
mov rax, r10
lea rcx, [rcx + r10*8]
shl rax, 4
add rdx, rax
cmp r8, rdx
jbe 0x14011c4ba
lea rax, [r8 - 1]
sub rax, rdx
mov r10, rax
shr r10, 2
add r10, 1
cmp rax, 0x1b
jbe 0x14011d354
mov r9, r10
xor eax, eax
shr r9, 3
shl r9, 4
nop dword [rax]
movdqu xmm0, xmmword [rdx + rax*2]
movdqu xmm5, xmmword [rdx + rax*2 + 0x10]
movdqa xmm1, xmm0
punpcklwd xmm0, xmm5
punpckhwd xmm1, xmm5
movdqa xmm2, xmm0
punpckhwd xmm2, xmm1
punpcklwd xmm0, xmm1
punpcklwd xmm0, xmm2
movups xmmword [rcx + rax], xmm0
add rax, 0x10
cmp rax, r9
jne 0x14011d308
mov rax, r10
and rax, 0xfffffffffffffff8
lea rdx, [rdx + rax*4]
lea rcx, [rcx + rax*2]
cmp r10, rax
je 0x14011c4ba
mov eax, dword [rdx]
mov word [rcx], ax
lea rax, [rdx + 4]
cmp r8, rax
jbe 0x14011c4ba
mov eax, dword [rdx + 4]
mov word [rcx + 2], ax
lea rax, [rdx + 8]
cmp r8, rax
jbe 0x14011c4ba
mov eax, dword [rdx + 8]
mov word [rcx + 4], ax
lea rax, [rdx + 0xc]
cmp r8, rax
jbe 0x14011c4ba
mov eax, dword [rdx + 0xc]
mov word [rcx + 6], ax
lea rax, [rdx + 0x10]
cmp r8, rax
jbe 0x14011c4ba
mov eax, dword [rdx + 0x10]
mov word [rcx + 8], ax
lea rax, [rdx + 0x14]
cmp r8, rax
jbe 0x14011c4ba
mov eax, dword [rdx + 0x14]
mov word [rcx + 0xa], ax
lea rax, [rdx + 0x18]
cmp r8, rax
jbe 0x14011c4ba
mov eax, dword [rdx + 0x18]
mov word [rcx + 0xc], ax
jmp 0x14011c4ba
mov r8, rdx
jmp 0x14011c61a
mov r11, rcx
mov rax, rdx
jmp 0x14011c90d
mov r8, r11
mov rcx, rdx
jmp 0x14011cb7b
mov rcx, r11
mov r8, rdx
jmp 0x14011cf81
mov rbx, rcx
mov r9, rdx
jmp 0x14011d29e