Function at 0x140030dd0
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 0x1400314c0
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 0x140031480
mov r10, qword [rax + 0x38]
cmp ecx, esi
je 0x14003149a
cmp ecx, 1
sete al
cmp esi, 2
sete r8b
test al, al
je 0x140031108
test r8b, r8b
je 0x140031108
lea rbx, [rdx + r9]
and r9, 0xfffffffffffffffc
lea rcx, [r10 + r11*2]
lea r8, [rdx + r9]
cmp rdx, r8
jae 0x140030f8c
sub r9, 1
mov rdi, rdx
cmp r9, 3
jbe 0x1400316c0
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 0x140030e96
add rax, rdx
cmp rcx, rax
jb 0x1400316c0
cmp r9, 0xb
jbe 0x140031f2d
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 0x140030ec0
test sil, 3
je 0x140030f77
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 0x140030f4d
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 0x140030f77
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 0x1400310f6
mov r9, rbx
sub r9, rdx
lea rax, [r9 - 1]
cmp rax, 6
jbe 0x140031740
lea r8, [rcx + r9*2]
cmp rdx, r8
jae 0x140030fbb
cmp rcx, rbx
jb 0x140031740
cmp rax, 0xe
jbe 0x140031f3d
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 0x140031000
mov rax, r10
lea r10, [rdx + r8]
shl rax, 5
add rax, rcx
cmp r9, r8
je 0x1400310f6
sub r9, r8
lea r11, [r9 - 1]
cmp r11, 6
jbe 0x140031083
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 0x1400310f6
movzx edx, byte [r10]
mov word [rax], dx
lea rdx, [r10 + 1]
cmp rdx, rbx
jae 0x1400310f6
movzx edx, byte [r10 + 1]
mov word [rax + 2], dx
lea rdx, [r10 + 2]
cmp rdx, rbx
jae 0x1400310f6
movzx edx, byte [r10 + 2]
mov word [rax + 4], dx
lea rdx, [r10 + 3]
cmp rdx, rbx
jae 0x1400310f6
movzx edx, byte [r10 + 3]
mov word [rax + 6], dx
lea rdx, [r10 + 4]
cmp rdx, rbx
jae 0x1400310f6
movzx edx, byte [r10 + 4]
mov word [rax + 8], dx
lea rdx, [r10 + 5]
cmp rdx, rbx
jae 0x1400310f6
movzx edx, byte [r10 + 5]
mov word [rax + 0xa], dx
lea rdx, [r10 + 6]
cmp rdx, rbx
jae 0x1400310f6
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 0x1400314e0
test bl, bl
je 0x1400314e0
lea rsi, [rdx + r9]
and r9, 0xfffffffffffffffc
lea rbx, [r10 + r11*4]
lea r8, [rdx + r9]
cmp rdx, r8
jae 0x1400312c6
sub r9, 1
mov rdi, rdx
cmp r9, 3
jbe 0x140031ed5
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 0x140031175
add rax, rdx
cmp rbx, rax
jb 0x140031ed5
cmp r9, 0xb
jbe 0x140032151
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 0x1400311a0
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 0x1400312ab
sub rbp, rax
cmp r12, rax
je 0x14003128d
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 0x1400312ab
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 0x1400310f6
mov r9, rsi
mov rcx, rdx
sub r9, rdx
lea rax, [r9 - 1]
cmp rax, 6
jbe 0x140031eb8
lea r8, [rbx + r9*4]
cmp rdx, r8
jae 0x1400312f8
cmp rbx, rsi
jb 0x140031eb8
cmp rax, 0xe
jbe 0x140032161
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 0x140031320
mov rax, r11
shl rax, 6
add rax, rbx
cmp r9, r10
je 0x1400310f6
sub r9, r10
lea rcx, [r9 - 1]
cmp rcx, 6
jbe 0x1400313f5
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 0x1400310f6
movzx edx, byte [r8]
mov dword [rax], edx
lea rdx, [r8 + 1]
cmp rdx, rsi
jae 0x1400310f6
movzx edx, byte [r8 + 1]
mov dword [rax + 4], edx
lea rdx, [r8 + 2]
cmp rdx, rsi
jae 0x1400310f6
movzx edx, byte [r8 + 2]
mov dword [rax + 8], edx
lea rdx, [r8 + 3]
cmp rdx, rsi
jae 0x1400310f6
movzx edx, byte [r8 + 3]
mov dword [rax + 0xc], edx
lea rdx, [r8 + 4]
cmp rdx, rsi
jae 0x1400310f6
movzx edx, byte [r8 + 4]
mov dword [rax + 0x10], edx
lea rdx, [r8 + 5]
cmp rdx, rsi
jae 0x1400310f6
movzx edx, byte [r8 + 5]
mov dword [rax + 0x14], edx
lea rdx, [r8 + 6]
cmp rdx, rsi
jae 0x1400310f6
movzx edx, byte [r8 + 6]
mov dword [rax + 0x18], edx
jmp 0x1400310f6
lea rdi, [rax + 0x28]
add rax, 0x38
and ebx, 0x40
cmove rdi, rax
mov r10, rdi
cmp ecx, esi
jne 0x140030e22
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 0x140030dfa
cmp ecx, 2
sete al
test bl, bl
je 0x140031780
test al, al
je 0x140031780
lea r8, [r9 + r9]
lea rcx, [r10 + r11*4]
lea rsi, [rdx + r8]
and r8, 0xfffffffffffffff8
lea rax, [rdx + r8]
cmp rdx, rax
jae 0x1400315ab
sub r8, 1
mov rbx, r8
shr rbx, 3
add rbx, 1
cmp r8, 7
jbe 0x1400321b5
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 0x140031540
test bl, 1
je 0x14003159b
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 0x1400310f6
lea rax, [rsi - 1]
sub rax, rdx
mov r9, rax
shr r9, 1
lea r10, [r9 + 1]
cmp rax, 0xd
jbe 0x1400321bd
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 0x140031600
mov rax, r10
and rax, 0xfffffffffffffff8
and r10d, 7
lea rbx, [rcx + rax*4]
lea r11, [rdx + rax*2]
je 0x1400310f6
sub r9, rax
lea r8, [r9 + 1]
cmp r9, 2
jbe 0x140031686
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 0x1400310f6
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 0x1400310f6
movzx eax, word [r11 + 2]
mov dword [rbx + 4], eax
lea rax, [r11 + 4]
cmp rax, rsi
jae 0x1400310f6
movzx eax, word [r11 + 4]
mov dword [rbx + 8], eax
jmp 0x1400310f6
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 0x140031700
jmp 0x140030f77
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 0x140031760
jmp 0x1400310f6
cmp esi, 1
sete bl
test al, al
je 0x140031ac0
test bl, bl
je 0x140031ac0
add r9, r9
lea rcx, [r10 + r11]
lea rbx, [rdx + r9]
and r9, 0xfffffffffffffff8
lea r8, [rdx + r9]
cmp rdx, r8
jae 0x140031910
sub r9, 1
mov rdi, rdx
cmp r9, 7
jbe 0x14003216f
mov rbp, r9
shr rbp, 3
lea rsi, [rbp + 1]
lea rax, [r11 + rsi*4]
add rax, r10
cmp rdx, rax
jae 0x1400317e7
lea rax, [rdx + rsi*8]
cmp rcx, rax
jb 0x14003216f
cmp r9, 0x17
jbe 0x14003223f
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 0x140031840
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 0x1400318fb
sub rsi, r14
cmp rbp, r14
je 0x1400318d5
movq xmm1, qword [0x1400546d0]
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 0x1400318fb
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 0x1400310f6
lea rax, [rbx - 1]
sub rax, rdx
cmp rax, 0xd
jbe 0x140031aa0
mov r8, rax
shr r8, 1
lea r9, [r8 + 1]
lea r10, [rdx + r9*2]
cmp rcx, r10
jae 0x14003194a
lea r10, [rcx + r9]
cmp rdx, r10
jb 0x140031aa0
cmp rax, 0x1d
jbe 0x140032231
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 0x140031980
mov rax, rsi
lea r10, [rcx + r11]
shl rax, 5
add rax, rdx
cmp r11, r9
je 0x1400310f6
sub r8, r11
lea r9, [r8 + 1]
cmp r8, 6
jbe 0x140031a0c
movq xmm1, qword [0x1400546d0]
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 0x1400310f6
movzx edx, word [rax]
mov byte [r10], dl
lea rdx, [rax + 2]
cmp rdx, rbx
jae 0x1400310f6
movzx edx, word [rax + 2]
mov byte [r10 + 1], dl
lea rdx, [rax + 4]
cmp rdx, rbx
jae 0x1400310f6
movzx edx, word [rax + 4]
mov byte [r10 + 2], dl
lea rdx, [rax + 6]
cmp rdx, rbx
jae 0x1400310f6
movzx edx, word [rax + 6]
mov byte [r10 + 3], dl
lea rdx, [rax + 8]
cmp rdx, rbx
jae 0x1400310f6
movzx edx, word [rax + 8]
mov byte [r10 + 4], dl
lea rdx, [rax + 0xa]
cmp rdx, rbx
jae 0x1400310f6
movzx edx, word [rax + 0xa]
mov byte [r10 + 5], dl
lea rdx, [rax + 0xc]
cmp rdx, rbx
jae 0x1400310f6
movzx eax, word [rax + 0xc]
mov byte [r10 + 6], al
jmp 0x1400310f6
movzx eax, word [rdx]
add rdx, 2
add rcx, 1
mov byte [rcx - 1], al
cmp rdx, rbx
jb 0x140031aa0
jmp 0x1400310f6
cmp ecx, 4
sete al
test bl, bl
je 0x140031f4b
test al, al
je 0x140031f4b
shl r9, 2
lea r8, [r10 + r11]
lea rbx, [rdx + r9]
and r9, 0xfffffffffffffff0
lea rcx, [rdx + r9]
cmp rdx, rcx
jae 0x140031ca2
lea rsi, [r9 - 1]
mov rbp, rdx
cmp rsi, 0xf
jbe 0x1400321ca
mov r12, rsi
shr r12, 4
lea rdi, [r12 + 1]
lea rax, [r11 + rdi*4]
add rax, r10
cmp rdx, rax
jae 0x140031b2f
mov rax, rdi
shl rax, 4
add rax, rdx
cmp r8, rax
jb 0x1400321ca
cmp rsi, 0x2f
jbe 0x14003225e
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 0x140031b60
test dil, 3
je 0x140031c8d
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 0x140031c73
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 [0x1400546d0]
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 0x140031c8d
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 0x1400310f6
lea rcx, [rbx - 1]
mov rax, rdx
sub rcx, rdx
cmp rcx, 0x1b
jbe 0x140031ea0
mov r11, rcx
shr r11, 2
lea r10, [r11 + 1]
lea r9, [rdx + r10*4]
cmp r8, r9
jae 0x140031ce0
lea r9, [r8 + r10]
cmp rdx, r9
jb 0x140031ea0
cmp rcx, 0x3b
jbe 0x14003224f
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 0x140031d10
mov rsi, r10
and rsi, 0xfffffffffffffff0
and r10d, 0xf
lea rax, [rsi*4]
lea r9, [r8 + rsi]
lea rcx, [rdx + rax]
je 0x1400310f6
sub r11, rsi
lea r10, [r11 + 1]
cmp r11, 6
jbe 0x140031e1d
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 [0x1400546d0]
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 0x1400310f6
mov eax, dword [rcx]
mov byte [r9], al
lea rax, [rcx + 4]
cmp rax, rbx
jae 0x1400310f6
mov eax, dword [rcx + 4]
mov byte [r9 + 1], al
lea rax, [rcx + 8]
cmp rax, rbx
jae 0x1400310f6
mov eax, dword [rcx + 8]
mov byte [r9 + 2], al
lea rax, [rcx + 0xc]
cmp rax, rbx
jae 0x1400310f6
mov eax, dword [rcx + 0xc]
mov byte [r9 + 3], al
lea rax, [rcx + 0x10]
cmp rax, rbx
jae 0x1400310f6
mov eax, dword [rcx + 0x10]
mov byte [r9 + 4], al
lea rax, [rcx + 0x14]
cmp rax, rbx
jae 0x1400310f6
mov eax, dword [rcx + 0x14]
mov byte [r9 + 5], al
lea rax, [rcx + 0x18]
cmp rax, rbx
jae 0x1400310f6
mov eax, dword [rcx + 0x18]
mov byte [r9 + 6], al
jmp 0x1400310f6
mov eax, dword [rdx]
add rdx, 4
add r8, 1
mov byte [r8 - 1], al
cmp rdx, rbx
jb 0x140031ea0
jmp 0x1400310f6
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 0x140031ec0
jmp 0x1400310f6
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 0x140031f00
jmp 0x1400312ab
mov r8, rcx
mov r12, rdx
xor eax, eax
xor r13d, r13d
jmp 0x140030f0c
mov rax, rcx
mov r10, rdx
xor r8d, r8d
jmp 0x140031047
test r8b, r8b
je 0x1400310f6
test al, al
je 0x1400310f6
lea rax, [r9*4]
lea r8, [r10 + r11*2]
lea rsi, [rdx + rax]
and rax, 0xfffffffffffffff0
lea rcx, [rdx + rax]
cmp rdx, rcx
jae 0x140032040
sub rax, 1
mov rbx, rax
shr rbx, 4
add rbx, 1
cmp rax, 0xf
jbe 0x14003227b
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 0x140031fc0
test bl, 1
je 0x140032033
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 0x1400310f6
lea rax, [rsi - 1]
sub rax, rdx
mov r9, rax
shr r9, 2
lea r11, [r9 + 1]
cmp rax, 0x1b
jbe 0x14003226e
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 0x140032080
mov rcx, r11
and rcx, 0xfffffffffffffff8
and r11d, 7
lea r10, [r8 + rcx*2]
lea rax, [rdx + rcx*4]
je 0x1400310f6
sub r9, rcx
lea r11, [r9 + 1]
cmp r9, 2
jbe 0x14003211c
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 0x1400310f6
mov edx, dword [rax]
mov word [r10], dx
lea rdx, [rax + 4]
cmp rdx, rsi
jae 0x1400310f6
mov edx, dword [rax + 4]
mov word [r10 + 2], dx
lea rdx, [rax + 8]
cmp rdx, rsi
jae 0x1400310f6
mov eax, dword [rax + 8]
mov word [r10 + 4], ax
jmp 0x1400310f6
mov rcx, rbx
mov r8, rdx
xor eax, eax
xor r13d, r13d
jmp 0x140031214
mov rax, rbx
mov r8, rdx
xor r10d, r10d
jmp 0x140031385
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 0x140032180
jmp 0x1400318fb
xor r9d, r9d
jmp 0x14003156f
mov rbx, rcx
mov r11, rdx
xor eax, eax
jmp 0x14003163c
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 0x140032200
jmp 0x140031c8d
mov r10, rcx
mov rax, rdx
xor r11d, r11d
jmp 0x1400319c8
mov r8, rcx
mov r12, rdx
xor r13d, r13d
xor eax, eax
jmp 0x140031891
mov r9, r8
mov rcx, rdx
xor esi, esi
xor eax, eax
jmp 0x140031da6
mov r9, r8
mov rcx, rdx
xor eax, eax
xor r13d, r13d
jmp 0x140031bf7
mov r10, r8
mov rax, rdx
xor ecx, ecx
jmp 0x1400320ce
xor r9d, r9d
jmp 0x140032001