Function at 0x140209d60
Capabilities:
Encrypt data using rc4 ksa
Inspect section memory permissions

Disassembly:
push r15
mov eax, 0x1f38
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
call fcn.1400111d0
sub rsp, rax
movups xmmword [rsp + 0x1ef0], xmm6
movups xmmword [rsp + 0x1f00], xmm7
movups xmmword [rsp + 0x1f10], xmm8
movups xmmword [rsp + 0x1f20], xmm9
pxor xmm0, xmm0
mov r15, qword [rcx]
mov qword [rcx + 0x18], 0
mov qword [rsp + 0x1f80], rcx
movups xmmword [rcx + 8], xmm0
mov rcx, r15
call fcn.1401fd8d0
test eax, eax
je 0x140209e40
mov dword [rsp + 0x60], 0
xor edi, edi
xor ebx, ebx
xor esi, esi
mov dword [rsp + 0x58], 0
mov ebp, 0x10000000
mov dword [rsp + 0x5c], 0
mov dword [rsp + 0x68], 0
mov dword [rsp + 0x44], 1
mov byte [rsp + 0x73], 0
mov byte [rsp + 0x72], 0
mov rcx, r15
call fcn.140203970
mov rcx, r15
mov r13d, eax
call fcn.140203970
cmp eax, 0x49484452
je 0x14020a7b3
ja 0x140209eb8
cmp eax, 0x49444154
je 0x14020a75a
cmp eax, 0x49454e44
jne 0x140209e88
cmp dword [rsp + 0x44], 0
je 0x140209f47
mov dword [rsp + 0x44], 0
mov eax, dword [rsp + 0x44]
movups xmm6, xmmword [rsp + 0x1ef0]
movups xmm7, xmmword [rsp + 0x1f00]
movups xmm8, xmmword [rsp + 0x1f10]
movups xmm9, xmmword [rsp + 0x1f20]
add rsp, 0x1f38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp eax, 0x43674249
jne 0x14020a734
mov edx, r13d
mov rcx, r15
call fcn.14020e5f0
mov dword [rsp + 0x60], 1
mov rcx, r15
call fcn.140203970
jmp 0x140209dff
cmp eax, 0x504c5445
je 0x14020a8e9
cmp eax, 0x74524e53
jne 0x14020a734
cmp dword [rsp + 0x44], 0
jne 0x140209e40
mov rax, qword [rsp + 0x1f80]
cmp qword [rax + 8], 0
jne 0x140209e40
cmp byte [rsp + 0x72], 0
je 0x14020a973
test edi, edi
je 0x140209e40
cmp edi, r13d
jb 0x140209e40
test r13d, r13d
je 0x140209f3d
lea eax, [r13 - 1]
lea r14, [rsp + 0x303]
lea r13, [rsp + rax*4 + 0x307]
nop dword [rax]
mov rcx, r15
add r14, 4
call fcn.140203e40
mov byte [r14 - 4], al
cmp r14, r13
jne 0x140209f28
mov byte [rsp + 0x72], 4
jmp 0x140209ea6
mov rax, qword [rsp + 0x1f80]
mov rdi, qword [rax + 8]
test rdi, rdi
je 0x140209e40
mov eax, dword [r15 + 4]
mov ebx, dword [rsp + 0x58]
mov edx, dword [r15 + 8]
imul ebx, dword [r15]
imul edx, eax
add ebx, 7
shr ebx, 3
imul ebx, edx
add ebx, eax
movsxd rbx, ebx
mov rcx, rbx
call sub.msvcrt.dll_malloc
mov rdx, rax
test rax, rax
je 0x14020ab77
movq xmm0, rdx
movsxd rax, esi
add rdx, rbx
mov qword [rsp + 0xef0], rdi
add rax, rdi
punpcklqdq xmm0, xmm0
cmp dword [rsp + 0x60], 0
mov qword [rsp + 0xf18], rdx
mov qword [rsp + 0xef8], rax
mov dword [rsp + 0xf20], 1
movups xmmword [rsp + 0xf08], xmm0
je 0x14020cf1c
mov qword [rsp + 0xf00], 0
mov qword [rsp + 0xa0], r15
nop dword [rax]
mov r9d, dword [rsp + 0xf00]
mov eax, dword [rsp + 0xf04]
test r9d, r9d
jg 0x14020a061
mov r10, qword [rsp + 0xef8]
mov rdx, qword [rsp + 0xef0]
mov ecx, r9d
cmp r10, rdx
jbe 0x14020a051
nop dword [rax]
lea r8, [rdx + 1]
mov qword [rsp + 0xef0], r8
movzx edx, byte [rdx]
shl edx, cl
add ecx, 8
or eax, edx
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], eax
cmp ecx, 0x18
jg 0x14020a051
mov rdx, r8
cmp r10, rdx
ja 0x14020a020
mov edx, 0x18
sub edx, r9d
and edx, 0xfffffff8
lea r9d, [r9 + rdx + 8]
mov r15d, eax
lea ecx, [r9 - 1]
shr eax, 1
mov dword [rsp + 0xf04], eax
and r15d, 1
mov dword [rsp + 0xf00], ecx
cmp ecx, 1
jg 0x14020a0e1
mov r10, qword [rsp + 0xef8]
mov rdx, qword [rsp + 0xef0]
cmp r10, rdx
jbe 0x14020a0d1
nop word cs:[rax + rax]
lea r8, [rdx + 1]
mov qword [rsp + 0xef0], r8
movzx edx, byte [rdx]
shl edx, cl
add ecx, 8
or eax, edx
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], eax
cmp ecx, 0x18
jg 0x14020a0d1
mov rdx, r8
cmp r10, rdx
ja 0x14020a0a0
mov edx, 0x19
sub edx, r9d
and edx, 0xfffffff8
lea ecx, [r9 + rdx + 7]
mov edx, eax
sub ecx, 2
shr edx, 2
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], edx
and eax, 3
je 0x14020a9ee
cmp eax, 3
je 0x14020ab6a
cmp eax, 1
jne 0x14020ba99
cmp byte [0x14021f01f], 0
lea r8, [0x14021eee0]
je 0x14020c66a
mov edx, 0x11
lea r10, [rsp + 0x700]
xor eax, eax
mov rcx, rdx
mov rdi, r10
rep stosd dword [rdi], eax
lea rdi, [rsp + 0xf28]
mov qword [rsp + 0xf24], 0
mov qword [rsp + 0x131c], 0
mov rdx, rcx
mov ecx, 0x7f
mov rax, rdx
rep stosq qword [rdi], rax
lea rax, [0x14021eee0]
lea rcx, [rax + 0x120]
nop dword [rax]
movzx edx, byte [rax]
add rax, 1
add dword [rsp + rdx*4 + 0x700], 1
cmp rax, rcx
jne 0x14020a180
mov ecx, dword [rsp + 0x704]
mov dword [rsp + 0x700], 0
cmp ecx, 2
jg 0x14020ab6a
mov edx, dword [rsp + 0x708]
cmp edx, 4
jg 0x14020ab6a
mov ebx, dword [rsp + 0x70c]
cmp ebx, 8
jg 0x14020ab6a
mov r9d, dword [rsp + 0x710]
cmp r9d, 0x10
jg 0x14020ab6a
mov r11d, dword [rsp + 0x714]
cmp r11d, 0x20
jg 0x14020ab6a
mov esi, dword [rsp + 0x718]
cmp esi, 0x40
jg 0x14020ab6a
mov ebp, dword [rsp + 0x71c]
cmp ebp, 0x80
jg 0x14020ab6a
mov r12d, dword [rsp + 0x720]
cmp r12d, 0x100
jg 0x14020ab6a
mov edi, dword [rsp + 0x724]
cmp edi, 0x200
jg 0x14020ab6a
mov r13d, dword [rsp + 0x728]
cmp r13d, 0x400
jg 0x14020ab6a
mov eax, dword [rsp + 0x72c]
mov dword [rsp + 0x48], eax
cmp eax, 0x800
jg 0x14020ab6a
mov eax, dword [rsp + 0x730]
mov dword [rsp + 0x50], eax
cmp eax, 0x1000
jg 0x14020ab6a
mov eax, dword [rsp + 0x734]
mov dword [rsp + 0x64], eax
cmp eax, 0x2000
jg 0x14020ab6a
mov eax, dword [rsp + 0x738]
mov dword [rsp + 0x6c], eax
cmp eax, 0x4000
jg 0x14020ab6a
mov eax, dword [rsp + 0x73c]
mov dword [rsp + 0x74], eax
cmp eax, 0x8000
jg 0x14020ab6a
mov eax, ecx
mov dword [rsp + 0x134], 0
shl eax, 0xf
mov word [rsp + 0x138c], cx
mov dword [rsp + 0x1348], eax
lea eax, [rcx + rcx]
mov dword [rsp + 0x138], eax
mov word [rsp + 0x1328], ax
add eax, edx
mov word [rsp + 0x1326], 0
mov word [rsp + 0x138a], 0
cmp eax, 4
jle 0x14020a315
test edx, edx
jne 0x14020ab6a
mov r14d, eax
add eax, eax
add edx, ecx
mov dword [rsp + 0x13c], eax
shl r14d, 0xe
mov word [rsp + 0x132a], ax
add eax, ebx
mov dword [rsp + 0x134c], r14d
mov word [rsp + 0x138e], dx
cmp eax, 8
jle 0x14020a34e
test ebx, ebx
jne 0x14020ab6a
mov ecx, eax
add edx, ebx
add eax, eax
shl ecx, 0xd
mov dword [rsp + 0x140], eax
mov word [rsp + 0x132c], ax
add eax, r9d
mov dword [rsp + 0x1350], ecx
mov word [rsp + 0x1390], dx
test r9d, r9d
je 0x14020a386
cmp eax, 0x10
jg 0x14020ab6a
mov ecx, eax
add edx, r9d
add eax, eax
shl ecx, 0xc
mov dword [rsp + 0x144], eax
mov word [rsp + 0x132e], ax
add eax, r11d
mov dword [rsp + 0x1354], ecx
mov word [rsp + 0x1392], dx
test r11d, r11d
je 0x14020a3bf
cmp eax, 0x20
jg 0x14020ab6a
mov ecx, eax
add eax, eax
add edx, r11d
mov dword [rsp + 0x148], eax
shl ecx, 0xb
mov word [rsp + 0x1330], ax
add eax, esi
mov dword [rsp + 0x1358], ecx
mov word [rsp + 0x1394], dx
cmp eax, 0x40
jle 0x14020a3f6
test esi, esi
jne 0x14020ab6a
mov ecx, eax
add eax, eax
add edx, esi
mov dword [rsp + 0x14c], eax
shl ecx, 0xa
mov word [rsp + 0x1332], ax
add eax, ebp
mov dword [rsp + 0x135c], ecx
mov word [rsp + 0x1396], dx
cmp eax, 0x80
jle 0x14020a42e
test ebp, ebp
jne 0x14020ab6a
mov ecx, eax
add eax, eax
add edx, ebp
mov dword [rsp + 0x150], eax
shl ecx, 9
mov word [rsp + 0x1334], ax
add eax, r12d
mov dword [rsp + 0x1360], ecx
mov word [rsp + 0x1398], dx
cmp eax, 0x100
jle 0x14020a468
test r12d, r12d
jne 0x14020ab6a
mov ecx, eax
add edx, r12d
add eax, eax
shl ecx, 8
mov dword [rsp + 0x154], eax
mov word [rsp + 0x1336], ax
add eax, edi
mov dword [rsp + 0x1364], ecx
mov word [rsp + 0x139a], dx
test edi, edi
je 0x14020a4a1
cmp eax, 0x200
jg 0x14020ab6a
mov ecx, eax
add eax, eax
add edx, edi
mov dword [rsp + 0x158], eax
shl ecx, 7
mov word [rsp + 0x1338], ax
add eax, r13d
mov dword [rsp + 0x1368], ecx
mov word [rsp + 0x139c], dx
cmp eax, 0x400
jle 0x14020a4db
test r13d, r13d
jne 0x14020ab6a
mov esi, dword [rsp + 0x48]
mov ecx, eax
add eax, eax
add r13d, edx
mov dword [rsp + 0x15c], eax
shl ecx, 6
mov word [rsp + 0x133a], ax
add eax, esi
mov dword [rsp + 0x136c], ecx
mov word [rsp + 0x139e], r13w
cmp eax, 0x800
jle 0x14020a519
test esi, esi
jne 0x14020ab6a
mov edx, eax
mov esi, dword [rsp + 0x50]
add eax, eax
add r13d, dword [rsp + 0x48]
shl edx, 5
mov dword [rsp + 0x160], eax
mov word [rsp + 0x133c], ax
add eax, esi
mov dword [rsp + 0x1370], edx
mov word [rsp + 0x13a0], r13w
test esi, esi
je 0x14020a559
cmp eax, 0x1000
jg 0x14020ab6a
mov r14d, dword [rsp + 0x50]
mov esi, dword [rsp + 0x64]
mov edx, eax
add eax, eax
mov dword [rsp + 0x164], eax
shl edx, 4
mov word [rsp + 0x133e], ax
add r14d, r13d
add eax, esi
mov dword [rsp + 0x1374], edx
mov word [rsp + 0x13a2], r14w
cmp eax, 0x2000
jle 0x14020a59c
test esi, esi
jne 0x14020ab6a
mov esi, dword [rsp + 0x6c]
lea edx, [rax*8]
add r14d, dword [rsp + 0x64]
add eax, eax
mov dword [rsp + 0x168], eax
mov word [rsp + 0x1340], ax
add eax, esi
mov dword [rsp + 0x1378], edx
mov word [rsp + 0x13a4], r14w
test esi, esi
je 0x14020a5de
cmp eax, 0x4000
jg 0x14020ab6a
mov esi, dword [rsp + 0x74]
lea edx, [rax*4]
add r14d, dword [rsp + 0x6c]
add eax, eax
mov dword [rsp + 0x16c], eax
mov word [rsp + 0x1342], ax
add eax, esi
mov dword [rsp + 0x137c], edx
mov word [rsp + 0x13a6], r14w
test esi, esi
je 0x14020a620
cmp eax, 0x8000
jg 0x14020ab6a
add eax, eax
xor edx, edx
mov r13d, 1
mov r12d, 0x10
mov dword [rsp + 0x1380], eax
mov dword [rsp + 0x1384], 0x10000
jmp 0x14020a665
add r9d, 1
mov dword [rsp + r11*4 + 0x130], r9d
add rdx, 1
cmp rdx, 0x120
je 0x14020ab8c
movzx edi, byte [r8 + rdx]
mov ecx, edi
test edi, edi
je 0x14020a654
movsxd r11, edi
mov r9d, dword [rsp + r11*4 + 0x130]
movzx ebx, word [rsp + r11*2 + 0x1324]
mov eax, r9d
sub eax, ebx
movzx ebx, word [rsp + r11*2 + 0x1388]
add eax, ebx
cdqe
mov byte [rsp + rax + 0x13a8], dil
mov word [rsp + rax*2 + 0x14c8], dx
cmp edi, 9
jg 0x14020a648
mov ebx, r9d
lea eax, [r9 + r9]
mov esi, edi
sar ebx, 1
and eax, 0xaaaa
shl esi, 9
and ebx, 0x5555
or esi, edx
or ebx, eax
mov eax, ebx
shl ebx, 2
sar eax, 2
and ebx, 0xcccc
and eax, 0x3333
or eax, ebx
mov ebx, eax
shl eax, 4
sar ebx, 4
and eax, 0xf0f0
and ebx, 0xf0f
or ebx, eax
mov eax, ebx
shl ebx, 8
movzx ebp, bx
mov ebx, r13d
sar eax, 8
shl ebx, cl
mov ecx, r12d
or eax, ebp
sub ecx, edi
movsxd rbx, ebx
sar eax, cl
lea rcx, [rsp + 0xef0]
cdqe
nop dword [rax + rax]
mov word [rcx + rax*2 + 0x34], si
add rax, rbx
cmp eax, 0x1ff
jle 0x14020a720
jmp 0x14020a648
cmp dword [rsp + 0x44], 0
jne 0x140209e40
test eax, 0x20000000
je 0x14020d01b
mov edx, r13d
mov rcx, r15
call fcn.14020e5f0
jmp 0x140209ea6
cmp dword [rsp + 0x44], 0
jne 0x140209e40
cmp byte [rsp + 0x72], 0
je 0x14020a774
test edi, edi
je 0x140209e40
lea r14d, [rsi + r13]
cmp r14d, esi
jl 0x140209e40
cmp r14d, ebx
ja 0x14020c362
mov rax, qword [rsp + 0x1f80]
mov edx, esi
mov r8d, r13d
mov rcx, r15
add rdx, qword [rax + 8]
call fcn.140203ff0
test eax, eax
je 0x140209e40
mov esi, r14d
jmp 0x140209ea6
cmp dword [rsp + 0x44], 0
je 0x140209e40
cmp r13d, 0xd
jne 0x140209e40
mov rcx, r15
call fcn.140203970
mov dword [r15], eax
cmp eax, 0x1000000
ja 0x140209e40
mov rcx, r15
call fcn.140203970
mov dword [r15 + 4], eax
cmp eax, 0x1000000
ja 0x140209e40
mov rcx, r15
call fcn.140203e40
movzx edx, al
sub eax, 4
mov dword [rsp + 0x58], edx
test al, 0xfb
je 0x14020a817
lea eax, [rdx - 1]
cmp eax, 1
ja 0x140209e40
mov rcx, r15
call fcn.140203e40
mov r12d, eax
movzx eax, al
mov dword [rsp + 0x5c], eax
cmp eax, 6
jg 0x140209e40
cmp eax, 3
je 0x14020cbd8
test r12b, 1
jne 0x140209e40
mov rcx, r15
call fcn.140203e40
test al, al
jne 0x140209e40
mov rcx, r15
call fcn.140203e40
test al, al
jne 0x140209e40
mov rcx, r15
call fcn.140203e40
movzx eax, al
mov dword [rsp + 0x68], eax
sub eax, 1
jg 0x140209e40
mov ecx, dword [r15]
test ecx, ecx
je 0x140209e40
mov r8d, dword [r15 + 4]
test r8d, r8d
je 0x140209e40
cmp byte [rsp + 0x72], 0
jne 0x14020a9d2
and r12d, 2
mov edx, dword [rsp + 0x5c]
cmp r12b, 1
sbb eax, eax
sar edx, 2
and eax, 0xfffffffe
lea r9d, [rax + rdx + 3]
mov eax, 0x40000000
xor edx, edx
div ecx
mov dword [r15 + 8], r9d
xor edx, edx
div r9d
cmp r8d, eax
ja 0x140209e40
mov rcx, r15
mov dword [rsp + 0x44], 0
call fcn.140203970
jmp 0x140209dff
cmp r13d, 0x300
ja 0x140209e40
cmp dword [rsp + 0x44], 0
jne 0x140209e40
mov ecx, 3
mov eax, r13d
xor edx, edx
div ecx
mov r14d, eax
mov edi, eax
lea eax, [rax + rax*2]
cmp eax, r13d
jne 0x140209e40
cmp eax, 2
jbe 0x14020cbff
xor r12d, r12d
lea r13, [rsp + 0x300]
nop word [rax + rax]
mov rcx, r15
call fcn.140203e40
mov rcx, r15
mov byte [r13 + r12*4], al
call fcn.140203e40
mov rcx, r15
mov byte [r13 + r12*4 + 1], al
call fcn.140203e40
mov byte [r13 + r12*4 + 3], 0xff
mov byte [r13 + r12*4 + 2], al
add r12, 1
cmp r14d, r12d
ja 0x14020a938
jmp 0x14020a8d4
mov eax, dword [r15 + 8]
test al, 1
je 0x140209e40
lea edx, [rax + rax]
cmp edx, r13d
jne 0x140209e40
test eax, eax
jle 0x14020a9c8
movsxd r13, dword [rsp + 0x58]
xor r12d, r12d
lea r14, [rsp + 0xcd]
mov rcx, r15
call fcn.140203710
mov rdx, qword [0x1402376a0]
mov r8d, eax
movzx eax, byte [rdx + r13]
imul eax, r8d
mov byte [r14 + r12], al
add r12, 1
cmp dword [r15 + 8], r12d
jg 0x14020a99f
mov byte [rsp + 0x73], 1
jmp 0x140209ea6
mov eax, ebp
xor edx, edx
mov dword [r15 + 8], 1
div ecx
cmp r8d, eax
jbe 0x14020a8d4
jmp 0x140209e40
mov r8d, ecx
and r8d, 7
jne 0x14020c6dd
mov eax, dword [rsp + 0xf00]
test eax, eax
jle 0x14020cb75
mov ecx, dword [rsp + 0xf04]
lea r8d, [rax - 8]
mov edx, ecx
mov byte [rsp + 0x700], cl
shr edx, 8
test r8d, r8d
jle 0x14020aa55
mov byte [rsp + 0x701], dl
lea r9d, [rax - 0x10]
mov edx, ecx
shr edx, 0x10
test r9d, r9d
jle 0x14020aa55
mov byte [rsp + 0x702], dl
mov edx, ecx
shr edx, 0x18
cmp eax, 0x18
jle 0x14020aa55
mov byte [rsp + 0x703], dl
xor edx, edx
sub eax, 1
mov dword [rsp + 0xf04], edx
shr eax, 3
imul edx, eax, 0xfffffff8
lea ecx, [rax + 1]
add edx, r8d
mov dword [rsp + 0xf00], edx
cmp ecx, 3
jg 0x14020ab30
mov r8, qword [rsp + 0xef8]
mov r9, qword [rsp + 0xef0]
cmp r8, r9
jbe 0x14020c771
lea rdx, [r9 + 1]
movsxd rcx, ecx
mov qword [rsp + 0xef0], rdx
movzx r10d, byte [r9]
lea r9d, [rax + 2]
mov byte [rsp + rcx + 0x700], r10b
cmp eax, 2
je 0x14020ab30
cmp rdx, r8
jae 0x14020cb42
lea rcx, [rdx + 1]
movsxd r10, r9d
lea eax, [r9 + 1]
mov qword [rsp + 0xef0], rcx
movzx r11d, byte [rdx]
mov byte [rsp + r10 + 0x700], r11b
cmp r9d, 3
je 0x14020ab30
cmp r8, rcx
jbe 0x14020cbaf
lea rcx, [rdx + 2]
movsxd r9, eax
mov qword [rsp + 0xef0], rcx
movzx r10d, byte [rdx + 1]
mov byte [rsp + r9 + 0x700], r10b
cmp eax, 2
jne 0x14020ab30
cmp r8, rcx
jbe 0x14020cbed
lea rax, [rdx + 3]
mov qword [rsp + 0xef0], rax
movzx eax, byte [rdx + 2]
mov byte [rsp + 0x703], al
movzx eax, byte [rsp + 0x701]
movzx edx, byte [rsp + 0x700]
movzx ecx, byte [rsp + 0x702]
shl eax, 8
add eax, edx
movzx edx, byte [rsp + 0x703]
shl edx, 8
add edx, ecx
mov ecx, eax
xor ecx, 0xffff
cmp edx, ecx
je 0x14020c3bf
mov rcx, qword [rsp + 0xf10]
call sub.msvcrt.dll_free
mov rax, qword [rsp + 0x1f80]
mov qword [rax + 0x10], 0
jmp 0x140209e48
mov edx, 0x11
xor eax, eax
mov rdi, r10
mov rcx, rdx
lea r8, [rsp + 0x1708]
rep stosd dword [rdi], eax
mov rdi, r8
mov rdx, rcx
mov ecx, pe_nt_image_headers64
mov rax, rdx
rep stosq qword [rdi], rax
lea rax, [0x14021f000]
lea rcx, [rax + 0x20]
nop
movzx edx, byte [rax]
add rax, 1
add dword [rsp + rdx*4 + 0x700], 1
cmp rax, rcx
jne 0x14020abc0
mov ecx, dword [rsp + 0x704]
mov dword [rsp + 0x700], 0
cmp ecx, 2
jg 0x14020ab6a
mov edx, dword [rsp + 0x708]
cmp edx, 4
jg 0x14020ab6a
mov r8d, dword [rsp + 0x70c]
cmp r8d, 8
jg 0x14020ab6a
mov r9d, dword [rsp + 0x710]
cmp r9d, 0x10
jg 0x14020ab6a
mov r11d, dword [rsp + 0x714]
cmp r11d, 0x20
jg 0x14020ab6a
mov ebx, dword [rsp + 0x718]
cmp ebx, 0x40
jg 0x14020ab6a
mov r10d, dword [rsp + 0x71c]
cmp r10d, 0x80
jg 0x14020ab6a
mov edi, dword [rsp + 0x720]
cmp edi, 0x100
jg 0x14020ab6a
mov ebp, dword [rsp + 0x724]
cmp ebp, 0x200
jg 0x14020ab6a
mov esi, dword [rsp + 0x728]
cmp esi, 0x400
jg 0x14020ab6a
mov r12d, dword [rsp + 0x72c]
cmp r12d, 0x800
jg 0x14020ab6a
mov eax, dword [rsp + 0x730]
mov dword [rsp + 0x48], eax
cmp eax, 0x1000
jg 0x14020ab6a
mov r14d, dword [rsp + 0x734]
cmp r14d, 0x2000
jg 0x14020ab6a
mov eax, dword [rsp + 0x738]
mov dword [rsp + 0x50], eax
cmp eax, 0x4000
jg 0x14020ab6a
mov eax, dword [rsp + 0x73c]
mov dword [rsp + 0x64], eax
cmp eax, 0x8000
jg 0x14020ab6a
mov eax, ecx
mov dword [rsp + 0x134], 0
shl eax, 0xf
mov word [rsp + 0x1b70], cx
mov dword [rsp + 0x1b2c], eax
lea eax, [rcx + rcx]
mov dword [rsp + 0x138], eax
mov word [rsp + 0x1b0c], ax
add eax, edx
mov word [rsp + 0x1b0a], 0
mov word [rsp + 0x1b6e], 0
test edx, edx
je 0x14020ad53
cmp eax, 4
jg 0x14020ab6a
mov r13d, eax
add eax, eax
add edx, ecx
mov dword [rsp + 0x13c], eax
shl r13d, 0xe
mov word [rsp + 0x1b0e], ax
add eax, r8d
mov dword [rsp + 0x1b30], r13d
mov word [rsp + 0x1b72], dx
cmp eax, 8
jle 0x14020ad8e
test r8d, r8d
jne 0x14020ab6a
mov ecx, eax
add eax, eax
add edx, r8d
mov dword [rsp + 0x140], eax
shl ecx, 0xd
mov word [rsp + 0x1b10], ax
add eax, r9d
mov dword [rsp + 0x1b34], ecx
mov word [rsp + 0x1b74], dx
cmp eax, 0x10
jle 0x14020adc7
test r9d, r9d
jne 0x14020ab6a
mov ecx, eax
add eax, eax
add edx, r9d
mov dword [rsp + 0x144], eax
shl ecx, 0xc
mov word [rsp + 0x1b12], ax
add eax, r11d
mov dword [rsp + 0x1b38], ecx
mov word [rsp + 0x1b76], dx
cmp eax, 0x20
jle 0x14020ae00
test r11d, r11d
jne 0x14020ab6a
mov ecx, eax
add eax, eax
add edx, r11d
mov dword [rsp + 0x148], eax
shl ecx, 0xb
mov word [rsp + 0x1b14], ax
add eax, ebx
mov dword [rsp + 0x1b3c], ecx
mov word [rsp + 0x1b78], dx
cmp eax, 0x40
jle 0x14020ae37
test ebx, ebx
jne 0x14020ab6a
mov ecx, eax
add edx, ebx
add eax, eax
shl ecx, 0xa
mov dword [rsp + 0x14c], eax
mov word [rsp + 0x1b16], ax
add eax, r10d
mov dword [rsp + 0x1b40], ecx
mov word [rsp + 0x1b7a], dx
test r10d, r10d
je 0x14020ae71
cmp eax, 0x80
jg 0x14020ab6a
mov ecx, eax
add eax, eax
add edx, r10d
mov dword [rsp + 0x150], eax
shl ecx, 9
mov word [rsp + 0x1b18], ax
add eax, edi
mov dword [rsp + 0x1b44], ecx
mov word [rsp + 0x1b7c], dx
cmp eax, 0x100
jle 0x14020aeaa
test edi, edi
jne 0x14020ab6a
mov ecx, eax
add eax, eax
add edi, edx
mov dword [rsp + 0x154], eax
shl ecx, 8
mov word [rsp + 0x1b1a], ax
add eax, ebp
mov dword [rsp + 0x1b48], ecx
mov word [rsp + 0x1b7e], di
cmp eax, 0x200
jle 0x14020aee2
test ebp, ebp
jne 0x14020ab6a
mov edx, eax
add edi, ebp
add eax, eax
shl edx, 7
mov dword [rsp + 0x158], eax
mov word [rsp + 0x1b1c], ax
add eax, esi
mov dword [rsp + 0x1b4c], edx
mov word [rsp + 0x1b80], di
test esi, esi
je 0x14020af1a
cmp eax, 0x400
jg 0x14020ab6a
mov edx, eax
add eax, eax
add edi, esi
mov dword [rsp + 0x15c], eax
shl edx, 6
mov word [rsp + 0x1b1e], ax
add eax, r12d
mov dword [rsp + 0x1b50], edx
mov word [rsp + 0x1b82], di
cmp eax, 0x800
jle 0x14020af54
test r12d, r12d
jne 0x14020ab6a
mov esi, dword [rsp + 0x48]
mov edx, eax
add eax, eax
add r12d, edi
mov dword [rsp + 0x160], eax
shl edx, 5
mov word [rsp + 0x1b20], ax
add eax, esi
mov dword [rsp + 0x1b54], edx
mov word [rsp + 0x1b84], r12w
cmp eax, 0x1000
jle 0x14020af92
test esi, esi
jne 0x14020ab6a
mov edx, eax
add r12d, dword [rsp + 0x48]
add eax, eax
shl edx, 4
mov dword [rsp + 0x164], eax
mov word [rsp + 0x1b22], ax
add eax, r14d
mov dword [rsp + 0x1b58], edx
mov word [rsp + 0x1b86], r12w
test r14d, r14d
je 0x14020afd0
cmp eax, 0x2000
jg 0x14020ab6a
mov esi, dword [rsp + 0x50]
lea edx, [rax*8]
add eax, eax
add r12d, r14d
mov dword [rsp + 0x168], eax
mov word [rsp + 0x1b24], ax
add eax, esi
mov dword [rsp + 0x1b5c], edx
mov word [rsp + 0x1b88], r12w
cmp eax, 0x4000
jle 0x14020b010
test esi, esi
jne 0x14020ab6a
mov esi, dword [rsp + 0x64]
lea edx, [rax*4]
add eax, eax
add r12d, dword [rsp + 0x50]
mov dword [rsp + 0x16c], eax
mov word [rsp + 0x1b26], ax
add eax, esi
mov dword [rsp + 0x1b60], edx
mov word [rsp + 0x1b8a], r12w
cmp eax, 0x8000
jle 0x14020b052
test esi, esi
jne 0x14020ab6a
add eax, eax
xor edx, edx
mov ebx, 1
mov r11d, 0x10
mov dword [rsp + 0x1b64], eax
mov dword [rsp + 0x1b68], 0x10000
jmp 0x14020b092
add r9d, 1
mov dword [rsp + r10*4 + 0x130], r9d
add rdx, 1
cmp rdx, 0x20
je 0x14020b300
lea rax, [0x14021f000]
movzx r8d, byte [rax + rdx]
mov ecx, r8d
test r8d, r8d
je 0x14020b084
movsxd r10, r8d
mov r9d, dword [rsp + r10*4 + 0x130]
movzx esi, word [rsp + r10*2 + 0x1b08]
mov eax, r9d
sub eax, esi
movzx esi, word [rsp + r10*2 + 0x1b6c]
add eax, esi
cdqe
mov byte [rsp + rax + 0x1b8c], r8b
mov word [rsp + rax*2 + 0x1cac], dx
cmp r8d, 9
jg 0x14020b078
mov esi, r9d
lea eax, [r9 + r9]
mov edi, r8d
sar esi, 1
and eax, 0xaaaa
shl edi, 9
and esi, 0x5555
or edi, edx
or esi, eax
mov eax, esi
shl esi, 2
sar eax, 2
and esi, 0xcccc
and eax, 0x3333
or eax, esi
mov esi, eax
shl eax, 4
sar esi, 4
and eax, 0xf0f0
and esi, 0xf0f
or esi, eax
mov eax, esi
shl esi, 8
movzx ebp, si
mov esi, ebx
sar eax, 8
shl esi, cl
mov ecx, r11d
or eax, ebp
sub ecx, r8d
movsxd rsi, esi
sar eax, cl
lea rcx, [rsp + 0xef0]
cdqe
mov word [rcx + rax*2 + 0x818], di
add rax, rsi
cmp eax, 0x1ff
jle 0x14020b150
jmp 0x14020b078
mov eax, dword [rsp + 0x88]
xor r10d, r10d
xor r13d, r13d
xor r14d, r14d
mov rbp, qword [rsp + 0x78]
mov r12d, 0x10
and eax, 0x1f
lea esi, [rax + 0x101]
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x80], r15d
mov dword [rsp + 0x88], esi
and eax, 0x1f
add eax, 1
mov dword [rsp + 0x90], eax
add esi, eax
mov r11d, esi
mov esi, 0x18
nop dword [rax + rax]
cmp r8d, 0xf
jg 0x14020b243
mov rax, qword [rsp + 0xef0]
mov ecx, r8d
cmp rax, r9
jae 0x14020b211
nop word cs:[rax + rax]
lea rbx, [rax + 1]
mov qword [rsp + 0xef0], rbx
movzx eax, byte [rax]
shl eax, cl
add ecx, 8
or edx, eax
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], edx
cmp ecx, 0x18
jg 0x14020b236
mov rax, rbx
cmp rax, r9
jb 0x14020b1e0
add ecx, 8
mov dword [rsp + 0xf04], edx
mov dword [rsp + 0xf00], ecx
cmp ecx, 0x18
jg 0x14020b236
add ecx, 8
cmp ecx, 0x18
jle 0x14020b227
mov dword [rsp + 0xf00], ecx
mov eax, esi
sub eax, r8d
and eax, 0xfffffff8
lea r8d, [r8 + rax + 8]
mov eax, edx
and eax, 0x1ff
movzx ecx, word [rsp + rax*2 + 0x700]
mov eax, ecx
test ecx, ecx
je 0x14020c7c0
sar ecx, 9
and eax, 0x1ff
shr edx, cl
sub r8d, ecx
mov dword [rsp + 0xf04], edx
mov dword [rsp + 0xf00], r8d
cmp eax, 0x12
jg 0x14020ab6a
cmp eax, 0xf
jg 0x14020c8a0
movsxd rcx, r10d
add r10d, 1
mov byte [rsp + rcx + 0x130], al
cmp r11d, r10d
jg 0x14020b1c0
mov r15d, dword [rsp + 0x80]
jne 0x14020ab6a
mov esi, dword [rsp + 0x88]
mov rdi, qword [rsp + 0x78]
lea rcx, [rsp + 0xf24]
mov r8d, esi
mov rdx, rdi
call fcn.14020e840
test eax, eax
je 0x14020ab6a
mov edx, esi
mov r8d, dword [rsp + 0x90]
lea rcx, [rsp + 0x1708]
add rdx, rdi
call fcn.14020e840
test eax, eax
je 0x14020ab6a
nop dword [rax + rax]
mov r9, qword [rsp + 0xf08]
lea rbx, [0x14024aae0]
lea rsi, [0x140243760]
mov edx, dword [rsp + 0xf00]
mov eax, dword [rsp + 0xf04]
cmp edx, 0xf
jg 0x14020b3a7
mov r11, qword [rsp + 0xef8]
mov r8, qword [rsp + 0xef0]
mov ecx, edx
cmp r11, r8
jbe 0x14020b374
lea r10, [r8 + 1]
mov qword [rsp + 0xef0], r10
movzx r8d, byte [r8]
shl r8d, cl
add ecx, 8
or eax, r8d
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], eax
cmp ecx, 0x18
jg 0x14020b399
mov r8, r10
cmp r11, r8
ja 0x14020b340
add ecx, 8
mov dword [rsp + 0xf04], eax
mov dword [rsp + 0xf00], ecx
cmp ecx, 0x18
jg 0x14020b399
add ecx, 8
cmp ecx, 0x18
jle 0x14020b38a
mov dword [rsp + 0xf00], ecx
mov ecx, 0x18
sub ecx, edx
and ecx, 0xfffffff8
lea edx, [rdx + rcx + 8]
mov ecx, eax
and ecx, 0x1ff
movzx ecx, word [rsp + rcx*2 + 0xf24]
mov edi, ecx
test ecx, ecx
je 0x14020b718
sar ecx, 9
and edi, 0x1ff
shr eax, cl
sub edx, ecx
mov dword [rsp + 0xf04], eax
mov dword [rsp + 0xf00], edx
cmp edi, 0xff
jg 0x14020b478
mov rax, qword [rsp + 0xf18]
cmp rax, r9
ja 0x14020b466
mov edx, dword [rsp + 0xf20]
mov qword [rsp + 0xf08], r9
test edx, edx
je 0x14020ab6a
mov r8, qword [rsp + 0xf10]
sub r9, r8
sub rax, r8
mov r12, r9
mov ecx, r9d
cmp r9d, eax
jl 0x14020b42e
nop dword [rax]
add eax, eax
cmp ecx, eax
jge 0x14020b428
movsxd rbp, eax
mov rcx, r8
mov rdx, rbp
call sub.msvcrt.dll_realloc
test rax, rax
je 0x14020ab6a
movsxd r9, r12d
mov qword [rsp + 0xf10], rax
add r9, rax
add rax, rbp
mov qword [rsp + 0xf08], r9
mov qword [rsp + 0xf18], rax
mov byte [r9], dil
add r9, 1
jmp 0x14020b316
cmp edi, 0x100
je 0x14020cf88
sub edi, 0x101
lea rcx, [0x14024a400]
movsxd rdi, edi
mov r10d, dword [rbx + rdi*4]
mov ebp, dword [rcx + rdi*4]
test r10d, r10d
jne 0x14020b92c
cmp edx, 0xf
jg 0x14020b527
mov r11, qword [rsp + 0xef8]
mov r8, qword [rsp + 0xef0]
mov ecx, edx
cmp r11, r8
jbe 0x14020b4f4
lea r10, [r8 + 1]
mov qword [rsp + 0xef0], r10
movzx r8d, byte [r8]
shl r8d, cl
add ecx, 8
or eax, r8d
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], eax
cmp ecx, 0x18
jg 0x14020b519
mov r8, r10
cmp r11, r8
ja 0x14020b4c0
add ecx, 8
mov dword [rsp + 0xf04], eax
mov dword [rsp + 0xf00], ecx
cmp ecx, 0x18
jg 0x14020b519
add ecx, 8
cmp ecx, 0x18
jle 0x14020b50a
mov dword [rsp + 0xf00], ecx
mov ecx, 0x18
sub ecx, edx
and ecx, 0xfffffff8
lea edx, [rdx + rcx + 8]
mov ecx, eax
and ecx, 0x1ff
movzx ecx, word [rsp + rcx*2 + 0x1708]
mov r8d, ecx
test ecx, ecx
je 0x14020b820
sar ecx, 9
and r8d, 0x1ff
shr eax, cl
sub edx, ecx
mov dword [rsp + 0xf04], eax
mov dword [rsp + 0xf00], edx
movsxd r8, r8d
lea rcx, [0x1402470a0]
mov r10d, dword [rcx + r8*4]
mov r12d, dword [rsi + r8*4]
test r10d, r10d
jne 0x14020b9e8
mov rcx, qword [rsp + 0xf10]
mov r14, r9
movsxd r13, r12d
sub r14, rcx
cmp r14, r13
jl 0x14020ab6a
movsxd rax, ebp
mov rdx, qword [rsp + 0xf18]
add rax, r9
cmp rdx, rax
jae 0x14020b60c
mov eax, dword [rsp + 0xf20]
mov qword [rsp + 0xf08], r9
test eax, eax
je 0x14020ab6a
sub rdx, rcx
lea r8d, [rbp + r14]
mov eax, edx
cmp edx, r8d
jge 0x14020b5d7
nop dword [rax]
add eax, eax
cmp eax, r8d
jl 0x14020b5d0
movsxd rdi, eax
mov rdx, rdi
call sub.msvcrt.dll_realloc
test rax, rax
je 0x14020ab6a
movsxd r9, r14d
mov qword [rsp + 0xf10], rax
add r9, rax
add rax, rdi
mov qword [rsp + 0xf08], r9
mov qword [rsp + 0xf18], rax
mov rdx, r9
sub rdx, r13
cmp r12d, 1
je 0x14020c324
test ebp, ebp
je 0x14020b316
lea rax, [r13 - 1]
lea r8d, [rbp - 1]
cmp rax, 0xe
jbe 0x14020cebf
cmp r8d, 6
jbe 0x14020cebf
mov r10d, ebp
cmp r8d, 0xe
jbe 0x14020cfff
mov ecx, ebp
xor eax, eax
shr ecx, 4
shl rcx, 4
nop dword [rax + rax]
movdqu xmm1, xmmword [rdx + rax]
movups xmmword [r9 + rax], xmm1
add rax, 0x10
cmp rcx, rax
jne 0x14020b660
mov eax, ebp
and eax, 0xfffffff0
mov r11d, eax
sub ebp, eax
lea rcx, [r9 + r11]
add rdx, r11
cmp r10d, eax
je 0x14020b707
sub r10d, eax
lea r11d, [r10 - 1]
cmp r11d, 6
jbe 0x14020b6ba
mov r11, rax
sub r11, r13
mov r11, qword [r9 + r11]
mov qword [r9 + rax], r11
mov eax, r10d
and eax, 0xfffffff8
mov r11d, eax
sub ebp, eax
add rcx, r11
add rdx, r11
cmp eax, r10d
je 0x14020b707
movzx eax, byte [rdx]
mov byte [rcx], al
cmp ebp, 1
je 0x14020b707
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
cmp ebp, 2
je 0x14020b707
movzx eax, byte [rdx + 2]
mov byte [rcx + 2], al
cmp ebp, 3
je 0x14020b707
movzx eax, byte [rdx + 3]
mov byte [rcx + 3], al
cmp ebp, 4
je 0x14020b707
movzx eax, byte [rdx + 4]
mov byte [rcx + 4], al
cmp ebp, 5
je 0x14020b707
movzx eax, byte [rdx + 5]
mov byte [rcx + 5], al
cmp ebp, 6
je 0x14020b707
movzx eax, byte [rdx + 6]
mov byte [rcx + 6], al
lea r9, [r9 + r8 + 1]
jmp 0x14020b316
mov ecx, eax
lea r8d, [rax + rax]
sar ecx, 1
and r8d, 0xaaaa
and ecx, 0x5555
or ecx, r8d
mov r8d, ecx
shl ecx, 2
sar r8d, 2
and ecx, 0xcccc
and r8d, 0x3333
or r8d, ecx
mov ecx, r8d
shl r8d, 4
sar ecx, 4
and r8d, 0xf0f0
and ecx, 0xf0f
or ecx, r8d
mov r8d, ecx
shl ecx, 8
sar r8d, 8
movzx ecx, cx
or r8d, ecx
cmp r8d, dword [rsp + 0x136c]
jl 0x14020c34c
cmp r8d, dword [rsp + 0x1370]
jl 0x14020c357
cmp r8d, dword [rsp + 0x1374]
jl 0x14020c3b4
cmp r8d, dword [rsp + 0x1378]
jl 0x14020c764
cmp r8d, dword [rsp + 0x137c]
jl 0x14020c7b1
cmp r8d, dword [rsp + 0x1380]
jge 0x14020ab6a
mov r10d, 0xf
nop
mov ecx, 0x10
sub edx, r10d
sub ecx, r10d
sar r8d, cl
movsxd rcx, r10d
movzx r11d, word [rsp + rcx*2 + 0x1324]
movzx ecx, word [rsp + rcx*2 + 0x1388]
mov dword [rsp + 0xf00], edx
sub r8d, r11d
add r8d, ecx
mov ecx, r10d
shr eax, cl
movsxd r8, r8d
movzx edi, word [rsp + r8*2 + 0x14c8]
mov dword [rsp + 0xf04], eax
jmp 0x14020b3dc
mov ecx, eax
lea r8d, [rax + rax]
sar ecx, 1
and r8d, 0xaaaa
and ecx, 0x5555
or ecx, r8d
mov r8d, ecx
shl ecx, 2
sar r8d, 2
and ecx, 0xcccc
and r8d, 0x3333
or r8d, ecx
mov ecx, r8d
shl r8d, 4
sar ecx, 4
and r8d, 0xf0f0
and ecx, 0xf0f
or ecx, r8d
mov r8d, ecx
shl ecx, 8
sar r8d, 8
movzx ecx, cx
or r8d, ecx
cmp r8d, dword [rsp + 0x1b50]
jl 0x14020cb37
cmp r8d, dword [rsp + 0x1b54]
jl 0x14020cb6a
cmp r8d, dword [rsp + 0x1b58]
jl 0x14020cbcd
cmp r8d, dword [rsp + 0x1b5c]
jl 0x14020cbe2
cmp r8d, dword [rsp + 0x1b60]
jl 0x14020cbf4
cmp r8d, dword [rsp + 0x1b64]
jge 0x14020ab6a
mov r10d, 0xf
nop word cs:[rax + rax]
mov ecx, 0x10
sub edx, r10d
sub ecx, r10d
sar r8d, cl
movsxd rcx, r10d
movzx r11d, word [rsp + rcx*2 + 0x1b08]
movzx ecx, word [rsp + rcx*2 + 0x1b6c]
mov dword [rsp + 0xf00], edx
sub r8d, r11d
add r8d, ecx
mov ecx, r10d
shr eax, cl
movsxd r8, r8d
movzx r8d, word [rsp + r8*2 + 0x1cac]
mov dword [rsp + 0xf04], eax
jmp 0x14020b55e
cmp r10d, edx
jle 0x14020b9a8
mov rcx, qword [rsp + 0xef0]
mov rdi, qword [rsp + 0xef8]
mov r14d, edx
mov rdx, rcx
mov ecx, r14d
cmp rdi, rdx
jbe 0x14020b981
nop
lea r8, [rdx + 1]
mov qword [rsp + 0xef0], r8
movzx edx, byte [rdx]
shl edx, cl
add ecx, 8
or eax, edx
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], eax
cmp ecx, 0x18
jg 0x14020b9a8
mov rdx, r8
cmp rdi, rdx
ja 0x14020b950
mov edx, ecx
mov dword [rsp + 0xf04], eax
add edx, 8
mov dword [rsp + 0xf00], edx
cmp edx, 0x18
jg 0x14020b9a8
add edx, 8
cmp edx, 0x18
jle 0x14020b999
mov dword [rsp + 0xf00], edx
mov ecx, r10d
mov r11d, dword [rsp + 0xf04]
mov r8d, 1
mov edx, dword [rsp + 0xf00]
shl r8d, cl
mov eax, r11d
sub r8d, 1
sub edx, r10d
shr eax, cl
and r8d, r11d
mov dword [rsp + 0xf00], edx
mov dword [rsp + 0xf04], eax
add ebp, r8d
jmp 0x14020b4a4
cmp r10d, edx
jle 0x14020ba68
mov rcx, qword [rsp + 0xef0]
mov rdi, qword [rsp + 0xef8]
mov r14, rcx
mov ecx, edx
mov rdx, r14
cmp rdi, rdx
jbe 0x14020ba41
nop word [rax + rax]
lea r8, [rdx + 1]
mov qword [rsp + 0xef0], r8
movzx edx, byte [rdx]
shl edx, cl
add ecx, 8
or eax, edx
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], eax
cmp ecx, 0x18
jg 0x14020ba68
mov rdx, r8
cmp rdi, rdx
ja 0x14020ba10
mov edx, ecx
mov dword [rsp + 0xf04], eax
add edx, 8
mov dword [rsp + 0xf00], edx
cmp edx, 0x18
jg 0x14020ba68
add edx, 8
cmp edx, 0x18
jle 0x14020ba59
mov dword [rsp + 0xf00], edx
mov edx, dword [rsp + 0xf04]
mov ecx, r10d
sub dword [rsp + 0xf00], r10d
mov eax, edx
shr eax, cl
mov dword [rsp + 0xf04], eax
mov eax, 1
shl eax, cl
sub eax, 1
and eax, edx
add r12d, eax
jmp 0x14020b579
mov r9, qword [rsp + 0xef8]
cmp ecx, 4
jg 0x14020bb06
mov rax, qword [rsp + 0xef0]
jmp 0x14020badc
lea r8, [rax + 1]
mov qword [rsp + 0xef0], r8
movzx eax, byte [rax]
shl eax, cl
add ecx, 8
or edx, eax
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], edx
cmp ecx, 0x18
jg 0x14020bb06
mov rax, r8
cmp rax, r9
jb 0x14020bab0
add ecx, 8
mov dword [rsp + 0xf04], edx
mov dword [rsp + 0xf00], ecx
cmp ecx, 0x18
jg 0x14020bb06
add ecx, 8
cmp ecx, 0x18
jle 0x14020baf7
mov dword [rsp + 0xf00], ecx
mov eax, dword [rsp + 0xf04]
mov edx, eax
mov dword [rsp + 0x88], eax
mov eax, dword [rsp + 0xf00]
shr edx, 5
lea ecx, [rax - 5]
mov dword [rsp + 0xf04], edx
mov dword [rsp + 0xf00], ecx
cmp ecx, 4
jg 0x14020bb96
mov rax, qword [rsp + 0xef0]
jmp 0x14020bb6c
lea r8, [rax + 1]
mov qword [rsp + 0xef0], r8
movzx eax, byte [rax]
shl eax, cl
add ecx, 8
or edx, eax
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], edx
cmp ecx, 0x18
jg 0x14020bb96
mov rax, r8
cmp rax, r9
jb 0x14020bb40
add ecx, 8
mov dword [rsp + 0xf04], edx
mov dword [rsp + 0xf00], ecx
cmp ecx, 0x18
jg 0x14020bb96
add ecx, 8
cmp ecx, 0x18
jle 0x14020bb87
mov dword [rsp + 0xf00], ecx
mov eax, dword [rsp + 0xf04]
mov edx, eax
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0xf00]
shr edx, 5
lea ecx, [rax - 5]
mov dword [rsp + 0xf04], edx
mov dword [rsp + 0xf00], ecx
cmp ecx, 3
jg 0x14020bc26
mov rax, qword [rsp + 0xef0]
jmp 0x14020bbfc
lea r8, [rax + 1]
mov qword [rsp + 0xef0], r8
movzx eax, byte [rax]
shl eax, cl
add ecx, 8
or edx, eax
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], edx
cmp ecx, 0x18
jg 0x14020bc26
mov rax, r8
cmp rax, r9
jb 0x14020bbd0
add ecx, 8
mov dword [rsp + 0xf04], edx
mov dword [rsp + 0xf00], ecx
cmp ecx, 0x18
jg 0x14020bc26
add ecx, 8
cmp ecx, 0x18
jle 0x14020bc17
mov dword [rsp + 0xf00], ecx
mov esi, dword [rsp + 0xf04]
mov eax, dword [rsp + 0xf00]
mov ecx, 0x13
xor ebx, ebx
lea r11, [rsp + 0xd0]
mov ebp, 0x18
mov edx, esi
lea r8d, [rax - 4]
and esi, 0xf
xor eax, eax
shr edx, 4
mov dword [rsp + 0xf00], r8d
mov rdi, r11
add esi, 4
rep stosb byte [rdi], al
mov dword [rsp + 0xf04], edx
lea rdi, [0x140359d80]
nop dword [rax]
cmp r8d, 2
jg 0x14020bcce
mov rax, qword [rsp + 0xef0]
mov ecx, r8d
cmp rax, r9
jae 0x14020bcc1
nop
lea r10, [rax + 1]
mov qword [rsp + 0xef0], r10
movzx eax, byte [rax]
shl eax, cl
add ecx, 8
or edx, eax
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], edx
cmp ecx, 0x18
jg 0x14020bcc1
mov rax, r10
cmp rax, r9
jb 0x14020bc90
mov eax, ebp
sub eax, r8d
and eax, 0xfffffff8
lea r8d, [r8 + rax + 8]
movzx eax, byte [rdi + rbx]
mov ecx, edx
sub r8d, 3
shr edx, 3
and ecx, 7
add rbx, 1
mov dword [rsp + 0xf04], edx
mov dword [rsp + 0xf00], r8d
mov byte [rsp + rax + 0xd0], cl
cmp esi, ebx
jg 0x14020bc78
mov ebx, 0x11
lea rdi, [rsp + 0x130]
xor eax, eax
mov rcx, rbx
mov qword [rsp + 0x78], rdi
lea r10, [rsp + 0x700]
rep stosd dword [rdi], eax
mov rdi, r10
mov rbx, rcx
mov ecx, pe_nt_image_headers64
mov rax, rbx
lea rbx, [rsp + 0xe3]
rep stosq qword [rdi], rax
mov rax, r11
nop dword [rax]
movzx ecx, byte [rax]
add rax, 1
add dword [rsp + rcx*4 + 0x130], 1
cmp rax, rbx
jne 0x14020bd40
mov ebx, dword [rsp + 0x134]
mov dword [rsp + 0x130], 0
cmp ebx, 2
jg 0x14020ab6a
mov ecx, dword [rsp + 0x138]
cmp ecx, 4
jg 0x14020ab6a
mov edi, dword [rsp + 0x13c]
cmp edi, 8
jg 0x14020ab6a
mov esi, dword [rsp + 0x140]
cmp esi, 0x10
jg 0x14020ab6a
mov ebp, dword [rsp + 0x144]
cmp ebp, 0x20
jg 0x14020ab6a
mov eax, dword [rsp + 0x148]
mov dword [rsp + 0x48], eax
cmp eax, 0x40
jg 0x14020ab6a
mov r12d, dword [rsp + 0x14c]
cmp r12d, 0x80
jg 0x14020ab6a
mov r13d, dword [rsp + 0x150]
cmp r13d, 0x100
jg 0x14020ab6a
mov eax, dword [rsp + 0x154]
mov dword [rsp + 0x50], eax
cmp eax, 0x200
jg 0x14020ab6a
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0x64], eax
cmp eax, 0x400
jg 0x14020ab6a
mov eax, dword [rsp + 0x15c]
mov dword [rsp + 0x6c], eax
cmp eax, 0x800
jg 0x14020ab6a
mov eax, dword [rsp + 0x160]
mov dword [rsp + 0x74], eax
cmp eax, 0x1000
jg 0x14020ab6a
mov eax, dword [rsp + 0x164]
mov dword [rsp + 0xb0], eax
cmp eax, 0x2000
jg 0x14020ab6a
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x90], eax
cmp eax, 0x4000
jg 0x14020ab6a
mov eax, dword [rsp + 0x16c]
mov dword [rsp + 0x98], eax
cmp eax, 0x8000
jg 0x14020ab6a
mov eax, ebx
mov dword [rsp + 0xf4], 0
shl eax, 0xf
mov word [rsp + 0xb68], bx
mov dword [rsp + 0xb24], eax
lea eax, [rbx + rbx]
mov dword [rsp + 0xf8], eax
mov word [rsp + 0xb04], ax
add eax, ecx
mov word [rsp + 0xb02], 0
mov word [rsp + 0xb66], 0
test ecx, ecx
je 0x14020bee4
cmp eax, 4
jg 0x14020ab6a
mov r14d, eax
add eax, eax
add ecx, ebx
mov dword [rsp + 0xfc], eax
shl r14d, 0xe
mov word [rsp + 0xb06], ax
add eax, edi
mov dword [rsp + 0xb28], r14d
mov word [rsp + 0xb6a], cx
cmp eax, 8
jle 0x14020bf1d
test edi, edi
jne 0x14020ab6a
mov ebx, eax
add ecx, edi
add eax, eax
shl ebx, 0xd
mov dword [rsp + 0x100], eax
mov word [rsp + 0xb08], ax
add eax, esi
mov dword [rsp + 0xb2c], ebx
mov word [rsp + 0xb6c], cx
test esi, esi
je 0x14020bf53
cmp eax, 0x10
jg 0x14020ab6a
mov ebx, eax
add eax, eax
add ecx, esi
mov dword [rsp + 0x104], eax
shl ebx, 0xc
mov word [rsp + 0xb0a], ax
add eax, ebp
mov dword [rsp + 0xb30], ebx
mov word [rsp + 0xb6e], cx
cmp eax, 0x20
jle 0x14020bf89
test ebp, ebp
jne 0x14020ab6a
mov esi, dword [rsp + 0x48]
mov ebx, eax
add eax, eax
add ecx, ebp
mov dword [rsp + 0x108], eax
shl ebx, 0xb
mov word [rsp + 0xb0c], ax
add eax, esi
mov dword [rsp + 0xb34], ebx
mov word [rsp + 0xb70], cx
cmp eax, 0x40
jle 0x14020bfc3
test esi, esi
jne 0x14020ab6a
mov ebx, eax
add ecx, dword [rsp + 0x48]
add eax, eax
shl ebx, 0xa
mov dword [rsp + 0x10c], eax
mov word [rsp + 0xb0e], ax
add eax, r12d
mov dword [rsp + 0xb38], ebx
mov word [rsp + 0xb72], cx
test r12d, r12d
je 0x14020bfff
cmp eax, 0x80
jg 0x14020ab6a
mov ebx, eax
add ecx, r12d
add eax, eax
shl ebx, 9
mov dword [rsp + 0x110], eax
mov word [rsp + 0xb10], ax
add eax, r13d
mov dword [rsp + 0xb3c], ebx
mov word [rsp + 0xb74], cx
test r13d, r13d
je 0x14020c03a
cmp eax, 0x100
jg 0x14020ab6a
mov ebx, eax
mov esi, dword [rsp + 0x50]
add eax, eax
add ecx, r13d
shl ebx, 8
mov dword [rsp + 0x114], eax
mov word [rsp + 0xb12], ax
add eax, esi
mov dword [rsp + 0xb40], ebx
mov word [rsp + 0xb76], cx
test esi, esi
je 0x14020c077
cmp eax, 0x200
jg 0x14020ab6a
mov ebx, eax
mov esi, dword [rsp + 0x64]
add eax, eax
add ecx, dword [rsp + 0x50]
shl ebx, 7
mov dword [rsp + 0x118], eax
mov word [rsp + 0xb14], ax
add eax, esi
mov dword [rsp + 0xb44], ebx
mov word [rsp + 0xb78], cx
test esi, esi
je 0x14020c0b5
cmp eax, 0x400
jg 0x14020ab6a
mov esi, eax
add eax, eax
add ecx, dword [rsp + 0x64]
shl esi, 6
mov dword [rsp + 0x11c], eax
mov dword [rsp + 0x48], esi
mov dword [rsp + 0xb48], esi
mov esi, dword [rsp + 0x6c]
mov word [rsp + 0xb16], ax
add eax, esi
mov word [rsp + 0xb7a], cx
cmp eax, 0x800
jle 0x14020c0f7
test esi, esi
jne 0x14020ab6a
mov esi, eax
add eax, eax
add ecx, dword [rsp + 0x6c]
shl esi, 5
mov dword [rsp + 0x120], eax
mov dword [rsp + 0x50], esi
mov dword [rsp + 0xb4c], esi
mov esi, dword [rsp + 0x74]
mov word [rsp + 0xb18], ax
add eax, esi
mov word [rsp + 0xb7c], cx
cmp eax, 0x1000
jle 0x14020c139
test esi, esi
jne 0x14020ab6a
mov esi, eax
add ecx, dword [rsp + 0x74]
add eax, eax
shl esi, 4
mov dword [rsp + 0x124], eax
mov dword [rsp + 0x64], esi
mov dword [rsp + 0xb50], esi
mov esi, dword [rsp + 0xb0]
mov word [rsp + 0xb1a], ax
mov word [rsp + 0xb7e], cx
add eax, esi
test esi, esi
je 0x14020c17e
cmp eax, 0x2000
jg 0x14020ab6a
lea esi, [rax*8]
add eax, eax
add ecx, dword [rsp + 0xb0]
mov dword [rsp + 0x6c], esi
mov dword [rsp + 0xb54], esi
mov esi, dword [rsp + 0x90]
mov dword [rsp + 0x128], eax
mov word [rsp + 0xb1c], ax
add eax, esi
mov word [rsp + 0xb80], cx
cmp eax, 0x4000
jle 0x14020c1c8
test esi, esi
jne 0x14020ab6a
lea esi, [rax*4]
add eax, eax
add ecx, dword [rsp + 0x90]
mov dword [rsp + 0x74], esi
mov dword [rsp + 0xb58], esi
mov esi, dword [rsp + 0x98]
mov dword [rsp + 0x12c], eax
mov word [rsp + 0xb1e], ax
add eax, esi
mov word [rsp + 0xb82], cx
cmp eax, 0x8000
jle 0x14020c212
test esi, esi
jne 0x14020ab6a
mov dword [rsp + 0xb60], 0x10000
add eax, eax
xor ebx, ebx
mov dword [rsp + 0xb0], eax
mov dword [rsp + 0xb5c], eax
jmp 0x14020c250
add esi, 1
mov dword [rsp + rdi*4 + 0xf0], esi
add rbx, 1
cmp rbx, 0x13
je 0x14020b167
movzx r13d, byte [r11 + rbx]
mov ecx, r13d
test r13d, r13d
je 0x14020c242
movsxd rdi, r13d
mov esi, dword [rsp + rdi*4 + 0xf0]
movzx ebp, word [rsp + rdi*2 + 0xb00]
mov eax, esi
sub eax, ebp
movzx ebp, word [rsp + rdi*2 + 0xb64]
add eax, ebp
cdqe
mov byte [rsp + rax + 0xb84], r13b
mov word [rsp + rax*2 + 0xca4], bx
cmp r13d, 9
jg 0x14020c238
mov ebp, esi
lea eax, [rsi + rsi]
mov r12d, r13d
sar ebp, 1
and eax, 0xaaaa
shl r12d, 9
and ebp, 0x5555
or r12d, ebx
or ebp, eax
mov eax, ebp
shl ebp, 2
sar eax, 2
and ebp, 0xcccc
and eax, 0x3333
or ebp, eax
mov r14d, ebp
shl ebp, 4
sar r14d, 4
and ebp, 0xf0f0
and r14d, 0xf0f
or ebp, r14d
mov eax, ebp
shl ebp, 8
movzx r14d, bp
mov ebp, 1
sar eax, 8
shl ebp, cl
mov ecx, 0x10
or eax, r14d
sub ecx, r13d
movsxd rbp, ebp
sar eax, cl
cdqe
nop word [rax + rax]
mov word [r10 + rax*2], r12w
add rax, rbp
cmp eax, 0x1ff
jle 0x14020c310
jmp 0x14020c238
test ebp, ebp
je 0x14020b316
lea edi, [rbp - 1]
movsx edx, byte [rdx]
mov rcx, r9
add rdi, 1
mov r8, rdi
call sub.msvcrt.dll_memset
mov r9, rax
add r9, rdi
jmp 0x14020b316
mov r10d, 0xa
jmp 0x14020b7d0
mov r10d, 0xb
jmp 0x14020b7d0
test ebx, ebx
jne 0x14020c380
cmp r13d, 0x1000
mov ebx, 0x1000
cmovae ebx, r13d
cmp r14d, ebx
jbe 0x14020c387
nop dword [rax + rax]
add ebx, ebx
cmp r14d, ebx
ja 0x14020c380
mov rax, qword [rsp + 0x1f80]
mov edx, ebx
mov rcx, qword [rax + 8]
call sub.msvcrt.dll_realloc
test rax, rax
je 0x140209e40
mov rdx, qword [rsp + 0x1f80]
mov qword [rdx + 8], rax
jmp 0x14020a78a
mov r10d, 0xc
jmp 0x14020b7d0
mov r9, qword [rsp + 0xef0]
movsxd rsi, eax
lea rdx, [r9 + rsi]
cmp qword [rsp + 0xef8], rdx
jb 0x14020ab6a
mov rcx, qword [rsp + 0xf08]
mov rdx, qword [rsp + 0xf18]
lea r8, [rcx + rsi]
cmp rdx, r8
jae 0x14020c45e
cmp dword [rsp + 0xf20], 0
je 0x14020ab6a
mov r8, qword [rsp + 0xf10]
mov rdi, rcx
sub rdi, r8
sub edx, r8d
add eax, edi
jmp 0x14020c41a
add edx, edx
cmp eax, edx
jg 0x14020c418
movsxd rbx, edx
mov rcx, r8
mov rdx, rbx
call sub.msvcrt.dll_realloc
test rax, rax
je 0x14020ab6a
movsxd rcx, edi
mov qword [rsp + 0xf10], rax
mov r9, qword [rsp + 0xef0]
add rcx, rax
add rax, rbx
mov qword [rsp + 0xf08], rcx
mov qword [rsp + 0xf18], rax
mov r8, rsi
mov rdx, r9
call sub.msvcrt.dll_memcpy
add qword [rsp + 0xef0], rsi
add qword [rsp + 0xf08], rsi
test r15d, r15d
je 0x140209ff0
mov rax, qword [rsp + 0xf10]
mov rbx, qword [rsp + 0xf08]
mov rsi, qword [rsp + 0x1f80]
mov r15, qword [rsp + 0xa0]
sub rbx, rax
mov dword [rsp + 0xa0], ebx
mov qword [rsi + 0x10], rax
test rax, rax
je 0x140209e40
mov rax, qword [rsp + 0x1f80]
mov rcx, qword [rax + 8]
call sub.msvcrt.dll_free
mov ebp, dword [r15 + 8]
cmp byte [rsp + 0x72], 0
mov rax, qword [rsp + 0x1f80]
mov qword [rax + 8], 0
lea eax, [rbp + 1]
jne 0x14020c4f1
cmp eax, 4
je 0x14020d009
cmp byte [rsp + 0x73], 0
cmovne ebp, eax
mov rax, qword [rsp + 0x1f80]
cmp dword [rsp + 0x68], 0
mov dword [r15 + 0xc], ebp
mov rsi, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [rsp + 0xa8], rsi
jne 0x14020cc0e
mov edi, dword [rsp + 0x5c]
mov rcx, qword [rsp + 0x1f80]
mov r9d, ebp
mov r8d, ebx
mov dword [rsp + 0x38], edi
mov edi, dword [rsp + 0x58]
mov dword [rsp + 0x30], edi
mov edx, dword [rax + 4]
mov dword [rsp + 0x28], edx
mov eax, dword [rax]
mov rdx, rsi
mov dword [rsp + 0x20], eax
call fcn.1401ff360
test eax, eax
je 0x140209e40
cmp byte [rsp + 0x73], 0
jne 0x14020cf95
cmp dword [rsp + 0x60], 0
je 0x14020c583
mov rax, qword [0x140237660]
cmp dword [rax], 0
je 0x14020c583
cmp dword [r15 + 0xc], 2
jg 0x14020d049
movzx eax, byte [rsp + 0x72]
test al, al
je 0x14020c63c
mov dword [r15 + 8], eax
mov rax, qword [rsp + 0x1f80]
mov dword [r15 + 0xc], 4
mov rax, qword [rax]
mov esi, dword [rax]
imul esi, dword [rax + 4]
mov rax, qword [rsp + 0x1f80]
lea ecx, [rsi*4]
mov r12, qword [rax + 0x18]
call sub.msvcrt.dll_malloc
mov rbx, rax
test rax, rax
je 0x140209e40
xor edx, edx
jmp 0x14020c624
movzx eax, byte [r12 + rdx]
shl eax, 2
movsxd rcx, eax
movzx ecx, byte [rsp + rcx + 0x300]
mov byte [rbx + rdx*4], cl
lea ecx, [rax + 1]
movsxd rcx, ecx
movzx ecx, byte [rsp + rcx + 0x300]
mov byte [rbx + rdx*4 + 1], cl
lea ecx, [rax + 2]
add eax, 3
movsxd rcx, ecx
cdqe
movzx ecx, byte [rsp + rcx + 0x300]
movzx eax, byte [rsp + rax + 0x300]
mov byte [rbx + rdx*4 + 2], cl
mov byte [rbx + rdx*4 + 3], al
add rdx, 1
cmp esi, edx
ja 0x14020c5d5
mov rcx, r12
call sub.msvcrt.dll_free
mov rax, qword [rsp + 0x1f80]
mov qword [rax + 0x18], rbx
mov rax, qword [rsp + 0x1f80]
mov rcx, qword [rax + 0x10]
call sub.msvcrt.dll_free
mov rax, qword [rsp + 0x1f80]
mov dword [rsp + 0x44], 1
mov qword [rax + 0x10], 0
jmp 0x140209e48
mov eax, 8
mov ecx, 0x90
mov rdi, r8
rep stosb byte [rdi], al
mov eax, 9
mov ecx, 0x70
rep stosb byte [rdi], al
movabs rax, 0x707070707070707
mov qword [rdi + 8], rax
mov qword [rdi], rax
movabs rax, 0x707070707070707
mov qword [rdi + 0x10], rax
mov rax, qword [str._b_b_b_b_b_b_b_b]
mov qword [0x14021eff8], rax
movabs rax, 0x505050505050505
mov qword [0x14021f000], rax
mov qword [0x14021f008], rax
mov qword [0x14021f010], rax
mov qword [0x14021f018], rax
jmp 0x14020a126
cmp ecx, r8d
jge 0x14020c726
mov r10, qword [rsp + 0xef8]
nop word [rax + rax]
mov rax, qword [rsp + 0xef0]
cmp rax, r10
jae 0x14020c73d
lea r9, [rax + 1]
mov qword [rsp + 0xef0], r9
movzx eax, byte [rax]
shl eax, cl
add ecx, 8
or edx, eax
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], edx
cmp ecx, 0x18
jle 0x14020c6f0
mov ecx, r8d
sub dword [rsp + 0xf00], r8d
shr dword [rsp + 0xf04], cl
jmp 0x14020a9fb
add ecx, 8
mov dword [rsp + 0xf04], edx
mov dword [rsp + 0xf00], ecx
cmp ecx, 0x18
jg 0x14020c726
add ecx, 8
cmp ecx, 0x18
jle 0x14020c753
mov dword [rsp + 0xf00], ecx
jmp 0x14020c726
mov r10d, 0xd
jmp 0x14020b7d0
xor ecx, ecx
movsxd rdx, ecx
lea eax, [rcx + 1]
mov byte [rsp + rdx + 0x700], 0
cmp ecx, 3
je 0x14020ab30
mov ecx, 4
sub ecx, eax
cmp eax, 3
cdqe
lea rdx, [rsp + rax + 0x700]
mov eax, 1
cmovg rcx, rax
mov rdi, rdx
xor eax, eax
rep stosb byte [rdi], al
jmp 0x14020ab30
mov r10d, 0xe
jmp 0x14020b7d0
mov ecx, edx
lea eax, [rdx + rdx]
sar ecx, 1
and eax, 0xaaaa
and ecx, 0x5555
or ecx, eax
mov eax, ecx
shl ecx, 2
sar eax, 2
and ecx, 0xcccc
and eax, 0x3333
or eax, ecx
mov ecx, eax
shl eax, 4
sar ecx, 4
mov ebx, ecx
mov ecx, eax
and ebx, 0xf0f
and ecx, 0xf0f0
or ecx, ebx
mov ebx, ecx
shl ecx, 8
sar ebx, 8
movzx eax, cx
or eax, ebx
cmp eax, dword [rsp + 0x48]
jl 0x14020cb0f
cmp eax, dword [rsp + 0x50]
jl 0x14020cb19
cmp eax, dword [rsp + 0x64]
jl 0x14020cb23
cmp eax, dword [rsp + 0x6c]
jl 0x14020cb2d
cmp eax, dword [rsp + 0x74]
jl 0x14020cb60
cmp eax, dword [rsp + 0xb0]
jge 0x14020ab6a
mov ebx, 0xf
nop dword [rax]
mov ecx, r12d
sub r8d, ebx
sub ecx, ebx
mov dword [rsp + 0xf00], r8d
sar eax, cl
movsxd rcx, ebx
movzx edi, word [rsp + rcx*2 + 0xb00]
movzx ecx, word [rsp + rcx*2 + 0xb64]
sub eax, edi
add eax, ecx
mov ecx, ebx
shr edx, cl
cdqe
mov dword [rsp + 0xf04], edx
movzx eax, word [rsp + rax*2 + 0xca4]
jmp 0x14020b278
cmp eax, 0x10
je 0x14020ca4c
cmp eax, 0x11
je 0x14020c992
cmp r8d, 6
jg 0x14020c92f
mov rax, qword [rsp + 0xef0]
mov ecx, r8d
cmp rax, r9
jae 0x14020c901
nop dword [rax + rax]
lea r8, [rax + 1]
mov qword [rsp + 0xef0], r8
movzx eax, byte [rax]
shl eax, cl
add ecx, 8
or edx, eax
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], edx
cmp ecx, 0x18
jg 0x14020c92f
mov rax, r8
cmp rax, r9
jb 0x14020c8d0
mov r8d, ecx
mov dword [rsp + 0xf04], edx
add r8d, 8
mov dword [rsp + 0xf00], r8d
cmp r8d, 0x18
jg 0x14020c92f
add r8d, 8
cmp r8d, 0x18
jle 0x14020c91d
mov dword [rsp + 0xf00], r8d
mov eax, dword [rsp + 0xf00]
mov ebx, dword [rsp + 0xf04]
lea r8d, [rax - 7]
movsxd rax, r10d
mov edx, ebx
and ebx, 0x7f
add rax, rbp
lea ecx, [rbx + 0xb]
shr edx, 7
mov dword [rsp + 0xf00], r8d
lea rdi, [rax + 8]
mov dword [rsp + 0xf04], edx
mov rbx, rcx
and rdi, 0xfffffffffffffff8
mov qword [rax], 0
add r10d, ebx
mov qword [rax + rcx - 8], 0
sub rax, rdi
add ecx, eax
mov rax, r13
shr ecx, 3
rep stosq qword [rdi], rax
jmp 0x14020b298
cmp r8d, 2
jg 0x14020ca07
mov rax, qword [rsp + 0xef0]
mov ecx, r8d
jmp 0x14020c9d4
lea r8, [rax + 1]
mov qword [rsp + 0xef0], r8
movzx eax, byte [rax]
shl eax, cl
add ecx, 8
or edx, eax
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], edx
cmp ecx, 0x18
jg 0x14020ca07
mov rax, r8
cmp rax, r9
jb 0x14020c9a8
mov r8d, ecx
mov dword [rsp + 0xf04], edx
add r8d, 8
mov dword [rsp + 0xf00], r8d
cmp r8d, 0x18
jg 0x14020ca07
add r8d, 8
cmp r8d, 0x18
jle 0x14020c9f5
mov dword [rsp + 0xf00], r8d
mov ebx, dword [rsp + 0xf04]
mov eax, dword [rsp + 0xf00]
movsxd r15, r10d
add r15, rbp
mov edx, ebx
and ebx, 7
lea r8d, [rax - 3]
mov rdi, r15
lea ecx, [rbx + 3]
shr edx, 3
mov eax, r14d
mov dword [rsp + 0xf00], r8d
mov rbx, rcx
mov dword [rsp + 0xf04], edx
rep stosb byte [rdi], al
add r10d, ebx
jmp 0x14020b298
cmp r8d, 1
jg 0x14020cabf
mov rax, qword [rsp + 0xef0]
mov ecx, r8d
jmp 0x14020ca8c
lea r8, [rax + 1]
mov qword [rsp + 0xef0], r8
movzx eax, byte [rax]
shl eax, cl
add ecx, 8
or edx, eax
mov dword [rsp + 0xf00], ecx
mov dword [rsp + 0xf04], edx
cmp ecx, 0x18
jg 0x14020cabf
mov rax, r8
cmp rax, r9
jb 0x14020ca60
mov r8d, ecx
mov dword [rsp + 0xf04], edx
add r8d, 8
mov dword [rsp + 0xf00], r8d
cmp r8d, 0x18
jg 0x14020cabf
add r8d, 8
cmp r8d, 0x18
jle 0x14020caad
mov dword [rsp + 0xf00], r8d
mov eax, dword [rsp + 0xf00]
mov ebx, dword [rsp + 0xf04]
movsxd r15, r10d
add r15, rbp
lea r8d, [rax - 2]
lea eax, [r10 - 1]
mov edx, ebx
and ebx, 3
cdqe
lea ecx, [rbx + 3]
shr edx, 2
mov rdi, r15
movzx eax, byte [rsp + rax + 0x130]
mov rbx, rcx
mov dword [rsp + 0xf04], edx
mov dword [rsp + 0xf00], r8d
add r10d, ebx
rep stosb byte [rdi], al
jmp 0x14020b298
mov ebx, 0xa
jmp 0x14020c858
mov ebx, 0xb
jmp 0x14020c858
mov ebx, 0xc
jmp 0x14020c858
mov ebx, 0xd
jmp 0x14020c858
mov r10d, 0xa
jmp 0x14020b8e0
movsxd rdx, r9d
lea eax, [r9 + 1]
mov byte [rsp + rdx + 0x700], 0
cmp r9d, 3
jne 0x14020c788
jmp 0x14020ab30
mov ebx, 0xe
jmp 0x14020c858
mov r10d, 0xb
jmp 0x14020b8e0
mov r8, qword [rsp + 0xef8]
mov rax, qword [rsp + 0xef0]
cmp r8, rax
jbe 0x14020c76f
lea rdx, [rax + 1]
mov r9d, 1
mov qword [rsp + 0xef0], rdx
movzx eax, byte [rax]
mov byte [rsp + 0x700], al
jmp 0x14020aab8
cdqe
mov byte [rsp + rax + 0x700], 0
cmp r9d, 2
je 0x14020ab30
mov eax, 3
jmp 0x14020c788
mov r10d, 0xc
jmp 0x14020b8e0
mov byte [rsp + 0x72], 3
jmp 0x14020a845
mov r10d, 0xd
jmp 0x14020b8e0
xor eax, eax
jmp 0x14020ab29
mov r10d, 0xe
jmp 0x14020b8e0
mov dword [rsp + 0x44], 0
xor edi, edi
jmp 0x140209ea6
mov ecx, dword [rax]
imul ecx, dword [rax + 4]
movsxd r12, ebp
imul ecx, ebp
call sub.msvcrt.dll_malloc
mov qword [rsp + 0xb8], r15
mov r15, r12
movdqu xmm9, xmmword [0x140231ff0]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x700]
movdqu xmm8, xmmword [0x140232000]
mov qword [rsp + 0x98], rax
lea rax, [rsp + 0xef0]
movdqu xmm7, xmmword [0x140232010]
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0x130]
movdqu xmm6, xmmword [0x140232020]
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0xf0]
mov r12, qword [rsp + 0x1f80]
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x88], rax
jmp 0x14020ccb9
add qword [rsp + 0x50], 4
mov rax, qword [rsp + 0x50]
cmp rax, 0x1c
je 0x14020cefe
mov eax, 1
mov rsi, qword [rsp + 0x50]
mov rcx, qword [r12]
xor edx, edx
shl rax, 0x20
mov dword [rsp + 0x108], 0
mov qword [rsp + 0x100], rax
movabs rax, 0x200000002
mov qword [rsp + 0x710], rax
add rax, 2
mov qword [rsp + 0xf00], rax
mov rax, qword [rsp + 0x88]
movups xmmword [rsp + 0xf0], xmm9
mov ebx, dword [rax + rsi]
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x140], 2
mov dword [rsp + 0x148], 1
mov dword [rsp + 0x718], 1
mov dword [rsp + 0xf08], 2
movups xmmword [rsp + 0x130], xmm8
movups xmmword [rsp + 0x700], xmm7
mov r13d, dword [rax + rsi]
movups xmmword [rsp + 0xef0], xmm6
mov eax, dword [rcx]
lea eax, [r13 + rax - 1]
sub eax, ebx
div r13d
xor edx, edx
mov edi, eax
mov rax, qword [rsp + 0x90]
mov r14d, dword [rax + rsi]
mov rax, qword [rsp + 0x80]
mov esi, dword [rax + rsi]
mov eax, dword [rcx + 4]
lea eax, [rsi + rax - 1]
mov dword [rsp + 0x74], esi
sub eax, r14d
div esi
mov dword [rsp + 0x68], eax
test edi, edi
je 0x14020cca4
test eax, eax
je 0x14020cca4
mov eax, dword [rcx + 8]
mov esi, dword [rsp + 0x58]
mov dword [rsp + 0x20], edi
mov r9d, ebp
mov edx, dword [rsp + 0x68]
mov r8d, dword [rsp + 0xa0]
mov rcx, r12
imul eax, edi
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], edx
imul eax, esi
add eax, 7
sar eax, 3
add eax, 1
imul eax, edx
mov rdx, qword [rsp + 0xa8]
mov dword [rsp + 0xb4], eax
mov eax, dword [rsp + 0x5c]
mov dword [rsp + 0x38], eax
call fcn.1401ff360
test eax, eax
je 0x14020d128
mov eax, ebp
imul ebx, ebp
mov dword [rsp + 0x64], 0
xchg r15, r12
imul eax, edi
mov dword [rsp + 0x6c], 0
imul r13d, ebp
mov dword [rsp + 0x44], edi
mov dword [rsp + 0xb0], eax
movsxd rax, ebx
mov qword [rsp + 0x78], rax
movsxd r13, r13d
mov esi, dword [rsp + 0x64]
cmp dword [rsp + 0x68], esi
jle 0x14020ced6
cmp dword [rsp + 0x44], 0
jle 0x14020cea8
movsxd rdi, dword [rsp + 0x6c]
mov rsi, qword [rsp + 0x78]
mov rax, r12
xor ebx, ebx
mov r12, rdi
mov rdi, r15
mov r15, rsi
mov rsi, rax
nop
mov rax, qword [rdi]
mov rdx, qword [rdi + 0x18]
mov r8, rsi
add ebx, 1
mov ecx, dword [rax]
add rdx, r12
add r12, rsi
imul ecx, ebp
imul ecx, r14d
add rcx, r15
add rcx, qword [rsp + 0x48]
add r15, r13
call sub.msvcrt.dll_memcpy
cmp dword [rsp + 0x44], ebx
jne 0x14020ce70
mov r15, rdi
mov r12, rsi
mov esi, dword [rsp + 0xb0]
add dword [rsp + 0x64], 1
add dword [rsp + 0x6c], esi
add r14d, dword [rsp + 0x74]
jmp 0x14020ce3f
xor eax, eax
movzx ecx, byte [rdx + rax]
mov byte [r9 + rax], cl
add rax, 1
cmp ebp, eax
jne 0x14020cec1
jmp 0x14020b707
xchg r12, r15
mov rcx, qword [r12 + 0x18]
call sub.msvcrt.dll_free
mov eax, dword [rsp + 0xb4]
add qword [rsp + 0xa8], rax
sub dword [rsp + 0xa0], eax
jmp 0x14020cca4
mov rax, qword [rsp + 0x1f80]
mov rsi, qword [rsp + 0x48]
mov r15, qword [rsp + 0xb8]
mov qword [rax + 0x18], rsi
jmp 0x14020c55a
cmp rdi, rax
jae 0x14020ab6a
lea r8, [rdi + 1]
mov qword [rsp + 0xef0], r8
movzx edx, byte [rdi]
mov ecx, edx
and ecx, 0xf
cmp rax, r8
jbe 0x14020d013
lea rax, [rdi + 2]
mov qword [rsp + 0xef0], rax
movzx r8d, byte [rdi + 1]
mov eax, edx
movzx edx, r8b
mov r9d, 0x1f
shl eax, 8
add eax, edx
cdq
idiv r9d
test edx, edx
jne 0x14020ab6a
and r8b, 0x20
jne 0x14020ab6a
cmp cl, 8
je 0x140209fd9
jmp 0x14020ab6a
mov qword [rsp + 0xf08], r9
jmp 0x14020c479
mov rax, qword [rsp + 0x1f80]
mov rsi, qword [rsp + 0x1f80]
movzx r8d, byte [rsp + 0xcd]
mov rax, qword [rax]
mov rdx, qword [rsi + 0x18]
mov ecx, dword [rax]
imul ecx, dword [rax + 4]
cmp dword [r15 + 0xc], 2
je 0x14020d028
movzx r10d, byte [rsp + 0xce]
xor eax, eax
movzx r9d, byte [rsp + 0xcf]
jmp 0x14020cfdc
add rax, 1
cmp ecx, eax
jbe 0x14020c565
cmp byte [rdx + rax*4], r8b
jne 0x14020cfd8
cmp byte [rdx + rax*4 + 1], r10b
jne 0x14020cfd8
cmp byte [rdx + rax*4 + 2], r9b
jne 0x14020cfd8
mov byte [rdx + rax*4 + 3], 0
jmp 0x14020cfd8
mov rcx, r9
xor eax, eax
jmp 0x14020b689
mov ebp, 4
jmp 0x14020c4f9
xor r8d, r8d
jmp 0x14020cf53
bswap eax
mov dword [str.XXXX_PNG_chunk_not_known], eax
jmp 0x140209e48
xor eax, eax
jmp 0x14020d040
cmp byte [rdx + rax*2], r8b
setne r9b
neg r9d
mov byte [rdx + rax*2 + 1], r9b
add rax, 1
cmp ecx, eax
ja 0x14020d02c
jmp 0x14020c565
mov rax, qword [rsp + 0x1f80]
mov rsi, qword [rsp + 0x1f80]
mov rax, qword [rax]
mov rcx, qword [rsi + 0x18]
mov edx, dword [rax]
imul edx, dword [rax + 4]
cmp dword [rax + 0xc], 3
je 0x14020d103
mov rax, qword [0x1402376f0]
cmp dword [rax], 0
je 0x14020d0de
lea r10, [rcx + rdx*4]
jmp 0x14020d0d4
movzx r8d, byte [rcx + 3]
movzx r11d, byte [rcx]
movzx r9d, byte [rcx + 2]
test r8b, r8b
je 0x14020d0c8
imul r9d, r9d, 0xff
mov eax, r9d
cdq
idiv r8d
mov r9d, eax
movzx eax, byte [rcx + 1]
imul eax, eax, 0xff
cdq
idiv r8d
mov byte [rcx + 1], al
movzx eax, r11b
imul eax, eax, 0xff
cdq
idiv r8d
mov r11d, eax
mov byte [rcx + 2], r11b
add rcx, 4
mov byte [rcx - 4], r9b
cmp rcx, r10
jne 0x14020d082
jmp 0x14020c583
xor eax, eax
jmp 0x14020d0fa
movzx r8d, byte [rcx + rax*4]
movzx r9d, byte [rcx + rax*4 + 2]
mov byte [rcx + rax*4 + 2], r8b
mov byte [rcx + rax*4], r9b
add rax, 1
cmp edx, eax
ja 0x14020d0e2
jmp 0x14020c583
xor eax, eax
jmp 0x14020d11f
movzx r8d, byte [rcx]
movzx r9d, byte [rcx + 2]
add eax, 1
add rcx, 3
mov byte [rcx - 3], r9b
mov byte [rcx - 1], r8b
cmp edx, eax
jne 0x14020d107
jmp 0x14020c583
mov rcx, qword [rsp + 0x48]
call sub.msvcrt.dll_free
mov dword [rsp + 0x44], 0
jmp 0x140209e48