Function at 0x1401a03d0
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x638
movdqa xmmword [rsp + 0x620], xmm8
movaps xmmword [rsp + 0x610], xmm7
movaps xmmword [rsp + 0x600], xmm6
mov rsi, r8
mov r12, rdx
mov qword [rsp + 0x1e8], rcx
lea rax, [rdx + 0xa8]
mov qword [rsp + 0x3c8], rax
lea rax, [rdx + 0x3b0]
mov qword [rsp + 0x200], rax
lea rax, [rdx + 0x3b1]
mov qword [rsp + 0x410], rax
lea rax, [rdx + 0x338]
mov qword [rsp + 0x400], rax
movzx ecx, byte [rdx + 0x32f]
mov rax, qword [rdx + 0xd0]
mov r14, qword [r8]
cmp byte [rdx + 0x32e], 0
movdqa xmm6, xmmword [0x140220680]
movdqa xmm7, xmmword [0x140220690]
mov r13, qword [r8 + 8]
lea rdx, [r12 + 0x390]
mov qword [rsp + 0x1f8], rdx
setne r9b
xor ebx, ebx
mov ebp, 0x4805
mov qword [rsp + 0x258], rdx
mov qword [rsp + 0x228], rdx
mov qword [rsp + 0x1f0], rdx
mov dword [rsp + 0x98], edx
mov qword [rsp + 0x208], rdx
mov qword [rsp + 0x88], rdx
mov dword [rsp + 0x48], edx
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0xe8], rdx
mov qword [rsp + 0xa0], rdx
mov qword [rsp + 0x78], rdx
mov dword [rsp + 0x44], edx
xor edx, edx
mov qword [rsp + 0x278], rdx
xor edx, edx
mov qword [rsp + 0x260], rdx
mov qword [rsp + 0x1e0], r12
mov qword [rsp + 0x428], r14
mov qword [rsp + 0x420], r13
mov qword [rsp + 0x3b8], r8
mov r15d, r9d
mov rdi, rbx
test cl, cl
setne bl
test rax, rax
je 0x1401a055c
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x3c8]
mov rdx, rsi
call fcn.140132850
test rax, rax
jne 0x1401a4606
add qword [rsp + 0x260], rdx
cmp qword [r12 + 0xd0], 0
jne 0x1401a0530
mov rcx, r14
call qword [r13 + 0x70]
test rax, rax
jne 0x1401a47cc
and r15b, bl
cmp qword [rsp + 0x260], 0
setne al
mov dword [rsp + 0x2bc], r15d
test r15b, al
mov rbx, rdi
jne 0x1401a4636
nop
test bl, 1
jne 0x1401a0890
cmp qword [r12 + 0x70], 0
jne 0x1401a0890
cmp byte [r12 + 0x332], 0
jne 0x1401a0890
cmp byte [r12 + 0x32e], 0
jne 0x1401a05ce
cmp qword [r12 + 0xd0], 0
jne 0x1401a0890
cmp qword [r12 + 0x48], 0
je 0x1401a0630
mov rax, qword [r12 + 0x50]
mov rcx, qword [r12 + 0x60]
xor edx, edx
xor r8d, r8d
test rdx, rdx
je 0x1401a0601
nop word [rax + rax]
add r8, qword [rcx + 0x10]
add rcx, 0x18
add rdx, 0xffffffffffffffe8
test rdx, rdx
jne 0x1401a05f0
cmp r8, rax
jbe 0x1401a0630
mov r8d, 0x1e
mov cl, 0x27
lea rdx, [0x141a81f30]
call fcn.1401ac3f0
mov rsi, rax
jmp 0x1401a07a8
cmp dword [r12 + 0x358], 2
mov eax, 0xffff
cmove rax, rbp
mov rcx, qword [r12 + 0x3e8]
cmp rcx, rax
jae 0x1401a06d0
lea rsi, [rcx + 0x1000]
cmp rax, rsi
cmovb rsi, rax
mov r8, qword [r12 + 0x3e0]
mov r15, rsi
sub r15, r8
jbe 0x1401a06fa
mov rax, qword [r12 + 0x3d0]
sub rax, r8
cmp rax, r15
jb 0x1401a0835
mov rsi, qword [r12 + 0x3d8]
lea rcx, [rsi + r8]
cmp r15, 2
jb 0x1401a06bc
lea rax, [r15 - 1]
xor edx, edx
mov rdi, r8
mov r8, rax
call sub.msvcrt.dll_memset
mov r8, rdi
lea r8, [r15 + rdi]
dec r8
add rsi, r8
mov rcx, rsi
mov byte [rcx], 0
inc r8
mov qword [r12 + 0x3e0], r8
jmp 0x1401a0760
mov r8d, 0x13
mov cl, 0x15
lea rdx, [0x141a5c018]
call fcn.14012e350
mov rsi, rax
mov ecx, 1
test rcx, rcx
je 0x1401a0796
jmp 0x1401a079f
test rcx, rcx
je 0x1401a0704
cmp r8, rax
jbe 0x1401a0760
mov rax, qword [r12 + 0x3d0]
mov qword [r12 + 0x3e0], rsi
cmp rax, rsi
jbe 0x1401a0755
mov r8, qword [r12 + 0x3d8]
mov rcx, qword [0x141ada118]
xor edx, edx
mov r9, rsi
call sub.KERNEL32.dll_HeapReAlloc
test rax, rax
je 0x1401a480c
mov qword [r12 + 0x3d8], rax
mov qword [r12 + 0x3d0], rsi
mov r8, qword [r12 + 0x3e0]
jmp 0x1401a0760
mov r8, rsi
nop dword [rax + rax]
mov rdx, qword [r12 + 0x3e8]
sub r8, rdx
jb 0x1401a480c
add rdx, qword [r12 + 0x3d8]
mov rcx, r14
call qword [r13 + 0x18]
mov rsi, rdx
mov ecx, 1
test rax, rax
je 0x1401a081d
test rcx, rcx
jne 0x1401a079f
test rsi, rsi
je 0x1401a086b
test rcx, rcx
je 0x1401a0878
mov rcx, rsi
call fcn.14015a510
cmp al, 0x23
jne 0x1401a461e
mov eax, esi
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x1401a0590
test rax, rax
je 0x1401a0590
mov r15, qword [rsi - 1]
mov rdi, qword [rsi + 7]
mov rcx, r15
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x1401a0804
cmp qword [rdi + 0x10], 0x11
jb 0x1401a07f3
mov r15, qword [r15 - 8]
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, r15
call fcn.1401cdfe4
dec rsi
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, rsi
call fcn.1401cdfe4
jmp 0x1401a0590
add qword [r12 + 0x3e8], rsi
xor ecx, ecx
test rcx, rcx
je 0x1401a0796
jmp 0x1401a079f
lea rcx, [r12 + 0x3d0]
mov rdx, r8
mov r8, r15
call fcn.14017bc20
mov r8, qword [r12 + 0x3e0]
mov rsi, qword [r12 + 0x3d8]
lea rcx, [rsi + r8]
cmp r15, 2
jae 0x1401a069b
jmp 0x1401a06bc
mov byte [r12 + 0x333], 1
mov bl, 1
jmp 0x1401a0890
add qword [rsp + 0x278], rsi
test rsi, rsi
movzx ebx, bl
mov eax, 1
cmove ebx, eax
nop
movzx eax, byte [r12 + 0x3b0]
mov r8, qword [r12 + 0x3b8]
mov r14, qword [r12 + 0x3c0]
mov r15, qword [r12 + 0x3c8]
mov byte [r12 + 0x3b0], 0xf
cmp al, 0x14
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x60], r8
jne 0x1401a3980
mov qword [rsp + 0x1b0], r14
mov r14, qword [r12 + 0x3e8]
cmp r14, qword [r12 + 0x3e0]
mov rbp, qword [rsp + 0x38]
ja 0x1401a480c
mov rax, qword [r12 + 0x3d8]
mov qword [rsp + 0x408], rax
xor r13d, r13d
mov r10, qword [rsp + 0x80]
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0x58], r14
movzx ecx, word [r12 + 0x328]
mov word [rsp + 0x1ce], cx
cmp byte [r12 + 0x390], 0x14
mov qword [rsp + 0x1b8], rax
je 0x1401a0968
lea rcx, [rsp + 0xf0]
mov rdx, qword [rsp + 0x1f8]
mov rsi, r10
call fcn.140143be0
mov r10, rsi
movzx edi, byte [rsp + 0xf0]
cmp dil, 0x14
jne 0x1401a3fd1
cmp r13, r14
ja 0x1401a480c
je 0x1401a3b47
mov rsi, r14
sub rsi, r13
mov rax, qword [rsp + 0x408]
add rax, r13
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xa8], r13
mov qword [rsp + 0x1d8], rsi
mov rax, qword [r12 + 0x358]
test rax, rax
je 0x1401a09df
cmp eax, 1
jne 0x1401a0a10
mov rax, qword [r12 + 0x360]
mov rdi, qword [r12 + 0x378]
mov rcx, qword [r12 + 0x380]
sub rcx, rdi
mov edx, 0
cmovae rdx, rcx
cmp rax, rdx
jbe 0x1401a153e
cmp byte [r12 + 0x38c], 0
jne 0x1401a3eca
mov r9, qword [r12 + 0x370]
cmp qword [rsp + 0x58], r13
jae 0x1401a0a1e
jmp 0x1401a480c
xor r9d, r9d
cmp qword [rsp + 0x58], r13
jb 0x1401a480c
mov qword [rsp + 0x80], r10
cmp rsi, r9
jb 0x1401a480c
mov rax, rsi
sub rax, r9
je 0x1401a3b01
mov rcx, qword [rsp + 0xb8]
lea r12, [rcx + r9]
movzx r11d, byte [r12]
lea r14d, [r11 - 0x14]
movzx r15d, r14b
cmp r15b, 5
mov ecx, 5
cmovae r15d, ecx
jae 0x1401a3b2a
lea rcx, [rax - 1]
cmp rcx, 2
jb 0x1401a3b34
cmp rax, 2
jbe 0x1401a480c
movzx edi, word [r12 + 1]
rol di, 8
movzx ecx, di
cmp ecx, 0xfefb
mov qword [rsp + 0x38], rbp
jg 0x1401a0ad0
lea edx, [rcx - 0x300]
cmp edx, 4
ja case.default.0x1401a0ab2
lea r8, [0x1402206a0]
movsxd rcx, dword [r8 + rdx*4]
add rcx, r8
jmp rcx
mov r10d, 1
mov rbp, r10
jmp 0x1401a0b70
cmp ecx, 0xfefc
je 0x1401a0b0e
cmp ecx, 0xfefd
je 0x1401a0b19
cmp ecx, 0xfeff
jne 0x1401a0b45
mov r10d, 6
mov rbp, r10
jmp 0x1401a0b70
cmp ecx, 0x200
jne 0x1401a0b45
xor r10d, r10d
mov rbp, r10
jmp 0x1401a0b70
mov r10d, 5
mov rbp, r10
jmp 0x1401a0b70
mov r10d, 8
mov rbp, r10
jmp 0x1401a0b70
mov r10d, 7
mov rbp, r10
jmp 0x1401a0b70
mov r10d, 3
mov rbp, r10
jmp 0x1401a0b70
mov r10d, 4
mov rbp, r10
jmp 0x1401a0b70
mov r10d, 2
mov rbp, r10
jmp 0x1401a0b70
mov ecx, edi
and ecx, 0xff00
cmp ecx, 0x300
jne 0x1401a4284
mov ebp, 9
mov r10w, 9
nop word cs:[rax + rax]
lea rcx, [rax - 3]
cmp rcx, 2
jb 0x1401a3aac
movzx ecx, word [r12 + 3]
cmp r14b, 3
je 0x1401a0b93
test cx, cx
je 0x1401a3d41
rol cx, 8
movzx edx, cx
cmp edx, 0x47ff
ja 0x1401a3d48
mov qword [rsp + 0x418], rbp
lea r8, [rax - 5]
cmp r8, rdx
jb 0x1401a3aac
lea r8, [rdx + 5]
mov qword [rsp + 0x3c0], r8
cmp r8, rax
ja 0x1401a480c
mov ebp, edi
mov rbx, r11
mov rdi, r10
mov qword [rsp + 0xb0], r9
and edx, 0x7f00
movzx r13d, cl
or r13, rdx
je 0x1401a0c20
movzx eax, byte [0x141ada129]
xor ecx, ecx
mov rdx, r13
call fcn.14014fee0
test rax, rax
je 0x1401a480c
mov rsi, rax
mov qword [rsp + 0x1c0], r13
jmp 0x1401a0c2f
mov esi, 1
xor eax, eax
mov qword [rsp + 0x1c0], rax
add r12, 5
mov rcx, rsi
mov rdx, r12
mov r8, r13
call sub.msvcrt.dll_memcpy
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x3c0]
add rax, rcx
cmp word [rsp + 0x1ce], 0xa
mov qword [rsp + 0x280], rax
jne 0x1401a0c90
test r14b, r14b
mov r12, qword [rsp + 0x1e0]
mov r8, qword [rsp + 0x58]
mov r9, rdi
jne 0x1401a0cf0
cmp qword [r12 + 0x358], 2
jne 0x1401a0cf0
jmp 0x1401a1455
test r15b, r15b
mov r12, qword [rsp + 0x1e0]
mov r9, rdi
je 0x1401a0cd7
movzx eax, r15b
cmp eax, 1
mov r8, qword [rsp + 0x58]
jne 0x1401a0cf0
cmp word [rsp + 0x1ce], 5
jne 0x1401a0cf0
cmp byte [r12 + 0x40], 0
jne 0x1401a0cf0
cmp r13, 2
ja 0x1401a0cf0
cmp qword [r12 + 0x358], 2
jne 0x1401a0cf0
jmp 0x1401a2422
cmp dword [r12 + 0x358], 2
mov r8, qword [rsp + 0x58]
je 0x1401a1455
nop dword [rax + rax]
cmp byte [r12 + 0x42], 2
jne 0x1401a0e20
mov r14, r12
mov r12, qword [r12 + 0x38]
mov rdx, qword [r14 + 0x20]
mov rax, qword [r14 + 0x28]
mov rcx, qword [rsp + 0x1c0]
mov qword [rsp + 0x2c0], rcx
mov qword [rsp + 0x2c8], rsi
mov qword [rsp + 0x2d0], r13
mov word [rsp + 0x2d8], r9w
mov word [rsp + 0x2da], bp
mov byte [rsp + 0x2dc], r15b
mov byte [rsp + 0x2dd], bl
lea rcx, [rsp + 0xf0]
lea r8, [rsp + 0x2c0]
mov r9, r12
call qword [rax + 0x18]
cmp qword [rsp + 0xf0], 0
je 0x1401a0e6d
cmp byte [rsp + 0xf8], 5
mov r12, r14
mov rbx, qword [rsp + 0x70]
jne 0x1401a0d98
cmp qword [r12], 0
je 0x1401a0d98
mov rax, qword [r12 + 8]
sub rax, r13
jae 0x1401a0e90
mov rbp, qword [rsp + 0xf8]
mov r10, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x108]
mov eax, ecx
shr eax, 0x10
mov dword [rsp + 0x98], eax
mov rax, rcx
shr rax, 0x20
mov qword [rsp + 0x1f0], rax
mov rax, rcx
shr rax, 0x28
mov qword [rsp + 0x228], rax
mov rax, rcx
mov qword [rsp + 0x208], rcx
shr rcx, 0x30
mov qword [rsp + 0x258], rcx
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x220], rax
movabs rax, 0x8000000000000015
lea r8, [rax - 0x14]
jmp 0x1401a0f59
and qword [rsp + 0x220], 0xffffffffffffff00
mov edi, ebx
mov qword [rsp + 0x228], rdi
mov eax, r15d
mov qword [rsp + 0x1f0], rax
mov ebx, ebp
mov dword [rsp + 0x98], ebx
mov ebp, r9d
mov qword [rsp + 0x208], rbp
mov r10, r13
mov rbp, rsi
mov rbx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x1c0]
jmp 0x1401a0f61
lea rax, [r12 + 1]
mov qword [r14 + 0x38], rax
cmp byte [r14 + 0x40], 0
mov rbx, qword [rsp + 0x70]
je 0x1401a0eca
xor eax, eax
cmp r12, 0xffffffffffff0000
sete al
jmp 0x1401a0edb
mov qword [r12], 1
mov qword [r12 + 8], rax
lea rcx, [rsp + 0xf8]
call fcn.1401a8fa0
movabs rax, 0x8000000000000015
lea r8, [rax - 0x15]
mov rbp, qword [rsp + 0x38]
mov r10, qword [rsp + 0x80]
jmp 0x1401a0f59
xor eax, eax
cmp r12, 0xffffffffffff0000
sete al
mov byte [r14 + 0x40], 1
mov r8, qword [rsp + 0xf8]
mov rbp, qword [rsp + 0x100]
mov r10, qword [rsp + 0x108]
mov rdx, qword [rsp + 0x110]
mov ecx, edx
shr ecx, 0x10
mov dword [rsp + 0x98], ecx
mov rcx, rdx
shr rcx, 0x20
mov qword [rsp + 0x1f0], rcx
mov rcx, rdx
shr rcx, 0x28
mov qword [rsp + 0x228], rcx
mov rcx, rdx
mov qword [rsp + 0x208], rdx
shr rdx, 0x30
mov qword [rsp + 0x258], rdx
mov rcx, qword [rsp + 0x220]
and rcx, 0xffffffffffffff00
or rcx, rax
mov qword [rsp + 0x220], rcx
mov r12, r14
mov rcx, qword [rsp + 0xb0]
movabs rax, 0x8000000000000000
cmp r8, rax
mov r13, qword [rsp + 0xa8]
mov r14, r10
je 0x1401a11ee
movabs rax, 0x8000000000000001
cmp r8, rax
je 0x1401a120f
mov rsi, qword [r12 + 0x358]
cmp rsi, 2
je 0x1401a0fae
cmp byte [rsp + 0x1f0], 2
jne 0x1401a128e
cmp byte [rsp + 0x1f0], 2
jne 0x1401a138f
cmp esi, 2
jne 0x1401a0fe0
cmp r10, 4
jae 0x1401a1057
mov r15, r13
mov r13, rbp
xor ebx, ebx
jmp 0x1401a1083
mov rcx, qword [r12 + 0x380]
mov rdi, rcx
add rdi, r10
jb 0x1401a480c
cmp rdi, qword [rsp + 0x1d8]
ja 0x1401a480c
mov r15, r13
mov r13, rbp
mov rbp, r8
add rcx, qword [rsp + 0xb8]
mov rdx, r13
mov r8, r10
call sub.msvcrt.dll_memcpy
mov rdx, qword [rsp + 0x280]
mov qword [r12 + 0x370], rdx
mov qword [r12 + 0x380], rdi
test rsi, rsi
je 0x1401a1128
mov rsi, qword [r12 + 0x360]
mov rax, qword [r12 + 0x378]
mov r10, r14
jmp 0x1401a11a0
movzx esi, byte [rbp + 1]
movzx eax, word [rbp + 2]
shl eax, 0x10
shl esi, 8
or esi, eax
bswap esi
cmp esi, 0xffff
ja 0x1401a1e5b
mov r15, r13
mov r13, rbp
add esi, 4
mov ebx, 1
cmp qword [rsp + 0x1d8], r10
jb 0x1401a480c
mov rbp, r8
mov rcx, qword [rsp + 0xb8]
mov rdx, r13
mov r8, r10
call sub.msvcrt.dll_memcpy
mov r10, r14
mov qword [r12 + 0x358], rbx
mov qword [r12 + 0x360], rsi
mov qword [r12 + 0x368], 0
mov rdx, qword [rsp + 0x280]
mov qword [r12 + 0x370], rdx
mov qword [r12 + 0x378], 0
mov qword [r12 + 0x380], r14
mov rax, qword [rsp + 0x208]
mov word [r12 + 0x388], ax
mov eax, dword [rsp + 0x98]
mov word [r12 + 0x38a], ax
mov byte [r12 + 0x38c], 0
xor eax, eax
mov rdi, r14
test rbx, rbx
mov rbx, qword [rsp + 0x70]
jne 0x1401a11a0
jmp 0x1401a11b5
mov rax, qword [r12 + 0x378]
mov rcx, rdi
sub rcx, rax
jb 0x1401a480c
cmp rcx, 4
mov r10, r14
jae 0x1401a1149
xor ebx, ebx
jmp 0x1401a1179
mov rcx, qword [rsp + 0xb8]
movzx esi, byte [rcx + rax + 1]
movzx ecx, word [rcx + rax + 2]
shl ecx, 0x10
shl esi, 8
or esi, ecx
bswap esi
cmp esi, 0xffff
ja 0x1401a2429
add esi, 4
mov ebx, 1
mov qword [r12 + 0x358], rbx
mov qword [r12 + 0x360], rsi
test rbx, rbx
mov rbx, qword [rsp + 0x70]
je 0x1401a11b5
nop word cs:[rax + rax]
sub rdi, rax
mov eax, 0
cmovae rax, rdi
cmp rsi, rax
jbe 0x1401a1501
mov rsi, qword [rsp + 0x1d8]
cmp rsi, rdx
jbe 0x1401a141c
test rbp, rbp
mov rbp, r13
mov r13, r15
je 0x1401a09a0
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, rbp
call fcn.1401cdfe4
mov r10, r14
jmp 0x1401a09a0
cmp dword [r12 + 0x358], 2
jne 0x1401a244d
add r13, qword [rsp + 0x280]
mov r14, qword [rsp + 0x58]
jmp 0x1401a0977
mov rcx, qword [rsp + 0x208]
mov eax, ecx
shr eax, 8
mov dword [rsp + 0x48], eax
movabs rax, 0x8000000000000015
lea rsi, [rax - 0x14]
mov rdx, rbp
mov qword [rsp + 0x90], rcx
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x78], rax
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0xe0], rax
mov rax, r10
mov qword [rsp + 0x50], r10
jmp 0x1401a16c9
mov r15, r13
mov r13, rbp
mov rbp, r8
mov word [rsp + 0x2c0], 0x1b08
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x2c0]
call fcn.140143be0
mov rcx, qword [rsp + 0x1f8]
cmp byte [rcx], 0x14
je 0x1401a12d0
call fcn.1401a8fa0
mov rcx, qword [rsp + 0x1f8]
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
movdqu xmmword [rcx + 0x10], xmm1
movdqu xmmword [rcx], xmm0
mov rdi, qword [rsp + 0x2c0]
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x2d0]
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0xe0], rax
mov eax, ecx
shr eax, 8
mov dword [rsp + 0x48], eax
mov eax, ecx
shr eax, 0x10
mov dword [rsp + 0x44], eax
mov rax, rcx
shr rax, 0x20
mov qword [rsp + 0x78], rax
mov rax, rcx
shr rax, 0x28
mov qword [rsp + 0xa0], rax
mov rax, rcx
mov qword [rsp + 0x90], rcx
shr rcx, 0x30
mov qword [rsp + 0xe8], rcx
movabs rax, 0x8000000000000015
lea rsi, [rax - 0x14]
test rbp, rbp
je 0x1401a16bd
mov rcx, qword [0x141ada118]
xor edx, edx
mov rbp, r13
mov r8, r13
call fcn.1401cdfe4
mov rdx, rdi
jmp 0x1401a16c3
add r13, rcx
add r13, qword [rsp + 0x3c0]
mov rax, qword [rsp + 0x208]
mov ecx, eax
shr ecx, 8
mov dword [rsp + 0x48], ecx
mov rcx, qword [rsp + 0xe0]
and rcx, 0xffffffffff000000
or rcx, 0x100
mov qword [rsp + 0xe0], rcx
mov rdx, rbp
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x78], rax
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x44], eax
mov rax, r10
mov qword [rsp + 0x50], r10
mov rsi, r8
jmp 0x1401a16c9
movabs rax, 0x8000000000000015
lea rsi, [rax - 0x15]
mov r8, rbp
mov rbp, r13
mov r13, r15
test r8, r8
je 0x1401a16e0
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, rbp
call fcn.1401cdfe4
mov r10, r14
jmp 0x1401a16e0
xor eax, eax
mov qword [rsp + 0x78], rax
mov rcx, qword [rsp + 0xa8]
add rcx, qword [rsp + 0x280]
mov rax, rsi
shr rax, 8
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0xe0]
and rax, 0xffffffffff000000
or rax, 0x100
mov qword [rsp + 0xe0], rax
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x88], rsi
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x90], rax
mov edi, ebx
mov qword [rsp + 0xa0], rdi
mov ebx, ebp
mov dword [rsp + 0x44], ebx
mov qword [rsp + 0x50], r13
mov r13, rcx
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x38]
mov r10, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x1c0]
movabs rax, 0x8000000000000000
cmp rdi, rax
jne 0x1401a17e0
jmp 0x1401a3eca
test rbp, rbp
mov rbp, r13
je 0x1401a151d
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, rbp
call fcn.1401cdfe4
mov r10, r14
cmp qword [r12 + 0x358], 2
je 0x1401a480c
mov r13, r15
mov rdi, qword [r12 + 0x378]
mov qword [rsp + 0x50], rsi
jmp 0x1401a1543
mov qword [rsp + 0x50], rax
mov r14, qword [rsp + 0x58]
sub r14, r13
jb 0x1401a480c
mov rbx, rdi
add rbx, qword [rsp + 0x50]
jb 0x1401a480c
cmp r14, rbx
jb 0x1401a480c
mov r15, r10
movzx eax, word [r12 + 0x388]
mov qword [rsp + 0x90], rax
movzx eax, word [r12 + 0x38a]
mov dword [rsp + 0x44], eax
cmp qword [rsp + 0x50], 0
je 0x1401a15c3
mov r13, qword [rsp + 0x50]
js 0x1401a480c
movzx eax, byte [0x141ada129]
xor ecx, ecx
mov rdx, r13
call fcn.14014fee0
test rax, rax
je 0x1401a480c
mov rcx, r13
mov qword [rsp + 0x1c0], r13
jmp 0x1401a15d7
mov eax, 1
xor ecx, ecx
mov qword [rsp + 0x1c0], rcx
mov r13, qword [rsp + 0x50]
mov rcx, qword [rsp + 0xb8]
lea rdx, [rcx + rdi]
mov rcx, rax
mov qword [rsp + 0x88], rax
mov r8, r13
call sub.msvcrt.dll_memcpy
mov rsi, qword [rsp + 0x270]
movabs rax, 0xffffff0000000000
and rsi, rax
movabs rax, 0x200000000
or rsi, rax
mov rax, qword [r12 + 0x380]
mov rcx, rax
sub rcx, rdi
mov edx, 0
cmovae rdx, rcx
cmp rdx, r13
jbe 0x1401a1682
mov qword [r12 + 0x378], rbx
mov rcx, rax
sub rcx, rbx
mov r13, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0x1c0]
jb 0x1401a480c
cmp r14, rax
jb 0x1401a480c
mov r10, r15
cmp rcx, 4
jae 0x1401a1700
xor ecx, ecx
mov rax, qword [rsp + 0x3a0]
mov r8, qword [rsp + 0x58]
jmp 0x1401a1734
mov qword [r12 + 0x358], 2
mov r13, qword [rsp + 0xa8]
add r13, qword [r12 + 0x370]
mov eax, 0x100
mov rbx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x1c0]
mov r10, r15
jmp 0x1401a1753
mov rdx, rdi
mov rbp, r13
mov r13, r15
mov r10, r14
mov rax, rdx
mov qword [rsp + 0x88], rdx
shr rax, 8
mov qword [rsp + 0x1d0], rax
mov rdi, rsi
mov r8, qword [rsp + 0x58]
movabs rax, 0x8000000000000000
cmp rdi, rax
jne 0x1401a17e0
jmp 0x1401a3eca
mov rcx, qword [rsp + 0xb8]
movzx eax, byte [rcx + rbx + 1]
movzx ecx, word [rcx + rbx + 2]
shl ecx, 0x10
shl eax, 8
or eax, ecx
bswap eax
cmp eax, 0xffff
mov r8, qword [rsp + 0x58]
ja 0x1401a4591
add eax, 4
mov ecx, 1
mov qword [r12 + 0x358], rcx
mov qword [rsp + 0x3a0], rax
mov qword [r12 + 0x360], rax
xor eax, eax
mov rbx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x88]
shr rcx, 8
mov qword [rsp + 0x1d0], rcx
mov rcx, qword [rsp + 0x270]
mov rdx, rcx
shr rdx, 0x28
mov qword [rsp + 0xa0], rdx
shr rcx, 0x30
mov qword [rsp + 0xe8], rcx
mov rcx, qword [rsp + 0xe0]
and rcx, 0xffffffffff000000
add rcx, rax
add rcx, 0x10000
mov qword [rsp + 0xe0], rcx
mov al, 2
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x270], rsi
movabs rax, 0x8000000000000000
cmp rdi, rax
je 0x1401a3eca
nop word cs:[rax + rax]
movabs rax, 0x8000000000000001
cmp rdi, rax
mov rsi, qword [rsp + 0xe0]
je 0x1401a401e
mov r15, r8
mov r14, r10
test sil, sil
je 0x1401a184b
mov word [rsp + 0x1a8], 4
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffeb
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xf8], 0
cmp byte [r12 + 0x41], 2
sete r8b
mov rcx, r12
lea rdx, [rsp + 0xf0]
call fcn.140131580
mov qword [rsp + 0xa8], r13
test esi, 0xff0000
je 0x1401a1863
mov qword [r12], 0
mov eax, esi
shr eax, 8
mov byte [r12 + 0x32d], al
mov rax, qword [rsp + 0x1d0]
shl rax, 8
movzx r13d, byte [rsp + 0x88]
or r13, rax
mov rcx, qword [rsp + 0x78]
test cl, cl
movzx r11d, byte [rsp + 0x25]
movzx r9d, byte [rsp + 0x24]
mov qword [rsp + 0x80], r14
je 0x1401a1916
mov rsi, rdi
movzx eax, byte [rsp + 0x90]
movzx r10d, byte [rsp + 0x48]
shl r10d, 8
or r10d, eax
movabs rax, 0x8000000000000015
lea rdi, [rax - 0x11]
cmp cl, 1
je 0x1401a1a70
movzx eax, cl
cmp eax, 2
lea rbx, [rsp + 0xf0]
mov r15, qword [rsp + 0x68]
je 0x1401a19dd
cmp eax, 3
jne 0x1401a1aef
movabs rax, 0x8000000000000015
lea rdi, [rax - 0x12]
mov qword [rsp + 0x218], rsi
mov rax, qword [rsp + 0x50]
jmp 0x1401a1f85
cmp byte [r12 + 0x32f], 0
jne 0x1401a196a
cmp word [r12 + 0x328], 5
jne 0x1401a196a
cmp qword [rsp + 0x50], 1
jne 0x1401a1b09
cmp byte [r13], 1
jne 0x1401a1b09
movzx eax, byte [r12 + 0x336]
cmp al, 3
jae 0x1401a1b09
mov r10, r14
inc al
mov byte [r12 + 0x336], al
mov sil, 0x14
jmp 0x1401a1e20
movzx eax, byte [rsp + 0x90]
movzx r10d, byte [rsp + 0x48]
shl r10d, 8
or r10d, eax
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x1401a1b8e
mov eax, 1
cmp byte [r13], 1
movabs rcx, 0x8000000000000015
lea rbx, [rsp + 0xf0]
jne 0x1401a1be3
cmp rdx, 1
mov r15, qword [rsp + 0x250]
mov r12, qword [rsp + 0x248]
mov rsi, rdi
jne 0x1401a1e88
lea rdi, [rcx - 0x13]
mov rax, qword [rsp + 0x218]
jmp 0x1401a1eab
mov dil, 0xb
cmp qword [rsp + 0x50], 0
mov qword [rsp + 0xb0], r13
mov dword [rsp + 0xb8], r10d
je 0x1401a1bba
mov qword [rsp + 0x38], rbp
movzx ebp, byte [r13]
lea eax, [rbp + 2]
mov edi, 0x13
cmp al, 0x1a
movabs rdx, 0x8000000000000015
ja 0x1401a1a2a
movzx eax, al
lea rcx, [0x141a99f88]
mov rdi, qword [rcx + rax*8]
mov byte [rsp + 0x9e], dil
mov byte [rsp + 0x9f], bpl
mov r8, qword [rsp + 0x50]
cmp r8, 4
jae 0x1401a1c4e
mov r14d, 3
xor r13d, r13d
lea rax, [0x141a5a815]
xor ecx, ecx
mov rbp, qword [rsp + 0x38]
mov r12, qword [rsp + 0x210]
mov dil, 0xb
jmp 0x1401a1c8e
mov r8, qword [rsp + 0x50]
test r8, r8
lea rbx, [rsp + 0xf0]
je 0x1401a1bfb
mov ebx, r10d
movzx eax, byte [r13]
xor ecx, ecx
cmp rax, 2
setne cl
inc rcx
cmp rax, 1
mov edx, 0
cmovne rdx, rcx
cmp r8, 1
movabs r10, 0x8000000000000015
mov r15, qword [rsp + 0x250]
mov r12, qword [rsp + 0x248]
jne 0x1401a1dd2
mov eax, 0x10
mov qword [rsp + 0x28], rax
lea rax, [0x141a5ac78]
mov rcx, rax
mov r10d, ebx
lea rbx, [rsp + 0xf0]
jmp 0x1401a1c1f
mov r15, qword [rsp + 0x250]
mov r12, qword [rsp + 0x248]
mov eax, 2
jmp 0x1401a1eab
mov rsi, rdi
mov word [rsp + 0x1a8], 4
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffeb
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xf8], 0x10001
cmp byte [r12 + 0x41], 2
sete r8b
mov rcx, r12
lea rdx, [rsp + 0xf0]
call fcn.140131580
mov byte [r12 + 0x331], 1
mov rcx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x1b0]
call qword [rdi]
mov byte [rsp + 0x37], 0x14
cmp qword [rdi + 8], 0
je 0x1401a1c46
cmp qword [rdi + 0x10], 0x11
jae 0x1401a1e00
mov r8, qword [rsp + 0x60]
jmp 0x1401a1e09
mov rsi, rdi
mov r15d, 2
mov eax, 0xb
lea r12, [0x141a5a813]
movabs rcx, 0x8000000000000015
lea rbx, [rsp + 0xf0]
jmp 0x1401a1e9a
mov r14d, 0xd
xor r13d, r13d
lea rax, [0x141a5aca8]
xor ecx, ecx
movabs rdx, 0x8000000000000015
mov r12, qword [rsp + 0x210]
jmp 0x1401a1c8e
mov rsi, rdi
mov r15, qword [rsp + 0x250]
mov r12, qword [rsp + 0x248]
jmp 0x1401a1e9a
mov eax, 0xa
mov qword [rsp + 0x28], rax
lea rax, [0x141a59fdb]
mov rcx, rax
mov r15, qword [rsp + 0x250]
mov r12, qword [rsp + 0x248]
movzx eax, al
and rcx, 0xffffffffffffff00
or rcx, rax
mov eax, 0xb
mov qword [rsp + 0x1b8], rcx
mov qword [rsp + 0x3a8], rcx
jmp 0x1401a1eab
mov rdi, rsi
jmp 0x1401a1e1a
movzx eax, byte [r13 + 1]
movzx ecx, word [r13 + 2]
shl ecx, 0x10
shl eax, 8
or eax, ecx
mov r12d, eax
bswap r12d
lea rcx, [r8 - 4]
cmp rcx, r12
jae 0x1401a2373
mov dil, 0xa
xor r14d, r14d
mov r12, qword [rsp + 0x210]
mov rax, r12
xor r13d, r13d
xor ecx, ecx
mov rbp, qword [rsp + 0x38]
mov r10, rdx
mov r8, rdx
shl rcx, 0x10
movzx edx, r13b
shl edx, 8
or rdx, rcx
movzx edi, dil
or rdi, rdx
mov qword [rsp + 0x28], r10
cmp r10, r8
jne 0x1401a1cef
lea rbx, [r8 - 0x11]
test rsi, rsi
je 0x1401a1f18
mov qword [rsp + 0x1b8], rax
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, qword [rsp + 0xb0]
call fcn.1401cdfe4
movzx r9d, byte [rsp + 0x24]
movzx r11d, byte [rsp + 0x25]
jmp 0x1401a1f20
mov rcx, qword [rsp + 0x330]
mov qword [rsp + 0x4b0], rcx
movaps xmm0, xmmword [rsp + 0x320]
movaps xmmword [rsp + 0x4a0], xmm0
movaps xmm0, xmmword [rsp + 0x310]
movaps xmmword [rsp + 0x490], xmm0
movaps xmm0, xmmword [rsp + 0x300]
movaps xmmword [rsp + 0x480], xmm0
movdqa xmm0, xmmword [rsp + 0x2c0]
movdqa xmm1, xmmword [rsp + 0x2d0]
movaps xmm2, xmmword [rsp + 0x2e0]
movaps xmm3, xmmword [rsp + 0x2f0]
movaps xmmword [rsp + 0x470], xmm3
movaps xmmword [rsp + 0x460], xmm2
movdqa xmmword [rsp + 0x450], xmm1
movdqa xmmword [rsp + 0x440], xmm0
mov ecx, dword [rsp + 0xf0]
mov dword [rsp + 0x268], ecx
movzx ecx, word [rsp + 0xf4]
mov word [rsp + 0x26c], cx
mov qword [rsp + 0x3f8], r14
mov qword [rsp + 0x3f0], rdi
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x1b8], rcx
movzx r11d, byte [rsp + 0x27]
movzx r9d, byte [rsp + 0x26]
mov r13, qword [rsp + 0xa8]
mov rdi, rsi
mov rcx, qword [rsp + 0xb0]
jmp 0x1401a1f3e
movzx ecx, byte [r13 + 1]
mov r8d, 0x220000
cmp rcx, 0x78
ja case.0x1401a1df5.1
lea r14, [0x140220750]
movsxd r9, dword [r14 + rcx*4]
add r9, r14
jmp r9
xor r8d, r8d
jmp case.0x1401a1df5.1
mov rax, qword [rsp + 0x60]
mov r8, qword [rax - 8]
mov rdi, rsi
mov rcx, qword [0x141ada118]
xor edx, edx
call fcn.1401cdfe4
mov r10, r14
mov sil, 8
test rdi, rdi
je 0x1401a1e39
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, r13
call fcn.1401cdfe4
mov r10, r14
mov r13, qword [rsp + 0xa8]
mov r14, r15
cmp sil, 0x14
mov rax, qword [rsp + 0x1b8]
je 0x1401a0917
jmp 0x1401a43f5
movabs rax, 0x8000000000000015
lea rsi, [rax - 0x14]
mov al, 2
mov qword [rsp + 0x88], rax
xor eax, eax
mov qword [rsp + 0x50], rax
test r8, r8
jne 0x1401a143c
jmp 0x1401a16e0
mov r15d, 0x17
mov eax, 0xe
lea r12, [0x141a5a7fc]
lea rdi, [rcx - 0x11]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x1b8], r12
mov qword [rsp + 0x218], rax
mov qword [rsp + 0x248], r12
mov qword [rsp + 0x250], r15
test rsi, rsi
je 0x1401a1eeb
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, r13
mov esi, r10d
call fcn.1401cdfe4
mov r10d, esi
movzx r9d, byte [rsp + 0x24]
movzx r11d, byte [rsp + 0x25]
mov r12, qword [rsp + 0x210]
mov r15, qword [rsp + 0x68]
mov r13, qword [rsp + 0xa8]
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffef
cmp rdi, rax
jne 0x1401a1f68
jmp 0x1401a4293
mov qword [rsp + 0x1b8], rax
mov rax, r15
mov qword [rsp + 0x28], r14
mov rcx, rdi
mov rdi, rbx
lea rbx, [rsp + 0xf0]
mov r13, qword [rsp + 0xa8]
mov r15, rax
mov qword [rsp + 0x218], rcx
mov r10d, dword [rsp + 0xb8]
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffef
cmp rdi, rax
je 0x1401a4293
mov rax, qword [rsp + 0x28]
mov r13, qword [rsp + 0x1b8]
mov qword [rsp + 0x210], r12
mov r12, qword [rsp + 0x1e0]
mov rbx, qword [rsp + 0x218]
mov r14, rbx
shr r14, 0x18
mov esi, ebx
shr esi, 0x10
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x538], r15
mov rcx, qword [rsp + 0x3f8]
mov qword [rsp + 0x540], rcx
mov rcx, qword [rsp + 0x4b0]
lea rdx, [rsp + 0x548]
mov qword [rdx + 0x70], rcx
movaps xmm0, xmmword [rsp + 0x4a0]
movups xmmword [rdx + 0x60], xmm0
movaps xmm0, xmmword [rsp + 0x490]
movups xmmword [rdx + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x480]
movups xmmword [rdx + 0x40], xmm0
movdqa xmm0, xmmword [rsp + 0x440]
movdqa xmm1, xmmword [rsp + 0x450]
movaps xmm2, xmmword [rsp + 0x460]
movaps xmm3, xmmword [rsp + 0x470]
movups xmmword [rdx + 0x30], xmm3
movups xmmword [rdx + 0x20], xmm2
movdqu xmmword [rdx + 0x10], xmm1
movdqu xmmword [rdx], xmm0
mov byte [rsp + 0x5c0], r11b
mov byte [rsp + 0x5c1], r9b
movzx ecx, word [rsp + 0x26c]
mov word [rdx + 0x7e], cx
mov ecx, dword [rsp + 0x268]
mov dword [rdx + 0x7a], ecx
mov qword [rsp + 0x510], rdi
mov byte [rsp + 0x518], bl
mov byte [rsp + 0x519], bh
mov byte [rsp + 0x51a], sil
mov rcx, rbx
shr rcx, 0x38
mov byte [rsp + 0x51f], cl
mov dword [rsp + 0x51b], r14d
mov qword [rsp + 0x520], r13
mov qword [rsp + 0x528], rax
mov rax, qword [rsp + 0x3f0]
mov qword [rsp + 0x530], rax
mov word [rsp + 0x5c8], r10w
mov eax, dword [rsp + 0x44]
mov word [rsp + 0x5ca], ax
movabs rax, 0x8000000000000015
lea r15, [rax - 0x15]
cmp rdi, r15
mov byte [rsp + 0x25], r11b
mov byte [rsp + 0x24], r9b
jne 0x1401a210e
cmp bl, 2
mov r13, qword [rsp + 0xa8]
je 0x1401a430a
test sil, sil
je 0x1401a21e6
test bl, bl
jne 0x1401a4369
cmp sil, 0x17
je 0x1401a21ef
cmp word [r12 + 0x328], 5
jne 0x1401a21ef
jmp 0x1401a4329
mov r8d, 0xc0
lea rcx, [rsp + 0x2c0]
lea rdx, [rsp + 0x510]
call sub.msvcrt.dll_memcpy
cmp byte [r12 + 0x32f], 0
mov rbx, qword [rsp + 0x70]
mov r14, qword [rsp + 0x58]
mov r13, qword [rsp + 0xa8]
je 0x1401a222a
cmp word [r12 + 0x328], 5
je 0x1401a222a
mov rax, qword [rsp + 0x2c0]
xor rax, r15
cmp rax, 4
setae cl
cmp rax, 1
sete al
or al, cl
cmp byte [r12 + 0x32c], 0
movzx ecx, byte [rsp + 0x370]
je 0x1401a221b
cmp cl, 1
sete cl
test al, cl
je 0x1401a222a
mov word [rsp + 0x1a8], 4
mov qword [rsp + 0xf0], r15
mov dword [rsp + 0xf8], 0x180000
cmp byte [r12 + 0x41], 2
sete r8b
mov rcx, r12
lea rdx, [rsp + 0xf0]
call fcn.140131580
lea rcx, [rsp + 0x2c0]
call fcn.1401a4890
mov sil, 0x14
jmp 0x1401a2354
mov byte [r12 + 0x332], 1
lea rcx, [rsp + 0x510]
call fcn.1401a4890
mov rbx, qword [rsp + 0x70]
mov r10, qword [rsp + 0x80]
mov rax, qword [rsp + 0x1b8]
mov r14, qword [rsp + 0x58]
jmp 0x1401a0917
test cl, cl
sete cl
and al, cl
cmp al, 1
je 0x1401a219a
mov qword [rsp + 0x440], r12
mov rax, qword [rsp + 0x400]
mov qword [rsp + 0x448], rax
mov r8d, 0xc0
lea rdi, [rsp + 0xf0]
mov rcx, rdi
lea rdx, [rsp + 0x510]
call sub.msvcrt.dll_memcpy
lea rcx, [rsp + 0x288]
mov rdx, qword [rsp + 0x60]
lea r8, [rsp + 0x440]
mov r9, rdi
mov rax, qword [rsp + 0x1b0]
call qword [rax + 0x18]
movzx esi, byte [rsp + 0x288]
cmp esi, 2
jae 0x1401a22cd
mov word [rsp + 0x1a8], 4
mov qword [rsp + 0xf0], r15
mov dword [rsp + 0xf8], 0x10001
cmp byte [r12 + 0x41], 2
sete r8b
mov rcx, r12
mov rdx, rdi
call fcn.140131580
mov byte [r12 + 0x331], 1
jmp 0x1401a22f1
cmp esi, 0x14
jne 0x1401a22f1
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x1b0], rax
jmp 0x1401a2354
movzx eax, byte [rsp + 0x289]
mov byte [rsp + 0x37], al
movzx eax, byte [rsp + 0x28a]
mov byte [rsp + 0x4f], al
mov eax, dword [rsp + 0x28b]
movzx ecx, byte [rsp + 0x28f]
shl rcx, 0x20
or rcx, rax
mov qword [rsp + 0x3b0], rcx
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x1b0], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x2a8], rax
mov r10, qword [rsp + 0x80]
cmp sil, 0x14
mov rax, qword [rsp + 0x1b8]
je 0x1401a0917
jmp 0x1401a43f5
lea rcx, [r12 + 4]
cmp rcx, r8
ja 0x1401a480c
lea rcx, [r13 + 4]
mov qword [rsp + 0x230], rcx
mov qword [rsp + 0x238], r12
mov qword [rsp + 0x240], 0
cmp dil, 0x12
ja case.0x1401a23b9.3
movzx ecx, dil
lea rdx, [0x1402206b4]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
test eax, eax
je 0x1401a2fc4
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.14012e410
movzx r8d, byte [rsp + 0xf0]
lea r10, [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf1]
mov eax, dword [rsp + 0xf2]
movzx ecx, word [rsp + 0xf6]
shl rcx, 0x20
or rcx, rax
movups xmm0, xmmword [r10]
movaps xmmword [rsp + 0xc0], xmm0
movabs rax, 0x8000000000000015
lea rdx, [rax - 1]
jmp 0x1401a2811
mov al, 1
jmp 0x1401a1457
movabs rax, 0x8000000000000015
lea rsi, [rax - 0x14]
mov al, 2
mov qword [rsp + 0x88], rax
xor eax, eax
mov qword [rsp + 0x50], rax
jmp 0x1401a142a
mov word [rsp + 0x2c0], 0x2708
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x2c0]
call fcn.140143be0
mov rcx, qword [rsp + 0x1f8]
cmp byte [rcx], 0x14
je 0x1401a2486
call fcn.1401a8fa0
mov rcx, qword [rsp + 0x1f8]
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
movdqu xmmword [rcx + 0x10], xmm1
movdqu xmmword [rcx], xmm0
mov rdx, qword [rsp + 0x2c0]
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x2d0]
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0xe0], rax
mov eax, ecx
shr eax, 8
mov dword [rsp + 0x48], eax
mov eax, ecx
shr eax, 0x10
mov dword [rsp + 0x44], eax
mov rax, rcx
shr rax, 0x20
mov qword [rsp + 0x78], rax
mov rax, rcx
shr rax, 0x28
mov qword [rsp + 0xa0], rax
mov rax, rcx
mov qword [rsp + 0x90], rcx
shr rcx, 0x30
mov qword [rsp + 0xe8], rcx
movabs rax, 0x8000000000000015
lea rsi, [rax - 0x14]
jmp 0x1401a16c6
mov r8d, 0x200000
jmp case.0x1401a1df5.1
mov r8d, 0x120000
jmp case.0x1401a1df5.1
mov r8d, 0x150000
jmp case.0x1401a1df5.1
mov r8d, 0xd0000
jmp case.0x1401a1df5.1
mov r8d, 0x190000
jmp case.0x1401a1df5.1
mov r8d, 0x210000
jmp case.0x1401a1df5.1
mov r8d, 0x80000
jmp case.0x1401a1df5.1
mov r8d, 0x170000
jmp case.0x1401a1df5.1
mov r8d, 0xa0000
jmp case.0x1401a1df5.1
mov r8d, 0x1c0000
jmp case.0x1401a1df5.1
mov r8d, 0x160000
jmp case.0x1401a1df5.1
mov r8d, 0xc0000
jmp case.0x1401a1df5.1
mov r8d, 0x130000
jmp case.0x1401a1df5.1
mov r8d, 0x1d0000
jmp case.0x1401a1df5.1
mov r8d, 0x1f0000
jmp case.0x1401a1df5.1
mov r8d, 0x10000
jmp case.0x1401a1df5.1
mov r8d, 0x20000
jmp case.0x1401a1df5.1
mov r8d, 0x40000
jmp case.0x1401a1df5.1
mov r8d, 0xb0000
jmp case.0x1401a1df5.1
mov r8d, 0x50000
jmp case.0x1401a1df5.1
mov r8d, 0x30000
jmp case.0x1401a1df5.1
mov r8d, 0x180000
jmp case.0x1401a1df5.1
mov r8d, 0xe0000
jmp case.0x1401a1df5.1
mov r8d, 0xf0000
jmp case.0x1401a1df5.1
mov r8d, 0x60000
jmp case.0x1401a1df5.1
mov r8d, 0x70000
jmp case.0x1401a1df5.1
mov r8d, 0x1e0000
jmp case.0x1401a1df5.1
mov r8d, 0x90000
jmp case.0x1401a1df5.1
mov r8d, 0x110000
jmp case.0x1401a1df5.1
mov r8d, 0x100000
jmp case.0x1401a1df5.1
mov r8d, 0x140000
jmp case.0x1401a1df5.1
mov r8d, 0x1b0000
jmp case.0x1401a1df5.1
mov r8d, 0x1a0000
cmp qword [rsp + 0x50], 2
jbe 0x1401a268f
mov eax, 0x13
mov qword [rsp + 0x28], rax
lea rcx, [0x141a5bdf1]
mov eax, 0xe
movzx r9d, byte [rsp + 0x24]
mov r10d, ebx
lea rbx, [rsp + 0xf0]
jmp 0x1401a1c31
movabs r9, 0xffffffff00000000
mov rdi, qword [rsp + 0x3a8]
and rdi, r9
or rdi, r8
shl eax, 8
or rax, rdi
shl ecx, 0x18
or rcx, rax
or rcx, rdx
mov eax, ecx
and eax, 0xffffff03
mov rdx, qword [rsp + 0x218]
and rdx, r9
or rdx, rax
mov rax, rdx
lea rdi, [r10 - 0x15]
mov qword [rsp + 0x3a8], rcx
movzx r9d, byte [rsp + 0x24]
mov r10d, ebx
lea rbx, [rsp + 0xf0]
jmp 0x1401a1eab
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.14012e410
movzx r8d, byte [rsp + 0xf0]
lea r10, [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf1]
mov eax, dword [rsp + 0xf2]
movzx ecx, word [rsp + 0xf6]
shl rcx, 0x20
or rcx, rax
movups xmm0, xmmword [r10]
movaps xmmword [rsp + 0xc0], xmm0
movabs rax, 0x8000000000000015
lea rdx, [rax - 4]
mov dil, 0xe
jmp 0x1401a2811
test eax, eax
je 0x1401a2f93
xor r13d, r13d
mov dil, 0xe
mov r14d, 0xf
lea rax, [0x141a95381]
xor ecx, ecx
mov rbp, qword [rsp + 0x38]
movabs rdx, 0x8000000000000015
jmp 0x1401a1c8e
test eax, eax
je 0x1401a2fa6
xor r13d, r13d
mov dil, 0xe
mov r14d, 0xe
lea rax, [0x141a9532c]
xor ecx, ecx
mov rbp, qword [rsp + 0x38]
movabs rdx, 0x8000000000000015
jmp 0x1401a1c8e
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.14012e410
movzx r8d, byte [rsp + 0xf0]
lea r10, [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf1]
mov eax, dword [rsp + 0xf2]
movzx ecx, word [rsp + 0xf6]
shl rcx, 0x20
or rcx, rax
movups xmm0, xmmword [r10]
movaps xmmword [rsp + 0xc0], xmm0
movabs rax, 0x8000000000000015
lea rdx, [rax - 9]
mov dil, 0xd
jmp 0x1401a30a3
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.14010a3e0
mov r11, qword [rsp + 0xf0]
movabs rax, 0x8000000000000015
lea rdx, [rax - 0x15]
mov eax, dword [rsp + 0xfa]
movzx ecx, word [rsp + 0xfe]
shl rcx, 0x20
or rcx, rax
movzx edi, byte [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf9]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r11, rdx
je 0x1401a2f73
lea r10, [rsp + 0xf8]
mov rdx, qword [r10 + 0x38]
mov qword [rsp + 0x500], rdx
movups xmm0, xmmword [r10 + 0x18]
movups xmm1, xmmword [r10 + 0x28]
movaps xmmword [rsp + 0x4f0], xmm1
movaps xmmword [rsp + 0x4e0], xmm0
movq xmm0, qword [rsp + 0x138]
mov edx, dword [rsp + 0x13c]
mov r8, qword [rsp + 0x140]
mov qword [rsp + 0x1d8], r8
movups xmm1, xmmword [r10 + 0x50]
movaps xmmword [rsp + 0x430], xmm1
movq xmm8, qword [rsp + 0x158]
mov r9d, dword [r10 + 0x6c]
mov dword [rsp + 0x2b8], r9d
mov r9, qword [r10 + 0x64]
mov qword [rsp + 0x2b0], r9
movups xmm1, xmmword [r10 + 0x70]
movups xmm2, xmmword [r10 + 0x80]
movaps xmmword [rsp + 0x4d0], xmm2
movaps xmmword [rsp + 0x4c0], xmm1
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], r14
mov r14d, edx
mov rax, qword [rsp + 0x4e0]
mov qword [rsp + 0xd0], rax
lea rax, [rsp + 0x4e8]
movdqu xmm1, xmmword [rax]
movups xmm2, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x390], xmm2
movdqa xmmword [rsp + 0x380], xmm1
mov r8, rdi
mov dil, 1
mov rdx, r11
jmp 0x1401a30a3
mov r14d, 0x11
xor r13d, r13d
lea rax, [0x141a9533a]
jmp 0x1401a2db8
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.14011d3e0
mov r9, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0xf8]
movabs r8, 0x8000000000000015
lea rcx, [r8 - 0x15]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r9, rcx
je 0x1401a2e0d
mov r13d, r9d
shr r13d, 8
mov rcx, r9
shr rcx, 0x10
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r14
lea rdx, [r8 - 0xc]
mov r8, r9
mov dil, 0xc
jmp 0x1401a309b
mov rcx, rbx
lea rdx, [rsp + 0x230]
cmp r10w, 5
jne 0x1401a2dd1
call fcn.14010d160
mov r8, qword [rsp + 0xf0]
mov r9, qword [rsp + 0xf8]
movabs rax, 0x8000000000000015
lea rcx, [rax - 0x15]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r8, rcx
jne 0x1401a2fe1
mov r13d, r9d
shr r13d, 8
mov rcx, r9
shr rcx, 0x10
mov edi, r9d
jmp 0x1401a2f73
mov rcx, rbx
lea rdi, [rsp + 0x230]
mov rdx, rdi
call fcn.140134c60
mov rax, qword [rsp + 0xf0]
movq xmm8, qword [rsp + 0xf8]
cmp rax, 0x14
jne 0x1401a2e22
mov rcx, rbx
mov rdx, rdi
call case.0x140107553.101
cmp byte [rsp + 0xf0], 0
je 0x1401a36b0
mov rdi, qword [rsp + 0xf8]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
movzx r11d, byte [rsp + 0x25]
movzx r9d, byte [rsp + 0x24]
mov rbp, qword [rsp + 0x38]
jmp 0x1401a37e0
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.140106830
mov eax, dword [rsp + 0xfa]
movzx ecx, word [rsp + 0xfe]
shl rcx, 0x20
or rcx, rax
cmp qword [rsp + 0xf0], 0
movzx edi, byte [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf9]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
jne 0x1401a2f73
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], r14
movabs rax, 0x8000000000000015
lea rdx, [rax - 6]
mov r8, rdi
mov dil, 7
jmp 0x1401a309b
mov rcx, rbx
lea rdx, [rsp + 0x230]
cmp r10w, 5
jne 0x1401a2e74
call fcn.14010b970
mov r8, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0xf8]
movabs rax, 0x8000000000000015
lea rcx, [rax - 0x15]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r8, rcx
je 0x1401a2e0d
lea r10, [rsp + 0xf8]
movups xmm0, xmmword [r10 + 0x18]
movaps xmmword [rsp + 0x380], xmm0
mov r13d, r8d
shr r13d, 8
mov rcx, r8
shr rcx, 0x10
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r14
movabs rax, 0x8000000000000015
lea rdx, [rax - 0x10]
mov dil, 8
jmp 0x1401a2811
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.14010d830
mov eax, dword [rsp + 0xfa]
movzx ecx, word [rsp + 0xfe]
shl rcx, 0x20
or rcx, rax
cmp qword [rsp + 0xf0], 0
movzx edi, byte [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf9]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
jne 0x1401a2f73
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], r14
movabs rax, 0x8000000000000015
lea rdx, [rax - 3]
mov r8, rdi
mov dil, 0x10
jmp 0x1401a309b
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.140116000
mov rcx, qword [rsp + 0xf0]
movzx r8d, byte [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf9]
cmp rcx, 0x14
jne 0x1401a2ee8
movabs rax, 0x8000000000000015
lea rdx, [rax - 5]
mov dil, 0x11
jmp 0x1401a309b
mov rcx, rbx
lea rdx, [rsp + 0x230]
cmp r10w, 5
jne 0x1401a2f26
call fcn.14010c970
mov r8, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0xf8]
movabs rax, 0x8000000000000015
lea rcx, [rax - 0x15]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r8, rcx
je 0x1401a2e0d
lea r10, [rsp + 0xf8]
movups xmm0, xmmword [r10 + 0x18]
movaps xmmword [rsp + 0x380], xmm0
mov r13d, r8d
shr r13d, 8
mov rcx, r8
shr rcx, 0x10
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r14
movabs rax, 0x8000000000000015
lea rdx, [rax - 0xd]
mov dil, 0xa
jmp 0x1401a2811
lea rcx, [rsp + 0xc0]
lea rdx, [rsp + 0x230]
call fcn.14012e410
movabs rax, 0x8000000000000015
lea rdx, [rax - 0xf]
mov dil, 9
lea r10, [rsp + 0xf8]
xor r13d, r13d
movabs rcx, 0x800000000000
xor r8d, r8d
jmp 0x1401a30a3
mov r14d, 0xb
xor r13d, r13d
lea rax, [0x141a953e2]
xor ecx, ecx
mov rbp, qword [rsp + 0x38]
mov dil, 0xf
movabs rdx, 0x8000000000000015
jmp 0x1401a1c8e
call fcn.14010d0a0
mov r8, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0xf8]
movabs rax, 0x8000000000000015
lea rcx, [rax - 0x15]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r8, rcx
jne 0x1401a3064
mov r13d, edx
shr r13d, 8
mov rcx, rdx
shr rcx, 0x10
mov edi, edx
jmp 0x1401a2f73
mov r8, rax
mov r14, qword [rsp + 0x100]
mov eax, dword [rsp + 0xfc]
pextrw ecx, xmm8, 0
pextrw edx, xmm8, 1
shl edx, 0x10
or edx, ecx
shl rax, 0x20
or rax, rdx
xor r13d, r13d
xor ecx, ecx
movzx r11d, byte [rsp + 0x25]
movzx r9d, byte [rsp + 0x24]
mov rbp, qword [rsp + 0x38]
mov rdi, r8
movabs rdx, 0x8000000000000015
jmp 0x1401a1c8e
call fcn.140109440
mov eax, dword [rsp + 0xfa]
movzx ecx, word [rsp + 0xfe]
shl rcx, 0x20
or rcx, rax
cmp qword [rsp + 0xf0], 0
movzx edi, byte [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf9]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
jne 0x1401a2f73
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], r14
movabs rax, 0x8000000000000015
lea rdx, [rax - 0x11]
mov r8, rdi
mov dil, 8
jmp 0x1401a309b
movzx edx, r8b
movzx r8d, r13b
movzx eax, word [rsp + 0xfe]
mov r9d, dword [rsp + 0xfa]
mov r14, qword [rsp + 0x100]
shl r8d, 8
or r8, rdx
shl r9, 0x10
shl rax, 0x30
or rax, r9
or rax, r8
xor r13d, r13d
mov edi, ecx
xor ecx, ecx
jmp 0x1401a2f73
call fcn.14010c5f0
mov r9, qword [rsp + 0xf0]
mov r8, qword [rsp + 0xf8]
movabs rax, 0x8000000000000015
lea rcx, [rax - 0x15]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r9, rcx
jne 0x1401a32c0
mov r13d, r8d
shr r13d, 8
mov rcx, r8
shr rcx, 0x10
mov edi, r8d
movzx r11d, byte [rsp + 0x25]
movzx r9d, byte [rsp + 0x24]
mov rbp, qword [rsp + 0x38]
movabs rdx, 0x8000000000000015
jmp 0x1401a1c8e
movabs rax, 0x8000000000000015
lea rdx, [rax - 0xb]
mov dil, 0xb
jmp 0x1401a2fb7
movabs rax, 0x8000000000000015
lea rdx, [rax - 0xa]
mov dil, 5
lea r10, [rsp + 0xf8]
jmp 0x1401a30a3
movabs rax, 0x8000000000000015
lea rdx, [rax - 0x15]
xor edi, edi
lea r10, [rsp + 0xf8]
jmp 0x1401a30a3
lea r10, [rsp + 0xf8]
movups xmm0, xmmword [r10 + 0x18]
movdqu xmm1, xmmword [r10 + 0x28]
movdqa xmmword [rsp + 0x390], xmm1
movaps xmmword [rsp + 0x380], xmm0
movq xmm0, qword [rsp + 0x130]
mov edx, dword [rsp + 0x134]
mov rcx, qword [rsp + 0x138]
mov qword [rsp + 0x1d8], rcx
mov r13d, r8d
shr r13d, 8
mov rcx, r8
shr rcx, 0x10
mov qword [rsp + 0xc0], r9
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r14
mov r14d, edx
movabs rax, 0x8000000000000015
lea rdx, [rax - 7]
mov dil, 4
jmp 0x1401a3331
mov r13d, r8d
shr r13d, 8
mov rcx, r8
shr rcx, 0x10
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r14
movabs rax, 0x8000000000000015
lea rdx, [rax - 8]
mov dil, 4
lea r10, [rsp + 0xf8]
mov rax, qword [rsp + 0x240]
mov r9, rcx
shr r9, 0x20
lea r11, [rsp + 0x9e]
mov qword [rsp + 0x188], r11
mov qword [rsp + 0xf0], rdx
mov byte [rsp + 0xf8], r8b
mov byte [rsp + 0xf9], r13b
mov word [rsp + 0xfe], r9w
mov dword [rsp + 0xfa], ecx
mov rcx, qword [rsp + 0xd0]
mov qword [r10 + 0x18], rcx
movaps xmm1, xmmword [rsp + 0xc0]
movups xmmword [r10 + 8], xmm1
movaps xmm1, xmmword [rsp + 0x380]
movaps xmm2, xmmword [rsp + 0x390]
movups xmmword [r10 + 0x30], xmm2
movups xmmword [r10 + 0x20], xmm1
movd dword [rsp + 0x138], xmm0
mov dword [rsp + 0x13c], r14d
mov rcx, qword [rsp + 0x1d8]
mov qword [rsp + 0x140], rcx
movaps xmm0, xmmword [rsp + 0x430]
movups xmmword [r10 + 0x50], xmm0
movd dword [rsp + 0x158], xmm8
mov ecx, dword [rsp + 0x2b8]
mov dword [r10 + 0x6c], ecx
mov rcx, qword [rsp + 0x2b0]
mov qword [r10 + 0x64], rcx
movdqa xmm0, xmmword [rsp + 0x4c0]
movdqa xmm1, xmmword [rsp + 0x4d0]
movdqu xmmword [r10 + 0x80], xmm1
movdqu xmmword [r10 + 0x70], xmm0
cmp rax, qword [rsp + 0x238]
mov r8, rdx
jae 0x1401a31ef
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffeb
mov rcx, r8
xor rcx, rax
cmp rcx, 0x15
mov edx, 1
cmovae rcx, rdx
mov dl, 0xe
mov qword [rsp + 0x1d8], rdx
cmp rcx, 0x13
ja case.default.0x1401a31e2
lea rdx, [0x140220700]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
movzx edi, byte [rsp + 0x27]
jmp rcx
mov r14d, 0x17
jmp 0x1401a34ac
mov qword [rsp + 0x28], r8
mov rcx, qword [rsp + 0xf8]
mov rax, qword [rsp + 0x100]
mov r13d, ecx
shr r13d, 8
mov rdx, rcx
mov qword [rsp + 0x1d8], rcx
shr rcx, 0x10
mov r14, qword [rsp + 0x108]
movups xmm0, xmmword [r10 + 0x18]
movdqu xmm1, xmmword [r10 + 0x28]
movups xmm2, xmmword [r10 + 0x38]
movups xmm3, xmmword [r10 + 0x48]
movaps xmmword [rsp + 0x2c0], xmm0
movdqa xmmword [rsp + 0x2d0], xmm1
movaps xmmword [rsp + 0x2e0], xmm2
movaps xmmword [rsp + 0x2f0], xmm3
movups xmm0, xmmword [r10 + 0x58]
movaps xmmword [rsp + 0x300], xmm0
movups xmm0, xmmword [r10 + 0x68]
movaps xmmword [rsp + 0x310], xmm0
movdqu xmm0, xmmword [r10 + 0x78]
movdqa xmmword [rsp + 0x320], xmm0
mov rdx, qword [r10 + 0x88]
mov qword [rsp + 0x330], rdx
jmp 0x1401a34f4
mov r14d, 0x17
jmp 0x1401a34d2
mov r14d, 0x17
mov rcx, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x108]
call fcn.140105720
jmp 0x1401a34ac
lea r10, [rsp + 0xf8]
movups xmm0, xmmword [r10 + 0x18]
movdqu xmm1, xmmword [r10 + 0x28]
movdqa xmmword [rsp + 0x390], xmm1
movaps xmmword [rsp + 0x380], xmm0
movq xmm0, qword [rsp + 0x130]
mov edx, dword [rsp + 0x134]
mov r13d, r9d
shr r13d, 8
mov rcx, r9
shr rcx, 0x10
mov qword [rsp + 0xc0], r8
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r14
mov r14d, edx
movabs rax, 0x8000000000000015
lea rdx, [rax - 0xe]
mov r8, r9
mov dil, 0xa
jmp 0x1401a30a3
mov r14d, 0x17
cmp qword [rsp + 0xf8], 0
je 0x1401a335d
mov r8, qword [rsp + 0x100]
mov rcx, qword [0x141ada118]
xor edx, edx
call fcn.1401cdfe4
mov rcx, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x120]
call fcn.1401051d0
jmp 0x1401a356b
mov r14d, 0x17
mov rcx, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x108]
call fcn.140105840
jmp 0x1401a34ac
mov r14d, 0x17
mov rcx, qword [rsp + 0xf8]
mov edi, 8
cmp rcx, rax
je 0x1401a33cf
mov edi, 0x20
test rcx, rcx
je 0x1401a33cf
mov r8, qword [rsp + 0x100]
mov rcx, qword [0x141ada118]
xor edx, edx
call fcn.1401cdfe4
cmp qword [rsp + rdi + 0xf8], 0
je 0x1401a3669
mov r8, qword [rsp + rdi + 0x100]
jmp 0x1401a3656
mov r14d, 0x17
test r8, r8
je 0x1401a340c
mov r8, qword [rsp + 0xf8]
mov rcx, qword [0x141ada118]
xor edx, edx
call fcn.1401cdfe4
cmp qword [rsp + 0x108], 0
je 0x1401a342d
mov r8, qword [rsp + 0x110]
mov rcx, qword [0x141ada118]
xor edx, edx
call fcn.1401cdfe4
mov rcx, qword [rsp + 0x128]
mov rdx, qword [rsp + 0x130]
call fcn.140105430
cmp qword [rsp + 0x120], 0
je 0x1401a3669
mov r8, qword [rsp + 0x128]
jmp 0x1401a3656
mov r14d, 0x17
cmp qword [rsp + 0xf8], 0
je 0x1401a3768
mov r8, qword [rsp + 0x100]
mov rcx, qword [0x141ada118]
xor r13d, r13d
xor edx, edx
call fcn.1401cdfe4
jmp 0x1401a376b
mov r14d, 0x17
mov rcx, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x108]
call fcn.140105120
cmp qword [rsp + 0xf8], 0
je 0x1401a34d2
mov r8, qword [rsp + 0x100]
mov rcx, qword [0x141ada118]
xor r13d, r13d
xor edx, edx
call fcn.1401cdfe4
jmp 0x1401a34d5
xor r13d, r13d
movabs rax, 0x8000000000000015
mov qword [rsp + 0x28], rax
movzx eax, byte [rsp + 0x26]
mov ebp, eax
lea rax, [0x141a5a0b0]
xor ecx, ecx
movzx r11d, byte [rsp + 0x25]
movzx r9d, byte [rsp + 0x24]
mov edx, edi
mov byte [rsp + 0x27], dil
mov edx, ebp
mov byte [rsp + 0x26], bpl
movabs r8, 0x8000000000000015
mov rbp, qword [rsp + 0x38]
mov r10, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x1d8]
jmp 0x1401a1c94
mov r14d, 0x17
cmp qword [rsp + 0xf8], 0
je 0x1401a3556
mov r8, qword [rsp + 0x100]
mov rcx, qword [0x141ada118]
xor edx, edx
call fcn.1401cdfe4
mov rcx, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x120]
call fcn.140105330
cmp qword [rsp + 0x110], 0
je 0x1401a3669
mov r8, qword [rsp + 0x118]
jmp 0x1401a3656
mov r14d, 0x17
cmp qword [rsp + 0xf8], 0
je 0x1401a35ae
mov r8, qword [rsp + 0x100]
mov rcx, qword [0x141ada118]
xor edx, edx
call fcn.1401cdfe4
cmp qword [rsp + 0x110], 0
je 0x1401a35cf
mov r8, qword [rsp + 0x118]
mov rcx, qword [0x141ada118]
xor edx, edx
call fcn.1401cdfe4
mov rcx, qword [rsp + 0x130]
mov rdx, qword [rsp + 0x138]
call fcn.1401052e0
jmp 0x1401a3643
mov r14d, 0x17
cmp qword [rsp + 0xf8], 0
je 0x1401a360d
mov r8, qword [rsp + 0x100]
mov rcx, qword [0x141ada118]
xor edx, edx
call fcn.1401cdfe4
cmp qword [rsp + 0x110], 0
je 0x1401a362e
mov r8, qword [rsp + 0x118]
mov rcx, qword [0x141ada118]
xor edx, edx
call fcn.1401cdfe4
mov rcx, qword [rsp + 0x130]
mov rdx, qword [rsp + 0x138]
call fcn.14018ce00
cmp qword [rsp + 0x128], 0
je 0x1401a3669
mov r8, qword [rsp + 0x130]
mov rcx, qword [0x141ada118]
xor r13d, r13d
xor edx, edx
call fcn.1401cdfe4
jmp 0x1401a366c
xor r13d, r13d
movabs rax, 0x8000000000000015
mov qword [rsp + 0x28], rax
movzx eax, byte [rsp + 0x27]
mov edi, eax
movzx eax, byte [rsp + 0x26]
mov ebp, eax
lea rax, [0x141a5a0b0]
xor ecx, ecx
movzx r11d, byte [rsp + 0x25]
movzx r9d, byte [rsp + 0x24]
lea rbx, [rsp + 0xf0]
mov r15, qword [rsp + 0x68]
jmp 0x1401a3500
lea rcx, [rsp + 0xf8]
mov eax, dword [rcx - 7]
mov ecx, dword [rcx - 4]
mov dword [rsp + 0x2c3], ecx
mov dword [rsp + 0x2c0], eax
movups xmm0, xmmword [rsp + 0xf8]
mov rax, qword [rsp + 0x108]
movzx ecx, byte [rsp + 0x110]
movups xmmword [rsp + 0x2c7], xmm0
mov qword [rsp + 0x2d7], rax
mov byte [rsp + 0x2df], cl
movdqu xmm0, xmmword [rsp + 0x2d0]
pcmpeqb xmm0, xmm6
movdqu xmm1, xmmword [rsp + 0x2c0]
pcmpeqb xmm1, xmm7
pand xmm1, xmm0
pmovmskb eax, xmm1
mov rcx, rbx
mov rdx, rdi
cmp eax, 0xffff
je 0x1401a3786
call fcn.14010b480
mov r9, qword [rsp + 0xf0]
mov rdi, qword [rsp + 0xf8]
movabs rax, 0x8000000000000015
lea rcx, [rax - 0x15]
mov rax, qword [rsp + 0x100]
cmp r9, rcx
jne 0x1401a37fd
mov r14, qword [rsp + 0x108]
jmp 0x1401a37c2
xor r13d, r13d
movabs rax, 0x8000000000000015
mov qword [rsp + 0x28], rax
movzx eax, byte [rsp + 0x27]
mov edi, eax
jmp 0x1401a34e4
call fcn.14010ae30
mov r9, qword [rsp + 0xf0]
mov rdi, qword [rsp + 0xf8]
movabs rax, 0x8000000000000015
lea rcx, [rax - 0x15]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r9, rcx
jne 0x1401a38d9
movzx r11d, byte [rsp + 0x25]
movzx r9d, byte [rsp + 0x24]
lea rbx, [rsp + 0xf0]
mov rbp, qword [rsp + 0x38]
mov r15, qword [rsp + 0x68]
mov rcx, rdi
shr rcx, 0x10
mov r13d, edi
shr r13d, 8
movabs rdx, 0x8000000000000015
jmp 0x1401a1c8e
lea r10, [rsp + 0xf8]
movups xmm0, xmmword [r10 + 0x18]
movups xmm1, xmmword [r10 + 0x28]
lea r11, [rsp + 0x5d8]
movups xmmword [r11 + 0x10], xmm1
movups xmmword [r11], xmm0
movq xmm0, qword [rsp + 0x130]
mov ecx, dword [rsp + 0x134]
mov dword [rsp + 0x1c0], ecx
mov rcx, qword [rsp + 0x138]
mov qword [rsp + 0x1d8], rcx
movups xmm1, xmmword [r10 + 0x48]
movaps xmmword [rsp + 0x430], xmm1
mov ecx, dword [r10 + 0x64]
mov dword [rsp + 0x2b8], ecx
mov rcx, qword [r10 + 0x5c]
mov qword [rsp + 0x2b0], rcx
movups xmm1, xmmword [rsp + 0x2c0]
movups xmm2, xmmword [rsp + 0x2d0]
movaps xmmword [rsp + 0x5e0], xmm2
movaps xmmword [rsp + 0x5d0], xmm1
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0xd0], rax
movdqu xmm1, xmmword [r11]
movups xmm2, xmmword [r11 + 0x10]
movaps xmmword [rsp + 0x390], xmm2
movdqa xmmword [rsp + 0x380], xmm1
movabs rax, 0x8000000000000015
lea rdx, [rax - 0x13]
mov dil, 2
jmp 0x1401a393f
lea rcx, [rsp + 0xf8]
movups xmm0, xmmword [rcx + 0x18]
movdqu xmm1, xmmword [rcx + 0x28]
movdqa xmmword [rsp + 0x390], xmm1
movaps xmmword [rsp + 0x380], xmm0
mov ecx, dword [rsp + 0x134]
mov dword [rsp + 0x1c0], ecx
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r14
mov byte [rsp + 0x9e], 6
movabs rax, 0x8000000000000015
lea rdx, [rax - 0x12]
mov dil, 6
movdqa xmm0, xmm8
mov r13d, r9d
shr r13d, 8
mov rcx, r9
shr rcx, 0x10
mov r8d, r9d
lea r10, [rsp + 0xf8]
lea rbx, [rsp + 0xf0]
mov r15, qword [rsp + 0x68]
mov r14d, dword [rsp + 0x1c0]
jmp 0x1401a30a3
mov byte [rsp + 0x2c0], al
mov rcx, qword [rsp + 0x410]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
lea rdx, [rsp + 0x2c1]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
mov qword [rsp + 0x2c8], r8
mov qword [rsp + 0x2d0], r14
mov qword [rsp + 0x2d8], r15
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x2c0]
call fcn.140143be0
mov eax, r15d
shr eax, 8
mov dword [rsp + 0x58], eax
mov r13d, r15d
shr r13d, 0x10
mov rbp, r15
shr rbp, 0x20
mov r12, r15
shr r12, 0x28
mov rdi, r15
shr rdi, 0x30
mov rcx, qword [rsp + 0x200]
cmp byte [rcx], 0x14
jne 0x1401a3aa2
mov rax, qword [rsp + 0x1e0]
mov rsi, qword [rax + 0x3b8]
mov rbx, qword [rax + 0x3c0]
mov rcx, rsi
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x1401a3ac3
cmp qword [rbx + 0x10], 0x11
jb 0x1401a3a36
mov rsi, qword [rsi - 8]
mov rbx, qword [rsp + 0x70]
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, rsi
call fcn.1401cdfe4
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x60], rax
mov r14, qword [rsp + 0x2d0]
movzx r15d, byte [rsp + 0x2d8]
movzx eax, byte [rsp + 0x2d9]
mov dword [rsp + 0x58], eax
movzx r13d, word [rsp + 0x2da]
movzx ebp, byte [rsp + 0x2dc]
movzx r12d, byte [rsp + 0x2dd]
movzx edi, word [rsp + 0x2de]
mov rsi, qword [rsp + 0x200]
jmp 0x1401a3ad0
mov rsi, rcx
call fcn.1401a4810
jmp 0x1401a3ad0
mov r14, r13
mov r12, qword [rsp + 0x1e0]
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x38]
jmp 0x1401a3b04
mov rsi, qword [rsp + 0x200]
mov rbx, qword [rsp + 0x70]
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
movdqu xmmword [rsi + 0x10], xmm1
movdqu xmmword [rsi], xmm0
mov rcx, qword [rsp + 0x2c0]
cmp cl, 0x14
je 0x1401a41f0
jmp 0x1401a4662
mov r14, r13
mov r10, qword [rsp + 0x80]
mov rax, qword [r12 + 0x3e8]
mov rsi, rax
sub rsi, r14
ja 0x1401a3b57
mov rcx, qword [rsp + 0x200]
jne 0x1401a3b91
xor esi, esi
jmp 0x1401a3b89
mov eax, 2
jmp 0x1401a3d57
mov r14, r13
mov r12, qword [rsp + 0x1e0]
mov r10, qword [rsp + 0x80]
mov rax, qword [r12 + 0x3e8]
mov rsi, rax
sub rsi, r14
jbe 0x1401a3b1c
cmp rax, qword [r12 + 0x3e0]
ja 0x1401a480c
mov rdi, r10
mov rcx, qword [r12 + 0x3d8]
add r14, rcx
mov rdx, r14
mov r8, rsi
call sub.msvcrt.dll_memmove
mov rcx, qword [rsp + 0x200]
mov r10, rdi
mov qword [r12 + 0x3e8], rsi
mov r14, r10
cmp byte [rcx], 0x14
jne 0x1401a3bd3
mov rsi, qword [r12 + 0x3b8]
mov rdi, qword [r12 + 0x3c0]
mov rcx, rsi
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x1401a3bd8
cmp qword [rdi + 0x10], 0x11
jb 0x1401a3bc0
mov rsi, qword [rsi - 8]
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, rsi
call fcn.1401cdfe4
jmp 0x1401a3bd8
call fcn.1401a4810
mov byte [r12 + 0x3b0], 0x14
mov rax, qword [rsp + 0x60]
mov qword [r12 + 0x3b8], rax
mov rax, qword [rsp + 0x1b0]
mov qword [r12 + 0x3c0], rax
mov rax, qword [r12 + 0xd0]
test rax, rax
mov r10, r14
je 0x1401a3c44
mov rdx, qword [r12 + 0xb8]
mov rcx, qword [r12 + 0xc8]
cmp rcx, rdx
mov r8d, 0
cmovae r8, rdx
sub rcx, r8
mov r8, rdx
sub r8, rcx
mov r9, rax
sub r9, r8
ja 0x1401a3c4b
add rax, rcx
mov rdx, rax
jmp 0x1401a3c48
xor ecx, ecx
xor edx, edx
xor r9d, r9d
mov rax, qword [r12 + 0xc0]
lea rcx, [rcx + rcx*2]
lea rcx, [rax + rcx*8]
lea rdx, [rdx + rdx*2]
lea r8, [rax + rdx*8]
lea rdx, [r9 + r9*2]
lea rdx, [rax + rdx*8]
jmp 0x1401a3c80
mov r9, rdx
mov rdx, r8
add rcx, 0x18
mov r8, rdx
mov rdx, r9
cmp rcx, r8
jne 0x1401a3c70
cmp rax, rdx
je 0x1401a3c98
mov rcx, rax
mov r9, r8
test rax, rax
mov rax, r8
jne 0x1401a3c76
mov rax, qword [r12 + 0x70]
test rax, rax
je 0x1401a3cd2
mov rdx, qword [r12 + 0x58]
mov rcx, qword [r12 + 0x68]
cmp rcx, rdx
mov r8d, 0
cmovae r8, rdx
sub rcx, r8
mov r8, rdx
sub r8, rcx
mov r9, rax
sub r9, r8
ja 0x1401a3cd9
add rax, rcx
mov rdx, rax
jmp 0x1401a3cd6
xor ecx, ecx
xor edx, edx
xor r9d, r9d
mov rax, qword [r12 + 0x60]
lea rcx, [rcx + rcx*2]
lea rcx, [rax + rcx*8]
lea rdx, [rdx + rdx*2]
lea r8, [rax + rdx*8]
lea rdx, [r9 + r9*2]
lea rdx, [rax + rdx*8]
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x80], r10
jmp 0x1401a3d20
mov r9, rdx
mov rdx, r8
add rcx, 0x18
mov r8, rdx
mov rdx, r9
cmp rcx, r8
jne 0x1401a3d10
cmp rax, rdx
je 0x1401a41f0
mov rcx, rax
mov r9, r8
test rax, rax
mov rax, r8
jne 0x1401a3d16
jmp 0x1401a41f0
mov eax, 6
jmp 0x1401a3d4d
mov eax, 9
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x38]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x2c8], rax
mov byte [rsp + 0x2c0], 2
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x2c0]
call fcn.140143be0
mov rcx, qword [rsp + 0x1f8]
cmp byte [rcx], 0x14
mov r12, qword [rsp + 0x1e0]
mov r10, qword [rsp + 0x80]
je 0x1401a3db1
mov rsi, r10
call fcn.1401a8fa0
mov r10, rsi
mov rcx, qword [rsp + 0x1f8]
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
movdqu xmmword [rcx + 0x10], xmm1
movdqu xmmword [rcx], xmm0
mov rdi, qword [rsp + 0x2c0]
mov rcx, qword [rsp + 0x2d0]
mov rsi, qword [rsp + 0x2d8]
mov rax, rdi
shr rax, 8
mov qword [rsp + 0x1d0], rax
mov eax, ecx
shr eax, 8
mov dword [rsp + 0x48], eax
mov eax, ecx
shr eax, 0x10
mov dword [rsp + 0x44], eax
mov rax, rcx
shr rax, 0x20
mov qword [rsp + 0x78], rax
mov rax, rcx
shr rax, 0x28
mov qword [rsp + 0xa0], rax
mov rax, rcx
mov qword [rsp + 0x90], rcx
shr rcx, 0x30
mov qword [rsp + 0xe8], rcx
mov qword [rsp + 0xe0], rsi
cmp dil, 2
je 0x1401a4038
movzx ecx, dil
cmp ecx, 5
mov qword [rsp + 0x38], rbp
mov r15, r10
je 0x1401a3ee6
cmp ecx, 0x10
jne 0x1401a3f5e
mov word [rsp + 0x1a8], 4
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffeb
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xf8], 0x40001
cmp byte [r12 + 0x41], 2
sete r8b
mov rcx, r12
lea rdx, [rsp + 0xf0]
call fcn.140131580
mov byte [r12 + 0x331], 1
mov rax, qword [rsp + 0x1d0]
shl rax, 8
or rax, 0x10
jmp 0x1401a3f54
mov r14, r13
mov rax, qword [r12 + 0x3e8]
mov rsi, rax
sub rsi, r14
ja 0x1401a3b57
jmp 0x1401a3b1c
mov rcx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x1b0]
call qword [rax + 0x30]
mov word [rsp + 0x1a8], 4
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffeb
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xf8], 0x20001
cmp byte [r12 + 0x41], 2
sete r8b
mov rcx, r12
lea rdx, [rsp + 0xf0]
call fcn.140131580
mov byte [r12 + 0x331], 1
mov rax, qword [rsp + 0x1d0]
shl rax, 8
or rax, 5
mov qword [rsp + 0xb8], rax
jmp 0x1401a3f75
mov rax, qword [rsp + 0x1d0]
shl rax, 8
or rcx, rax
mov qword [rsp + 0xb8], rcx
movzx eax, byte [rsp + 0x48]
shl eax, 8
movzx ecx, byte [rsp + 0x90]
or rcx, rax
movzx eax, word [rsp + 0xe8]
shl rax, 0x30
movzx edx, byte [rsp + 0xa0]
shl rdx, 0x28
or rdx, rax
movzx eax, byte [rsp + 0x78]
shl rax, 0x20
or rax, rdx
mov edx, dword [rsp + 0x44]
shl edx, 0x10
or rdx, rax
or rdx, rcx
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0x88], rdi
jmp 0x1401a4140
movzx eax, byte [rsp + 0xf7]
shl eax, 0x10
movzx ecx, word [rsp + 0xf5]
or ecx, eax
shl rcx, 0x20
mov eax, dword [rsp + 0xf1]
or rax, rcx
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x100]
mov rsi, qword [rsp + 0x108]
jmp 0x1401a3df3
mov rdi, qword [rsp + 0x88]
mov qword [rsp + 0xe0], rsi
cmp dil, 2
jne 0x1401a3e49
mov r13, r10
mov qword [rsp + 0x88], rdi
mov rdi, qword [rsp + 0x90]
mov rax, qword [rsp + 0xe8]
cmp byte [r12 + 0x334], 0
mov rsi, r12
movzx r12d, byte [rsp + 0x48]
mov qword [rsp + 0x90], rdi
movzx edi, dil
mov qword [rsp + 0xe8], rax
movzx r15d, ax
movzx r14d, byte [rsp + 0xa0]
movzx ebx, byte [rsp + 0x78]
mov qword [rsp + 0x38], rbp
je 0x1401a409b
mov byte [rsi + 0x2c0], 0x10
jmp 0x1401a40e5
mov word [rsp + 0x1a8], 4
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffeb
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xf8], 0x100001
cmp byte [rsi + 0x41], 2
sete r8b
mov rcx, rsi
lea rdx, [rsp + 0xf0]
call fcn.140131580
mov byte [rsi + 0x331], 1
mov rcx, qword [rsp + 0x1d0]
movabs rax, 0xffffffffffffff
and rcx, rax
shl r12d, 8
or rdi, r12
shl r15, 0x30
shl r14, 0x28
or r14, r15
shl rbx, 0x20
or rbx, r14
mov eax, dword [rsp + 0x44]
shl eax, 0x10
or rax, rbx
or rax, rdi
mov qword [rsp + 0xb0], rax
shl rcx, 8
or rcx, 2
mov qword [rsp + 0xb8], rcx
mov rbx, qword [rsp + 0x70]
mov r15, r13
mov r14, qword [rsp + 0xe0]
mov rbp, r14
shr rbp, 0x20
mov r12, r14
shr r12, 0x28
mov rdi, r14
shr rdi, 0x30
mov eax, r14d
shr eax, 8
mov dword [rsp + 0x58], eax
mov r13d, r14d
shr r13d, 0x10
mov rcx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x1b0]
call qword [rsi]
cmp qword [rsi + 8], 0
mov qword [rsp + 0x80], r15
je 0x1401a419a
cmp qword [rsi + 0x10], 0x11
jae 0x1401a419f
mov r8, qword [rsp + 0x60]
jmp 0x1401a41a8
mov r15d, r14d
jmp 0x1401a41be
mov r8, qword [rsp + 0x60]
mov r8, qword [r8 - 8]
mov rcx, qword [0x141ada118]
xor edx, edx
call fcn.1401cdfe4
mov r15, qword [rsp + 0xe0]
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x60], rax
mov rcx, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xb0]
cmp cl, 0x14
jne 0x1401a4662
nop word cs:[rax + rax]
cmp byte [rsp + 0x2bc], 0
jne 0x1401a4636
mov r12, qword [rsp + 0x1e0]
movzx r8d, byte [r12 + 0x32e]
movzx edx, byte [r12 + 0x32f]
mov rax, qword [r12 + 0xd0]
mov r9b, 1
test r8b, r8b
mov rsi, qword [rsp + 0x3b8]
mov r14, qword [rsp + 0x428]
mov r13, qword [rsp + 0x420]
mov ebp, 0x4805
je 0x1401a4254
test dl, dl
je 0x1401a4254
mov cl, 1
test rax, rax
jne 0x1401a0516
test r8b, r8b
je 0x1401a4271
test dl, dl
jne 0x1401a4636
xor ecx, ecx
test bl, 1
je 0x1401a0516
jmp 0x1401a47c2
xor r9d, r9d
mov ecx, edx
test bl, 1
je 0x1401a0516
jmp 0x1401a47c2
mov eax, 0x10
mov rbx, qword [rsp + 0x70]
jmp 0x1401a3d57
mov byte [rsp + 0x24], r9b
mov byte [rsp + 0x25], r11b
mov word [rsp + 0x1a8], 4
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffeb
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xf8], 0x100001
mov rdi, qword [rsp + 0x1e0]
cmp byte [rdi + 0x41], 2
sete r8b
mov rcx, rdi
mov rdx, rbx
call fcn.140131580
mov byte [rdi + 0x331], 1
mov al, 2
mov dword [rsp + 0x58], eax
mov qword [rsp + 0x210], r12
mov r12, rdi
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x2a8], rcx
jmp 0x1401a4384
mov word [rsp + 0x1a8], 4
mov qword [rsp + 0xf0], r15
mov dword [rsp + 0xf8], 0xd0001
jmp 0x1401a4346
mov word [rsp + 0x1a8], 4
mov qword [rsp + 0xf0], r15
mov dword [rsp + 0xf8], 0x100001
cmp byte [r12 + 0x41], 2
sete r8b
mov rcx, r12
lea rdx, [rsp + 0xf0]
call fcn.140131580
mov byte [r12 + 0x331], 1
lea rcx, [rsp + 0x510]
call fcn.1401a4890
mov al, 9
mov dword [rsp + 0x58], eax
mov eax, r14d
mov r15, qword [rsp + 0x68]
mov byte [rsp + 0x4f], al
mov rcx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x1b0]
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x1401a43c3
cmp qword [rdi + 0x10], 0x11
jae 0x1401a43ac
mov r8, qword [rsp + 0x60]
jmp 0x1401a43b5
mov r8, qword [rsp + 0x60]
mov r8, qword [r8 - 8]
mov rcx, qword [0x141ada118]
xor edx, edx
call fcn.1401cdfe4
mov qword [rsp + 0x68], r15
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0x1b0], rax
mov rcx, qword [rsp + 0x218]
mov qword [rsp + 0x60], rcx
mov ecx, esi
mov byte [rsp + 0x37], sil
mov rbx, qword [rsp + 0x70]
mov esi, dword [rsp + 0x58]
mov qword [rsp + 0x1b8], rax
mov byte [rsp + 0x2c0], sil
movzx eax, byte [rsp + 0x37]
mov byte [rsp + 0x2c1], al
movzx eax, byte [rsp + 0x4f]
mov byte [rsp + 0x2c2], al
mov rax, qword [rsp + 0x3b0]
mov dword [rsp + 0x2c3], eax
shr rax, 0x20
mov byte [rsp + 0x2c7], al
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x2d0], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x2d8], rax
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x2c0]
call fcn.140143be0
mov rcx, qword [rsp + 0x200]
cmp byte [rcx], 0x14
jne 0x1401a44c0
mov rsi, qword [r12 + 0x3b8]
mov rdi, qword [r12 + 0x3c0]
mov rcx, rsi
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x1401a44c5
cmp qword [rdi + 0x10], 0x11
jb 0x1401a44ad
mov rsi, qword [rsi - 8]
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, rsi
call fcn.1401cdfe4
jmp 0x1401a44c5
call fcn.1401a4810
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
mov rax, qword [rsp + 0x200]
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov rax, qword [r12 + 0x3e8]
mov rsi, rax
sub rsi, r13
jbe 0x1401a451e
cmp rax, qword [r12 + 0x3e0]
ja 0x1401a480c
mov rcx, qword [r12 + 0x3d8]
add r13, rcx
mov rdx, r13
mov r8, rsi
call sub.msvcrt.dll_memmove
jmp 0x1401a4522
jne 0x1401a452a
xor esi, esi
mov qword [r12 + 0x3e8], rsi
mov qword [rsp + 0x38], rbp
mov rcx, qword [rsp + 0x2c0]
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x60], rax
mov r14, qword [rsp + 0x2d0]
movzx r15d, byte [rsp + 0x2d8]
movzx eax, byte [rsp + 0x2d9]
mov dword [rsp + 0x58], eax
movzx r13d, word [rsp + 0x2da]
movzx ebp, byte [rsp + 0x2dc]
movzx r12d, byte [rsp + 0x2dd]
movzx edi, word [rsp + 0x2de]
cmp cl, 0x14
je 0x1401a41f0
jmp 0x1401a4662
mov rcx, rdi
mov rdi, qword [rsp + 0x3a0]
mov eax, edi
shr eax, 8
mov dword [rsp + 0x48], eax
mov eax, edi
shr eax, 0x10
mov dword [rsp + 0x44], eax
mov r13, r10
test rcx, rcx
je 0x1401a45d5
mov rcx, qword [0x141ada118]
xor eax, eax
mov qword [rsp + 0x50], rax
xor edx, edx
mov r8, qword [rsp + 0x88]
call fcn.1401cdfe4
jmp 0x1401a45dc
xor eax, eax
mov qword [rsp + 0x50], rax
xor eax, eax
mov qword [rsp + 0x78], rax
xor eax, eax
mov qword [rsp + 0xa0], rax
xor eax, eax
mov cl, 2
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x270], rsi
jmp 0x1401a4053
mov rax, qword [rsp + 0x1e8]
mov qword [rax + 8], rdx
mov qword [rax], 1
jmp 0x1401a47df
mov rax, qword [rsp + 0x1e8]
mov qword [rax + 8], rsi
mov qword [rax], 1
jmp 0x1401a47df
mov rax, qword [rsp + 0x1e8]
mov rcx, qword [rsp + 0x278]
mov qword [rax + 8], rcx
mov rcx, qword [rsp + 0x260]
mov qword [rax + 0x10], rcx
mov qword [rax], 0
jmp 0x1401a47df
mov qword [rsp + 0x3d0], rcx
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x3d8], rax
mov qword [rsp + 0x3e0], r14
mov byte [rsp + 0x3e8], r15b
mov eax, dword [rsp + 0x58]
mov byte [rsp + 0x3e9], al
mov word [rsp + 0x3ea], r13w
mov byte [rsp + 0x3ec], bpl
mov byte [rsp + 0x3ed], r12b
mov word [rsp + 0x3ee], di
mov rcx, qword [rsp + 0x3c8]
mov rdi, qword [rsp + 0x3b8]
mov rdx, rdi
call fcn.140132850
mov rbx, rax
mov rsi, rdx
mov rcx, qword [rdi]
mov rax, qword [rdi + 8]
call qword [rax + 0x70]
mov r14, rax
lea rcx, [rsp + 0x3d0]
call fcn.1401abe10
mov rcx, qword [rsp + 0x1e8]
mov qword [rcx + 8], rax
mov qword [rcx], 1
test r14, r14
je 0x1401a4760
mov eax, r14d
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x1401a4760
test rax, rax
je 0x1401a4760
mov rdi, r14
dec rdi
mov r15, qword [r14 - 1]
mov r14, qword [r14 + 7]
mov rcx, r15
call qword [r14]
cmp qword [r14 + 8], 0
je 0x1401a474f
cmp qword [r14 + 0x10], 0x11
jb 0x1401a473e
mov r15, qword [r15 - 8]
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, r15
call fcn.1401cdfe4
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, rdi
call fcn.1401cdfe4
test rbx, rbx
je 0x1401a47df
mov eax, esi
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x1401a47df
test rax, rax
je 0x1401a47df
mov rdi, rsi
dec rdi
mov rbx, qword [rsi - 1]
mov rsi, qword [rsi + 7]
mov rcx, rbx
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x1401a47af
cmp qword [rsi + 0x10], 0x11
jb 0x1401a479e
mov rbx, qword [rbx - 8]
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, rbx
call fcn.1401cdfe4
mov rcx, qword [0x141ada118]
xor edx, edx
mov r8, rdi
call fcn.1401cdfe4
jmp 0x1401a47df
movabs rax, 0x2500000003
mov rcx, qword [rsp + 0x1e8]
mov qword [rcx + 8], rax
mov qword [rcx], 1
movaps xmm6, xmmword [rsp + 0x600]
movaps xmm7, xmmword [rsp + 0x610]
movaps xmm8, xmmword [rsp + 0x620]
add rsp, 0x638
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2