Function at 0x1401ae7a0
Capabilities:
Enumerate pe sections

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x33ff0]
mov eax, 0x340f0
call fcn.1401b1d30
sub rsp, rax
mov rax, qword [0x140211140]
xor rax, rsp
mov qword [rbp + 0x33fe0], rax
mov esi, dword [0x1402132d8]
lea r11, [rbp + 0x3fd0]
xor eax, eax
mov qword [rsp + 0x38], r11
mov r14d, eax
lea r15, [rbp + 0x3fd0]
mov ebx, eax
mov r8d, 0x20
mov eax, dword [0x1402132f0]
sub r8d, esi
mov dword [rsp + 0x24], r8d
lea eax, [rax*4]
movsxd rcx, eax
lea rdx, [rcx + rcx]
mov qword [rsp + 0x48], rdx
mov ecx, dword [0x1402132e0]
lea rax, [rdx + r15]
mov r13d, dword [0x1402132ec]
mov r9d, 0x8000
cmp rax, r11
jb 0x1401ae97b
mov eax, dword [0x1402132c8]
lea rcx, [rbp + 0x13fe0]
mov rdx, qword [0x1402132d0]
cmp eax, r9d
mov r12d, eax
cmovge r12d, r9d
sub eax, r12d
movsxd rdi, r12d
mov r8, rdi
mov dword [0x1402132c8], eax
call sub.VCRUNTIME140.dll_memcpy
add qword [0x1402132d0], rdi
test r12d, r12d
je 0x1401ae944
test r12b, 1
je 0x1401ae8a5
cmp rdi, 0x20000
jae 0x1401b04ca
mov byte [rbp + rdi + 0x13fe0], 0
inc r12d
mov rax, qword [rsp + 0x38]
lea rcx, [rbp + 0x3fd0]
sub rax, r15
mov rdx, r15
sar rax, 1
movsxd rsi, eax
lea rdi, [rsi + rsi]
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
movsxd rax, r12d
lea r11, [rbp + 0x3fd0]
sar rax, 1
lea r8, [rbp + 0x3fd0]
add r8, rdi
lea rdx, [rbp + 0x13fe0]
xor edi, edi
add rax, rsi
mov r9d, edi
lea r11, [r11 + rax*2]
mov r10, r11
mov qword [rsp + 0x38], r11
sub r10, r8
inc r10
shr r10, 1
cmp r8, r11
cmova r10, rdi
test r10, r10
je 0x1401ae932
movzx ecx, byte [rdx]
inc r9
movzx eax, byte [rdx + 1]
lea rdx, [rdx + 2]
shl cx, 8
or cx, ax
mov word [r8], cx
add r8, 2
cmp r9, r10
jb 0x1401ae910
mov esi, dword [0x1402132d8]
lea r15, [rbp + 0x3fd0]
mov dword [r8], edi
jmp 0x1401ae953
test ebx, ebx
jne 0x1401ae953
cmp r15, qword [rsp + 0x38]
jae 0x1401b049a
mov r8d, dword [rsp + 0x24]
mov ecx, dword [0x1402132e0]
test r14d, r14d
jne 0x1401ae97b
movzx ebx, word [r15]
mov r14d, 0x20
movzx eax, word [r15 + 2]
shl ebx, 0x10
or ebx, eax
add r15, 4
mov edi, 1
movsxd rax, r13d
lea r12, [rbp - 0x30]
mov dword [rsp + 0x20], edi
lea r10, [rbp - 0x30]
lea rax, [rax*4]
add r12, rax
mov qword [rsp + 0x40], rax
cmp dword [0x1402132e4], edi
mov qword [rsp + 0x28], r12
jne 0x1401aec30
lea r10, [rbp - 0x2c]
mov r9d, ebx
cmp ecx, edi
jne 0x1401ae9c8
shr r9d, 0x1d
shl ebx, 3
sub r14d, 3
jmp 0x1401ae9e5
cmp ecx, 2
jne 0x1401ae9da
shr r9d, 0x1c
shl ebx, 4
sub r14d, 4
jmp 0x1401ae9e5
shr r9d, 0x1b
shl ebx, 5
sub r14d, 5
test r9d, r9d
jne 0x1401ae9fa
mov eax, ebx
add ebx, ebx
and eax, 0x80000000
mov dword [rsp + 0x30], eax
dec r14d
cmp r14d, 0x10
jg 0x1401aea18
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
lea r11d, [rsi - 0x10]
mov eax, ebx
lea r13d, [r9 - 1]
mov dword [rsp + 0x34], r13d
test r11d, r11d
jg 0x1401aea3d
mov ecx, r8d
shr eax, cl
mov ecx, esi
shl ebx, cl
sub r14d, esi
mov dword [rbp - 0x30], eax
jmp 0x1401aea86
movzx edx, word [r15]
mov r8d, ebx
shl eax, 0x10
sub r14d, 0x10
shr r8d, 0x10
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
mov ecx, 0x20
mov ebx, edx
sub ecx, r11d
or ebx, eax
mov eax, 0x10
mov edx, ebx
sub eax, r11d
shr edx, cl
mov ecx, r11d
shl r8d, cl
or edx, r8d
shl ebx, cl
mov dword [rbp - 0x30], edx
add r14d, eax
cmp r14d, 0x10
jg 0x1401aeaa4
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
cmp r9d, 2
jb 0x1401aee6a
xor ecx, ecx
lea rax, [rbp - 0x2c]
cmp r9d, dword [0x1402132f4]
jne 0x1401aec62
test r11d, r11d
jg 0x1401aeb51
mov r9, r12
lea r11, [rbp - 0x2c]
sub r9, rax
mov r10d, ecx
add r9, 3
lea rax, [rbp - 0x2c]
shr r9, 2
cmp rax, r12
cmova r9, rcx
test r9, r9
je 0x1401aec16
mov r13d, dword [rsp + 0x24]
mov edi, esi
neg edi
mov edx, 0x10
sub edx, r14d
nop dword [rax]
nop dword [rax + rax]
mov r8d, ebx
mov ecx, r13d
shr r8d, cl
sub r14d, esi
mov ecx, esi
sub edx, edi
shl ebx, cl
cmp r14d, 0x10
jg 0x1401aeb3d
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
mov dword [r11], r8d
inc r10
add r11, 4
cmp r10, r9
jb 0x1401aeb10
jmp 0x1401aec12
mov rdi, r12
mov rsi, rcx
sub rdi, rax
lea rax, [rbp - 0x2c]
add rdi, 3
shr rdi, 2
cmp rax, r12
cmova rdi, rcx
test rdi, rdi
je 0x1401aec0c
mov r12d, 0x20
mov r9d, r14d
sub r12d, r11d
neg r9d
mov r13d, r11d
neg r13d
nop dword [rax + rax]
movzx edx, word [r15]
add r9d, 0x10
mov eax, ebx
mov r8d, ebx
shl eax, 0x10
sub r14d, 0x10
shr r8d, 0x10
add r15, 2
lea ecx, [r9 + 0x10]
sub r9d, r13d
shl edx, cl
add r9d, 0xfffffff0
mov ebx, edx
mov ecx, r12d
or ebx, eax
mov eax, 0x10
mov edx, ebx
sub eax, r11d
shr edx, cl
add r14d, eax
mov ecx, r11d
shl r8d, cl
or edx, r8d
shl ebx, cl
cmp r14d, 0x10
jg 0x1401aebf8
movzx eax, word [r15]
lea ecx, [r9 + 0x10]
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub r9d, 0x10
mov dword [r10], edx
inc rsi
add r10, 4
cmp rsi, rdi
jb 0x1401aeb90
mov r12, qword [rsp + 0x28]
mov esi, dword [0x1402132d8]
mov edi, dword [rsp + 0x20]
mov r13d, dword [0x1402132ec]
mov r10, r12
add r12, qword [rsp + 0x40]
inc edi
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], edi
mov eax, dword [0x1402132dc]
cmp edi, eax
jg 0x1401af3cc
nop
mov ecx, dword [0x1402132e0]
mov r8d, ebx
cmp ecx, 1
jne 0x1401af1e6
shr r8d, 0x1d
shl ebx, 3
sub r14d, 3
jmp 0x1401af203
mov r11, r12
mov rdi, rcx
sub r11, rax
lea rax, [rbp - 0x2c]
add r11, 3
shr r11, 2
cmp rax, r12
cmova r11, rcx
test r11, r11
je 0x1401aed3f
xor r13d, r13d
nop word [rax + rax]
mov r8d, r13d
test ebx, 0xff000000
jne 0x1401aecdf
mov ecx, 0x10
sub ecx, r14d
nop dword [rax]
nop word [rax + rax]
add r8d, 8
shl ebx, 8
sub r14d, 8
add ecx, 8
cmp r14d, 0x10
jg 0x1401aecd7
movzx eax, word [r15]
add r14d, 0x10
shl eax, cl
add r15, 2
or ebx, eax
sub ecx, 0x10
test ebx, 0xff000000
je 0x1401aecb0
mov eax, ebx
lea rcx, [0x140000000]
shr rax, 0x18
mov r9d, dword [rcx + rax*4 + 0x21b4a0]
or eax, 0xffffffff
sub eax, r9d
add r14d, eax
lea ecx, [r9 + 1]
shl ebx, cl
cmp r14d, 0x10
jg 0x1401aed21
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
lea eax, [r9 + r8]
inc rdi
mov dword [r10], eax
add r10, 4
cmp rdi, r11
jb 0x1401aec90
mov r13d, dword [rsp + 0x34]
xor ecx, ecx
mov r12d, 0x20
lea esi, [r13 - 0x10]
sub r12d, r13d
lea r10, [rbp - 0x2c]
test esi, esi
jg 0x1401aedbd
mov r9, rcx
test r11, r11
je 0x1401aec07
mov edi, r13d
mov edx, 0x10
neg edi
sub edx, r14d
nop dword [rax]
mov r8d, ebx
mov ecx, r12d
shr r8d, cl
sub r14d, r13d
mov ecx, r13d
sub edx, edi
shl ebx, cl
cmp r14d, 0x10
jg 0x1401aed9e
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
mov eax, dword [r10]
mov ecx, r13d
shl eax, cl
inc r9
or eax, r8d
mov dword [r10], eax
add r10, 4
cmp r9, r11
jb 0x1401aed70
jmp 0x1401aec07
mov rdi, rcx
test r11, r11
je 0x1401aec07
mov r12d, 0x20
mov r9d, r14d
sub r12d, esi
neg r9d
mov eax, esi
neg eax
mov dword [rsp + 0x34], eax
movzx edx, word [r15]
add r9d, 0x10
mov eax, ebx
mov r8d, ebx
shl eax, 0x10
sub r14d, 0x10
shr r8d, 0x10
add r15, 2
lea ecx, [r9 + 0x10]
sub r9d, dword [rsp + 0x34]
shl edx, cl
add r9d, 0xfffffff0
mov ebx, edx
mov ecx, r12d
or ebx, eax
mov eax, 0x10
mov edx, ebx
sub eax, esi
shr edx, cl
add r14d, eax
mov ecx, esi
shl r8d, cl
or edx, r8d
shl ebx, cl
cmp r14d, 0x10
jg 0x1401aee48
movzx eax, word [r15]
lea ecx, [r9 + 0x10]
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub r9d, 0x10
mov eax, dword [r10]
mov ecx, r13d
shl eax, cl
inc rdi
or eax, edx
mov dword [r10], eax
add r10, 4
cmp rdi, r11
jb 0x1401aede0
jmp 0x1401aec07
cmp r9d, edi
jne 0x1401aef56
xor ecx, ecx
lea rax, [rbp - 0x2c]
mov r11, r12
mov edi, ecx
sub r11, rax
lea rax, [rbp - 0x2c]
add r11, 3
shr r11, 2
cmp rax, r12
cmova r11, rcx
test r11, r11
je 0x1401aec12
xor esi, esi
lea r12, [0x140000000]
nop word [rax + rax]
mov r8d, esi
test ebx, 0xff000000
jne 0x1401aeeff
mov ecx, 0x10
sub ecx, r14d
nop dword [rax]
nop word [rax + rax]
add r8d, 8
shl ebx, 8
sub r14d, 8
add ecx, 8
cmp r14d, 0x10
jg 0x1401aeef7
movzx eax, word [r15]
add r14d, 0x10
shl eax, cl
add r15, 2
or ebx, eax
sub ecx, 0x10
test ebx, 0xff000000
je 0x1401aeed0
mov eax, ebx
shr rax, 0x18
mov r9d, dword [r12 + rax*4 + 0x21b4a0]
or eax, 0xffffffff
sub eax, r9d
add r14d, eax
lea ecx, [r9 + 1]
shl ebx, cl
cmp r14d, 0x10
jg 0x1401aef3a
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
lea eax, [r9 + r8]
inc rdi
mov dword [r10], eax
add r10, 4
cmp rdi, r11
jb 0x1401aeeb0
jmp 0x1401aec07
cmp dword [rsp + 0x30], 0
je 0x1401af0ef
mov r13d, dword [0x1402132ec]
lea r11, [rsp + 0x50]
mov eax, r13d
test r13d, r13d
jns 0x1401aef79
lea eax, [r13 + 1]
sar eax, 1
lea rcx, [rsp + 0x50]
xor r10d, r10d
cdqe
lea rcx, [rcx + rax*4]
lea rdi, [rax*4 + 3]
shr rdi, 2
lea rax, [rsp + 0x50]
cmp rax, rcx
mov ecx, r10d
cmova rdi, r10
test rdi, rdi
je 0x1401af070
xor esi, esi
lea r13, [0x140000000]
nop word [rax + rax]
mov r8d, esi
test ebx, 0xff000000
jne 0x1401af00f
mov ecx, 0x10
sub ecx, r14d
nop dword [rax]
nop word [rax + rax]
add r8d, 8
shl ebx, 8
sub r14d, 8
add ecx, 8
cmp r14d, 0x10
jg 0x1401af007
movzx eax, word [r15]
add r14d, 0x10
shl eax, cl
add r15, 2
or ebx, eax
sub ecx, 0x10
test ebx, 0xff000000
je 0x1401aefe0
mov eax, ebx
shr rax, 0x18
mov r9d, dword [r13 + rax*4 + 0x21b4a0]
or eax, 0xffffffff
sub eax, r9d
add r14d, eax
lea ecx, [r9 + 1]
shl ebx, cl
cmp r14d, 0x10
jg 0x1401af04a
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
lea eax, [r9 + r8]
inc r10
mov dword [r11], eax
add r11, 4
cmp r10, rdi
jb 0x1401aefc0
mov esi, dword [0x1402132d8]
xor ecx, ecx
mov r13d, dword [0x1402132ec]
mov eax, dword [rsp + 0x50]
lea r9, [0x140000000]
cmp eax, 0x23
lea r8, [rsp + 0x54]
lea rdx, [rbp - 0x28]
cmovge eax, ecx
cdqe
movzx eax, byte [rax + r9 + 0x21b478]
mov dword [rbp - 0x2c], eax
lea rax, [rbp - 0x28]
cmp rax, r12
jae 0x1401af0e6
xor esi, esi
nop dword [rax]
nop word [rax + rax]
mov eax, dword [r8]
lea r8, [r8 + 4]
cmp eax, 0x23
cmovge eax, esi
movsxd rcx, eax
movzx eax, byte [rcx + r9 + 0x21b450]
mov dword [rdx], eax
movzx eax, byte [rcx + r9 + 0x21b478]
mov dword [rdx + 4], eax
add rdx, 8
cmp rdx, r12
jb 0x1401af0b0
mov esi, dword [0x1402132d8]
mov edi, dword [rsp + 0x20]
jmp 0x1401aec1d
xor eax, eax
mov r8d, eax
test ebx, 0xff000000
jne 0x1401af13f
mov ecx, 0x10
sub ecx, r14d
nop dword [rax]
nop dword [rax + rax]
add r8d, 8
shl ebx, 8
sub r14d, 8
add ecx, 8
cmp r14d, 0x10
jg 0x1401af137
movzx eax, word [r15]
add r14d, 0x10
shl eax, cl
add r15, 2
or ebx, eax
sub ecx, 0x10
test ebx, 0xff000000
je 0x1401af110
mov eax, ebx
lea rcx, [0x140000000]
shr rax, 0x18
mov r9d, dword [rcx + rax*4 + 0x21b4a0]
or eax, 0xffffffff
sub eax, r9d
add r14d, eax
lea ecx, [r9 + 1]
shl ebx, cl
cmp r14d, 0x10
jg 0x1401af181
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
lea eax, [r9 + r8]
lea edi, [rax + 1]
cmp edi, 5
jl 0x1401af1a6
jne 0x1401af1a4
mov edx, dword [0x1402132dc]
mov eax, 0x40
cmp edx, 0x40
mov edi, edx
cmovg edi, eax
jmp 0x1401af1ac
mov edi, eax
mov edx, dword [0x1402132dc]
cmp edi, edx
jg 0x1401b048e
mov r13d, dword [0x1402132ec]
lea eax, [rdi - 1]
imul eax, r13d
lea rcx, [rbp - 0x2c]
xor edx, edx
cdqe
lea r12, [r12 + rax*4]
lea rax, [rbp - 0x2c]
mov r8, r12
sub r8, rax
and r8, 0xfffffffffffffffc
call sub.VCRUNTIME140.dll_memset
jmp 0x1401aec1d
cmp ecx, 2
jne 0x1401af1f8
shr r8d, 0x1c
shl ebx, 4
sub r14d, 4
jmp 0x1401af203
shr r8d, 0x1b
shl ebx, 5
sub r14d, 5
test r8d, r8d
jne 0x1401af21e
mov r9d, ebx
add ebx, ebx
and r9d, 0x80000000
mov dword [rsp + 0x30], r9d
dec r14d
jmp 0x1401af223
mov r9d, dword [rsp + 0x30]
cmp r14d, 0x10
jg 0x1401af247
movzx edx, word [r15]
mov ecx, 0x10
mov eax, dword [0x1402132dc]
sub ecx, r14d
shl edx, cl
add r15, 2
or ebx, edx
add r14d, 0x10
lea r11d, [r8 - 1]
cmp r8d, 2
jb 0x1401b0151
cmp r8d, dword [0x1402132f4]
jne 0x1401af3e9
add esi, 0xfffffff0
test esi, esi
jg 0x1401af2e7
mov esi, dword [0x1402132d8]
xor r8d, r8d
mov r9, r12
mov r11d, r8d
sub r9, r10
add r9, 3
shr r9, 2
cmp r10, r12
cmova r9, r8
test r9, r9
je 0x1401af3aa
mov eax, dword [rsp + 0x24]
mov edi, esi
neg edi
mov edx, 0x10
sub edx, r14d
mov r8d, ebx
mov ecx, eax
shr r8d, cl
sub r14d, esi
mov ecx, esi
sub edx, edi
shl ebx, cl
cmp r14d, 0x10
jg 0x1401af2d3
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
mov eax, dword [rsp + 0x24]
sub edx, 0x10
mov dword [r10], r8d
inc r11
add r10, 4
cmp r11, r9
jb 0x1401af2a3
jmp 0x1401af3a0
xor ecx, ecx
mov r11, r12
sub r11, r10
mov edi, ecx
add r11, 3
shr r11, 2
cmp r10, r12
cmova r11, rcx
test r11, r11
je 0x1401b047f
mov r12d, 0x20
mov r9d, r14d
sub r12d, esi
neg r9d
mov r13d, esi
neg r13d
nop
movzx edx, word [r15]
add r9d, 0x10
mov eax, ebx
mov r8d, ebx
shl eax, 0x10
sub r14d, 0x10
shr r8d, 0x10
add r15, 2
lea ecx, [r9 + 0x10]
sub r9d, r13d
shl edx, cl
add r9d, 0xfffffff0
mov ebx, edx
mov ecx, r12d
or ebx, eax
mov eax, 0x10
mov edx, ebx
sub eax, esi
shr edx, cl
add r14d, eax
mov ecx, esi
shl r8d, cl
or edx, r8d
shl ebx, cl
cmp r14d, 0x10
jg 0x1401af386
movzx eax, word [r15]
lea ecx, [r9 + 0x10]
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub r9d, 0x10
mov dword [r10], edx
inc rdi
add r10, 4
cmp rdi, r11
jb 0x1401af320
mov r12, qword [rsp + 0x28]
mov esi, dword [0x1402132d8]
mov edi, dword [rsp + 0x20]
mov eax, dword [0x1402132dc]
mov r13d, dword [0x1402132ec]
inc edi
mov r10, r12
mov dword [rsp + 0x20], edi
add r12, qword [rsp + 0x40]
mov qword [rsp + 0x28], r12
cmp edi, eax
jle 0x1401aec40
lea rcx, [rbp - 0x30]
call fcn.1401ae290
mov r8d, dword [rsp + 0x24]
mov r11, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x48]
jmp 0x1401ae825
mov r9, r10
cmp r10, r12
jae 0x1401af63d
xor esi, esi
lea r13, [0x140000000]
nop
mov eax, ebx
and eax, 0xc0000000
cmp eax, 0xc0000000
jne 0x1401af442
shl ebx, 2
sub r14d, 2
cmp r14d, 0x10
jg 0x1401af433
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
mov dword [r10], esi
add r10, 4
mov dword [r10], esi
jmp 0x1401af61f
mov eax, ebx
shr eax, 0x1d
cmp eax, 3
jne 0x1401af483
shl ebx, 3
sub r14d, eax
cmp r14d, 0x10
jg 0x1401af470
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
mov dword [r10], 1
add r10, 4
mov dword [r10], esi
jmp 0x1401af61f
cmp eax, 5
jne 0x1401af4c0
shl ebx, 3
sub r14d, 3
cmp r14d, 0x10
jg 0x1401af4ad
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
mov dword [r10], esi
add r10, 4
mov dword [r10], 1
jmp 0x1401af61f
mov eax, ebx
and eax, 0xf0000000
cmp eax, 0x50000000
jne 0x1401af50a
shl ebx, 4
sub r14d, 4
cmp r14d, 0x10
jg 0x1401af4f3
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
mov dword [r10], 1
add r10, 4
mov dword [r10], 1
jmp 0x1401af61f
mov r8d, esi
test ebx, 0xff000000
jne 0x1401af54f
mov ecx, 0x10
sub ecx, r14d
nop dword [rax]
add r8d, 8
shl ebx, 8
sub r14d, 8
add ecx, 8
cmp r14d, 0x10
jg 0x1401af547
movzx eax, word [r15]
add r14d, 0x10
shl eax, cl
add r15, 2
or ebx, eax
sub ecx, 0x10
test ebx, 0xff000000
je 0x1401af520
mov eax, ebx
shr rax, 0x18
mov edi, dword [r13 + rax*4 + 0x21b4a0]
or eax, 0xffffffff
sub eax, edi
add r14d, eax
lea ecx, [rdi + 1]
shl ebx, cl
cmp r14d, 0x10
jg 0x1401af588
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
lea eax, [rdi + r8]
mov r8d, esi
mov dword [r10], eax
add r10, 4
test ebx, 0xff000000
jne 0x1401af5df
mov ecx, 0x10
sub ecx, r14d
nop word [rax + rax]
add r8d, 8
shl ebx, 8
sub r14d, 8
add ecx, 8
cmp r14d, 0x10
jg 0x1401af5d7
movzx eax, word [r15]
add r14d, 0x10
shl eax, cl
add r15, 2
or ebx, eax
sub ecx, 0x10
test ebx, 0xff000000
je 0x1401af5b0
mov eax, ebx
shr rax, 0x18
mov edi, dword [r13 + rax*4 + 0x21b4a0]
or eax, 0xffffffff
sub eax, edi
add r14d, eax
lea ecx, [rdi + 1]
shl ebx, cl
cmp r14d, 0x10
jg 0x1401af618
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
lea eax, [rdi + r8]
mov dword [r10], eax
add r10, 4
cmp r10, r12
jb 0x1401af400
mov edi, dword [rsp + 0x20]
mov esi, dword [0x1402132d8]
mov r13d, dword [0x1402132ec]
test r13b, 7
jne 0x1401affed
cmp r11d, 0x10
jg 0x1401affed
lea eax, [r11 - 1]
cmp eax, 7
ja case.default.0x1401af671
lea rdx, [0x140000000]
cdqe
mov ecx, dword [rdx + rax*4 + 0x1b04d0]
add rcx, rdx
jmp rcx
cmp r9, r12
jae 0x1401af3a4
add r9, 8
mov edx, 0x10
sub edx, r14d
nop dword [rax + rax]
mov ecx, dword [r9 - 8]
lea r9, [r9 + 0x20]
add ecx, ecx
mov eax, ebx
shr eax, 0x1f
sub r14d, 8
or ecx, eax
add edx, 8
mov eax, dword [r9 - 0x24]
mov dword [r9 - 0x28], ecx
add eax, eax
mov ecx, ebx
shr ecx, 0x1e
and ecx, 1
or ecx, eax
mov eax, dword [r9 - 0x20]
mov dword [r9 - 0x24], ecx
add eax, eax
mov ecx, ebx
shr ecx, 0x1d
and ecx, 1
or ecx, eax
mov eax, dword [r9 - 0x1c]
mov dword [r9 - 0x20], ecx
add eax, eax
mov ecx, ebx
shr ecx, 0x1c
and ecx, 1
or ecx, eax
mov eax, dword [r9 - 0x18]
mov dword [r9 - 0x1c], ecx
add eax, eax
mov ecx, ebx
shr ecx, 0x1b
and ecx, 1
or ecx, eax
mov eax, dword [r9 - 0x14]
mov dword [r9 - 0x18], ecx
add eax, eax
mov ecx, ebx
shr ecx, 0x1a
and ecx, 1
or ecx, eax
mov eax, dword [r9 - 0x10]
mov dword [r9 - 0x14], ecx
add eax, eax
mov ecx, ebx
shr ecx, 0x19
and ecx, 1
or ecx, eax
mov eax, dword [r9 - 0xc]
mov dword [r9 - 0x10], ecx
add eax, eax
mov ecx, ebx
shl ebx, 8
shr ecx, 0x18
and ecx, 1
or ecx, eax
mov dword [r9 - 0xc], ecx
cmp r14d, 0x10
jg 0x1401af756
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
lea rax, [r9 - 8]
cmp rax, r12
jb 0x1401af690
jmp 0x1401af3a4
cmp r9, r12
jae 0x1401af3a4
mov r8d, 0x20
sub r8d, r14d
add r9, 8
nop
mov eax, dword [r9 - 8]
lea r9, [r9 + 0x20]
movzx edx, word [r15]
mov ecx, ebx
shr ecx, 0x1e
add r15, 2
shl eax, 2
or ecx, eax
mov eax, dword [r9 - 0x24]
mov dword [r9 - 0x28], ecx
mov ecx, ebx
shr ecx, 0x1c
and ecx, 3
shl eax, 2
or ecx, eax
mov eax, dword [r9 - 0x20]
mov dword [r9 - 0x24], ecx
mov ecx, ebx
shr ecx, 0x1a
and ecx, 3
shl eax, 2
or ecx, eax
mov eax, dword [r9 - 0x1c]
mov dword [r9 - 0x20], ecx
mov ecx, ebx
shr ecx, 0x18
and ecx, 3
shl eax, 2
or ecx, eax
mov eax, dword [r9 - 0x18]
mov dword [r9 - 0x1c], ecx
mov ecx, ebx
shr ecx, 0x16
and ecx, 3
shl eax, 2
or ecx, eax
mov eax, dword [r9 - 0x14]
mov dword [r9 - 0x18], ecx
mov ecx, ebx
shr ecx, 0x14
and ecx, 3
shl eax, 2
or ecx, eax
mov eax, dword [r9 - 0x10]
mov dword [r9 - 0x14], ecx
mov ecx, ebx
shr ecx, 0x12
and ecx, 3
shl eax, 2
or ecx, eax
mov eax, dword [r9 - 0xc]
mov dword [r9 - 0x10], ecx
mov ecx, ebx
shl eax, 2
shr ecx, 0x10
and ecx, 3
or ecx, eax
mov eax, ebx
shl eax, 0x10
mov dword [r9 - 0xc], ecx
mov ecx, r8d
shl edx, cl
mov ebx, edx
or ebx, eax
lea rax, [r9 - 8]
cmp rax, r12
jb 0x1401af780
jmp 0x1401af3a4
cmp r9, r12
jae 0x1401af3a4
mov edx, 0x10
sub edx, r14d
nop dword [rax]
nop word [rax + rax]
mov ecx, dword [r9]
mov eax, ebx
shl ecx, 3
sub r14d, 0xf
shr eax, 0x1d
add edx, 0xf
or ecx, eax
mov eax, dword [r9 + 4]
mov dword [r9], ecx
mov ecx, ebx
shr ecx, 0x1a
and ecx, 7
shl eax, 3
or ecx, eax
mov eax, dword [r9 + 8]
mov dword [r9 + 4], ecx
mov ecx, ebx
shr ecx, 0x17
and ecx, 7
shl eax, 3
or ecx, eax
mov eax, dword [r9 + 0xc]
mov dword [r9 + 8], ecx
mov ecx, ebx
shr ecx, 0x14
and ecx, 7
shl eax, 3
or ecx, eax
mov eax, dword [r9 + 0x10]
mov dword [r9 + 0xc], ecx
mov ecx, ebx
shr ecx, 0x11
and ecx, 7
shl eax, 3
or ecx, eax
shl ebx, 0xf
mov dword [r9 + 0x10], ecx
cmp r14d, 0x10
jg 0x1401af8f9
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
mov ecx, dword [r9 + 0x14]
mov eax, ebx
shl ecx, 3
sub r14d, 9
shr eax, 0x1d
add edx, 9
or ecx, eax
mov eax, dword [r9 + 0x18]
mov dword [r9 + 0x14], ecx
mov ecx, ebx
shr ecx, 0x1a
and ecx, 7
shl eax, 3
or ecx, eax
mov eax, dword [r9 + 0x1c]
mov dword [r9 + 0x18], ecx
mov ecx, ebx
shr ecx, 0x17
and ecx, 7
shl eax, 3
or ecx, eax
shl ebx, 9
mov dword [r9 + 0x1c], ecx
add r9, 0x20
cmp r14d, 0x10
jg 0x1401af95e
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
cmp r9, r12
jb 0x1401af870
jmp 0x1401af3a4
cmp r9, r12
jae 0x1401af3a4
mov r8d, 0x20
sub r8d, r14d
nop
mov ecx, dword [r9]
mov eax, ebx
movzx edx, word [r15]
shl ecx, 4
shr eax, 0x1c
or ecx, eax
mov eax, dword [r9 + 4]
mov dword [r9], ecx
mov ecx, ebx
shr ecx, 0x18
and ecx, 0xf
shl eax, 4
or ecx, eax
mov eax, dword [r9 + 8]
mov dword [r9 + 4], ecx
mov ecx, ebx
shr ecx, 0x14
and ecx, 0xf
shl eax, 4
or ecx, eax
mov eax, dword [r9 + 0xc]
mov dword [r9 + 8], ecx
mov ecx, ebx
shr ecx, 0x10
and ecx, 0xf
shl eax, 4
or ecx, eax
shl ebx, 0x10
mov dword [r9 + 0xc], ecx
mov ecx, r8d
shl edx, cl
mov ecx, dword [r9 + 0x10]
or edx, ebx
movzx ebx, word [r15 + 2]
mov eax, edx
shl ecx, 4
add r15, 4
shr eax, 0x1c
or ecx, eax
mov eax, dword [r9 + 0x14]
mov dword [r9 + 0x10], ecx
mov ecx, edx
shr ecx, 0x18
and ecx, 0xf
shl eax, 4
or ecx, eax
mov eax, dword [r9 + 0x18]
mov dword [r9 + 0x14], ecx
mov ecx, edx
shr ecx, 0x14
and ecx, 0xf
shl eax, 4
or ecx, eax
mov eax, dword [r9 + 0x1c]
mov dword [r9 + 0x18], ecx
mov ecx, edx
shr ecx, 0x10
and ecx, 0xf
shl eax, 4
or ecx, eax
shl edx, 0x10
mov dword [r9 + 0x1c], ecx
mov ecx, r8d
shl ebx, cl
add r9, 0x20
or ebx, edx
cmp r9, r12
jb 0x1401af980
jmp 0x1401af3a4
cmp r9, r12
jae 0x1401af3a4
mov edx, 0x10
sub edx, r14d
nop dword [rax]
nop dword [rax + rax]
mov ecx, dword [r9]
mov eax, ebx
shl ecx, 5
sub r14d, 0xf
shr eax, 0x1b
add edx, 0xf
or ecx, eax
mov eax, dword [r9 + 4]
mov dword [r9], ecx
mov ecx, ebx
shr ecx, 0x16
and ecx, 0x1f
shl eax, 5
or ecx, eax
mov eax, dword [r9 + 8]
mov dword [r9 + 4], ecx
mov ecx, ebx
shr ecx, 0x11
and ecx, 0x1f
shl eax, 5
or ecx, eax
shl ebx, 0xf
mov dword [r9 + 8], ecx
cmp r14d, 0x10
jg 0x1401afacf
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
mov ecx, dword [r9 + 0xc]
mov eax, ebx
shl ecx, 5
sub r14d, 0xf
shr eax, 0x1b
add edx, 0xf
or ecx, eax
mov eax, dword [r9 + 0x10]
mov dword [r9 + 0xc], ecx
mov ecx, ebx
shr ecx, 0x16
and ecx, 0x1f
shl eax, 5
or ecx, eax
mov eax, dword [r9 + 0x14]
mov dword [r9 + 0x10], ecx
mov ecx, ebx
shr ecx, 0x11
and ecx, 0x1f
shl eax, 5
or ecx, eax
shl ebx, 0xf
mov dword [r9 + 0x14], ecx
cmp r14d, 0x10
jg 0x1401afb30
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
mov ecx, dword [r9 + 0x18]
mov eax, ebx
shl ecx, 5
sub r14d, 0xa
shr eax, 0x1b
add edx, 0xa
or ecx, eax
mov eax, dword [r9 + 0x1c]
mov dword [r9 + 0x18], ecx
mov ecx, ebx
shr ecx, 0x16
and ecx, 0x1f
shl eax, 5
or ecx, eax
shl ebx, 0xa
mov dword [r9 + 0x1c], ecx
add r9, 0x20
cmp r14d, 0x10
jg 0x1401afb80
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
cmp r9, r12
jb 0x1401afa70
jmp 0x1401af3a4
cmp r9, r12
jae 0x1401af3a4
mov edx, 0x10
sub edx, r14d
nop
mov ecx, dword [r9]
mov eax, ebx
shl ecx, 6
sub r14d, 0xc
shr eax, 0x1a
add edx, 0xc
or ecx, eax
mov eax, dword [r9 + 4]
mov dword [r9], ecx
mov ecx, ebx
shr ecx, 0x14
and ecx, 0x3f
shl eax, 6
or ecx, eax
shl ebx, 0xc
mov dword [r9 + 4], ecx
cmp r14d, 0x10
jg 0x1401afbea
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
mov ecx, dword [r9 + 8]
mov eax, ebx
shl ecx, 6
sub r14d, 0xc
shr eax, 0x1a
add edx, 0xc
or ecx, eax
mov eax, dword [r9 + 0xc]
mov dword [r9 + 8], ecx
mov ecx, ebx
shr ecx, 0x14
and ecx, 0x3f
shl eax, 6
or ecx, eax
shl ebx, 0xc
mov dword [r9 + 0xc], ecx
cmp r14d, 0x10
jg 0x1401afc36
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
mov ecx, dword [r9 + 0x10]
mov eax, ebx
shl ecx, 6
sub r14d, 0xc
shr eax, 0x1a
add edx, 0xc
or ecx, eax
mov eax, dword [r9 + 0x14]
mov dword [r9 + 0x10], ecx
mov ecx, ebx
shr ecx, 0x14
and ecx, 0x3f
shl eax, 6
or ecx, eax
shl ebx, 0xc
mov dword [r9 + 0x14], ecx
cmp r14d, 0x10
jg 0x1401afc82
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
mov ecx, dword [r9 + 0x18]
mov eax, ebx
shl ecx, 6
sub r14d, 0xc
shr eax, 0x1a
add edx, 0xc
or ecx, eax
mov eax, dword [r9 + 0x1c]
mov dword [r9 + 0x18], ecx
mov ecx, ebx
shr ecx, 0x14
and ecx, 0x3f
shl eax, 6
or ecx, eax
shl ebx, 0xc
mov dword [r9 + 0x1c], ecx
add r9, 0x20
cmp r14d, 0x10
jg 0x1401afcd2
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
cmp r9, r12
jb 0x1401afba0
jmp 0x1401af3a4
cmp r9, r12
jae 0x1401af3a4
mov edx, 0x10
sub edx, r14d
mov ecx, dword [r9]
mov eax, ebx
shl ecx, 7
sub r14d, 0xe
shr eax, 0x19
add edx, 0xe
or ecx, eax
mov eax, dword [r9 + 4]
mov dword [r9], ecx
mov ecx, ebx
shr ecx, 0x12
and ecx, 0x7f
shl eax, 7
or ecx, eax
shl ebx, 0xe
mov dword [r9 + 4], ecx
cmp r14d, 0x10
jg 0x1401afd3b
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
mov ecx, dword [r9 + 8]
mov eax, ebx
shl ecx, 7
sub r14d, 0xe
shr eax, 0x19
add edx, 0xe
or ecx, eax
mov eax, dword [r9 + 0xc]
mov dword [r9 + 8], ecx
mov ecx, ebx
shr ecx, 0x12
and ecx, 0x7f
shl eax, 7
or ecx, eax
shl ebx, 0xe
mov dword [r9 + 0xc], ecx
cmp r14d, 0x10
jg 0x1401afd87
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
mov ecx, dword [r9 + 0x10]
mov eax, ebx
shl ecx, 7
sub r14d, 0xe
shr eax, 0x19
add edx, 0xe
or ecx, eax
mov eax, dword [r9 + 0x14]
mov dword [r9 + 0x10], ecx
mov ecx, ebx
shr ecx, 0x12
and ecx, 0x7f
shl eax, 7
or ecx, eax
shl ebx, 0xe
mov dword [r9 + 0x14], ecx
cmp r14d, 0x10
jg 0x1401afdd3
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
mov ecx, dword [r9 + 0x18]
mov eax, ebx
shl ecx, 7
sub r14d, 0xe
shr eax, 0x19
add edx, 0xe
or ecx, eax
mov eax, dword [r9 + 0x1c]
mov dword [r9 + 0x18], ecx
mov ecx, ebx
shr ecx, 0x12
and ecx, 0x7f
shl eax, 7
or ecx, eax
shl ebx, 0xe
mov dword [r9 + 0x1c], ecx
add r9, 0x20
cmp r14d, 0x10
jg 0x1401afe23
movzx eax, word [r15]
mov ecx, edx
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub edx, 0x10
cmp r9, r12
jb 0x1401afcf1
jmp 0x1401af3a4
cmp r9, r12
jae 0x1401af3a4
mov r10d, 0x20
sub r10d, r14d
nop dword [rax]
nop word [rax + rax]
mov ecx, dword [r9]
mov eax, ebx
movzx edx, word [r15]
movzx r8d, word [r15 + 2]
shr eax, 0x18
shl ecx, 8
or ecx, eax
mov eax, ebx
mov dword [r9], ecx
shr eax, 0x10
movzx ecx, al
mov eax, dword [r9 + 4]
shl eax, 8
or ecx, eax
shl ebx, 0x10
mov dword [r9 + 4], ecx
mov ecx, r10d
shl edx, cl
mov ecx, dword [r9 + 8]
or edx, ebx
movzx ebx, word [r15 + 6]
mov eax, edx
shr eax, 0x18
shl ecx, 8
or ecx, eax
mov eax, edx
mov dword [r9 + 8], ecx
shr eax, 0x10
movzx ecx, al
mov eax, dword [r9 + 0xc]
shl eax, 8
or ecx, eax
shl edx, 0x10
mov dword [r9 + 0xc], ecx
mov ecx, r10d
shl r8d, cl
mov ecx, dword [r9 + 0x10]
or r8d, edx
movzx edx, word [r15 + 4]
mov eax, r8d
shr eax, 0x18
add r15, 8
shl ecx, 8
or ecx, eax
mov eax, r8d
mov dword [r9 + 0x10], ecx
shr eax, 0x10
movzx ecx, al
mov eax, dword [r9 + 0x14]
shl eax, 8
or ecx, eax
shl r8d, 0x10
mov dword [r9 + 0x14], ecx
mov ecx, r10d
shl edx, cl
mov ecx, dword [r9 + 0x18]
or edx, r8d
shl ecx, 8
mov eax, edx
shr eax, 0x18
or ecx, eax
mov eax, edx
shr eax, 0x10
mov dword [r9 + 0x18], ecx
movzx ecx, al
mov eax, dword [r9 + 0x1c]
shl eax, 8
or ecx, eax
shl edx, 0x10
mov dword [r9 + 0x1c], ecx
mov ecx, r10d
shl ebx, cl
add r9, 0x20
or ebx, edx
cmp r9, r12
jb 0x1401afe50
jmp 0x1401af3a4
mov r10d, 0x20
sub r10d, r11d
cmp r9, r12
jae 0x1401af3a4
mov edi, r11d
mov r8d, 0x10
neg edi
sub r8d, r14d
mov edx, dword [r9]
mov ecx, r11d
shl edx, cl
mov eax, ebx
mov ecx, r10d
sub r14d, r11d
shr eax, cl
sub r8d, edi
or edx, eax
mov ecx, r11d
shl ebx, cl
mov dword [r9], edx
cmp r14d, 0x10
jg 0x1401aff9d
movzx eax, word [r15]
mov ecx, r8d
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub r8d, 0x10
mov edx, dword [r9 + 4]
mov ecx, r11d
shl edx, cl
mov eax, ebx
mov ecx, r10d
sub r14d, r11d
shr eax, cl
sub r8d, edi
or edx, eax
mov ecx, r11d
mov dword [r9 + 4], edx
add r9, 8
shl ebx, cl
cmp r14d, 0x10
jg 0x1401affdf
movzx eax, word [r15]
mov ecx, r8d
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub r8d, 0x10
cmp r9, r12
jb 0x1401aff61
jmp 0x1401af3a0
lea edi, [r11 - 0x10]
test edi, edi
jg 0x1401b00ac
mov r10d, 0x20
sub r10d, r11d
cmp r9, r12
jae 0x1401af3a0
mov edi, r11d
mov r8d, 0x10
neg edi
sub r8d, r14d
nop dword [rax]
mov edx, dword [r9]
mov ecx, r11d
shl edx, cl
mov eax, ebx
mov ecx, r10d
sub r14d, r11d
shr eax, cl
sub r8d, edi
or edx, eax
mov ecx, r11d
shl ebx, cl
mov dword [r9], edx
cmp r14d, 0x10
jg 0x1401b005c
movzx eax, word [r15]
mov ecx, r8d
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub r8d, 0x10
mov edx, dword [r9 + 4]
mov ecx, r11d
shl edx, cl
mov eax, ebx
mov ecx, r10d
sub r14d, r11d
shr eax, cl
sub r8d, edi
or edx, eax
mov ecx, r11d
mov dword [r9 + 4], edx
add r9, 8
shl ebx, cl
cmp r14d, 0x10
jg 0x1401b009e
movzx eax, word [r15]
mov ecx, r8d
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub r8d, 0x10
cmp r9, r12
jb 0x1401b0020
jmp 0x1401af3a0
cmp r9, r12
jae 0x1401af3a0
mov r11d, 0x20
mov r10d, r14d
sub r11d, edi
neg r10d
mov esi, edi
neg esi
nop dword [rax + rax]
mov r8d, dword [r9]
add r10d, 0x10
movzx edx, word [r15]
mov eax, ebx
shr eax, 0x10
sub r14d, 0x10
shl r8d, 0x10
add r15, 2
or r8d, eax
lea ecx, [r10 + 0x10]
shl edx, cl
mov eax, ebx
shl eax, 0x10
mov ecx, edi
shl r8d, cl
sub r10d, esi
mov ecx, r11d
mov ebx, edx
or ebx, eax
add r10d, 0xfffffff0
mov eax, ebx
shr eax, cl
mov ecx, edi
or r8d, eax
shl ebx, cl
mov eax, 0x10
mov dword [r9], r8d
sub eax, edi
add r9, 4
add r14d, eax
cmp r14d, 0x10
jg 0x1401b0147
movzx eax, word [r15]
lea ecx, [r10 + 0x10]
shl eax, cl
add r15, 2
or ebx, eax
add r14d, 0x10
sub r10d, 0x10
cmp r9, r12
jb 0x1401b00d0
jmp 0x1401af39a
cmp r8d, 1
jne 0x1401b0236
xor ecx, ecx
mov r11, r12
sub r11, r10
mov edi, ecx
add r11, 3
shr r11, 2
cmp r10, r12
cmova r11, rcx
test r11, r11
je 0x1401b0476
xor esi, esi
lea r12, [0x140000000]
nop word [rax + rax]
mov r8d, esi
test ebx, 0xff000000
jne 0x1401b01df
mov ecx, 0x10
sub ecx, r14d
nop dword [rax]
nop word [rax + rax]
add r8d, 8
shl ebx, 8
sub r14d, 8
add ecx, 8
cmp r14d, 0x10
jg 0x1401b01d7
movzx eax, word [r15]
add r14d, 0x10
shl eax, cl
add r15, 2
or ebx, eax
sub ecx, 0x10
test ebx, 0xff000000
je 0x1401b01b0
mov eax, ebx
shr rax, 0x18
mov r9d, dword [r12 + rax*4 + 0x21b4a0]
or eax, 0xffffffff
sub eax, r9d
add r14d, eax
lea ecx, [r9 + 1]
shl ebx, cl
cmp r14d, 0x10
jg 0x1401b021a
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
lea eax, [r9 + r8]
inc rdi
mov dword [r10], eax
add r10, 4
cmp rdi, r11
jb 0x1401b0190
jmp 0x1401af395
test r9d, r9d
je 0x1401b0387
lea rdi, [rsp + 0x50]
mov eax, r13d
test r13d, r13d
jns 0x1401b0250
lea eax, [r13 + 1]
sar eax, 1
lea rcx, [rsp + 0x50]
xor r8d, r8d
cdqe
mov r11d, r8d
lea r13, [0x140000000]
lea rsi, [rax*4 + 3]
shr rsi, 2
lea rcx, [rcx + rax*4]
lea rax, [rsp + 0x50]
cmp rax, rcx
cmova rsi, r8
test rsi, rsi
je 0x1401b0338
xor r12d, r12d
nop
mov r8d, r12d
test ebx, 0xff000000
jne 0x1401b02df
mov ecx, 0x10
sub ecx, r14d
nop dword [rax]
nop word [rax + rax]
add r8d, 8
shl ebx, 8
sub r14d, 8
add ecx, 8
cmp r14d, 0x10
jg 0x1401b02d7
movzx eax, word [r15]
add r14d, 0x10
shl eax, cl
add r15, 2
or ebx, eax
sub ecx, 0x10
test ebx, 0xff000000
je 0x1401b02b0
mov eax, ebx
shr rax, 0x18
mov r9d, dword [r13 + rax*4 + 0x21b4a0]
or eax, 0xffffffff
sub eax, r9d
add r14d, eax
lea ecx, [r9 + 1]
shl ebx, cl
cmp r14d, 0x10
jg 0x1401b031a
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
lea eax, [r9 + r8]
inc r11
mov dword [rdi], eax
add rdi, 4
cmp r11, rsi
jb 0x1401b0290
mov r12, qword [rsp + 0x28]
xor r8d, r8d
lea rdx, [rsp + 0x50]
cmp r10, r12
jae 0x1401af39a
nop word [rax + rax]
mov eax, dword [rdx]
lea rdx, [rdx + 4]
cmp eax, 0x23
cmovge eax, r8d
movsxd rcx, eax
movzx eax, byte [rcx + r13 + 0x21b450]
mov dword [r10], eax
movzx eax, byte [rcx + r13 + 0x21b478]
mov dword [r10 + 4], eax
add r10, 8
cmp r10, r12
jb 0x1401b0350
jmp 0x1401af39a
xor eax, eax
mov r8d, eax
test ebx, 0xff000000
jne 0x1401b03cf
mov ecx, 0x10
sub ecx, r14d
nop dword [rax]
add r8d, 8
shl ebx, 8
sub r14d, 8
add ecx, 8
cmp r14d, 0x10
jg 0x1401b03c7
movzx eax, word [r15]
add r14d, 0x10
shl eax, cl
add r15, 2
or ebx, eax
sub ecx, 0x10
test ebx, 0xff000000
je 0x1401b03a0
mov eax, ebx
lea rcx, [0x140000000]
shr rax, 0x18
mov r9d, dword [rcx + rax*4 + 0x21b4a0]
or eax, 0xffffffff
sub eax, r9d
add r14d, eax
lea ecx, [r9 + 1]
shl ebx, cl
cmp r14d, 0x10
jg 0x1401b0411
movzx edx, word [r15]
mov ecx, 0x10
sub ecx, r14d
add r15, 2
shl edx, cl
or ebx, edx
add r14d, 0x10
lea eax, [r9 + r8]
lea ecx, [rax + 1]
cmp ecx, 5
jl 0x1401b0442
jne 0x1401b0440
mov edx, dword [0x1402132dc]
lea eax, [rdi - 1]
and eax, 0x3f
mov ecx, 0x40
sub ecx, eax
mov eax, edx
sub eax, edi
inc eax
cmp eax, ecx
jge 0x1401b0448
mov ecx, eax
jmp 0x1401b0448
mov ecx, eax
mov edx, dword [0x1402132dc]
dec edi
add edi, ecx
cmp edi, edx
jg 0x1401b048e
lea eax, [rcx - 1]
xor edx, edx
imul eax, r13d
mov rcx, r10
cdqe
lea r12, [r12 + rax*4]
mov r8, r12
sub r8, r10
and r8, 0xfffffffffffffffc
call sub.VCRUNTIME140.dll_memset
jmp 0x1401af3a4
mov edi, dword [rsp + 0x20]
jmp 0x1401af3aa
mov edi, dword [rsp + 0x20]
mov esi, dword [0x1402132d8]
jmp 0x1401af3aa
lea rcx, str.Decoded_more_blocks_than_in_scanline.__Check__s_value._n
call fcn.1401ac020
mov rcx, qword [rbp + 0x33fe0]
xor rcx, rsp
call fcn.1401b1540
lea r11, [rsp + 0x340f0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1401b18e0
int3