Function at 0x1400289d0
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 0x140028d48
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 0x140028d58
test r11b, 0x40
je 0x140029110
lea r13, [rcx + 0x30]
mov rbx, r13
cmp eax, esi
je 0x140029190
cmp eax, 1
sete dl
cmp esi, 2
sete bpl
jne 0x1400291d0
test dl, dl
je 0x1400291d0
lea rcx, [rbx + r10*2]
test r12b, r12b
jne 0x1400291b8
mov rax, qword [r8 + 0x48]
lea r11, [rax + r9]
and r9, 0xfffffffffffffffc
lea r8, [rax + r9]
cmp rax, r8
jae 0x140028bcc
sub r9, 1
mov rdi, rax
cmp r9, 3
jbe 0x140029780
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 0x140028abe
add rdx, rax
cmp rcx, rdx
jb 0x140029780
cmp r9, 0xb
jbe 0x140029cfb
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 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 rdx, r8
jne 0x140028b00
test sil, 3
je 0x140028bb7
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 0x140028b8d
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 0x140028bb7
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 0x140028d36
mov r9, r11
sub r9, rax
lea rdx, [r9 - 1]
cmp rdx, 6
jbe 0x140029758
lea r8, [rcx + r9*2]
cmp rax, r8
jae 0x140028bfb
cmp rcx, r11
jb 0x140029758
cmp rdx, 0xe
jbe 0x140029ced
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 0x140028c40
mov rdx, r10
lea r10, [rax + r8]
shl rdx, 5
add rdx, rcx
cmp r9, r8
je 0x140028d36
sub r9, r8
lea rbx, [r9 - 1]
cmp rbx, 6
jbe 0x140028cc3
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 0x140028d36
movzx eax, byte [r10]
mov word [rdx], ax
lea rax, [r10 + 1]
cmp rax, r11
jae 0x140028d36
movzx eax, byte [r10 + 1]
mov word [rdx + 2], ax
lea rax, [r10 + 2]
cmp rax, r11
jae 0x140028d36
movzx eax, byte [r10 + 2]
mov word [rdx + 4], ax
lea rax, [r10 + 3]
cmp rax, r11
jae 0x140028d36
movzx eax, byte [r10 + 3]
mov word [rdx + 6], ax
lea rax, [r10 + 4]
cmp rax, r11
jae 0x140028d36
movzx eax, byte [r10 + 4]
mov word [rdx + 8], ax
lea rax, [r10 + 5]
cmp rax, r11
jae 0x140028d36
movzx eax, byte [r10 + 5]
mov word [rdx + 0xa], ax
lea rax, [r10 + 6]
cmp rax, r11
jae 0x140028d36
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 0x140028a09
mov r13, qword [rcx + 0x48]
mov rbx, r13
cmp eax, esi
je 0x140029190
cmp eax, 1
sete dl
cmp esi, 2
sete bpl
test dl, dl
je 0x140028d81
test bpl, bpl
jne 0x140028a5b
cmp esi, 4
sete r15b
jne 0x140029410
test dl, dl
je 0x140029410
lea r11, [rbx + r10*4]
test r12b, r12b
je 0x140029400
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 0x140028f56
sub r9, 1
mov rdi, rdx
cmp r9, 3
jbe 0x140029c96
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 0x140028e05
add rax, rdx
cmp r11, rax
jb 0x140029c96
cmp r9, 0xb
jbe 0x140029d14
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 0x140028e30
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 0x140028f3b
sub rbp, rax
cmp r12, rax
je 0x140028f1d
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 0x140028f3b
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 0x140028d36
mov r9, rsi
mov rcx, rdx
sub r9, rdx
lea rax, [r9 - 1]
cmp rax, 6
jbe 0x140029c78
lea r8, [r11 + r9*4]
cmp rdx, r8
jae 0x140028f88
cmp r11, rsi
jb 0x140029c78
cmp rax, 0xe
jbe 0x140029d24
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 0x140028fb0
mov rax, rbx
shl rax, 6
add rax, r11
cmp r9, r10
je 0x140028d36
sub r9, r10
lea rcx, [r9 - 1]
cmp rcx, 6
jbe 0x140029085
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 0x140028d36
movzx edx, byte [r8]
mov dword [rax], edx
lea rdx, [r8 + 1]
cmp rdx, rsi
jae 0x140028d36
movzx edx, byte [r8 + 1]
mov dword [rax + 4], edx
lea rdx, [r8 + 2]
cmp rdx, rsi
jae 0x140028d36
movzx edx, byte [r8 + 2]
mov dword [rax + 8], edx
lea rdx, [r8 + 3]
cmp rdx, rsi
jae 0x140028d36
movzx edx, byte [r8 + 3]
mov dword [rax + 0xc], edx
lea rdx, [r8 + 4]
cmp rdx, rsi
jae 0x140028d36
movzx edx, byte [r8 + 4]
mov dword [rax + 0x10], edx
lea rdx, [r8 + 5]
cmp rdx, rsi
jae 0x140028d36
movzx edx, byte [r8 + 5]
mov dword [rax + 0x14], edx
lea rdx, [r8 + 6]
cmp rdx, rsi
jae 0x140028d36
movzx edx, byte [r8 + 6]
mov dword [rax + 0x18], edx
jmp 0x140028d36
lea r13, [rcx + 0x48]
mov rbx, r13
cmp eax, esi
je 0x140029190
cmp eax, 1
sete dl
cmp esi, 2
sete bpl
test dl, dl
je 0x140029135
test bpl, bpl
jne 0x140028a5b
cmp esi, 4
sete r15b
test dl, dl
je 0x14002914c
mov rbx, r13
test r15b, r15b
jne 0x140028d96
cmp eax, 2
sete dl
test r15b, r15b
je 0x14002915f
test dl, dl
jne 0x1400291fc
cmp esi, 1
sete bl
jne 0x140029850
test dl, dl
je 0x140029850
lea rax, [rcx + 0x30]
lea r13, [rcx + 0x48]
and r11d, 0x40
cmovne r13, rax
jmp 0x14002943a
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 0x140028a6c
cmp esi, 4
sete r15b
test dl, dl
je 0x1400291e7
mov rbx, r13
test r15b, r15b
jne 0x140028d96
cmp eax, 2
sete dl
jne 0x140029838
test r15b, r15b
je 0x140029838
mov rbx, r13
lea rdx, [rbx + r10*4]
test r12b, r12b
jne 0x140029800
mov r8, qword [r8 + 0x48]
lea rcx, [r9 + r9]
lea rsi, [r8 + rcx]
and rcx, 0xfffffffffffffff8
lea rax, [r8 + rcx]
cmp r8, rax
jae 0x1400292ed
sub rcx, 1
mov r11, rcx
shr r11, 3
add r11, 1
cmp rcx, 7
jbe 0x140029fc2
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 0x140029280
test r11b, 1
je 0x1400292dd
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 0x140028d36
lea rax, [rsi - 1]
sub rax, r8
mov r9, rax
shr r9, 1
lea r10, [r9 + 1]
cmp rax, 0xd
jbe 0x140029fb5
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 0x140029340
mov rax, r10
and rax, 0xfffffffffffffff8
and r10d, 7
lea rbx, [rdx + rax*4]
lea r11, [r8 + rax*2]
je 0x140028d36
sub r9, rax
lea rcx, [r9 + 1]
cmp r9, 2
jbe 0x1400293c7
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 0x140028d36
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 0x140028d36
movzx eax, word [r11 + 2]
mov dword [rbx + 4], eax
lea rax, [r11 + 4]
cmp rax, rsi
jae 0x140028d36
movzx eax, word [r11 + 4]
mov dword [rbx + 8], eax
jmp 0x140028d36
mov rdx, qword [r8 + 0x48]
jmp 0x140028db2
cmp eax, 2
sete dl
test r15b, r15b
je 0x140029426
mov rbx, r13
test dl, dl
jne 0x1400291ff
cmp esi, 1
sete bl
jne 0x140029850
test dl, dl
je 0x140029850
lea rcx, [r13 + r10]
test r12b, r12b
je 0x140029d0b
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 0x1400295ca
sub r9, 1
mov rbx, rdx
cmp r9, 7
jbe 0x140029f62
mov rdi, r9
shr rdi, 3
lea rsi, [rdi + 1]
lea rax, [r10 + rsi*4]
add rax, r13
cmp rdx, rax
jae 0x1400294a4
lea rax, [rdx + rsi*8]
cmp rcx, rax
jb 0x140029f62
cmp r9, 0x17
jbe 0x14002a03e
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 0x140029500
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 0x1400295b5
sub rsi, r14
cmp rdi, r14
je 0x140029596
movq xmm1, qword [0x14004c460]
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 0x1400295b5
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 0x140028d36
lea rax, [r11 - 1]
sub rax, rdx
cmp rax, 0xd
jbe 0x140029820
mov r8, rax
shr r8, 1
lea r9, [r8 + 1]
lea r10, [rdx + r9*2]
cmp rcx, r10
jae 0x140029604
lea r10, [rcx + r9]
cmp rdx, r10
jb 0x140029820
cmp rax, 0x1d
jbe 0x14002a031
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 0x140029640
mov rax, rsi
lea r10, [rcx + rbx]
shl rax, 5
add rax, rdx
cmp rbx, r9
je 0x140028d36
sub r8, rbx
lea r9, [r8 + 1]
cmp r8, 6
jbe 0x1400296cb
movq xmm1, qword [0x14004c460]
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 0x140028d36
movzx edx, word [rax]
mov byte [r10], dl
lea rdx, [rax + 2]
cmp rdx, r11
jae 0x140028d36
movzx edx, word [rax + 2]
mov byte [r10 + 1], dl
lea rdx, [rax + 4]
cmp rdx, r11
jae 0x140028d36
movzx edx, word [rax + 4]
mov byte [r10 + 2], dl
lea rdx, [rax + 6]
cmp rdx, r11
jae 0x140028d36
movzx edx, word [rax + 6]
mov byte [r10 + 3], dl
lea rdx, [rax + 8]
cmp rdx, r11
jae 0x140028d36
movzx edx, word [rax + 8]
mov byte [r10 + 4], dl
lea rdx, [rax + 0xa]
cmp rdx, r11
jae 0x140028d36
movzx edx, word [rax + 0xa]
mov byte [r10 + 5], dl
lea rdx, [rax + 0xc]
cmp rdx, r11
jae 0x140028d36
movzx eax, word [rax + 0xc]
mov byte [r10 + 6], al
jmp 0x140028d36
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 0x140029760
jmp 0x140028d36
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 0x1400297c0
jmp 0x140028bb7
lea rax, [r8 + 0x30]
add r8, 0x48
and edi, 0x40
cmovne r8, rax
jmp 0x140029210
movzx eax, word [rdx]
add rdx, 2
add rcx, 1
mov byte [rcx - 1], al
cmp rdx, r11
jb 0x140029820
jmp 0x140028d36
cmp esi, 1
sete bl
test dl, dl
je 0x140029850
test bl, bl
jne 0x140029173
nop word [rax + rax]
cmp eax, 4
jne 0x140028d36
test bl, bl
je 0x140029d32
test r14b, r14b
je 0x140029f59
lea rax, [rcx + 0x30]
add rcx, 0x48
and r11d, 0x40
cmove rax, rcx
mov rsi, rax
lea r11, [rsi + r10]
test r12b, r12b
je 0x140029f50
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 0x140029a61
sub r9, 1
mov rbp, rdx
cmp r9, 0xf
jbe 0x140029fdc
mov r12, r9
shr r12, 4
lea rdi, [r12 + 1]
lea rax, [r10 + rdi*4]
add rax, rsi
cmp rdx, rax
jae 0x1400298ee
mov rax, rdi
shl rax, 4
add rax, rdx
cmp r11, rax
jb 0x140029fdc
cmp r9, 0x2f
jbe 0x14002a05d
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 0x140029920
test dil, 3
je 0x140029a4c
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 0x140029a32
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 [0x14004c460]
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 0x140029a4c
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 0x140028d36
lea rcx, [rbx - 1]
mov rax, rdx
sub rcx, rdx
cmp rcx, 0x1b
jbe 0x140029c60
mov r10, rcx
shr r10, 2
lea r9, [r10 + 1]
lea r8, [rdx + r9*4]
cmp r11, r8
jae 0x140029a9f
lea r8, [r11 + r9]
cmp rdx, r8
jb 0x140029c60
cmp rcx, 0x3b
jbe 0x14002a04e
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 0x140029ad0
mov rsi, r9
and rsi, 0xfffffffffffffff0
and r9d, 0xf
lea rax, [rsi*4]
lea r8, [r11 + rsi]
lea rcx, [rdx + rax]
je 0x140028d36
sub r10, rsi
lea r9, [r10 + 1]
cmp r10, 6
jbe 0x140029bdd
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 [0x14004c460]
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 0x140028d36
mov eax, dword [rcx]
mov byte [r8], al
lea rax, [rcx + 4]
cmp rax, rbx
jae 0x140028d36
mov eax, dword [rcx + 4]
mov byte [r8 + 1], al
lea rax, [rcx + 8]
cmp rax, rbx
jae 0x140028d36
mov eax, dword [rcx + 8]
mov byte [r8 + 2], al
lea rax, [rcx + 0xc]
cmp rax, rbx
jae 0x140028d36
mov eax, dword [rcx + 0xc]
mov byte [r8 + 3], al
lea rax, [rcx + 0x10]
cmp rax, rbx
jae 0x140028d36
mov eax, dword [rcx + 0x10]
mov byte [r8 + 4], al
lea rax, [rcx + 0x14]
cmp rax, rbx
jae 0x140028d36
mov eax, dword [rcx + 0x14]
mov byte [r8 + 5], al
lea rax, [rcx + 0x18]
cmp rax, rbx
jae 0x140028d36
mov eax, dword [rcx + 0x18]
mov byte [r8 + 6], al
jmp 0x140028d36
mov eax, dword [rdx]
add rdx, 4
add r11, 1
mov byte [r11 - 1], al
cmp rdx, rbx
jb 0x140029c60
jmp 0x140028d36
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 0x140029c80
jmp 0x140028d36
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 0x140029cc0
jmp 0x140028f3b
mov rdx, rcx
mov r10, rax
xor r8d, r8d
jmp 0x140028c87
mov r8, rcx
mov r12, rax
xor edx, edx
xor r13d, r13d
jmp 0x140028b4c
mov rdx, qword [r8 + 0x48]
jmp 0x140029457
mov rcx, r11
mov r8, rdx
xor eax, eax
xor r13d, r13d
jmp 0x140028ea4
mov rax, r11
mov r8, rdx
xor r10d, r10d
jmp 0x140029015
test bpl, bpl
je 0x140028d36
test r14b, r14b
je 0x140029fd3
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 0x140029fca
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 0x140029e3f
sub r8, 1
mov r11, r8
shr r11, 4
add r11, 1
cmp r8, 0xf
jbe 0x14002a07b
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 0x140029dc0
test r11b, 1
je 0x140029e32
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 0x140028d36
lea rax, [rsi - 1]
sub rax, rdx
mov r9, rax
shr r9, 2
lea r11, [r9 + 1]
cmp rax, 0x1b
jbe 0x14002a06d
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 0x140029e80
mov r8, r11
and r8, 0xfffffffffffffff8
and r11d, 7
lea r10, [rcx + r8*2]
lea rax, [rdx + r8*4]
je 0x140028d36
sub r9, r8
lea r11, [r9 + 1]
cmp r9, 2
jbe 0x140029f1b
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 0x140028d36
mov edx, dword [rax]
mov word [r10], dx
lea rdx, [rax + 4]
cmp rdx, rsi
jae 0x140028d36
mov edx, dword [rax + 4]
mov word [r10 + 2], dx
lea rdx, [rax + 8]
cmp rdx, rsi
jae 0x140028d36
mov eax, dword [rax + 8]
mov word [r10 + 4], ax
jmp 0x140028d36
mov rdx, qword [r8 + 0x48]
jmp 0x140029899
mov rsi, qword [rcx + 0x48]
jmp 0x14002987d
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 0x140029f80
jmp 0x1400295b5
mov rbx, rdx
mov r11, r8
xor eax, eax
jmp 0x14002937d
xor r9d, r9d
jmp 0x1400292b1
mov rdx, qword [r8 + 0x48]
jmp 0x140029d73
mov rbx, qword [rcx + 0x48]
jmp 0x140029d57
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 0x14002a000
jmp 0x140029a4c
mov r10, rcx
mov rax, rdx
xor ebx, ebx
jmp 0x140029688
mov r8, rcx
mov rbp, rdx
xor r12d, r12d
xor eax, eax
jmp 0x140029551
mov r8, r11
mov rcx, rdx
xor esi, esi
xor eax, eax
jmp 0x140029b66
mov r8, r11
mov rcx, rdx
xor eax, eax
xor r13d, r13d
jmp 0x1400299b7
mov r10, rcx
mov rax, rdx
xor r8d, r8d
jmp 0x140029ecd
xor r9d, r9d
jmp 0x140029e01