Function at 0x1401c45a0
Capabilities:
Enumerate pe sections

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
movzx edi, byte [r8 + 0x20]
mov eax, edi
mov r12d, edi
shr al, 2
mov r10, rdx
and eax, 7
and r12d, 0x20
je 0x1401c4908
lea rdx, [r8 + 0x30]
lea rbp, [r8 + 0x48]
test dil, 0x40
cmovne rbp, rdx
movzx r11d, byte [rcx + 0x20]
mov edx, r11d
mov r14d, r11d
shr dl, 2
and edx, 7
movzx esi, dl
and r14d, 0x20
je 0x1401c4918
test r11b, 0x40
je 0x1401c4cd0
lea r13, [rcx + 0x30]
mov rbx, r13
cmp eax, esi
je 0x1401c4d50
cmp eax, 1
sete dl
cmp esi, 2
sete bpl
jne 0x1401c4d90
test dl, dl
je 0x1401c4d90
lea rcx, [rbx + r10*2]
test r12b, r12b
jne 0x1401c4d78
mov rax, qword [r8 + 0x48]
lea r11, [rax + r9]
and r9, 0xfffffffffffffffc
lea r8, [rax + r9]
cmp rax, r8
jae 0x1401c478c
sub r9, 1
mov rdi, rax
cmp r9, 3
jbe 0x1401c5340
mov rbp, r9
shr rbp, 2
lea rsi, [rbp + 1]
lea rdx, [rsi*4]
lea r12, [r10 + rdx]
lea r12, [rbx + r12*2]
cmp rax, r12
jae 0x1401c468e
add rdx, rax
cmp rcx, rdx
jb 0x1401c5340
cmp r9, 0xb
jbe 0x1401c58bb
mov r8, rsi
xor edx, edx
pxor xmm1, xmm1
shr r8, 2
shl r8, 4
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop
movdqu xmm0, xmmword [rax + rdx]
movdqa xmm2, xmm0
punpckhbw xmm0, xmm1
punpcklbw xmm2, xmm1
movups xmmword [rcx + rdx*2 + 0x10], xmm0
movups xmmword [rcx + rdx*2], xmm2
add rdx, 0x10
cmp rdx, r8
jne 0x1401c46c0
test sil, 3
je 0x1401c4777
mov rdx, rsi
and rdx, 0xfffffffffffffffc
lea r13, [rdx*4]
lea r8, [rcx + rdx*8]
sub rsi, rdx
lea r12, [rax + r13]
cmp rbp, rdx
je 0x1401c474d
movq xmm0, qword [rax + rdx*4]
pxor xmm1, xmm1
add r13, r10
lea r10, [rbx + 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 0x1401c4777
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 rcx, [rcx + rax*8 + 8]
lea rax, [rdi + r9 + 4]
cmp rax, r11
jae 0x1401c48f6
mov r9, r11
sub r9, rax
lea rdx, [r9 - 1]
cmp rdx, 6
jbe 0x1401c5318
lea r8, [rcx + r9*2]
cmp rax, r8
jae 0x1401c47bb
cmp rcx, r11
jb 0x1401c5318
cmp rdx, 0xe
jbe 0x1401c58ad
mov r10, r9
mov r8, r9
pxor xmm1, xmm1
xor edx, edx
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 [rax + rdx]
movdqa xmm2, xmm0
punpckhbw xmm0, xmm1
punpcklbw xmm2, xmm1
movups xmmword [rcx + rdx*2 + 0x10], xmm0
movups xmmword [rcx + rdx*2], xmm2
add rdx, 0x10
cmp r8, rdx
jne 0x1401c4800
mov rdx, r10
lea r10, [rax + r8]
shl rdx, 5
add rdx, rcx
cmp r9, r8
je 0x1401c48f6
sub r9, r8
lea rbx, [r9 - 1]
cmp rbx, 6
jbe 0x1401c4883
movq xmm0, qword [rax + r8]
pxor xmm1, xmm1
mov rax, r9
lea rcx, [rcx + r8*2]
and rax, 0xfffffffffffffff8
movdqa xmm2, xmm0
punpcklbw xmm0, xmm1
lea rdx, [rdx + rax*2]
add r10, rax
punpcklbw xmm2, xmm1
pshufd xmm0, xmm0, 0x4e
and r9d, 7
movq qword [rcx], xmm2
movq qword [rcx + 8], xmm0
je 0x1401c48f6
movzx eax, byte [r10]
mov word [rdx], ax
lea rax, [r10 + 1]
cmp rax, r11
jae 0x1401c48f6
movzx eax, byte [r10 + 1]
mov word [rdx + 2], ax
lea rax, [r10 + 2]
cmp rax, r11
jae 0x1401c48f6
movzx eax, byte [r10 + 2]
mov word [rdx + 4], ax
lea rax, [r10 + 3]
cmp rax, r11
jae 0x1401c48f6
movzx eax, byte [r10 + 3]
mov word [rdx + 6], ax
lea rax, [r10 + 4]
cmp rax, r11
jae 0x1401c48f6
movzx eax, byte [r10 + 4]
mov word [rdx + 8], ax
lea rax, [r10 + 5]
cmp rax, r11
jae 0x1401c48f6
movzx eax, byte [r10 + 5]
mov word [rdx + 0xa], ax
lea rax, [r10 + 6]
cmp rax, r11
jae 0x1401c48f6
movzx eax, byte [r10 + 6]
mov word [rdx + 0xc], ax
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rbp, qword [r8 + 0x48]
jmp 0x1401c45d9
mov r13, qword [rcx + 0x48]
mov rbx, r13
cmp eax, esi
je 0x1401c4d50
cmp eax, 1
sete dl
cmp esi, 2
sete bpl
test dl, dl
je 0x1401c4941
test bpl, bpl
jne 0x1401c462b
cmp esi, 4
sete r15b
jne 0x1401c4fd0
test dl, dl
je 0x1401c4fd0
lea r11, [rbx + r10*4]
test r12b, r12b
je 0x1401c4fc0
lea rcx, [r8 + 0x30]
lea rdx, [r8 + 0x48]
and edi, 0x40
cmovne rdx, rcx
lea rsi, [rdx + r9]
and r9, 0xfffffffffffffffc
lea r8, [rdx + r9]
cmp rdx, r8
jae 0x1401c4b16
sub r9, 1
mov rdi, rdx
cmp r9, 3
jbe 0x1401c5856
mov r12, r9
shr r12, 2
lea rbp, [r12 + 1]
lea rax, [rbp*4]
lea rcx, [r10 + rax]
lea rcx, [rbx + rcx*4]
cmp rdx, rcx
jae 0x1401c49c5
add rax, rdx
cmp r11, rax
jb 0x1401c5856
cmp r9, 0xb
jbe 0x1401c58d4
mov r8, rbp
mov rax, r11
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 0x1401c49f0
mov rax, rbp
and rax, 0xfffffffffffffffc
mov rcx, rax
lea r13, [rax*4]
shl rcx, 4
lea r8, [rdx + r13]
add rcx, r11
test bpl, 3
je 0x1401c4afb
sub rbp, rax
cmp r12, rax
je 0x1401c4add
movq xmm0, qword [rdx + rax*4]
pxor xmm1, xmm1
add r13, r10
lea r10, [rbx + 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 0x1401c4afb
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 r11, rax
cmp rdx, rsi
jae 0x1401c48f6
mov r9, rsi
mov rcx, rdx
sub r9, rdx
lea rax, [r9 - 1]
cmp rax, 6
jbe 0x1401c5838
lea r8, [r11 + r9*4]
cmp rdx, r8
jae 0x1401c4b48
cmp r11, rsi
jb 0x1401c5838
cmp rax, 0xe
jbe 0x1401c58e4
mov r10, r9
mov rbx, r9
pxor xmm3, xmm3
mov rax, r11
and r10, 0xfffffffffffffff0
shr rbx, 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 0x1401c4b70
mov rax, rbx
shl rax, 6
add rax, r11
cmp r9, r10
je 0x1401c48f6
sub r9, r10
lea rcx, [r9 - 1]
cmp rcx, 6
jbe 0x1401c4c45
movq xmm0, qword [rdx + r10]
pxor xmm1, xmm1
lea rcx, [r11 + 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 0x1401c48f6
movzx edx, byte [r8]
mov dword [rax], edx
lea rdx, [r8 + 1]
cmp rdx, rsi
jae 0x1401c48f6
movzx edx, byte [r8 + 1]
mov dword [rax + 4], edx
lea rdx, [r8 + 2]
cmp rdx, rsi
jae 0x1401c48f6
movzx edx, byte [r8 + 2]
mov dword [rax + 8], edx
lea rdx, [r8 + 3]
cmp rdx, rsi
jae 0x1401c48f6
movzx edx, byte [r8 + 3]
mov dword [rax + 0xc], edx
lea rdx, [r8 + 4]
cmp rdx, rsi
jae 0x1401c48f6
movzx edx, byte [r8 + 4]
mov dword [rax + 0x10], edx
lea rdx, [r8 + 5]
cmp rdx, rsi
jae 0x1401c48f6
movzx edx, byte [r8 + 5]
mov dword [rax + 0x14], edx
lea rdx, [r8 + 6]
cmp rdx, rsi
jae 0x1401c48f6
movzx edx, byte [r8 + 6]
mov dword [rax + 0x18], edx
jmp 0x1401c48f6
lea r13, [rcx + 0x48]
mov rbx, r13
cmp eax, esi
je 0x1401c4d50
cmp eax, 1
sete dl
cmp esi, 2
sete bpl
test dl, dl
je 0x1401c4cf5
test bpl, bpl
jne 0x1401c462b
cmp esi, 4
sete r15b
test dl, dl
je 0x1401c4d0c
mov rbx, r13
test r15b, r15b
jne 0x1401c4956
cmp eax, 2
sete dl
test r15b, r15b
je 0x1401c4d1f
test dl, dl
jne 0x1401c4dbc
cmp esi, 1
sete bl
jne 0x1401c5410
test dl, dl
je 0x1401c5410
lea rax, [rcx + 0x30]
lea r13, [rcx + 0x48]
and r11d, 0x40
cmovne r13, rax
jmp 0x1401c4ffa
movzx r8d, dl
mov rdx, rbp
imul r10, r8
imul r8, r9
lea rcx, [rbx + r10]
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sub.msvcrt.dll_memcpy
lea r11, [r8 + 0x30]
lea rax, [r8 + 0x48]
and edi, 0x40
cmovne rax, r11
jmp 0x1401c463c
cmp esi, 4
sete r15b
test dl, dl
je 0x1401c4da7
mov rbx, r13
test r15b, r15b
jne 0x1401c4956
cmp eax, 2
sete dl
jne 0x1401c53f8
test r15b, r15b
je 0x1401c53f8
mov rbx, r13
lea rdx, [rbx + r10*4]
test r12b, r12b
jne 0x1401c53c0
mov r8, qword [r8 + 0x48]
lea rcx, [r9 + r9]
lea rsi, [r8 + rcx]
and rcx, 0xfffffffffffffff8
lea rax, [r8 + rcx]
cmp r8, rax
jae 0x1401c4ead
sub rcx, 1
mov r11, rcx
shr r11, 3
add r11, 1
cmp rcx, 7
jbe 0x1401c5b82
mov r9, r11
xor eax, eax
pxor xmm1, xmm1
shr r9, 1
shl r9, 4
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop
movdqu xmm0, xmmword [r8 + rax]
movdqa xmm2, xmm0
punpckhwd xmm0, xmm1
punpcklwd xmm2, xmm1
movups xmmword [rdx + rax*2 + 0x10], xmm0
movups xmmword [rdx + rax*2], xmm2
add rax, 0x10
cmp rax, r9
jne 0x1401c4e40
test r11b, 1
je 0x1401c4e9d
mov r9, r11
and r9, 0xfffffffffffffffe
movq xmm0, qword [r8 + r9*8]
pxor xmm1, xmm1
lea rax, [r10 + r9*4]
lea rax, [rbx + 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 r11, 4
and rcx, 0xfffffffffffffff8
add rdx, r11
lea r8, [r8 + rcx + 8]
cmp r8, rsi
jae 0x1401c48f6
lea rax, [rsi - 1]
sub rax, r8
mov r9, rax
shr r9, 1
lea r10, [r9 + 1]
cmp rax, 0xd
jbe 0x1401c5b75
mov rcx, r10
xor eax, eax
pxor xmm1, xmm1
shr rcx, 3
shl rcx, 4
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop dword [rax + rax]
movdqu xmm0, xmmword [r8 + rax]
movdqa xmm2, xmm0
punpckhwd xmm0, xmm1
punpcklwd xmm2, xmm1
movups xmmword [rdx + rax*2 + 0x10], xmm0
movups xmmword [rdx + rax*2], xmm2
add rax, 0x10
cmp rax, rcx
jne 0x1401c4f00
mov rax, r10
and rax, 0xfffffffffffffff8
and r10d, 7
lea rbx, [rdx + rax*4]
lea r11, [r8 + rax*2]
je 0x1401c48f6
sub r9, rax
lea rcx, [r9 + 1]
cmp r9, 2
jbe 0x1401c4f87
movq xmm0, qword [r8 + rax*2]
pxor xmm1, xmm1
lea rdx, [rdx + rax*4]
movdqa xmm2, xmm0
punpcklwd xmm0, xmm1
punpcklwd xmm2, xmm1
pshufd xmm0, xmm0, 0x4e
movq qword [rdx], xmm2
movq qword [rdx + 8], xmm0
test cl, 3
je 0x1401c48f6
and rcx, 0xfffffffffffffffc
lea rbx, [rbx + rcx*4]
lea r11, [r11 + rcx*2]
movzx eax, word [r11]
mov dword [rbx], eax
lea rax, [r11 + 2]
cmp rax, rsi
jae 0x1401c48f6
movzx eax, word [r11 + 2]
mov dword [rbx + 4], eax
lea rax, [r11 + 4]
cmp rax, rsi
jae 0x1401c48f6
movzx eax, word [r11 + 4]
mov dword [rbx + 8], eax
jmp 0x1401c48f6
mov rdx, qword [r8 + 0x48]
jmp 0x1401c4972
cmp eax, 2
sete dl
test r15b, r15b
je 0x1401c4fe6
mov rbx, r13
test dl, dl
jne 0x1401c4dbf
cmp esi, 1
sete bl
jne 0x1401c5410
test dl, dl
je 0x1401c5410
lea rcx, [r13 + r10]
test r12b, r12b
je 0x1401c58cb
lea rax, [r8 + 0x30]
lea rdx, [r8 + 0x48]
and edi, 0x40
cmovne rdx, rax
add r9, r9
lea r11, [rdx + r9]
and r9, 0xfffffffffffffff8
lea r8, [rdx + r9]
cmp rdx, r8
jae 0x1401c518a
sub r9, 1
mov rbx, rdx
cmp r9, 7
jbe 0x1401c5b22
mov rdi, r9
shr rdi, 3
lea rsi, [rdi + 1]
lea rax, [r10 + rsi*4]
add rax, r13
cmp rdx, rax
jae 0x1401c5064
lea rax, [rdx + rsi*8]
cmp rcx, rax
jb 0x1401c5b22
cmp r9, 0x17
jbe 0x1401c5bfe
mov r8, rsi
mov r15d, 0xff00ff
xor eax, eax
shr r8, 2
movd xmm2, r15d
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 0x1401c50c0
mov r14, rsi
and r14, 0xfffffffffffffffc
lea r12, [r14*4]
lea rax, [r14*8]
lea r8, [rcx + r12]
lea rbp, [rdx + rax]
test sil, 3
je 0x1401c5175
sub rsi, r14
cmp rdi, r14
je 0x1401c5156
movq xmm1, qword [0x1402779b0]
add rax, rdx
add r13, r12
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 + r10], xmm0
test sil, 1
je 0x1401c5175
mov rax, rsi
and rax, 0xfffffffffffffffe
lea r8, [r8 + rax*4]
lea rbp, [rbp + rax*8]
movzx eax, word [rbp]
mov byte [r8], al
movzx eax, word [rbp + 2]
mov byte [r8 + 1], al
movzx eax, word [rbp + 4]
mov byte [r8 + 2], al
movzx eax, word [rbp + 6]
mov byte [r8 + 3], al
mov rax, r9
and r9, 0xfffffffffffffff8
shr rax, 3
lea rdx, [rbx + r9 + 8]
lea rcx, [rcx + rax*4 + 4]
cmp rdx, r11
jae 0x1401c48f6
lea rax, [r11 - 1]
sub rax, rdx
cmp rax, 0xd
jbe 0x1401c53e0
mov r8, rax
shr r8, 1
lea r9, [r8 + 1]
lea r10, [rdx + r9*2]
cmp rcx, r10
jae 0x1401c51c4
lea r10, [rcx + r9]
cmp rdx, r10
jb 0x1401c53e0
cmp rax, 0x1d
jbe 0x1401c5bf1
mov rsi, r9
mov rbx, r9
mov edi, 0xff00ff
xor eax, eax
movd xmm2, edi
shr rsi, 4
and rbx, 0xfffffffffffffff0
pshufd xmm2, xmm2, 0
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 rbx, rax
jne 0x1401c5200
mov rax, rsi
lea r10, [rcx + rbx]
shl rax, 5
add rax, rdx
cmp rbx, r9
je 0x1401c48f6
sub r8, rbx
lea r9, [r8 + 1]
cmp r8, 6
jbe 0x1401c528b
movq xmm1, qword [0x1402779b0]
lea rdx, [rdx + rbx*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 + rbx], xmm0
je 0x1401c48f6
movzx edx, word [rax]
mov byte [r10], dl
lea rdx, [rax + 2]
cmp rdx, r11
jae 0x1401c48f6
movzx edx, word [rax + 2]
mov byte [r10 + 1], dl
lea rdx, [rax + 4]
cmp rdx, r11
jae 0x1401c48f6
movzx edx, word [rax + 4]
mov byte [r10 + 2], dl
lea rdx, [rax + 6]
cmp rdx, r11
jae 0x1401c48f6
movzx edx, word [rax + 6]
mov byte [r10 + 3], dl
lea rdx, [rax + 8]
cmp rdx, r11
jae 0x1401c48f6
movzx edx, word [rax + 8]
mov byte [r10 + 4], dl
lea rdx, [rax + 0xa]
cmp rdx, r11
jae 0x1401c48f6
movzx edx, word [rax + 0xa]
mov byte [r10 + 5], dl
lea rdx, [rax + 0xc]
cmp rdx, r11
jae 0x1401c48f6
movzx eax, word [rax + 0xc]
mov byte [r10 + 6], al
jmp 0x1401c48f6
xor edx, edx
nop word [rax + rax]
movzx r8d, byte [rax + rdx]
mov word [rcx + rdx*2], r8w
add rdx, 1
cmp r9, rdx
jne 0x1401c5320
jmp 0x1401c48f6
mov rdx, 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 [rax]
add rax, 4
add rdx, 8
mov word [rdx - 8], r10w
movzx r10d, byte [rax - 3]
mov word [rdx - 6], r10w
movzx r10d, byte [rax - 2]
mov word [rdx - 4], r10w
movzx r10d, byte [rax - 1]
mov word [rdx - 2], r10w
cmp rax, r8
jb 0x1401c5380
jmp 0x1401c4777
lea rax, [r8 + 0x30]
add r8, 0x48
and edi, 0x40
cmovne r8, rax
jmp 0x1401c4dd0
movzx eax, word [rdx]
add rdx, 2
add rcx, 1
mov byte [rcx - 1], al
cmp rdx, r11
jb 0x1401c53e0
jmp 0x1401c48f6
cmp esi, 1
sete bl
test dl, dl
je 0x1401c5410
test bl, bl
jne 0x1401c4d33
nop word [rax + rax]
cmp eax, 4
jne 0x1401c48f6
test bl, bl
je 0x1401c58f2
test r14b, r14b
je 0x1401c5b19
lea rax, [rcx + 0x30]
add rcx, 0x48
and r11d, 0x40
cmove rax, rcx
mov rsi, rax
lea r11, [rsi + r10]
test r12b, r12b
je 0x1401c5b10
lea rax, [r8 + 0x30]
lea rdx, [r8 + 0x48]
and edi, 0x40
cmovne rdx, rax
shl r9, 2
lea rbx, [rdx + r9]
and r9, 0xfffffffffffffff0
lea rcx, [rdx + r9]
cmp rdx, rcx
jae 0x1401c5621
sub r9, 1
mov rbp, rdx
cmp r9, 0xf
jbe 0x1401c5b9c
mov r12, r9
shr r12, 4
lea rdi, [r12 + 1]
lea rax, [r10 + rdi*4]
add rax, rsi
cmp rdx, rax
jae 0x1401c54ae
mov rax, rdi
shl rax, 4
add rax, rdx
cmp r11, rax
jb 0x1401c5b9c
cmp r9, 0x2f
jbe 0x1401c5c1d
mov r8, rdi
mov r15d, 0xff00ff
mov rcx, r11
mov rax, rdx
shr r8, 2
movd xmm4, r15d
shl r8, 6
pshufd xmm4, xmm4, 0
add r8, 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, r8
jne 0x1401c54e0
test dil, 3
je 0x1401c560c
mov rax, rdi
and rax, 0xfffffffffffffffc
mov rcx, rax
lea r13, [rax*4]
sub rdi, rax
shl rcx, 4
lea r8, [r11 + r13]
add rcx, rdx
cmp r12, rax
je 0x1401c55f2
shl rax, 4
add rsi, r13
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 [0x1402779b0]
pshufd xmm3, xmm3, 0x4e
punpcklwd xmm1, xmm3
pand xmm0, xmm2
pand xmm2, xmm1
packuswb xmm0, xmm2
pshufd xmm0, xmm0, 8
movq qword [rsi + r10], xmm0
test dil, 1
je 0x1401c560c
and rdi, 0xfffffffffffffffe
lea r8, [r8 + rdi*4]
shl rdi, 4
add rcx, rdi
mov eax, dword [rcx]
mov byte [r8], al
mov eax, dword [rcx + 4]
mov byte [r8 + 1], al
mov eax, dword [rcx + 8]
mov byte [r8 + 2], al
mov eax, dword [rcx + 0xc]
mov byte [r8 + 3], al
mov rax, r9
and r9, 0xfffffffffffffff0
shr rax, 4
lea rdx, [rbp + r9 + 0x10]
lea r11, [r11 + rax*4 + 4]
cmp rdx, rbx
jae 0x1401c48f6
lea rcx, [rbx - 1]
mov rax, rdx
sub rcx, rdx
cmp rcx, 0x1b
jbe 0x1401c5820
mov r10, rcx
shr r10, 2
lea r9, [r10 + 1]
lea r8, [rdx + r9*4]
cmp r11, r8
jae 0x1401c565f
lea r8, [r11 + r9]
cmp rdx, r8
jb 0x1401c5820
cmp rcx, 0x3b
jbe 0x1401c5c0e
mov r8, r9
mov edi, 0xff00ff
mov rcx, r11
shr r8, 4
movd xmm4, edi
shl r8, 6
pshufd xmm4, xmm4, 0
add r8, rdx
nop dword [rax + 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 r8, rax
jne 0x1401c5690
mov rsi, r9
and rsi, 0xfffffffffffffff0
and r9d, 0xf
lea rax, [rsi*4]
lea r8, [r11 + rsi]
lea rcx, [rdx + rax]
je 0x1401c48f6
sub r10, rsi
lea r9, [r10 + 1]
cmp r10, 6
jbe 0x1401c579d
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, r9
and rax, 0xfffffffffffffff8
punpcklwd xmm3, xmm2
punpcklwd xmm1, xmm2
lea rcx, [rcx + rax*4]
add r8, rax
movq xmm2, qword [0x1402779b0]
pshufd xmm3, xmm3, 0x4e
and r9d, 7
punpcklwd xmm1, xmm3
pand xmm0, xmm2
pand xmm2, xmm1
packuswb xmm0, xmm2
pshufd xmm0, xmm0, 8
movq qword [r11 + rsi], xmm0
je 0x1401c48f6
mov eax, dword [rcx]
mov byte [r8], al
lea rax, [rcx + 4]
cmp rax, rbx
jae 0x1401c48f6
mov eax, dword [rcx + 4]
mov byte [r8 + 1], al
lea rax, [rcx + 8]
cmp rax, rbx
jae 0x1401c48f6
mov eax, dword [rcx + 8]
mov byte [r8 + 2], al
lea rax, [rcx + 0xc]
cmp rax, rbx
jae 0x1401c48f6
mov eax, dword [rcx + 0xc]
mov byte [r8 + 3], al
lea rax, [rcx + 0x10]
cmp rax, rbx
jae 0x1401c48f6
mov eax, dword [rcx + 0x10]
mov byte [r8 + 4], al
lea rax, [rcx + 0x14]
cmp rax, rbx
jae 0x1401c48f6
mov eax, dword [rcx + 0x14]
mov byte [r8 + 5], al
lea rax, [rcx + 0x18]
cmp rax, rbx
jae 0x1401c48f6
mov eax, dword [rcx + 0x18]
mov byte [r8 + 6], al
jmp 0x1401c48f6
mov eax, dword [rdx]
add rdx, 4
add r11, 1
mov byte [r11 - 1], al
cmp rdx, rbx
jb 0x1401c5820
jmp 0x1401c48f6
xor eax, eax
nop word [rax + rax]
movzx ecx, byte [rdx + rax]
mov dword [r11 + rax*4], ecx
add rax, 1
cmp r9, rax
jne 0x1401c5840
jmp 0x1401c48f6
mov rax, r11
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word [rax + 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 0x1401c5880
jmp 0x1401c4afb
mov rdx, rcx
mov r10, rax
xor r8d, r8d
jmp 0x1401c4847
mov r8, rcx
mov r12, rax
xor edx, edx
xor r13d, r13d
jmp 0x1401c470c
mov rdx, qword [r8 + 0x48]
jmp 0x1401c5017
mov rcx, r11
mov r8, rdx
xor eax, eax
xor r13d, r13d
jmp 0x1401c4a64
mov rax, r11
mov r8, rdx
xor r10d, r10d
jmp 0x1401c4bd5
test bpl, bpl
je 0x1401c48f6
test r14b, r14b
je 0x1401c5b93
lea rax, [rcx + 0x30]
add rcx, 0x48
and r11d, 0x40
cmove rax, rcx
mov rbx, rax
lea rcx, [rbx + r10*2]
test r12b, r12b
je 0x1401c5b8a
lea rax, [r8 + 0x30]
lea rdx, [r8 + 0x48]
and edi, 0x40
cmovne rdx, rax
lea r8, [r9*4]
lea rsi, [rdx + r8]
and r8, 0xfffffffffffffff0
lea rax, [rdx + r8]
cmp rdx, rax
jae 0x1401c59ff
sub r8, 1
mov r11, r8
shr r11, 4
add r11, 1
cmp r8, 0xf
jbe 0x1401c5c3b
mov r9, r11
xor eax, eax
shr r9, 1
shl r9, 4
nop word cs:[rax + 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 [rcx + rax], xmm0
add rax, 0x10
cmp rax, r9
jne 0x1401c5980
test r11b, 1
je 0x1401c59f2
mov r9, r11
and r9, 0xfffffffffffffffe
mov rax, r9
shl rax, 4
add rax, rdx
movq xmm0, qword [rax]
movq xmm1, qword [rax + 8]
lea rax, [r10 + r9*4]
movdqa xmm2, xmm0
punpcklwd xmm0, xmm1
punpcklwd xmm2, xmm1
pshufd xmm2, xmm2, 0x4e
punpcklwd xmm0, xmm2
movq qword [rbx + rax*2], xmm0
and r8, 0xfffffffffffffff0
lea rcx, [rcx + r11*8]
lea rdx, [rdx + r8 + 0x10]
cmp rdx, rsi
jae 0x1401c48f6
lea rax, [rsi - 1]
sub rax, rdx
mov r9, rax
shr r9, 2
lea r11, [r9 + 1]
cmp rax, 0x1b
jbe 0x1401c5c2d
mov r8, r11
xor eax, eax
shr r8, 3
shl r8, 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 [rcx + rax], xmm0
add rax, 0x10
cmp rax, r8
jne 0x1401c5a40
mov r8, r11
and r8, 0xfffffffffffffff8
and r11d, 7
lea r10, [rcx + r8*2]
lea rax, [rdx + r8*4]
je 0x1401c48f6
sub r9, r8
lea r11, [r9 + 1]
cmp r9, 2
jbe 0x1401c5adb
lea rdx, [rdx + r8*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 [rcx + r8*2], xmm0
je 0x1401c48f6
mov edx, dword [rax]
mov word [r10], dx
lea rdx, [rax + 4]
cmp rdx, rsi
jae 0x1401c48f6
mov edx, dword [rax + 4]
mov word [r10 + 2], dx
lea rdx, [rax + 8]
cmp rdx, rsi
jae 0x1401c48f6
mov eax, dword [rax + 8]
mov word [r10 + 4], ax
jmp 0x1401c48f6
mov rdx, qword [r8 + 0x48]
jmp 0x1401c5459
mov rsi, qword [rcx + 0x48]
jmp 0x1401c543d
mov rax, rcx
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop dword [rax + 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 0x1401c5b40
jmp 0x1401c5175
mov rbx, rdx
mov r11, r8
xor eax, eax
jmp 0x1401c4f3d
xor r9d, r9d
jmp 0x1401c4e71
mov rdx, qword [r8 + 0x48]
jmp 0x1401c5933
mov rbx, qword [rcx + 0x48]
jmp 0x1401c5917
mov rax, r11
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
mov r8d, dword [rdx]
add rdx, 0x10
add rax, 4
mov byte [rax - 4], r8b
mov r8d, dword [rdx - 0xc]
mov byte [rax - 3], r8b
mov r8d, dword [rdx - 8]
mov byte [rax - 2], r8b
mov r8d, dword [rdx - 4]
mov byte [rax - 1], r8b
cmp rdx, rcx
jb 0x1401c5bc0
jmp 0x1401c560c
mov r10, rcx
mov rax, rdx
xor ebx, ebx
jmp 0x1401c5248
mov r8, rcx
mov rbp, rdx
xor r12d, r12d
xor eax, eax
jmp 0x1401c5111
mov r8, r11
mov rcx, rdx
xor esi, esi
xor eax, eax
jmp 0x1401c5726
mov r8, r11
mov rcx, rdx
xor eax, eax
xor r13d, r13d
jmp 0x1401c5577
mov r10, rcx
mov rax, rdx
xor r8d, r8d
jmp 0x1401c5a8d
xor r9d, r9d
jmp 0x1401c59c1