Function at 0x14016cff6
Capabilities:
Authenticate hmac

Disassembly:
push rbp
push rsi
push rdi
mov eax, 0x1420
call fcn.140195b60
sub rsp, rax
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x1390], xmm8
movaps xmmword [rbp + 0x1380], xmm7
movaps xmmword [rbp + 0x1370], xmm6
mov qword [rbp + 0xd00], rcx
mov eax, 0x10
mov qword [rbp + 0xf18], rax
call fcn.140195b60
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf38], rax
mov eax, 0x20
mov qword [rbp + 0xec8], rax
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd08], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd10], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xec8]
mov rcx, rsp
mov qword [rbp + 0xd18], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd20], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd28], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd30], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xec8]
mov rcx, rsp
mov qword [rbp + 0xd38], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd40], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd48], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd50], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd58], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xec8]
mov rcx, rsp
mov qword [rbp + 0xd60], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd68], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd70], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd78], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd80], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd88], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd90], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xd98], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xda0], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xda8], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xdb0], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xdb8], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xdc0], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xdc8], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xdd0], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xdd8], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xde0], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xde8], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xdf0], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xdf8], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe00], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe08], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe10], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe18], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe20], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe28], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe30], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe38], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe40], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe48], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe50], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe58], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe60], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe68], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe70], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe78], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe80], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe88], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe90], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xe98], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xea0], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xea8], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xeb0], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xeb8], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xec0], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xec8]
mov rcx, rsp
mov qword [rbp + 0xed0], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xed8], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xee0], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xee8], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xef0], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xef8], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xf00], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xf08], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xf10], rcx
call fcn.140195b60
sub rsp, rax
mov rax, qword [rbp + 0xf18]
mov rcx, rsp
mov qword [rbp + 0xf20], rcx
call fcn.140195b60
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf28], rax
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
mov qword [rbp + 0xf58], rax
add rax, 0x60
mov qword [rbp + 0xf30], rax
movabs rcx, 0xba684090abd5d921
movabs rax, 0xba684090abd5d939
xor rcx, rax
movabs rdx, 0x8b57a6262296bc92
movabs rax, 0x8b57a6262296bc9a
xor rdx, rax
sub rsp, 0x20
call fcn.140019bef
mov rcx, qword [rbp + 0xf38]
add rsp, 0x20
mov qword [rbp + 0xf40], rax
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.1400301e8
mov rcx, qword [rbp + 0xf38]
mov rax, qword [rbp + 0xf40]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rax + 8], rdx
mov rcx, qword [rcx + 8]
mov qword [rax + 0x10], rcx
mov qword [rbp + 0x1368], rax
lea rax, [rbp + 0x1358]
add rax, 8
mov qword [rbp + 0xf48], rax
movabs rax, 0x52116f44add14d3
movabs rcx, 0x52116f44add14d1
xor rax, rcx
mov qword [rbp + 0x1358], rax
movabs rcx, 0x7b57b837163bb0d4
movabs rax, 0x7b57b837163bb0d6
xor rcx, rax
movabs rdx, 0x5e67fe004b466fe5
movabs rax, 0x5e67fe004b466fed
xor rdx, rax
movabs r8, 0x447418c6e5dbe2ed
movabs rax, 0x447418c6e5dbe2e5
xor r8, rax
sub rsp, 0x20
call fcn.1400143b4
add rsp, 0x20
mov qword [rbp + 0x1360], rax
movabs rcx, 0xbca8110d00c18607
movabs rax, 0xbca8110d00c1861f
xor rcx, rax
movabs rdx, 0x5d835f65ca41ca14
movabs rax, 0x5d835f65ca41ca1c
xor rdx, rax
sub rsp, 0x20
call fcn.140024940
add rsp, 0x20
mov qword [rbp + 0xf50], rax
mov ax, 0xd69f
xor ax, 0xd1f1
mov word [rbp + 0x1356], ax
lea rcx, [rbp + 0x1356]
sub rsp, 0x20
call fcn.140064a51
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xf58]
mov qword [rbp + 0xf60], rcx
mov cl, byte [rax + 0x60]
mov dl, 0x38
xor dl, 0x38
xor eax, eax
cmp cl, dl
mov qword [rbp + 0xf68], rax
jne 0x14017509e
mov rcx, qword [rbp + 0xd58]
mov rax, qword [rbp + 0xf60]
mov rdx, qword [rax]
mov qword [rbp + 0x1278], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1280], rax
lea rdx, [rbp + 0x1278]
sub rsp, 0x20
call fcn.140024b17
mov rcx, qword [rbp + 0xd58]
mov rax, qword [rbp + 0xf50]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x466
sub rsp, 0x20
call fcn.140064d99
mov rcx, qword [rbp + 0xf30]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0xf50]
mov dword [rax + 0x10], edx
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0xf68], rax
jne 0x14017509e
mov cx, 0x5533
xor cx, 0x562d
sub rsp, 0x20
call fcn.140064d99
mov rcx, qword [rbp + 0xf30]
add rsp, 0x20
mov dword [rbp + 0xcfc], eax
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0xf68], rax
jne 0x14017509e
mov ecx, 0x8af
sub rsp, 0x20
call fcn.140064d99
mov rcx, qword [rbp + 0xf30]
add rsp, 0x20
mov dword [rbp + 0xcf8], eax
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0xf68], rax
jne 0x14017509e
mov ecx, dword [rbp + 0xcf8]
mov edx, dword [rbp + 0xcfc]
movsxd r8, edx
movsxd rax, ecx
imul rax, r8
mov qword [rbp + 0xce0], rax
cvtsi2sd xmm0, edx
cvtsi2sd xmm1, ecx
mulsd xmm0, xmm1
movsd qword [rbp + 0xce8], xmm0
cvtsi2sd xmm1, rax
movsd qword [rbp + 0xcf0], xmm1
ucomisd xmm0, xmm1
jne 0x14016d9da
jp 0x14016d9da
jmp 0x14016da54
movsd xmm1, qword [rbp + 0xce8]
movsd xmm0, qword [rbp + 0xcf0]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.140195ba0
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0xce8]
movsd qword [rbp + 0xcd8], xmm1
sub rsp, 0x20
call fcn.140195ba0
movsd xmm1, qword [rbp + 0xcd8]
add rsp, 0x20
movsd xmm2, qword [0x1401a0ba0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x14016da54
sub rsp, 0x20
call fcn.14000a590
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xf68], rax
jmp 0x14017509e
mov rax, qword [rbp + 0xce0]
add rax, 0xffffffff80000000
movabs rcx, 0xa7170cb3668b14af
movabs rdx, 0x58e8f34c668b14af
xor rcx, rdx
cmp rax, rcx
jae 0x14016da9c
sub rsp, 0x20
call fcn.14000a590
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xf68], rax
jmp 0x14017509e
mov ecx, 0x329
sub rsp, 0x20
call fcn.140064d99
mov rcx, qword [rbp + 0xf30]
add rsp, 0x20
mov dword [rbp + 0xcd4], eax
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0xf68], rax
jne 0x14017509e
movsd xmm0, qword [rbp + 0xcf0]
mov ecx, dword [rbp + 0xcd4]
mov rax, qword [rbp + 0xce0]
movsxd rdx, ecx
imul rax, rdx
mov qword [rbp + 0xcb8], rax
cvtsi2sd xmm1, ecx
mulsd xmm0, xmm1
movsd qword [rbp + 0xcc0], xmm0
cvtsi2sd xmm1, rax
movsd qword [rbp + 0xcc8], xmm1
ucomisd xmm0, xmm1
jne 0x14016db22
jp 0x14016db22
jmp 0x14016db9c
movsd xmm1, qword [rbp + 0xcc0]
movsd xmm0, qword [rbp + 0xcc8]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.140195ba0
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0xcc0]
movsd qword [rbp + 0xcb0], xmm1
sub rsp, 0x20
call fcn.140195ba0
movsd xmm1, qword [rbp + 0xcb0]
add rsp, 0x20
movsd xmm2, qword [0x1401a0ba0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x14016db9c
sub rsp, 0x20
call fcn.14000a590
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xf68], rax
jmp 0x14017509e
mov rax, qword [rbp + 0xcb8]
xor ecx, ecx
sub rcx, 0xffffffff80000000
sub rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x14016dbdd
sub rsp, 0x20
call fcn.14000a590
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xf68], rax
jmp 0x14017509e
mov rcx, qword [rbp + 0xf50]
mov rax, qword [rbp + 0xf48]
mov rdx, qword [rbp + 0xcb8]
mov dword [rcx + 0x14], edx
mov rax, qword [rax]
mov qword [rax + 8], rcx
movabs rcx, 0xfbe96b0aa312d24d
movabs rax, 0xfbe96b0aa312d255
xor rcx, rax
movabs rdx, 0x65fec0715c31e8e6
movabs rax, 0x65fec0715c31e8ee
xor rdx, rax
sub rsp, 0x20
call fcn.140024940
add rsp, 0x20
mov qword [rbp + 0xca0], rax
mov word [rbp + 0x1354], 0x16
lea rcx, [rbp + 0x1354]
sub rsp, 0x20
call fcn.140064a51
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xf30]
mov qword [rbp + 0xca8], rcx
mov cl, byte [rax]
mov dl, 0xf4
xor dl, 0xf4
xor eax, eax
cmp cl, dl
mov qword [rbp + 0xf68], rax
jne 0x14017509e
mov rcx, qword [rbp + 0xd60]
mov rax, qword [rbp + 0xca8]
mov rdx, qword [rax]
mov qword [rbp + 0x1268], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1270], rax
lea rdx, [rbp + 0x1268]
sub rsp, 0x20
call fcn.140024b17
mov rcx, qword [rbp + 0xd60]
mov rax, qword [rbp + 0xca0]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x9ed
sub rsp, 0x20
call fcn.140064d99
mov rcx, qword [rbp + 0xf30]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0xca0]
mov dword [rax + 0x10], edx
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0xf68], rax
jne 0x14017509e
mov cx, 0x146c
xor cx, 0x102a
sub rsp, 0x20
call fcn.140064d99
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xf30]
mov dword [rbp + 0xc9c], ecx
mov cl, byte [rax]
mov dl, 0xad
xor dl, 0xad
xor eax, eax
cmp cl, dl
mov qword [rbp + 0xf68], rax
jne 0x14017509e
mov ecx, 0x8f9
sub rsp, 0x20
call fcn.140064d99
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xf30]
mov dword [rbp + 0xc98], ecx
mov cl, byte [rax]
mov dl, 0xab
xor dl, 0xab
xor eax, eax
cmp cl, dl
mov qword [rbp + 0xf68], rax
jne 0x14017509e
mov ecx, dword [rbp + 0xc98]
mov edx, dword [rbp + 0xc9c]
movsxd r10, edx
movsxd rax, ecx
movabs r9, 0x4385dd963f77732d
movabs r8, 0xbc7a2269c0888cd2
xor r9, r8
mov r8, rax
xor r8, r9
mov r9, r10
and r9, r8
mov r11, r10
xor r11, 0xffffffffffffffff
mov r8, rax
and r8, r11
imul r8, r9
mov r9, rax
and r9, r10
or rax, r10
imul rax, r9
add rax, r8
mov qword [rbp + 0xc80], rax
cvtsi2sd xmm0, edx
cvtsi2sd xmm1, ecx
mulsd xmm0, xmm1
movsd qword [rbp + 0xc88], xmm0
cvtsi2sd xmm1, rax
movsd qword [rbp + 0xc90], xmm1
ucomisd xmm0, xmm1
jne 0x14016de17
jp 0x14016de17
jmp 0x14016de91
movsd xmm1, qword [rbp + 0xc88]
movsd xmm0, qword [rbp + 0xc90]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.140195ba0
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0xc88]
movsd qword [rbp + 0xc78], xmm1
sub rsp, 0x20
call fcn.140195ba0
movsd xmm1, qword [rbp + 0xc78]
add rsp, 0x20
movsd xmm2, qword [0x1401a0ba0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x14016de91
sub rsp, 0x20
call fcn.14000a590
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xf68], rax
jmp 0x14017509e
mov rax, qword [rbp + 0xc80]
movabs rcx, 0x1095aaa40cbce23e
movabs rdx, 0x1095aaa40cbce23e
xor rcx, rdx
sub rcx, rax
movabs rax, 0xc48dd7ad9d001350
movabs rdx, 0xc48dd7ad9d001350
xor rax, rdx
movabs rdx, 0xfce69a9bf73410e0
movabs r8, 0x3196564773410e0
xor rdx, r8
sub rax, rdx
add rcx, rax
movabs rax, 0xcf74485e93c91f10
movabs rdx, 0xcf74485e93c91f10
xor rax, rdx
sub rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x14016df2e
sub rsp, 0x20
call fcn.14000a590
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xf68], rax
jmp 0x14017509e
mov cx, 0xef57
xor cx, 0xe74e
sub rsp, 0x20
call fcn.140064d99
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xf30]
mov dword [rbp + 0xc74], ecx
mov cl, byte [rax]
mov dl, 0xec
xor dl, 0xec
xor eax, eax
cmp cl, dl
mov qword [rbp + 0xf68], rax
jne 0x14017509e
movsd xmm0, qword [rbp + 0xc90]
mov ecx, dword [rbp + 0xc74]
mov rax, qword [rbp + 0xc80]
movsxd rdx, ecx
imul rax, rdx
mov qword [rbp + 0xc58], rax
cvtsi2sd xmm1, ecx
mulsd xmm0, xmm1
movsd qword [rbp + 0xc60], xmm0
cvtsi2sd xmm1, rax
movsd qword [rbp + 0xc68], xmm1
ucomisd xmm0, xmm1
jne 0x14016dfc0
jp 0x14016dfc0
jmp 0x14016e03a
movsd xmm1, qword [rbp + 0xc60]
movsd xmm0, qword [rbp + 0xc68]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.140195ba0
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0xc60]
movsd qword [rbp + 0xc50], xmm1
sub rsp, 0x20
call fcn.140195ba0
movsd xmm1, qword [rbp + 0xc50]
add rsp, 0x20
movsd xmm2, qword [0x1401a0ba0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x14016e03a
sub rsp, 0x20
call fcn.14000a590
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xf68], rax
jmp 0x14017509e
mov rax, qword [rbp + 0xc58]
movabs rcx, 0xecb9b898170fb52
movabs rdx, 0xf13464760170fb52
xor rcx, rdx
add rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x14016e089
sub rsp, 0x20
call fcn.14000a590
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xf68], rax
jmp 0x14017509e
mov rcx, qword [rbp + 0xca0]
mov rax, qword [rbp + 0xf48]
mov rdx, qword [rbp + 0xc58]
mov dword [rcx + 0x14], edx
mov rax, qword [rax]
mov qword [rax + 0x10], rcx
movabs rcx, 0x3c7307688cae75cb
movabs rax, 0x3c7307688cae75d3
xor rcx, rax
movabs rdx, 0x9792a27fdcacf55a
movabs rax, 0x9792a27fdcacf552
xor rdx, rax
sub rsp, 0x20
call fcn.140024940
add rsp, 0x20
mov qword [rbp + 0xc38], rax
movabs rcx, 0xafed802103673317
movabs rax, 0xafed802103673316
xor rcx, rax
movabs rdx, 0xfd6cb550a3e4b0f1
movabs rax, 0xfd6cb550a3e4b0e1
xor rdx, rax
movabs r8, 0xebb8042194855549
movabs rax, 0xebb8042194855541
xor r8, rax
sub rsp, 0x20
call fcn.1400143b4
add rsp, 0x20
mov qword [rbp + 0xc40], rax
mov ax, 0xfeac
xor ax, 0xf5f2
mov word [rbp + 0x1352], ax
lea rcx, [rbp + 0x1352]
sub rsp, 0x20
call fcn.140064a51
mov rcx, qword [rbp + 0xf30]
add rsp, 0x20
mov qword [rbp + 0xc48], rax
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0xf68], rax
jne 0x14017509e
mov rax, qword [rbp + 0xc48]
mov rcx, qword [rax]
mov qword [rbp + 0x1248], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1250], rax
lea rcx, [rbp + 0x1258]
lea rdx, [rbp + 0x1248]
sub rsp, 0x20
call fcn.140024b17
mov rax, qword [rbp + 0xc40]
mov rcx, qword [rbp + 0xd68]
add rsp, 0x20
mov r8, qword [rbp + 0x1258]
mov rdx, qword [rbp + 0x1260]
mov qword [rax + 8], r8
mov qword [rax + 0x10], rdx
mov qword [rbp + 0x1238], 1
mov qword [rbp + 0x1240], rax
lea rdx, [rbp + 0x1238]
sub rsp, 0x20
call fcn.140175224
mov rdx, qword [rbp + 0xd68]
mov rcx, qword [rbp + 0xc38]
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rcx], r8
mov r8, qword [rdx + 8]
mov qword [rcx + 8], r8
mov rdx, qword [rdx + 0x10]
mov qword [rcx + 0x10], rdx
mov cl, byte [rax]
mov dl, 0xcb
xor dl, 0xcb
xor eax, eax
cmp cl, dl
mov qword [rbp + 0xf68], rax
jne 0x14017509e
mov ecx, 0x741
sub rsp, 0x20
call fcn.140064d99
mov rcx, qword [rbp + 0xf30]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0xc38]
mov dword [rbp + 0xc34], edx
mov cl, byte [rcx]
mov dl, 0x68
xor dl, 0x68
cmp cl, dl
mov qword [rbp + 0xf68], rax
jne 0x14017509e
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
movaps xmm0, xmmword [0x1401a0bb0]
movaps xmm1, xmmword [0x1401a0bc0]
movaps xmm2, xmmword [0x1401a0bd0]
movaps xmm3, xmmword [0x1401a0be0]
xor eax, eax
mov qword [rbp + 0xbe8], rax
movaps xmmword [rbp + 0xbf0], xmm3
movaps xmmword [rbp + 0xc00], xmm2
movaps xmmword [rbp + 0xc10], xmm1
movaps xmmword [rbp + 0xc20], xmm0
jmp 0x14016e2e4
mov rax, qword [rbp + 0xbe8]
movaps xmm2, xmmword [rbp + 0xbf0]
movaps xmm7, xmmword [rbp + 0xc00]
movaps xmm8, xmmword [rbp + 0xc10]
movaps xmm5, xmmword [rbp + 0xc20]
movaps xmmword [rbp + 0xb80], xmm5
movaps xmmword [rbp + 0xb90], xmm8
movaps xmmword [rbp + 0xba0], xmm7
movaps xmmword [rbp + 0xbb0], xmm2
mov qword [rbp + 0xbc8], rax
movaps xmm6, xmmword [0x1401a0bf0]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x1401a0c00]
pshufd xmm3, xmm4, 0xf5
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp + 0xbd0], xmm1
movd eax, xmm0
test al, 1
jne 0x14016e409
jmp 0x14016e41c
mov rax, qword [rbp + 0xbc8]
mov cl, 0x4e
xor cl, 0x4e
mov byte [rbp + rax + 0x1330], cl
movaps xmm0, xmmword [rbp + 0xbd0]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x14016e437
jmp 0x14016e460
mov rax, qword [rbp + 0xbc8]
movabs rcx, 0xf0a700835f35d121
movabs rdx, 0xf0a700835f35d120
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x1330], 0
movaps xmm0, xmmword [rbp + 0xbd0]
pextrw eax, xmm0, 2
test al, 1
jne 0x14016e479
jmp 0x14016e4a2
mov rax, qword [rbp + 0xbc8]
movabs rcx, 0x7320ed8e51c31f5d
movabs rdx, 0x7320ed8e51c31f5f
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x1330], 0
movaps xmm0, xmmword [rbp + 0xbd0]
pextrw eax, xmm0, 3
test al, 1
jne 0x14016e4bb
jmp 0x14016e4e8
mov rax, qword [rbp + 0xbc8]
movabs rcx, 0x86c5ea9e80215b1f
movabs rdx, 0x86c5ea9e80215b1c
xor rcx, rdx
or rax, rcx
mov cl, 0xdd
xor cl, 0xdd
mov byte [rbp + rax + 0x1330], cl
movaps xmm0, xmmword [rbp + 0xbd0]
pextrw eax, xmm0, 4
test al, 1
jne 0x14016e501
jmp 0x14016e5ad
mov r11, qword [rbp + 0xbc8]
mov rcx, r11
xor rcx, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
xor rdx, 4
movabs r8, 0xe997ee0e36203b60
movabs rax, 0x2bfcc2df62fd9ffc
xor r8, rax
movabs rax, 0x3cb4dcb944a34588
movabs r9, 0xc34b2346bb5cba77
xor rax, r9
xor r8, rax
movabs r9, 0xc26b2cd154dda49c
mov rax, rcx
and rax, r9
and r11, r8
movabs r10, 0xc26b2cd154dda49c
mov r9, rdx
and r9, r10
mov r10, r8
and r10, 4
or rax, r11
or r9, r10
xor rax, r9
or rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0xd50abe91be759c6b
movabs r9, 0x17619240eaa838f7
xor rdx, r9
or rdx, r8
and rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x1330], 0
movaps xmm0, xmmword [rbp + 0xbd0]
pextrw eax, xmm0, 5
test al, 1
jne 0x14016e5c6
jmp 0x14016e5ef
mov rax, qword [rbp + 0xbc8]
movabs rcx, 0x13c73749f927b318
movabs rdx, 0x13c73749f927b31d
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x1330], 0
movaps xmm0, xmmword [rbp + 0xbd0]
pextrw eax, xmm0, 6
test al, 1
jne 0x14016e608
jmp 0x14016e61b
mov rax, qword [rbp + 0xbc8]
or rax, 6
mov byte [rbp + rax + 0x1330], 0
movaps xmm0, xmmword [rbp + 0xbd0]
pextrw eax, xmm0, 7
test al, 1
jne 0x14016e634
jmp 0x14016e685
mov rax, qword [rbp + 0xbc8]
mov rcx, rax
and rcx, 7
xor rcx, 0xffffffffffffffff
movabs rdx, 0x7540108998be1e70
movabs r8, 0x7540108998be1e77
xor rdx, r8
add rax, rdx
movabs rdx, 0x77ba03a042e9c380
movabs r8, 0x77ba03a042e9c381
xor rdx, r8
add rax, rdx
add rax, rcx
mov byte [rbp + rax + 0x1330], 0
movaps xmm0, xmmword [rbp + 0xb80]
movaps xmm1, xmmword [rbp + 0xb90]
movaps xmm2, xmmword [rbp + 0xba0]
movaps xmm3, xmmword [rbp + 0xbb0]
mov rax, qword [rbp + 0xbc8]
add rax, 8
movaps xmm4, xmmword [0x1401a0c10]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0xbe8], rax
movaps xmmword [rbp + 0xbf0], xmm3
movaps xmmword [rbp + 0xc00], xmm2
movaps xmmword [rbp + 0xc10], xmm1
movaps xmmword [rbp + 0xc20], xmm0
jne 0x14016e2e4
jmp 0x14016e6f8
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
movaps xmm0, xmmword [0x1401a0bb0]
movaps xmm1, xmmword [0x1401a0bc0]
movaps xmm2, xmmword [0x1401a0bd0]
movaps xmm3, xmmword [0x1401a0be0]
xor eax, eax
mov qword [rbp + 0xb38], rax
movaps xmmword [rbp + 0xb40], xmm3
movaps xmmword [rbp + 0xb50], xmm2
movaps xmmword [rbp + 0xb60], xmm1
movaps xmmword [rbp + 0xb70], xmm0
jmp 0x14016e754
mov rax, qword [rbp + 0xb38]
movaps xmm2, xmmword [rbp + 0xb40]
movaps xmm7, xmmword [rbp + 0xb50]
movaps xmm8, xmmword [rbp + 0xb60]
movaps xmm5, xmmword [rbp + 0xb70]
movaps xmmword [rbp + 0xad0], xmm5
movaps xmmword [rbp + 0xae0], xmm8
movaps xmmword [rbp + 0xaf0], xmm7
movaps xmmword [rbp + 0xb00], xmm2
mov qword [rbp + 0xb18], rax
movaps xmm6, xmmword [0x1401a0bf0]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x1401a0c00]
pshufd xmm3, xmm4, 0xf5
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp + 0xb20], xmm1
movd eax, xmm0
test al, 1
jne 0x14016e879
jmp 0x14016e88b
mov rax, qword [rbp + 0xd08]
mov rcx, qword [rbp + 0xb18]
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0xb20]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x14016e8a6
jmp 0x14016e8d2
mov rax, qword [rbp + 0xd08]
mov rcx, qword [rbp + 0xb18]
movabs rdx, 0xcd2f50de19b8ca41
movabs r8, 0xcd2f50de19b8ca40
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0xb20]
pextrw eax, xmm0, 2
test al, 1
jne 0x14016e8eb
jmp 0x14016e901
mov rax, qword [rbp + 0xd08]
mov rcx, qword [rbp + 0xb18]
or rcx, 2
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0xb20]
pextrw eax, xmm0, 3
test al, 1
jne 0x14016e91a
jmp 0x14016e977
mov rax, qword [rbp + 0xd08]
mov rcx, qword [rbp + 0xb18]
and rcx, rcx
xor rcx, 0xffffffffffffffff
mov edx, 3
and rdx, 3
xor rdx, 0xffffffffffffffff
movabs r8, 0x203501ed2135c61f
movabs r9, 0xdfcafe12deca39e0
xor r8, r9
xor rcx, r8
movabs r8, 0xd773b2d16b8ba12c
movabs r9, 0x288c4d2e94745ed3
xor r8, r9
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0xb20]
pextrw eax, xmm0, 4
test al, 1
jne 0x14016e990
jmp 0x14016e9c0
mov rax, qword [rbp + 0xd08]
mov rcx, qword [rbp + 0xb18]
mov r8, 0xffffffffffffffff
xor r8, 4
mov rdx, rcx
and rdx, r8
mov r8, rcx
xor r8, 4
add rcx, r8
sub rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0xb20]
pextrw eax, xmm0, 5
test al, 1
jne 0x14016e9d9
jmp 0x14016ea82
mov rax, qword [rbp + 0xd08]
mov rsi, qword [rbp + 0xb18]
mov rdx, rsi
xor rdx, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 5
mov r8, 0xffffffffffffffff
movabs rcx, 0xabbfb321ea925516
xor r8, rcx
movabs r10, 0xabbfb321ea925516
mov rcx, rdx
and rcx, r10
and rsi, r8
movabs r11, 0xc910fe43576ce105
movabs r10, 0x62af4d62bdfeb413
xor r11, r10
mov r10, r9
and r10, r11
movabs r11, 0x8112547da44c117
movabs rdi, 0x8112547da44c112
xor r11, rdi
and r11, r8
or rcx, rsi
or r10, r11
xor rcx, r10
or rdx, r9
xor rdx, 0xffffffffffffffff
movabs r9, 0xabbfb321ea925516
or r8, r9
and rdx, r8
or rcx, rdx
mov dl, 0x6c
xor dl, 0x6c
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0xb20]
pextrw eax, xmm0, 6
test al, 1
jne 0x14016ea9b
jmp 0x14016eac7
mov rax, qword [rbp + 0xd08]
mov rcx, qword [rbp + 0xb18]
movabs rdx, 0xeee634c210ba1763
movabs r8, 0xeee634c210ba1765
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0xb20]
pextrw eax, xmm0, 7
test al, 1
jne 0x14016eae0
jmp 0x14016ebdf
mov rax, qword [rbp + 0xd08]
mov rsi, qword [rbp + 0xb18]
movabs rcx, 0xaeaf3c2ad286e6da
movabs rdx, 0x5150c3d52d791925
xor rcx, rdx
mov rdx, rsi
xor rdx, rcx
mov r8, 0xffffffffffffffff
xor r8, 7
movabs r9, 0x25d992c974d3d7b9
movabs rcx, 0xc4c88006bc6aeb2d
xor r9, rcx
movabs rcx, 0xd9fc450088473eda
movabs r10, 0x2603baff77b8c125
xor rcx, r10
xor r9, rcx
movabs r10, 0x4a5d1bf787b2d99e
movabs rcx, 0xab4c09384f0be50a
xor r10, rcx
mov rcx, rdx
and rcx, r10
and rsi, r9
movabs r11, 0xe11112cfc8b93c94
mov r10, r8
and r10, r11
movabs r11, 0xe96cb1899f4a15ea
movabs rdi, 0xe96cb1899f4a15ed
xor r11, rdi
and r11, r9
or rcx, rsi
or r10, r11
xor rcx, r10
or rdx, r8
movabs r8, 0x318721fa7e657ac9
movabs r10, 0xce78de05819a8536
xor r8, r10
xor rdx, r8
movabs r8, 0x25f413a368e3c706
movabs r10, 0xc4e5016ca05afb92
xor r8, r10
or r8, r9
and rdx, r8
or rcx, rdx
mov dl, 0xce
xor dl, 0xce
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0xad0]
movaps xmm1, xmmword [rbp + 0xae0]
movaps xmm2, xmmword [rbp + 0xaf0]
movaps xmm3, xmmword [rbp + 0xb00]
mov rax, qword [rbp + 0xb18]
add rax, 8
movaps xmm8, xmmword [0x1401a0c10]
movaps xmmword [rbp + 0xac0], xmm8
movaps xmm7, xmm3
pand xmm7, xmm8
movaps xmm6, xmm2
pand xmm6, xmm8
movaps xmm5, xmm1
pand xmm5, xmm8
movaps xmm4, xmm0
pand xmm4, xmm8
paddq xmm4, xmm4
paddq xmm5, xmm5
paddq xmm6, xmm6
paddq xmm7, xmm7
pxor xmm0, xmm8
pxor xmm1, xmm8
pxor xmm2, xmm8
pxor xmm3, xmm8
paddq xmm3, xmm7
paddq xmm2, xmm6
paddq xmm1, xmm5
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0xb38], rax
movaps xmmword [rbp + 0xb40], xmm3
movaps xmmword [rbp + 0xb50], xmm2
movaps xmmword [rbp + 0xb60], xmm1
movaps xmmword [rbp + 0xb70], xmm0
jne 0x14016e754
jmp 0x14016ec9f
mov rax, qword [rbp + 0xd10]
movabs rcx, 0xa9ef9c1c18e3ef5a
movabs rdx, 0xa9ef9c1c18e3ef5a
xor rcx, rdx
mov qword [rax], rcx
mov rcx, rax
add rcx, 8
mov qword [rbp + 0xa98], rcx
mov qword [rax + 8], 0
mov ax, 0x1b48
xor ax, 0x1bb0
mov word [rbp + 0x132e], ax
lea rcx, [rbp + 0x132e]
sub rsp, 0x20
call fcn.140064a51
mov r8, qword [rbp + 0xf30]
add rsp, 0x20
mov rcx, rax
mov eax, dword [rbp + 0xc34]
mov qword [rbp + 0xaa0], rcx
mov dl, 1
xor ecx, ecx
cmp byte [r8], 0
mov byte [rbp + 0xaaf], dl
mov qword [rbp + 0xab0], rcx
mov dword [rbp + 0xabc], eax
jne 0x14016fc68
mov rcx, qword [rbp + 0xd70]
mov rdx, qword [rbp + 0xd78]
mov rax, qword [rbp + 0xaa0]
mov r8, qword [0x1401a1858]
mov r9, qword [r8]
mov qword [rdx], r9
mov r8, qword [r8 + 8]
mov qword [rdx + 8], r8
mov r8, qword [rax]
mov qword [rbp + 0x1228], r8
mov rax, qword [rax + 8]
mov qword [rbp + 0x1230], rax
lea r8, [rbp + 0x1228]
sub rsp, 0x20
call fcn.1401757bb
mov rdx, qword [rbp + 0xd70]
mov rcx, qword [rbp + 0xf30]
mov eax, dword [rbp + 0xc34]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rbp + 0xa88], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0xa90], rdx
mov r8b, byte [rcx]
mov r9b, 0x7e
xor r9b, 0x7e
mov dl, 1
xor ecx, ecx
cmp r8b, r9b
mov byte [rbp + 0xaaf], dl
mov qword [rbp + 0xab0], rcx
mov dword [rbp + 0xabc], eax
jne 0x14016fc68
mov rcx, qword [rbp + 0xd80]
mov rdx, qword [rbp + 0xd88]
mov rax, qword [rbp + 0x1358]
mov qword [rdx], rax
mov rax, qword [rbp + 0x1360]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140115b42
mov r8, qword [rbp + 0xd80]
mov rdx, qword [rbp + 0xf30]
mov rcx, qword [rbp + 0xa90]
mov eax, dword [rbp + 0xc34]
add rsp, 0x20
mov r9, qword [r8]
mov qword [rbp + 0xa78], r9
mov r8, qword [r8 + 8]
mov qword [rbp + 0xa80], r8
mov r8b, byte [rdx]
mov r9b, 0xcc
xor r9b, 0xcc
mov dl, 1
cmp r8b, r9b
mov byte [rbp + 0xaaf], dl
mov qword [rbp + 0xab0], rcx
mov dword [rbp + 0xabc], eax
jne 0x14016fc68
mov r9, qword [rbp + 0xa90]
mov rdx, qword [rbp + 0xd98]
mov rcx, qword [rbp + 0xd90]
mov rax, qword [rbp + 0xa80]
mov r8, qword [rbp + 0xa78]
mov r10, qword [rbp + 0xa88]
mov qword [rcx], r10
mov qword [rcx + 8], r9
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov r8d, 1
sub rsp, 0x20
call fcn.14010836c
mov rdx, qword [rbp + 0xf30]
mov rcx, qword [rbp + 0xa90]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0xc34]
mov qword [rbp + 0xa70], r8
mov r8b, byte [rdx]
mov r9b, 0xb1
xor r9b, 0xb1
mov dl, 1
cmp r8b, r9b
mov byte [rbp + 0xaaf], dl
mov qword [rbp + 0xab0], rcx
mov dword [rbp + 0xabc], eax
jne 0x14016fc68
mov rcx, qword [rbp + 0xd18]
mov word [rcx], 0x852
sub rsp, 0x20
call fcn.140064a51
mov rdx, qword [rbp + 0xf30]
mov rcx, qword [rbp + 0xa90]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0xc34]
mov qword [rbp + 0xa68], r8
mov r8b, byte [rdx]
mov r9b, 0x47
xor r9b, 0x47
mov dl, 1
cmp r8b, r9b
mov byte [rbp + 0xaaf], dl
mov qword [rbp + 0xab0], rcx
mov dword [rbp + 0xabc], eax
jne 0x14016fc68
mov rax, qword [rbp + 0xa68]
mov rcx, qword [rax]
mov qword [rbp + 0x1208], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1210], rax
lea rcx, [rbp + 0x1218]
lea rdx, [rbp + 0x1208]
sub rsp, 0x20
call fcn.140024b17
mov r9, qword [rbp + 0xd00]
mov rax, qword [rbp + 0xda0]
mov rcx, qword [rbp + 0xda8]
add rsp, 0x20
mov r8, qword [rbp + 0x1218]
mov rdx, qword [rbp + 0x1220]
mov r9, qword [r9]
add r9, 0x18
mov qword [rbp + 0xa58], r9
mov qword [rax], r8
mov qword [rax + 8], rdx
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp + 0xa58]
mov rdx, qword [rbp + 0xa70]
mov r8, qword [rbp + 0xda0]
mov r9, qword [rbp + 0xc38]
mov rax, qword [rbp + 0xda8]
sub rsp, 0x10
mov qword [rsp + 0x20], rax
call fcn.140108086
mov rdx, qword [rbp + 0xf30]
mov rcx, qword [rbp + 0xa90]
add rsp, 0x30
mov r8d, eax
mov eax, dword [rbp + 0xc34]
mov dword [rbp + 0xa64], r8d
mov r8b, byte [rdx]
mov r9b, 0x72
xor r9b, 0x72
mov dl, 1
cmp r8b, r9b
mov byte [rbp + 0xaaf], dl
mov qword [rbp + 0xab0], rcx
mov dword [rbp + 0xabc], eax
jne 0x14016fc68
mov eax, dword [rbp + 0xa64]
mov ecx, dword [rbp + 0xc34]
movsxd r8, ecx
movsxd rdx, eax
mov rcx, rdx
add rcx, r8
mov qword [rbp + 0xa50], rcx
mov rax, rcx
xor rax, r8
xor rcx, rdx
or rax, rax
movabs rdx, 0x9dc1847c20e9eb04
movabs r8, 0x623e7b83df1614fb
xor rdx, r8
xor rax, rdx
or rcx, rcx
xor rcx, 0xffffffffffffffff
or rax, rcx
movabs rcx, 0xa5d3c2a989d9fb93
movabs rdx, 0x5a2c3d567626046c
xor rcx, rdx
xor rax, rcx
movabs rcx, 0xbe5ccb3dd62e8291
movabs rdx, 0xbe5ccb3dd62e8291
xor rcx, rdx
cmp rax, rcx
jge 0x14016f0f1
sub rsp, 0x20
call fcn.14000a590
mov eax, dword [rbp + 0xc34]
add rsp, 0x20
mov dword [rbp + 0xa4c], eax
jmp 0x14016fc3f
mov rax, qword [rbp + 0xa50]
movabs rcx, 0xf667b3fffd5ea4b4
movabs rdx, 0x9984c007d5ea4b4
xor rcx, rdx
movabs rdx, 0x4106a2f7baaf1dbc
movabs r8, 0xbef95d084550e243
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x7123227fbbdc8a9a
movabs r8, 0x7123227fbbdc8a9a
xor rdx, r8
movabs r8, 0xc677213085049f36
movabs r9, 0xc677213085049f37
xor r8, r9
sub rdx, r8
sub rcx, rdx
sub rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x14016f191
sub rsp, 0x20
call fcn.14000a590
mov eax, dword [rbp + 0xc34]
add rsp, 0x20
mov dword [rbp + 0xa4c], eax
jmp 0x14016fc3f
mov rcx, qword [rbp + 0xdb0]
mov rax, qword [rbp + 0xa50]
mov dword [rbp + 0xa3c], eax
mov word [rcx], 0xb09
sub rsp, 0x20
call fcn.140064a51
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xf30]
mov qword [rbp + 0xa40], rcx
cmp byte [rax], 0
jne 0x14016fc22
mov rcx, qword [rbp + 0xdc0]
mov r8, qword [rbp + 0xdd0]
mov rdx, qword [rbp + 0xdc8]
mov rax, qword [rbp + 0xa40]
mov r9, qword [0x1401a1858]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.1401757bb
mov rcx, qword [rbp + 0xdc0]
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0xa28], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0xa30], rcx
cmp byte [rax], 0
jne 0x14016fc22
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
movaps xmm0, xmmword [0x1401a0bb0]
movaps xmm1, xmmword [0x1401a0bc0]
movaps xmm2, xmmword [0x1401a0bd0]
movaps xmm3, xmmword [0x1401a0be0]
xor eax, eax
mov qword [rbp + 0x9d8], rax
movaps xmmword [rbp + 0x9e0], xmm3
movaps xmmword [rbp + 0x9f0], xmm2
movaps xmmword [rbp + 0xa00], xmm1
movaps xmmword [rbp + 0xa10], xmm0
jmp 0x14016f2a5
mov rax, qword [rbp + 0x9d8]
movaps xmm2, xmmword [rbp + 0x9e0]
movaps xmm7, xmmword [rbp + 0x9f0]
movaps xmm8, xmmword [rbp + 0xa00]
movaps xmm5, xmmword [rbp + 0xa10]
movaps xmmword [rbp + 0x970], xmm5
movaps xmmword [rbp + 0x980], xmm8
movaps xmmword [rbp + 0x990], xmm7
movaps xmmword [rbp + 0x9a0], xmm2
mov qword [rbp + 0x9b8], rax
movaps xmm6, xmmword [0x1401a0bf0]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x1401a0c00]
pshufd xmm3, xmm4, 0xf5
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp + 0x9c0], xmm1
movd eax, xmm0
test al, 1
jne 0x14016f3ca
jmp 0x14016f3dd
mov rax, qword [rbp + 0x9b8]
mov cl, 0x1e
xor cl, 0x1e
mov byte [rbp + rax + 0x11f0], cl
movaps xmm0, xmmword [rbp + 0x9c0]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x14016f3f8
jmp 0x14016f421
mov rax, qword [rbp + 0x9b8]
movabs rcx, 0xecee0670499cab75
movabs rdx, 0xecee0670499cab74
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x11f0], 0
movaps xmm0, xmmword [rbp + 0x9c0]
pextrw eax, xmm0, 2
test al, 1
jne 0x14016f43a
jmp 0x14016f4aa
mov rax, qword [rbp + 0x9b8]
and rax, rax
movabs rcx, 0xd1e9d3c58452ce71
movabs rdx, 0x2e162c3a7bad318e
xor rcx, rdx
xor rax, rcx
mov ecx, 2
and rcx, 2
movabs rdx, 0x10e46a0b3315cc81
movabs r8, 0xef1b95f4ccea337e
xor rdx, r8
xor rcx, rdx
and rax, rcx
movabs rcx, 0xa08d66affab51cde
movabs rdx, 0x5f729950054ae321
xor rcx, rdx
xor rax, rcx
mov cl, 0x4c
xor cl, 0x4c
mov byte [rbp + rax + 0x11f0], cl
movaps xmm0, xmmword [rbp + 0x9c0]
pextrw eax, xmm0, 3
test al, 1
jne 0x14016f4c3
jmp 0x14016f52c
mov rax, qword [rbp + 0x9b8]
movabs rdx, 0xe58b3c5eb36ac8bf
movabs rcx, 0xe58b3c5eb36ac8bc
xor rdx, rcx
movabs rcx, 0x13283352f526e2ab
movabs r8, 0xecd7ccad0ad91d54
xor rcx, r8
xor rdx, rcx
mov rcx, rax
and rcx, rdx
movabs r8, 0xfaa8cb11fb66c9d2
movabs rdx, 0xfaa8cb11fb66c9d1
xor r8, rdx
mov rdx, rax
xor rdx, r8
add rax, rdx
sub rax, rcx
mov byte [rbp + rax + 0x11f0], 0
movaps xmm0, xmmword [rbp + 0x9c0]
pextrw eax, xmm0, 4
test al, 1
jne 0x14016f545
jmp 0x14016f56e
mov rax, qword [rbp + 0x9b8]
movabs rcx, 0x6c75b56e4f5a579
movabs rdx, 0x6c75b56e4f5a57d
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x11f0], 0
movaps xmm0, xmmword [rbp + 0x9c0]
pextrw eax, xmm0, 5
test al, 1
jne 0x14016f587
jmp 0x14016f64c
mov r11, qword [rbp + 0x9b8]
mov rcx, r11
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 5
mov rdx, 0xffffffffffffffff
movabs rax, 0x11a84338583db8dc
xor rdx, rax
movabs r9, 0x532d3283e7b90b36
movabs rax, 0x428571bbbf84b3ea
xor r9, rax
mov rax, rcx
and rax, r9
and r11, rdx
movabs r10, 0xba459069f5b9741
movabs r9, 0x1a0c1a3ec7662f9d
xor r10, r9
mov r9, r8
and r9, r10
movabs r10, 0x51f2efc0b3041fc7
movabs rsi, 0x51f2efc0b3041fc2
xor r10, rsi
and r10, rdx
or rax, r11
or r9, r10
xor rax, r9
or rcx, r8
movabs r8, 0x48f43682f16f7aa3
movabs r9, 0xb70bc97d0e90855c
xor r8, r9
xor rcx, r8
movabs r8, 0x11a84338583db8dc
or rdx, r8
and rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x11f0], 0
movaps xmm0, xmmword [rbp + 0x9c0]
pextrw eax, xmm0, 6
test al, 1
jne 0x14016f665
jmp 0x14016f68e
mov rax, qword [rbp + 0x9b8]
movabs rcx, 0xfab6ea75e3a0c906
movabs rdx, 0xfab6ea75e3a0c900
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x11f0], 0
movaps xmm0, xmmword [rbp + 0x9c0]
pextrw eax, xmm0, 7
test al, 1
jne 0x14016f6a7
jmp 0x14016f7bc
mov r11, qword [rbp + 0x9b8]
movabs rax, 0xa07d93d11048dbae
movabs rcx, 0x5f826c2eefb72451
xor rax, rcx
mov rcx, r11
xor rcx, rax
movabs r8, 0x34eb7109b976d5e
movabs rax, 0x34eb7109b976d59
xor r8, rax
movabs rax, 0xa989c4b695bc4105
movabs rdx, 0x56763b496a43befa
xor rax, rdx
xor r8, rax
movabs rdx, 0x2287318725f5560
movabs rax, 0x87cffc9491aa01
xor rdx, rax
movabs rax, 0x1f56f8f66577b42e
movabs r9, 0xe0a907099a884bd1
xor rax, r9
xor rdx, rax
movabs r9, 0x2afbce4e6ceff61
mov rax, rcx
and rax, r9
and r11, rdx
movabs r10, 0xb5a07a930cd4f014
movabs r9, 0xb70fc677ea1a0f75
xor r10, r9
mov r9, r8
and r9, r10
movabs r10, 0x563141045b93ba8b
movabs rsi, 0x563141045b93ba8c
xor r10, rsi
and r10, rdx
or rax, r11
or r9, r10
xor rax, r9
or rcx, r8
movabs r8, 0x7cabc49dcd117e85
movabs r9, 0x83543b6232ee817a
xor r8, r9
xor rcx, r8
movabs r8, 0x2afbce4e6ceff61
or rdx, r8
and rcx, rdx
or rax, rcx
mov cl, 0x3a
xor cl, 0x3a
mov byte [rbp + rax + 0x11f0], cl
movaps xmm0, xmmword [rbp + 0x970]
movaps xmm1, xmmword [rbp + 0x980]
movaps xmm2, xmmword [rbp + 0x990]
movaps xmm3, xmmword [rbp + 0x9a0]
mov rax, qword [rbp + 0x9b8]
add rax, 8
movaps xmm4, xmmword [0x1401a0c10]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x9d8], rax
movaps xmmword [rbp + 0x9e0], xmm3
movaps xmmword [rbp + 0x9f0], xmm2
movaps xmmword [rbp + 0xa00], xmm1
movaps xmmword [rbp + 0xa10], xmm0
jne 0x14016f2a5
jmp 0x14016f82f
mov rdx, qword [rbp + 0xdd8]
mov rax, qword [rbp + 0xa30]
mov rcx, qword [rbp + 0xa28]
mov qword [rdx], rcx
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x11f0]
sub rsp, 0x20
call fcn.14010b650
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xce
xor cl, 0xce
cmp al, cl
jne 0x14016fc22
mov rax, qword [rbp + 0xd08]
mov rcx, qword [rbp + 0x1200]
mov qword [rbp + 0x1340], rcx
movups xmm0, xmmword [rbp + 0x11f0]
movaps xmmword [rbp + 0x1330], xmm0
mov rcx, qword [rbp + 0x1200]
mov qword [rax + 0x10], rcx
movups xmm0, xmmword [rbp + 0x11f0]
movups xmmword [rax], xmm0
add rax, 0x10
mov qword [rbp + 0x960], rax
sub rsp, 0x20
lea rcx, [rbp + 0x1330]
call fcn.140047a83
mov rcx, qword [rbp + 0xd08]
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov cl, byte [rcx + 0x10]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x96f], al
or al, cl
test al, 1
jne 0x14016f944
mov rcx, qword [rbp + 0xd10]
mov rax, qword [rbp + 0xd08]
mov rdx, qword [rax]
mov qword [rbp + 0x11c8], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x11d0], rax
lea rdx, [rbp + 0x11c8]
sub rsp, 0x20
call fcn.140021260
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x95f], al
jmp 0x14016f9c1
mov al, byte [rbp + 0x96f]
test al, 1
jne 0x14016fc22
jmp 0x14016f957
mov rcx, qword [rbp + 0xde0]
sub rsp, 0x20
call fcn.140077226
mov rcx, qword [rbp + 0xde0]
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x948], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x950], rcx
cmp byte [rax], 0
jne 0x14016fc22
mov rax, qword [rbp + 0xa98]
mov rcx, qword [rbp + 0x950]
mov rdx, qword [rbp + 0xd10]
mov r8, qword [rbp + 0x948]
mov qword [rdx], r8
mov qword [rax], rcx
xor eax, eax
mov byte [rbp + 0x95f], al
mov rcx, qword [rbp + 0x960]
mov al, byte [rbp + 0x95f]
mov cl, byte [rcx]
test cl, cl
sete cl
test al, al
setne al
or al, cl
test al, 1
jne 0x14016fc33
mov qword [rbp + 0x11e0], 0
lea rax, [rbp + 0x11e0]
add rax, 8
mov qword [rbp + 0x938], rax
mov qword [rbp + 0x11e8], 0
mov ax, 0xf62b
xor ax, 0xf25c
mov word [rbp + 0x11de], ax
lea rcx, [rbp + 0x11de]
sub rsp, 0x20
call fcn.140064a51
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xf30]
mov qword [rbp + 0x940], rcx
cmp byte [rax], 0
jne 0x14016fbc5
mov rax, qword [rbp + 0x940]
mov rcx, qword [rax]
mov qword [rbp + 0x11b8], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x11c0], rax
lea rcx, [rbp + 0x11e0]
lea rdx, [rbp + 0x11b8]
sub rsp, 0x20
call fcn.140021260
add rsp, 0x20
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
mov rcx, qword [rbp + 0xd00]
add rsp, 0x20
mov rax, qword [rbp + 0xd10]
mov rcx, qword [rcx]
add rcx, 0x18
mov rdx, qword [rbp + 0x11e0]
mov qword [rbp + 0x11a8], rdx
mov rdx, qword [rbp + 0x11e8]
mov qword [rbp + 0x11b0], rdx
mov rdx, qword [rax]
mov qword [rbp + 0x1198], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x11a0], rax
lea rdx, [rbp + 0x11a8]
lea r8, [rbp + 0x1198]
sub rsp, 0x20
call fcn.140085318
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xf30]
mov dword [rbp + 0x934], ecx
mov al, byte [rax]
mov cl, 0x8a
xor cl, 0x8a
cmp al, cl
jne 0x14016fbc5
mov ecx, dword [rbp + 0x934]
sub rsp, 0x20
call fcn.14008c8dc
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016fbc5
mov ecx, 0x20
mov edx, 8
sub rsp, 0x20
call fcn.140019bef
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xdb8]
mov qword [rbp + 0x928], rcx
mov dword [rcx + 8], 1
mov rcx, qword [rbp + 0x11e0]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x11e8]
mov qword [rax + 8], rcx
lea rcx, [rbp + 0x11e0]
sub rsp, 0x20
call fcn.1400143a4
mov rax, qword [rbp + 0xdb8]
mov rdx, qword [rbp + 0x928]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rdx + 0x10], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 0x18], rax
mov rcx, qword [rbp + 0x1368]
add rcx, 8
sub rsp, 0x20
call fcn.14003022f
add rsp, 0x20
mov rax, qword [rbp + 0x938]
mov rax, qword [rax]
mov qword [rbp + 0x920], rax
cmp rax, 0
je 0x14016fc22
mov rax, qword [rbp + 0x920]
mov rax, qword [rax]
movabs rcx, 0x928aab624bc9d138
movabs rdx, 0xd28aab624bc9d138
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14016fc22
mov rcx, qword [rbp + 0x920]
sub rsp, 0x20
call fcn.1400121d0
add rsp, 0x20
mov eax, dword [rbp + 0xa3c]
mov dword [rbp + 0xa4c], eax
jmp 0x14016fc3f
mov eax, dword [rbp + 0xa3c]
mov dword [rbp + 0xa4c], eax
mov rcx, qword [rbp + 0xa90]
mov rdx, qword [rbp + 0xf30]
mov eax, dword [rbp + 0xa4c]
mov dl, byte [rdx]
mov byte [rbp + 0xaaf], dl
mov qword [rbp + 0xab0], rcx
mov dword [rbp + 0xabc], eax
mov rax, qword [rbp + 0xa98]
mov rcx, qword [rbp + 0xf30]
mov dl, byte [rbp + 0xaaf]
mov r8, qword [rbp + 0xab0]
mov r9d, dword [rbp + 0xabc]
mov dword [rbp + 0x904], r9d
mov qword [rbp + 0x908], r8
mov byte [rbp + 0x916], dl
cmp dl, 0
sete dl
mov byte [rbp + 0x917], dl
mov byte [rcx], 0
mov rax, qword [rax]
mov qword [rbp + 0x918], rax
cmp rax, 0
je 0x14016fd23
mov rax, qword [rbp + 0x918]
mov rcx, qword [rax]
movabs rdx, 0x436c8be7eecec3ce
movabs rax, 0x36c8be7eecec3ce
xor rdx, rax
movabs rax, 0x377394f0ecb65144
movabs r8, 0xc88c6b0f1349aebb
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x14016fd23
mov rcx, qword [rbp + 0x918]
sub rsp, 0x20
call fcn.1400121d0
add rsp, 0x20
mov rcx, qword [rbp + 0xd08]
sub rsp, 0x20
call fcn.140047a9a
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x41
xor cl, 0x41
cmp al, cl
jne 0x14016fde7
lea rcx, [rbp + 0x1330]
sub rsp, 0x20
call fcn.140047a9a
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x8b
xor cl, 0x8b
cmp al, cl
jne 0x14016fde7
mov rax, qword [rbp + 0x908]
cmp rax, 0
je 0x14016fdca
mov rax, qword [rbp + 0x908]
mov rax, qword [rax]
movabs rcx, 0x9f81916a06e6c7ce
movabs rdx, 0xdf81916a06e6c7ce
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14016fdca
mov rcx, qword [rbp + 0x908]
sub rsp, 0x20
call fcn.1400121d0
add rsp, 0x20
mov al, byte [rbp + 0x917]
mov rcx, qword [rbp + 0xf30]
mov dl, byte [rbp + 0x916]
mov byte [rcx], dl
test al, 1
jne 0x14016fead
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [rbp + 0x8f8], rax
mov ax, word [rax + 0x12]
mov cx, 0xb62a
xor cx, 0xb62b
cmp ax, cx
jle 0x14016fe8f
mov rax, qword [rbp + 0x8f8]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x14016fe8f
mov rax, qword [rbp + 0xf30]
mov cl, 0xfe
xor cl, 0xfe
mov byte [rax], cl
sub rsp, 0x20
call fcn.140175842
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14008afaa
mov rcx, qword [rbp + 0xf30]
mov rax, qword [rbp + 0xc38]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp + 0xf68], rax
jne 0x14017509e
sub rsp, 0x20
call fcn.1401758a1
add rsp, 0x20
mov rax, qword [rbp + 0xc38]
mov rcx, qword [rbp + 0xf30]
cmp byte [rcx], 0
mov qword [rbp + 0xf68], rax
jne 0x14017509e
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
movaps xmm0, xmmword [0x1401a0bb0]
movaps xmm1, xmmword [0x1401a0bc0]
movaps xmm2, xmmword [0x1401a0bd0]
movaps xmm3, xmmword [0x1401a0be0]
xor eax, eax
mov qword [rbp + 0x8a8], rax
movaps xmmword [rbp + 0x8b0], xmm3
movaps xmmword [rbp + 0x8c0], xmm2
movaps xmmword [rbp + 0x8d0], xmm1
movaps xmmword [rbp + 0x8e0], xmm0
jmp 0x14016ff09
mov rax, qword [rbp + 0x8a8]
movaps xmm2, xmmword [rbp + 0x8b0]
movaps xmm7, xmmword [rbp + 0x8c0]
movaps xmm8, xmmword [rbp + 0x8d0]
movaps xmm5, xmmword [rbp + 0x8e0]
movaps xmmword [rbp + 0x840], xmm5
movaps xmmword [rbp + 0x850], xmm8
movaps xmmword [rbp + 0x860], xmm7
movaps xmmword [rbp + 0x870], xmm2
mov qword [rbp + 0x888], rax
movaps xmm6, xmmword [0x1401a0bf0]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x1401a0c00]
pshufd xmm3, xmm4, 0xf5
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp + 0x890], xmm1
movd eax, xmm0
test al, 1
jne 0x14017002e
jmp 0x140170040
mov rax, qword [rbp + 0xd20]
mov rcx, qword [rbp + 0x888]
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x890]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x14017005b
jmp 0x1401700a1
mov rax, qword [rbp + 0xd20]
mov rcx, qword [rbp + 0x888]
mov r8, 0xffffffffffffffff
xor r8, 1
mov rdx, rcx
and rdx, r8
movabs r9, 0xd39e3f01692fbd17
movabs r8, 0xd39e3f01692fbd16
xor r9, r8
mov r8, rcx
xor r8, r9
add rcx, r8
sub rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x890]
pextrw eax, xmm0, 2
test al, 1
jne 0x1401700ba
jmp 0x14017019b
mov rax, qword [rbp + 0xd20]
mov rsi, qword [rbp + 0x888]
movabs rcx, 0x3a8df8f655d167b7
movabs rdx, 0xc5720709aa2e9848
xor rcx, rdx
mov rdx, rsi
xor rdx, rcx
movabs r9, 0xa42a50546f24d600
movabs rcx, 0xa42a50546f24d602
xor r9, rcx
movabs rcx, 0x7772a111ec1a2ef8
movabs r8, 0x888d5eee13e5d107
xor rcx, r8
xor r9, rcx
mov r8, 0xffffffffffffffff
movabs rcx, 0x6425d642fa453f18
xor r8, rcx
movabs r10, 0x6425d642fa453f18
mov rcx, rdx
and rcx, r10
and rsi, r8
movabs r11, 0x6f2b39ad0bde8e4a
movabs r10, 0xb0eefeff19bb152
xor r11, r10
mov r10, r9
and r10, r11
movabs r11, 0xaa23becef0d787c8
movabs rdi, 0xaa23becef0d787ca
xor r11, rdi
and r11, r8
or rcx, rsi
or r10, r11
xor rcx, r10
or rdx, r9
xor rdx, 0xffffffffffffffff
movabs r9, 0x6425d642fa453f18
or r8, r9
and rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x890]
pextrw eax, xmm0, 3
test al, 1
jne 0x1401701b4
jmp 0x140170210
mov rax, qword [rbp + 0xd20]
mov rdx, qword [rbp + 0x888]
movabs r8, 0xd213fa486c7f1bac
movabs rcx, 0xd213fa486c7f1baf
xor r8, rcx
mov rcx, rdx
or rcx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x3c833f1fda35b179
movabs r9, 0x3c833f1fda35b17a
xor r8, r9
or rdx, r8
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x890]
pextrw eax, xmm0, 4
test al, 1
jne 0x140170229
jmp 0x140170243
mov rax, qword [rbp + 0xd20]
mov rcx, qword [rbp + 0x888]
or rcx, 4
mov dl, 0x8c
xor dl, 0x8c
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x890]
pextrw eax, xmm0, 5
test al, 1
jne 0x14017025c
jmp 0x1401702a8
mov rax, qword [rbp + 0xd20]
mov rdx, qword [rbp + 0x888]
movabs r8, 0xd8713f2e2fe59054
movabs rcx, 0xd8713f2e2fe59051
xor r8, rcx
mov rcx, rdx
and rcx, r8
movabs r8, 0xc5f920a278ccbfa3
movabs r9, 0xc5f920a278ccbfa6
xor r8, r9
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x890]
pextrw eax, xmm0, 6
test al, 1
jne 0x1401702c1
jmp 0x140170319
mov rax, qword [rbp + 0xd20]
mov rcx, qword [rbp + 0x888]
mov rdx, rcx
and rdx, 6
xor rdx, 0xffffffffffffffff
movabs r8, 0x71cc5a592d32cd98
movabs r9, 0x71cc5a592d32cd9e
xor r8, r9
add rcx, r8
movabs r8, 0x4ad9df6802250d7e
movabs r9, 0x4ad9df6802250d7f
xor r8, r9
add rcx, r8
add rcx, rdx
mov dl, 0x5a
xor dl, 0x5a
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x890]
pextrw eax, xmm0, 7
test al, 1
jne 0x140170332
jmp 0x14017037e
mov rax, qword [rbp + 0xd20]
mov rdx, qword [rbp + 0x888]
mov rcx, rdx
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 7
and rcx, r8
movabs r8, 0xeb75cfdcd4854cf5
movabs r9, 0xeb75cfdcd4854cf2
xor r8, r9
or rdx, r8
xor rdx, 0xffffffffffffffff
or rcx, rdx
xor rcx, 0xffffffffffffffff
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x840]
movaps xmm1, xmmword [rbp + 0x850]
movaps xmm2, xmmword [rbp + 0x860]
movaps xmm3, xmmword [rbp + 0x870]
mov rax, qword [rbp + 0x888]
add rax, 8
movaps xmm4, xmmword [0x1401a0c20]
psubq xmm3, xmm4
psubq xmm2, xmm4
psubq xmm1, xmm4
psubq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x8a8], rax
movaps xmmword [rbp + 0x8b0], xmm3
movaps xmmword [rbp + 0x8c0], xmm2
movaps xmmword [rbp + 0x8d0], xmm1
movaps xmmword [rbp + 0x8e0], xmm0
jne 0x14016ff09
jmp 0x1401703f1
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
movaps xmm0, xmmword [0x1401a0bb0]
movaps xmm1, xmmword [0x1401a0bc0]
movaps xmm2, xmmword [0x1401a0bd0]
movaps xmm3, xmmword [0x1401a0be0]
xor eax, eax
mov qword [rbp + 0x7f8], rax
movaps xmmword [rbp + 0x800], xmm3
movaps xmmword [rbp + 0x810], xmm2
movaps xmmword [rbp + 0x820], xmm1
movaps xmmword [rbp + 0x830], xmm0
jmp 0x14017044d
mov rax, qword [rbp + 0x7f8]
movaps xmm2, xmmword [rbp + 0x800]
movaps xmm7, xmmword [rbp + 0x810]
movaps xmm8, xmmword [rbp + 0x820]
movaps xmm5, xmmword [rbp + 0x830]
movaps xmmword [rbp + 0x790], xmm5
movaps xmmword [rbp + 0x7a0], xmm8
movaps xmmword [rbp + 0x7b0], xmm7
movaps xmmword [rbp + 0x7c0], xmm2
mov qword [rbp + 0x7d8], rax
movaps xmm6, xmmword [0x1401a0bf0]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x1401a0c00]
pshufd xmm3, xmm4, 0xf5
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp + 0x7e0], xmm1
movd eax, xmm0
test al, 1
jne 0x140170572
jmp 0x140170581
mov rax, qword [rbp + 0x7d8]
mov byte [rbp + rax + 0x1310], 0
movaps xmm0, xmmword [rbp + 0x7e0]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x14017059c
jmp 0x140170619
mov rcx, qword [rbp + 0x7d8]
mov rax, rcx
xor rax, 0xffffffffffffffff
movabs rdx, 0x36af62490748d886
movabs r8, 0x36af62490748d887
xor rdx, r8
movabs r8, 0x54e54d0f800ae7df
movabs r9, 0xab1ab2f07ff51820
xor r8, r9
xor rdx, r8
and rax, rdx
movabs rdx, 0x6e9f4e19251e542d
movabs r8, 0x9160b1e6dae1abd2
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
xor rdx, 1
and rcx, rdx
or rax, rcx
xor rax, 0xffffffffffffffff
mov cl, 0xc9
xor cl, 0xc9
mov byte [rbp + rax + 0x1310], cl
movaps xmm0, xmmword [rbp + 0x7e0]
pextrw eax, xmm0, 2
test al, 1
jne 0x140170632
jmp 0x140170645
mov rax, qword [rbp + 0x7d8]
or rax, 2
mov byte [rbp + rax + 0x1310], 0
movaps xmm0, xmmword [rbp + 0x7e0]
pextrw eax, xmm0, 3
test al, 1
jne 0x14017065e
jmp 0x140170687
mov rax, qword [rbp + 0x7d8]
movabs rcx, 0xad9f6f5db02b447
movabs rdx, 0xad9f6f5db02b444
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x1310], 0
movaps xmm0, xmmword [rbp + 0x7e0]
pextrw eax, xmm0, 4
test al, 1
jne 0x1401706a0
jmp 0x1401706db
mov rax, qword [rbp + 0x7d8]
mov rcx, rax
and rcx, 4
movabs rdx, 0x330d52a461f82621
movabs r8, 0xccf2ad5b9e07d9de
xor rdx, r8
xor rcx, rdx
add rax, 4
add rax, 1
add rax, rcx
mov byte [rbp + rax + 0x1310], 0
movaps xmm0, xmmword [rbp + 0x7e0]
pextrw eax, xmm0, 5
test al, 1
jne 0x1401706f4
jmp 0x14017071d
mov rax, qword [rbp + 0x7d8]
movabs rcx, 0x84f3bbb357b6b97b
movabs rdx, 0x84f3bbb357b6b97e
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x1310], 0
movaps xmm0, xmmword [rbp + 0x7e0]
pextrw eax, xmm0, 6
test al, 1
jne 0x140170736
jmp 0x140170769
mov rcx, qword [rbp + 0x7d8]
mov rax, rcx
and rax, 6
movabs rdx, 0xd4065715020364e2
movabs r8, 0xd4065715020364e4
xor rdx, r8
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x1310], 0
movaps xmm0, xmmword [rbp + 0x7e0]
pextrw eax, xmm0, 7
test al, 1
jne 0x140170782
jmp 0x140170795
mov rax, qword [rbp + 0x7d8]
or rax, 7
mov byte [rbp + rax + 0x1310], 0
movaps xmm0, xmmword [rbp + 0x790]
movaps xmm1, xmmword [rbp + 0x7a0]
movaps xmm2, xmmword [rbp + 0x7b0]
movaps xmm3, xmmword [rbp + 0x7c0]
mov rax, qword [rbp + 0x7d8]
add rax, 8
movaps xmm4, xmmword [0x1401a0c10]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x7f8], rax
movaps xmmword [rbp + 0x800], xmm3
movaps xmmword [rbp + 0x810], xmm2
movaps xmmword [rbp + 0x820], xmm1
movaps xmmword [rbp + 0x830], xmm0
jne 0x14017044d
jmp 0x140170808
mov rcx, qword [rbp + 0xd30]
mov rax, qword [rbp + 0xd28]
movabs rdx, 0xa2075f3f8482a27
movabs r8, 0xa2075f3f8482a27
xor rdx, r8
mov qword [rax], rdx
mov rdx, rax
add rdx, 8
mov qword [rbp + 0x768], rdx
mov qword [rax + 8], 0
mov ax, 0x86d8
xor ax, 0x8e18
mov word [rcx], ax
sub rsp, 0x20
call fcn.140064a51
mov r8, qword [rbp + 0xf30]
add rsp, 0x20
mov rcx, rax
mov eax, dword [rbp + 0x904]
mov qword [rbp + 0x770], rcx
mov dl, 1
xor ecx, ecx
cmp byte [r8], 0
mov byte [rbp + 0x77f], dl
mov qword [rbp + 0x780], rcx
mov dword [rbp + 0x78c], eax
jne 0x140171694
mov r8, qword [rbp + 0xde8]
mov rax, qword [rbp + 0x770]
mov rcx, qword [0x1401a1858]
mov rdx, qword [rcx]
mov qword [rbp + 0x1178], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x1180], rcx
mov rcx, qword [rax]
mov qword [r8], rcx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
lea rcx, [rbp + 0x1188]
lea rdx, [rbp + 0x1178]
sub rsp, 0x20
call fcn.1401757bb
mov r8, qword [rbp + 0xf30]
mov eax, dword [rbp + 0x904]
add rsp, 0x20
mov rcx, qword [rbp + 0x1188]
mov qword [rbp + 0x758], rcx
mov rcx, qword [rbp + 0x1190]
mov qword [rbp + 0x760], rcx
mov dl, 1
xor ecx, ecx
cmp byte [r8], 0
mov byte [rbp + 0x77f], dl
mov qword [rbp + 0x780], rcx
mov dword [rbp + 0x78c], eax
jne 0x140171694
mov rcx, qword [rbp + 0xdf0]
mov rax, qword [rbp + 0x1358]
mov qword [rbp + 0x1168], rax
mov rax, qword [rbp + 0x1360]
mov qword [rbp + 0x1170], rax
lea rdx, [rbp + 0x1168]
sub rsp, 0x20
call fcn.140115b42
mov r8, qword [rbp + 0xdf0]
mov rdx, qword [rbp + 0xf30]
mov rcx, qword [rbp + 0x760]
mov eax, dword [rbp + 0x904]
add rsp, 0x20
mov r9, qword [r8]
mov qword [rbp + 0x748], r9
mov r8, qword [r8 + 8]
mov qword [rbp + 0x750], r8
mov r8b, byte [rdx]
mov r9b, 0xa
xor r9b, 0xa
mov dl, 1
cmp r8b, r9b
mov byte [rbp + 0x77f], dl
mov qword [rbp + 0x780], rcx
mov dword [rbp + 0x78c], eax
jne 0x140171694
mov r9, qword [rbp + 0x760]
mov rdx, qword [rbp + 0xe00]
mov rcx, qword [rbp + 0xdf8]
mov rax, qword [rbp + 0x750]
mov r8, qword [rbp + 0x748]
mov r10, qword [rbp + 0x758]
mov qword [rcx], r10
mov qword [rcx + 8], r9
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov r8d, 1
sub rsp, 0x20
call fcn.14010836c
mov rdx, qword [rbp + 0xf30]
mov rcx, qword [rbp + 0x760]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x904]
mov qword [rbp + 0x740], r8
mov r8b, byte [rdx]
mov r9b, 0x38
xor r9b, 0x38
mov dl, 1
cmp r8b, r9b
mov byte [rbp + 0x77f], dl
mov qword [rbp + 0x780], rcx
mov dword [rbp + 0x78c], eax
jne 0x140171694
mov word [rbp + 0x130e], 0x8ba
lea rcx, [rbp + 0x130e]
sub rsp, 0x20
call fcn.140064a51
mov rdx, qword [rbp + 0xf30]
mov rcx, qword [rbp + 0x760]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x904]
mov qword [rbp + 0x738], r8
mov r8b, byte [rdx]
mov r9b, 0x70
xor r9b, 0x70
mov dl, 1
cmp r8b, r9b
mov byte [rbp + 0x77f], dl
mov qword [rbp + 0x780], rcx
mov dword [rbp + 0x78c], eax
jne 0x140171694
mov rcx, qword [rbp + 0xe08]
mov rax, qword [rbp + 0x738]
mov rdx, qword [rax]
mov qword [rbp + 0x1158], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1160], rax
lea rdx, [rbp + 0x1158]
sub rsp, 0x20
call fcn.140024b17
mov rax, qword [rbp + 0xe08]
mov r8, qword [rbp + 0xd00]
mov rcx, qword [rbp + 0xe10]
add rsp, 0x20
mov rdx, qword [rax]
mov rax, qword [rax + 8]
mov r8, qword [r8]
add r8, 0x18
mov qword [rbp + 0x728], r8
mov qword [rbp + 0x1148], rdx
mov qword [rbp + 0x1150], rax
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp + 0x728]
mov rdx, qword [rbp + 0x740]
mov r9, qword [rbp + 0xc38]
mov rax, qword [rbp + 0xe10]
add rsp, 0x20
lea r8, [rbp + 0x1148]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140108086
mov rdx, qword [rbp + 0xf30]
mov rcx, qword [rbp + 0x760]
add rsp, 0x30
mov r8d, eax
mov eax, dword [rbp + 0x904]
mov dword [rbp + 0x734], r8d
mov r8b, byte [rdx]
mov r9b, 0xe8
xor r9b, 0xe8
mov dl, 1
cmp r8b, r9b
mov byte [rbp + 0x77f], dl
mov qword [rbp + 0x780], rcx
mov dword [rbp + 0x78c], eax
jne 0x140171694
mov eax, dword [rbp + 0x734]
mov ecx, dword [rbp + 0x904]
movsxd r9, ecx
cdqe
movabs rcx, 0xd65eff1a23dee6ec
movabs rdx, 0x3b348a88553b8937
xor rcx, rdx
mov rdx, rax
sub rdx, rcx
add rdx, r9
movabs rcx, 0x9acc085e70c13b01
movabs r8, 0x77a67dcc062454da
xor rcx, r8
add rdx, rcx
mov qword [rbp + 0x720], rdx
movabs r8, 0xca6b2f0bd96ed73d
movabs rcx, 0x3594d0f4269128c2
xor r8, rcx
mov rcx, rdx
xor rcx, r8
movabs r10, 0xd9e9eb58f5170f9e
movabs r8, 0x261614a70ae8f061
xor r10, r8
mov r8, rdx
xor r8, r10
and rcx, r8
movabs r10, 0xdd18061199c0d8f4
movabs r8, 0x22e7f9ee663f270b
xor r10, r8
mov r8, r9
xor r8, r10
movabs r11, 0x41add300b1a2e2e9
movabs r10, 0xbe522cff4e5d1d16
xor r11, r10
mov r10, r9
xor r10, r11
and r8, r10
xor rcx, 0xffffffffffffffff
movabs r10, 0xf2c725ecda1227ee
movabs r11, 0xd38da1325edd811
xor r10, r11
xor r8, r10
and rcx, r8
mov r8, rdx
xor r8, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
and r8, r9
or rcx, r8
xor rcx, 0xffffffffffffffff
xor rdx, rax
xor rdx, 0xffffffffffffffff
mov rax, rcx
xor rax, rdx
and rax, rcx
movabs rcx, 0x6f46f5143f2ef2c4
movabs rdx, 0x6f46f5143f2ef2c4
xor rcx, rdx
cmp rax, rcx
jge 0x140170d05
sub rsp, 0x20
call fcn.14000a590
mov eax, dword [rbp + 0x904]
add rsp, 0x20
mov dword [rbp + 0x71c], eax
jmp 0x14017166b
mov rax, qword [rbp + 0x720]
add rax, 0xffffffff80000000
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x140170d43
sub rsp, 0x20
call fcn.14000a590
mov eax, dword [rbp + 0x904]
add rsp, 0x20
mov dword [rbp + 0x71c], eax
jmp 0x14017166b
mov rcx, qword [rbp + 0xe18]
mov rax, qword [rbp + 0x720]
mov dword [rbp + 0x70c], eax
mov ax, 0xb0b6
xor ax, 0xba5d
mov word [rcx], ax
sub rsp, 0x20
call fcn.140064a51
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xf30]
mov qword [rbp + 0x710], rcx
cmp byte [rax], 0
jne 0x14017164e
mov rcx, qword [rbp + 0xe30]
mov r8, qword [rbp + 0xe40]
mov rdx, qword [rbp + 0xe38]
mov rax, qword [rbp + 0x710]
mov r9, qword [0x1401a1858]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.1401757bb
mov rcx, qword [rbp + 0xe30]
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x6f8], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x700], rcx
cmp byte [rax], 0
jne 0x14017164e
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
movaps xmm0, xmmword [0x1401a0bb0]
movaps xmm1, xmmword [0x1401a0bc0]
movaps xmm2, xmmword [0x1401a0bd0]
movaps xmm3, xmmword [0x1401a0be0]
xor eax, eax
mov qword [rbp + 0x6a8], rax
movaps xmmword [rbp + 0x6b0], xmm3
movaps xmmword [rbp + 0x6c0], xmm2
movaps xmmword [rbp + 0x6d0], xmm1
movaps xmmword [rbp + 0x6e0], xmm0
jmp 0x140170e5d
mov rax, qword [rbp + 0x6a8]
movaps xmm2, xmmword [rbp + 0x6b0]
movaps xmm7, xmmword [rbp + 0x6c0]
movaps xmm8, xmmword [rbp + 0x6d0]
movaps xmm5, xmmword [rbp + 0x6e0]
movaps xmmword [rbp + 0x640], xmm5
movaps xmmword [rbp + 0x650], xmm8
movaps xmmword [rbp + 0x660], xmm7
movaps xmmword [rbp + 0x670], xmm2
mov qword [rbp + 0x688], rax
movaps xmm6, xmmword [0x1401a0bf0]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x1401a0c00]
pshufd xmm3, xmm4, 0xf5
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp + 0x690], xmm1
movd eax, xmm0
test al, 1
jne 0x140170f82
jmp 0x140170f91
mov rax, qword [rbp + 0x688]
mov byte [rbp + rax + 0x1130], 0
movaps xmm0, xmmword [rbp + 0x690]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x140170fac
jmp 0x140170feb
mov rax, qword [rbp + 0x688]
mov rcx, rax
and rcx, 1
xor rcx, 0xffffffffffffffff
movabs rdx, 0x8c4cbb0730b681af
movabs r8, 0x8c4cbb0730b681ae
xor rdx, r8
add rax, rdx
add rax, 1
add rax, rcx
mov cl, 0xc3
xor cl, 0xc3
mov byte [rbp + rax + 0x1130], cl
movaps xmm0, xmmword [rbp + 0x690]
pextrw eax, xmm0, 2
test al, 1
jne 0x140171004
jmp 0x14017101b
mov rax, qword [rbp + 0x688]
or rax, 2
mov cl, 0x5d
xor cl, 0x5d
mov byte [rbp + rax + 0x1130], cl
movaps xmm0, xmmword [rbp + 0x690]
pextrw eax, xmm0, 3
test al, 1
jne 0x140171034
jmp 0x140171067
mov rcx, qword [rbp + 0x688]
mov rax, rcx
and rax, 3
movabs rdx, 0x12a633db160b9c36
movabs r8, 0x12a633db160b9c35
xor rdx, r8
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x1130], 0
movaps xmm0, xmmword [rbp + 0x690]
pextrw eax, xmm0, 4
test al, 1
jne 0x140171080
jmp 0x1401710ad
mov rax, qword [rbp + 0x688]
movabs rcx, 0xf9f46b5dbaa8383a
movabs rdx, 0xf9f46b5dbaa8383e
xor rcx, rdx
or rax, rcx
mov cl, 0xe9
xor cl, 0xe9
mov byte [rbp + rax + 0x1130], cl
movaps xmm0, xmmword [rbp + 0x690]
pextrw eax, xmm0, 5
test al, 1
jne 0x1401710c6
jmp 0x140171133
mov rax, qword [rbp + 0x688]
movabs rdx, 0x25ef070cae94d457
movabs rcx, 0x25ef070cae94d452
xor rdx, rcx
movabs rcx, 0x633b90db0724874d
movabs r8, 0x9cc46f24f8db78b2
xor rcx, r8
xor rdx, rcx
mov rcx, rax
and rcx, rdx
movabs r8, 0x7147dec597742f4
movabs rdx, 0x7147dec597742f1
xor r8, rdx
mov rdx, rax
xor rdx, r8
add rax, rdx
sub rax, rcx
mov cl, 0xc
xor cl, 0xc
mov byte [rbp + rax + 0x1130], cl
movaps xmm0, xmmword [rbp + 0x690]
pextrw eax, xmm0, 6
test al, 1
jne 0x14017114c
jmp 0x140171163
mov rax, qword [rbp + 0x688]
or rax, 6
mov cl, 0x84
xor cl, 0x84
mov byte [rbp + rax + 0x1130], cl
movaps xmm0, xmmword [rbp + 0x690]
pextrw eax, xmm0, 7
test al, 1
jne 0x14017117c
jmp 0x14017119d
mov rcx, qword [rbp + 0x688]
mov rax, rcx
and rax, 7
xor rcx, 7
or rax, rcx
mov cl, 0xd1
xor cl, 0xd1
mov byte [rbp + rax + 0x1130], cl
movaps xmm0, xmmword [rbp + 0x640]
movaps xmm1, xmmword [rbp + 0x650]
movaps xmm2, xmmword [rbp + 0x660]
movaps xmm3, xmmword [rbp + 0x670]
mov rax, qword [rbp + 0x688]
add rax, 8
movaps xmm8, xmmword [0x1401a0c10]
movaps xmmword [rbp + 0x630], xmm8
movaps xmm7, xmm3
pand xmm7, xmm8
movaps xmm6, xmm2
pand xmm6, xmm8
movaps xmm5, xmm1
pand xmm5, xmm8
movaps xmm4, xmm0
pand xmm4, xmm8
paddq xmm4, xmm4
paddq xmm5, xmm5
paddq xmm6, xmm6
paddq xmm7, xmm7
pxor xmm0, xmm8
pxor xmm1, xmm8
pxor xmm2, xmm8
pxor xmm3, xmm8
paddq xmm3, xmm7
paddq xmm2, xmm6
paddq xmm1, xmm5
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x6a8], rax
movaps xmmword [rbp + 0x6b0], xmm3
movaps xmmword [rbp + 0x6c0], xmm2
movaps xmmword [rbp + 0x6d0], xmm1
movaps xmmword [rbp + 0x6e0], xmm0
jne 0x140170e5d
jmp 0x14017125d
mov rax, qword [rbp + 0x700]
mov rcx, qword [rbp + 0x6f8]
mov qword [rbp + 0x1110], rcx
mov qword [rbp + 0x1118], rax
lea rcx, [rbp + 0x1130]
lea rdx, [rbp + 0x1110]
sub rsp, 0x20
call fcn.14010b650
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14017164e
mov rcx, qword [rbp + 0xd20]
mov rax, qword [rbp + 0x1140]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rbp + 0x1130]
movups xmmword [rcx], xmm0
mov rax, qword [rbp + 0x1140]
mov qword [rbp + 0x1320], rax
movups xmm0, xmmword [rbp + 0x1130]
movaps xmmword [rbp + 0x1310], xmm0
lea rax, [rbp + 0x1320]
mov qword [rbp + 0x620], rax
sub rsp, 0x20
call fcn.140047a83
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov cl, byte [rbp + 0x1320]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x62f], al
or al, cl
test al, 1
jne 0x14017136b
mov rcx, qword [rbp + 0xd28]
mov rax, qword [rbp + 0x1310]
mov qword [rbp + 0x1100], rax
mov rax, qword [rbp + 0x1318]
mov qword [rbp + 0x1108], rax
lea rdx, [rbp + 0x1100]
sub rsp, 0x20
call fcn.140021260
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x61f], al
jmp 0x1401713ee
mov al, byte [rbp + 0x62f]
test al, 1
jne 0x14017164e
jmp 0x14017137e
lea rcx, [rbp + 0x10f0]
sub rsp, 0x20
call fcn.140077226
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov rcx, qword [rbp + 0x10f0]
mov qword [rbp + 0x608], rcx
mov rcx, qword [rbp + 0x10f8]
mov qword [rbp + 0x610], rcx
mov al, byte [rax]
mov cl, 0x5c
xor cl, 0x5c
cmp al, cl
jne 0x14017164e
mov rax, qword [rbp + 0x768]
mov rcx, qword [rbp + 0x610]
mov rdx, qword [rbp + 0xd28]
mov r8, qword [rbp + 0x608]
mov qword [rdx], r8
mov qword [rax], rcx
xor eax, eax
mov byte [rbp + 0x61f], al
mov rcx, qword [rbp + 0x620]
mov al, byte [rbp + 0x61f]
mov cl, byte [rcx]
test cl, cl
sete cl
test al, al
setne al
or al, cl
test al, 1
jne 0x14017165f
mov rcx, qword [rbp + 0xe20]
mov qword [rbp + 0x1120], 0
lea rax, [rbp + 0x1120]
add rax, 8
mov qword [rbp + 0x5f8], rax
mov qword [rbp + 0x1128], 0
mov word [rcx], 0x632
sub rsp, 0x20
call fcn.140064a51
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xf30]
mov qword [rbp + 0x600], rcx
cmp byte [rax], 0
jne 0x1401715db
mov rax, qword [rbp + 0x600]
mov rcx, qword [rax]
mov qword [rbp + 0x10e0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x10e8], rax
lea rcx, [rbp + 0x1120]
lea rdx, [rbp + 0x10e0]
sub rsp, 0x20
call fcn.140021260
add rsp, 0x20
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
mov rcx, qword [rbp + 0xd00]
mov rdx, qword [rbp + 0xe48]
add rsp, 0x20
mov rax, qword [rbp + 0xd28]
mov rcx, qword [rcx]
add rcx, 0x18
mov r8, qword [rbp + 0x1120]
mov qword [rdx], r8
mov r8, qword [rbp + 0x1128]
mov qword [rdx + 8], r8
mov r8, qword [rax]
mov qword [rbp + 0x10d0], r8
mov rax, qword [rax + 8]
mov qword [rbp + 0x10d8], rax
lea r8, [rbp + 0x10d0]
sub rsp, 0x20
call fcn.140085318
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xf30]
mov dword [rbp + 0x5f4], ecx
cmp byte [rax], 0
jne 0x1401715db
mov ecx, dword [rbp + 0x5f4]
sub rsp, 0x20
call fcn.14008c8dc
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401715db
mov ecx, 0x20
mov edx, 8
sub rsp, 0x20
call fcn.140019bef
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xe28]
mov qword [rbp + 0x5e8], rcx
mov dword [rcx + 8], 2
mov rcx, qword [rbp + 0x1120]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x1128]
mov qword [rax + 8], rcx
lea rcx, [rbp + 0x1120]
sub rsp, 0x20
call fcn.1400143a4
mov rax, qword [rbp + 0xe28]
mov rdx, qword [rbp + 0x5e8]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rdx + 0x10], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 0x18], rax
mov rcx, qword [rbp + 0x1368]
add rcx, 8
sub rsp, 0x20
call fcn.14003022f
add rsp, 0x20
mov rax, qword [rbp + 0x5f8]
mov rax, qword [rax]
mov qword [rbp + 0x5e0], rax
cmp rax, 0
je 0x14017164e
mov rax, qword [rbp + 0x5e0]
mov rax, qword [rax]
movabs rcx, 0x77dc11c86833e741
movabs rdx, 0x37dc11c86833e741
xor rcx, rdx
and rax, rcx
movabs rcx, 0xb2fc0b2c0bb7ab14
movabs rdx, 0xb2fc0b2c0bb7ab14
xor rcx, rdx
cmp rax, rcx
jne 0x14017164e
mov rcx, qword [rbp + 0x5e0]
sub rsp, 0x20
call fcn.1400121d0
add rsp, 0x20
mov eax, dword [rbp + 0x70c]
mov dword [rbp + 0x71c], eax
jmp 0x14017166b
mov eax, dword [rbp + 0x70c]
mov dword [rbp + 0x71c], eax
mov rcx, qword [rbp + 0x760]
mov rdx, qword [rbp + 0xf30]
mov eax, dword [rbp + 0x71c]
mov dl, byte [rdx]
mov byte [rbp + 0x77f], dl
mov qword [rbp + 0x780], rcx
mov dword [rbp + 0x78c], eax
mov rax, qword [rbp + 0x768]
mov rcx, qword [rbp + 0xf30]
mov dl, byte [rbp + 0x77f]
mov r8, qword [rbp + 0x780]
mov r9d, dword [rbp + 0x78c]
mov dword [rbp + 0x5c4], r9d
mov qword [rbp + 0x5c8], r8
mov byte [rbp + 0x5d6], dl
cmp dl, 0
sete dl
mov byte [rbp + 0x5d7], dl
mov dl, 0x5a
xor dl, 0x5a
mov byte [rcx], dl
mov rax, qword [rax]
mov qword [rbp + 0x5d8], rax
cmp rax, 0
je 0x140171736
mov rax, qword [rbp + 0x5d8]
mov rcx, qword [rax]
mov rdx, 0xffffffffffffffff
movabs rax, 0x4000000000000000
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x140171736
mov rcx, qword [rbp + 0x5d8]
sub rsp, 0x20
call fcn.1400121d0
add rsp, 0x20
lea rcx, [rbp + 0x1310]
sub rsp, 0x20
call fcn.140047a9a
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x83
xor cl, 0x83
cmp al, cl
jne 0x140171890
mov rcx, qword [rbp + 0xd20]
sub rsp, 0x20
call fcn.140047a9a
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140171890
mov rax, qword [rbp + 0x5c8]
cmp rax, 0
je 0x140171873
mov rax, qword [rbp + 0x5c8]
mov rax, qword [rax]
movabs rcx, 0x60a421072ae7419f
movabs rdx, 0x9f5bdef8d518be60
xor rcx, rdx
xor rax, rcx
movabs rcx, 0xa076ca63e8df3aeb
movabs rdx, 0xe076ca63e8df3aeb
xor rcx, rdx
movabs rdx, 0x3cd721786f828792
movabs r8, 0xc328de87907d786d
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x411022574d465c40
movabs r8, 0x724074f19888413e
xor rdx, r8
movabs r8, 0xa09a690ba02b8350
movabs r9, 0x5f6596f45fd47caf
xor r8, r9
xor rdx, r8
or rax, rcx
movabs rcx, 0xd1d933c4e49ced74
movabs r8, 0xe28965623152f00a
xor rcx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0xa580b4df8f1237ea
movabs rdx, 0xa580b4df8f1237ea
xor rcx, rdx
cmp rax, rcx
jne 0x140171873
mov rcx, qword [rbp + 0x5c8]
sub rsp, 0x20
call fcn.1400121d0
add rsp, 0x20
mov al, byte [rbp + 0x5d7]
mov rcx, qword [rbp + 0xf30]
mov dl, byte [rbp + 0x5d6]
mov byte [rcx], dl
test al, 1
jne 0x140171958
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [rbp + 0x5b8], rax
mov ax, word [rax + 0x12]
mov cx, 0x5f0
xor cx, 0x5f1
cmp ax, cx
jle 0x14017193a
mov rax, qword [rbp + 0x5b8]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x14017193a
mov rax, qword [rbp + 0xf30]
mov byte [rax], 0
sub rsp, 0x20
call fcn.140175842
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14008afaa
mov rcx, qword [rbp + 0xf30]
mov rax, qword [rbp + 0xc38]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0xc6
xor dl, 0xc6
cmp cl, dl
mov qword [rbp + 0xf68], rax
jne 0x14017509e
sub rsp, 0x20
call fcn.1401758a1
add rsp, 0x20
mov rax, qword [rbp + 0xc38]
mov rcx, qword [rbp + 0xf30]
cmp byte [rcx], 0
mov qword [rbp + 0xf68], rax
jne 0x14017509e
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
movaps xmm0, xmmword [0x1401a0bb0]
movaps xmm1, xmmword [0x1401a0bc0]
movaps xmm2, xmmword [0x1401a0bd0]
movaps xmm3, xmmword [0x1401a0be0]
xor eax, eax
mov qword [rbp + 0x568], rax
movaps xmmword [rbp + 0x570], xmm3
movaps xmmword [rbp + 0x580], xmm2
movaps xmmword [rbp + 0x590], xmm1
movaps xmmword [rbp + 0x5a0], xmm0
jmp 0x1401719b4
mov rax, qword [rbp + 0x568]
movaps xmm2, xmmword [rbp + 0x570]
movaps xmm7, xmmword [rbp + 0x580]
movaps xmm8, xmmword [rbp + 0x590]
movaps xmm5, xmmword [rbp + 0x5a0]
movaps xmmword [rbp + 0x500], xmm5
movaps xmmword [rbp + 0x510], xmm8
movaps xmmword [rbp + 0x520], xmm7
movaps xmmword [rbp + 0x530], xmm2
mov qword [rbp + 0x548], rax
movaps xmm6, xmmword [0x1401a0bf0]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x1401a0c00]
pshufd xmm3, xmm4, 0xf5
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp + 0x550], xmm1
movd eax, xmm0
test al, 1
jne 0x140171ad9
jmp 0x140171ae8
mov rax, qword [rbp + 0x548]
mov byte [rbp + rax + 0x12f0], 0
movaps xmm0, xmmword [rbp + 0x550]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x140171b03
jmp 0x140171b2c
mov rax, qword [rbp + 0x548]
movabs rcx, 0xb878b3642132f63
movabs rdx, 0xb878b3642132f62
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x12f0], 0
movaps xmm0, xmmword [rbp + 0x550]
pextrw eax, xmm0, 2
test al, 1
jne 0x140171b45
jmp 0x140171be8
mov rcx, qword [rbp + 0x548]
mov rax, rcx
xor rax, 0xffffffffffffffff
movabs rdx, 0x503641824645c96d
movabs r8, 0xafc9be7db9ba3692
xor rdx, r8
xor rcx, rdx
or rax, rcx
movabs rcx, 0x33d0697791e91b8d
movabs rdx, 0x33d0697791e91b8f
xor rcx, rdx
movabs rdx, 0xa2f0a5837e354cd0
movabs r8, 0x5d0f5a7c81cab32f
xor rdx, r8
xor rcx, rdx
movabs rdx, 0xe72d8520b7b72928
movabs r8, 0xe72d8520b7b7292a
xor rdx, r8
movabs r8, 0xc6f793a54b4aa70d
movabs r9, 0x39086c5ab4b558f2
xor r8, r9
xor rdx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
mov byte [rbp + rax + 0x12f0], 0
movaps xmm0, xmmword [rbp + 0x550]
pextrw eax, xmm0, 3
test al, 1
jne 0x140171c01
jmp 0x140171c34
mov rcx, qword [rbp + 0x548]
mov rax, rcx
and rax, 3
movabs rdx, 0xeebcd2236abf3253
movabs r8, 0xeebcd2236abf3250
xor rdx, r8
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x12f0], 0
movaps xmm0, xmmword [rbp + 0x550]
pextrw eax, xmm0, 4
test al, 1
jne 0x140171c4d
jmp 0x140171c7a
mov rax, qword [rbp + 0x548]
movabs rcx, 0xca5d4ecca7c51196
movabs rdx, 0xca5d4ecca7c51192
xor rcx, rdx
or rax, rcx
mov cl, 0xa8
xor cl, 0xa8
mov byte [rbp + rax + 0x12f0], cl
movaps xmm0, xmmword [rbp + 0x550]
pextrw eax, xmm0, 5
test al, 1
jne 0x140171c93
jmp 0x140171d68
mov r11, qword [rbp + 0x548]
mov rcx, r11
xor rcx, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
xor rdx, 5
movabs r8, 0xfaf135992fc0e1a8
movabs rax, 0x7b9000d39d56a61d
xor r8, rax
movabs rax, 0x3bcfc13b81a70e7
movabs r9, 0xfc4303ec47e58f18
xor rax, r9
xor r8, rax
movabs r9, 0x8161354ab29647b5
mov rax, rcx
and rax, r9
and r11, r8
movabs r10, 0x8161354ab29647b5
mov r9, rdx
and r9, r10
movabs r10, 0xdf325b8141424b30
movabs rsi, 0xdf325b8141424b35
xor r10, rsi
and r10, r8
or rax, r11
or r9, r10
xor rax, r9
or rcx, rdx
movabs rdx, 0x9780a9f3c44989fe
movabs r9, 0x687f560c3bb67601
xor rdx, r9
xor rcx, rdx
movabs rdx, 0x4649223b6fa1cc9d
movabs r9, 0xc7281771dd378b28
xor rdx, r9
or rdx, r8
and rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x12f0], 0
movaps xmm0, xmmword [rbp + 0x550]
pextrw eax, xmm0, 6
test al, 1
jne 0x140171d81
jmp 0x140171dce
mov rcx, qword [rbp + 0x548]
movabs rdx, 0x22004ac4aa3fe700
movabs rax, 0x22004ac4aa3fe706
xor rdx, rax
mov rax, rcx
and rax, rdx
movabs rdx, 0x6532a9bcb8039add
movabs r8, 0x6532a9bcb8039adb
xor rdx, r8
xor rcx, rdx
or rax, rcx
mov cl, 0x96
xor cl, 0x96
mov byte [rbp + rax + 0x12f0], cl
movaps xmm0, xmmword [rbp + 0x550]
pextrw eax, xmm0, 7
test al, 1
jne 0x140171de7
jmp 0x140171e14
mov rax, qword [rbp + 0x548]
movabs rcx, 0x496351fbcb178969
movabs rdx, 0x496351fbcb17896e
xor rcx, rdx
or rax, rcx
mov cl, 0x9a
xor cl, 0x9a
mov byte [rbp + rax + 0x12f0], cl
movaps xmm0, xmmword [rbp + 0x500]
movaps xmm1, xmmword [rbp + 0x510]
movaps xmm2, xmmword [rbp + 0x520]
movaps xmm3, xmmword [rbp + 0x530]
mov rcx, qword [rbp + 0x548]
mov eax, ecx
and eax, 8
or rcx, 8
add rax, rcx
movaps xmm4, xmmword [0x1401a0c10]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x568], rax
movaps xmmword [rbp + 0x570], xmm3
movaps xmmword [rbp + 0x580], xmm2
movaps xmmword [rbp + 0x590], xmm1
movaps xmmword [rbp + 0x5a0], xmm0
jne 0x1401719b4
jmp 0x140171e8f
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
movaps xmm0, xmmword [0x1401a0bb0]
movaps xmm1, xmmword [0x1401a0bc0]
movaps xmm2, xmmword [0x1401a0bd0]
movaps xmm3, xmmword [0x1401a0be0]
xor eax, eax
mov qword [rbp + 0x4b8], rax
movaps xmmword [rbp + 0x4c0], xmm3
movaps xmmword [rbp + 0x4d0], xmm2
movaps xmmword [rbp + 0x4e0], xmm1
movaps xmmword [rbp + 0x4f0], xmm0
jmp 0x140171eeb
mov rax, qword [rbp + 0x4b8]
movaps xmm2, xmmword [rbp + 0x4c0]
movaps xmm7, xmmword [rbp + 0x4d0]
movaps xmm8, xmmword [rbp + 0x4e0]
movaps xmm5, xmmword [rbp + 0x4f0]
movaps xmmword [rbp + 0x450], xmm5
movaps xmmword [rbp + 0x460], xmm8
movaps xmmword [rbp + 0x470], xmm7
movaps xmmword [rbp + 0x480], xmm2
mov qword [rbp + 0x498], rax
movaps xmm6, xmmword [0x1401a0bf0]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x1401a0c00]
pshufd xmm3, xmm4, 0xf5
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp + 0x4a0], xmm1
movd eax, xmm0
test al, 1
jne 0x140172010
jmp 0x14017201f
mov rax, qword [rbp + 0x498]
mov byte [rbp + rax + 0x12d0], 0
movaps xmm0, xmmword [rbp + 0x4a0]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x14017203a
jmp 0x140172051
mov rax, qword [rbp + 0x498]
or rax, 1
mov cl, 0xc6
xor cl, 0xc6
mov byte [rbp + rax + 0x12d0], cl
movaps xmm0, xmmword [rbp + 0x4a0]
pextrw eax, xmm0, 2
test al, 1
jne 0x14017206a
jmp 0x1401720bd
mov rax, qword [rbp + 0x498]
movabs rdx, 0xe70dab8b1cee5ae7
movabs rcx, 0xe70dab8b1cee5ae5
xor rdx, rcx
movabs rcx, 0x253701cf4c85a24a
movabs r8, 0xdac8fe30b37a5db5
xor rcx, r8
xor rdx, rcx
mov rcx, rax
and rcx, rdx
mov rdx, rax
xor rdx, 2
add rax, rdx
sub rax, rcx
mov byte [rbp + rax + 0x12d0], 0
movaps xmm0, xmmword [rbp + 0x4a0]
pextrw eax, xmm0, 3
test al, 1
jne 0x1401720d6
jmp 0x140172128
mov rax, qword [rbp + 0x498]
movabs rcx, 0xe046c5bd634d5dec
movabs rdx, 0xe046c5bd634d5def
xor rcx, rdx
and rcx, rax
movabs rdx, 0xf3a979bdb2f90123
movabs r8, 0xc5686424d06fedc
xor rdx, r8
xor rcx, rdx
add rax, 3
add rax, 1
add rax, rcx
mov cl, 0x79
xor cl, 0x79
mov byte [rbp + rax + 0x12d0], cl
movaps xmm0, xmmword [rbp + 0x4a0]
pextrw eax, xmm0, 4
test al, 1
jne 0x140172141
jmp 0x14017216a
mov rax, qword [rbp + 0x498]
movabs rcx, 0x754fa05ba236bb8e
movabs rdx, 0x754fa05ba236bb8a
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x12d0], 0
movaps xmm0, xmmword [rbp + 0x4a0]
pextrw eax, xmm0, 5
test al, 1
jne 0x140172183
jmp 0x1401721ea
mov rcx, qword [rbp + 0x498]
mov rax, rcx
or rax, 5
xor rax, 0xffffffffffffffff
movabs rdx, 0xc23c8789e11b8a66
movabs r8, 0x3dc378761ee47599
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
xor rdx, 5
and rcx, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0xb35bb6383668414f
movabs r8, 0x4ca449c7c997beb0
xor rdx, r8
xor rcx, rdx
and rax, rcx
mov cl, 0x71
xor cl, 0x71
mov byte [rbp + rax + 0x12d0], cl
movaps xmm0, xmmword [rbp + 0x4a0]
pextrw eax, xmm0, 6
test al, 1
jne 0x140172203
jmp 0x140172272
mov rcx, qword [rbp + 0x498]
mov rax, rcx
or rax, 6
xor rax, 0xffffffffffffffff
movabs rdx, 0x8db0358b1f10f5fb
movabs r8, 0x8db0358b1f10f5fd
xor rdx, r8
or rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0xaf12bb1cb02bced
movabs r8, 0xf50ed44e34fd4312
xor rdx, r8
xor rax, rdx
movabs rdx, 0x61028c9611e1a6c8
movabs r8, 0x9efd7369ee1e5937
xor rdx, r8
xor rcx, rdx
and rax, rcx
mov byte [rbp + rax + 0x12d0], 0
movaps xmm0, xmmword [rbp + 0x4a0]
pextrw eax, xmm0, 7
test al, 1
jne 0x14017228b
jmp 0x140172322
mov rcx, qword [rbp + 0x498]
mov rax, rcx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
mov rcx, 0xffffffffffffffff
xor rcx, 7
movabs rdx, 0x84c616cea968814b
movabs r8, 0x84c616cea968814c
xor rdx, r8
movabs r8, 0xba19ceb8c9571da0
movabs r9, 0x45e6314736a8e25f
xor r8, r9
xor rdx, r8
or rcx, rdx
movabs rdx, 0xaeb9bdc73d855f8c
movabs r8, 0x51464238c27aa073
xor rdx, r8
xor rax, rdx
movabs rdx, 0x1f64c24ea2572b2a
movabs r8, 0xe09b3db15da8d4d5
xor rdx, r8
xor rcx, rdx
or rax, rcx
mov cl, 0xf0
xor cl, 0xf0
mov byte [rbp + rax + 0x12d0], cl
movaps xmm0, xmmword [rbp + 0x450]
movaps xmm1, xmmword [rbp + 0x460]
movaps xmm2, xmmword [rbp + 0x470]
movaps xmm3, xmmword [rbp + 0x480]
mov rax, qword [rbp + 0x498]
add rax, 8
movaps xmm4, xmmword [0x1401a0c20]
psubq xmm3, xmm4
psubq xmm2, xmm4
psubq xmm1, xmm4
psubq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x4b8], rax
movaps xmmword [rbp + 0x4c0], xmm3
movaps xmmword [rbp + 0x4d0], xmm2
movaps xmmword [rbp + 0x4e0], xmm1
movaps xmmword [rbp + 0x4f0], xmm0
jne 0x140171eeb
jmp 0x140172395
mov rcx, qword [rbp + 0xd38]
movabs rax, 0x72ff0b34bec6daeb
movabs rdx, 0x72ff0b34bec6daeb
xor rax, rdx
mov qword [rbp + 0x12c0], rax
lea rax, [rbp + 0x12c0]
add rax, 8
mov qword [rbp + 0x428], rax
mov qword [rbp + 0x12c8], 0
mov ax, 0xfd9
xor ax, 0x9e4
mov word [rcx], ax
sub rsp, 0x20
call fcn.140064a51
mov r8, qword [rbp + 0xf30]
add rsp, 0x20
mov rcx, rax
mov eax, dword [rbp + 0x5c4]
mov qword [rbp + 0x430], rcx
mov dl, 1
xor ecx, ecx
cmp byte [r8], 0
mov byte [rbp + 0x43f], dl
mov qword [rbp + 0x440], rcx
mov dword [rbp + 0x44c], eax
jne 0x14017337e
mov rcx, qword [rbp + 0xe50]
mov r8, qword [rbp + 0xe58]
mov rax, qword [rbp + 0x430]
mov rdx, qword [0x1401a1858]
mov r9, qword [rdx]
mov qword [rbp + 0x10c0], r9
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x10c8], rdx
mov rdx, qword [rax]
mov qword [r8], rdx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
lea rdx, [rbp + 0x10c0]
sub rsp, 0x20
call fcn.1401757bb
mov rcx, qword [rbp + 0xe50]
mov r8, qword [rbp + 0xf30]
mov eax, dword [rbp + 0x5c4]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x418], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x420], rcx
mov dl, 1
xor ecx, ecx
cmp byte [r8], 0
mov byte [rbp + 0x43f], dl
mov qword [rbp + 0x440], rcx
mov dword [rbp + 0x44c], eax
jne 0x14017337e
mov rcx, qword [rbp + 0xe60]
mov rax, qword [rbp + 0x1358]
mov qword [rbp + 0x10b0], rax
mov rax, qword [rbp + 0x1360]
mov qword [rbp + 0x10b8], rax
lea rdx, [rbp + 0x10b0]
sub rsp, 0x20
call fcn.140115b42
mov r8, qword [rbp + 0xe60]
mov rdx, qword [rbp + 0xf30]
mov rcx, qword [rbp + 0x420]
mov eax, dword [rbp + 0x5c4]
add rsp, 0x20
mov r9, qword [r8]
mov qword [rbp + 0x408], r9
mov r8, qword [r8 + 8]
mov qword [rbp + 0x410], r8
mov r8b, byte [rdx]
mov r9b, 0x3c
xor r9b, 0x3c
mov dl, 1
cmp r8b, r9b
mov byte [rbp + 0x43f], dl
mov qword [rbp + 0x440], rcx
mov dword [rbp + 0x44c], eax
jne 0x14017337e
mov r9, qword [rbp + 0x420]
mov rdx, qword [rbp + 0xe70]
mov rcx, qword [rbp + 0xe68]
mov rax, qword [rbp + 0x410]
mov r8, qword [rbp + 0x408]
mov r10, qword [rbp + 0x418]
mov qword [rcx], r10
mov qword [rcx + 8], r9
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov r8d, 0xfb04bab
xor r8d, 0xfb04baa
sub rsp, 0x20
call fcn.14010836c
mov r8, qword [rbp + 0xf30]
mov rcx, qword [rbp + 0x420]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x5c4]
mov qword [rbp + 0x400], rdx
mov dl, 1
cmp byte [r8], 0
mov byte [rbp + 0x43f], dl
mov qword [rbp + 0x440], rcx
mov dword [rbp + 0x44c], eax
jne 0x14017337e
mov ax, 0x9dd
xor ax, 0x3d3
mov word [rbp + 0x12be], ax
lea rcx, [rbp + 0x12be]
sub rsp, 0x20
call fcn.140064a51
mov r8, qword [rbp + 0xf30]
mov rcx, qword [rbp + 0x420]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x5c4]
mov qword [rbp + 0x3f8], rdx
mov dl, 1
cmp byte [r8], 0
mov byte [rbp + 0x43f], dl
mov qword [rbp + 0x440], rcx
mov dword [rbp + 0x44c], eax
jne 0x14017337e
mov rax, qword [rbp + 0x3f8]
mov rcx, qword [rax]
mov qword [rbp + 0x1090], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1098], rax
lea rcx, [rbp + 0x10a0]
lea rdx, [rbp + 0x1090]
sub rsp, 0x20
call fcn.140024b17
mov r8, qword [rbp + 0xd00]
mov rcx, qword [rbp + 0xe78]
add rsp, 0x20
mov rdx, qword [rbp + 0x10a0]
mov rax, qword [rbp + 0x10a8]
mov r8, qword [r8]
add r8, 0x18
mov qword [rbp + 0x3e8], r8
mov qword [rbp + 0x1080], rdx
mov qword [rbp + 0x1088], rax
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp + 0x3e8]
mov rdx, qword [rbp + 0x400]
mov r9, qword [rbp + 0xc38]
mov rax, qword [rbp + 0xe78]
add rsp, 0x20
lea r8, [rbp + 0x1080]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140108086
mov rdx, qword [rbp + 0xf30]
mov rcx, qword [rbp + 0x420]
add rsp, 0x30
mov r8d, eax
mov eax, dword [rbp + 0x5c4]
mov dword [rbp + 0x3f4], r8d
mov r8b, byte [rdx]
mov r9b, 0xd4
xor r9b, 0xd4
mov dl, 1
cmp r8b, r9b
mov byte [rbp + 0x43f], dl
mov qword [rbp + 0x440], rcx
mov dword [rbp + 0x44c], eax
jne 0x14017337e
mov eax, dword [rbp + 0x3f4]
mov ecx, dword [rbp + 0x5c4]
movsxd r9, ecx
movsxd r8, eax
mov rcx, r8
add rcx, r9
mov qword [rbp + 0x3e0], rcx
mov rax, rcx
and rax, r9
movabs rdx, 0xe18ada851757f2b9
movabs r10, 0xe18ada851757f2bb
xor rdx, r10
imul rdx, rax
mov rax, rcx
add rax, r9
sub rax, rdx
mov rdx, rcx
xor rdx, r8
xor rdx, 0xffffffffffffffff
mov r9, r8
and r9, rdx
movabs rdx, 0xe2fef37dc0fcba3a
movabs r10, 0xe2fef37dc0fcba38
xor rdx, r10
imul rdx, r9
sub rdx, r8
sub rcx, rdx
and rax, rcx
movabs rcx, 0xad22a864da387f25
movabs rdx, 0xad22a864da387f25
xor rcx, rdx
cmp rax, rcx
jge 0x1401727fc
sub rsp, 0x20
call fcn.14000a590
mov eax, dword [rbp + 0x5c4]
add rsp, 0x20
mov dword [rbp + 0x3dc], eax
jmp 0x140173355
mov rax, qword [rbp + 0x3e0]
mov rcx, 0xffffffffffffffff
xor rcx, 0xffffffff80000000
xor edx, edx
sub rdx, 1
sub rcx, rdx
sub rax, rcx
movabs rcx, 0x1fcf4cfb9ddeb975
movabs rdx, 0xe030b3049ddeb975
xor rcx, rdx
cmp rax, rcx
jae 0x14017285b
sub rsp, 0x20
call fcn.14000a590
mov eax, dword [rbp + 0x5c4]
add rsp, 0x20
mov dword [rbp + 0x3dc], eax
jmp 0x140173355
mov rax, qword [rbp + 0x3e0]
mov dword [rbp + 0x3cc], eax
mov word [rbp + 0x107e], 0x679
lea rcx, [rbp + 0x107e]
sub rsp, 0x20
call fcn.140064a51
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xf30]
mov qword [rbp + 0x3d0], rcx
mov al, byte [rax]
mov cl, 0x88
xor cl, 0x88
cmp al, cl
jne 0x140173338
mov rcx, qword [rbp + 0xe80]
mov rdx, qword [rbp + 0xe88]
mov rax, qword [rbp + 0x3d0]
mov r8, qword [0x1401a1858]
mov r9, qword [r8]
mov qword [rdx], r9
mov r8, qword [r8 + 8]
mov qword [rdx + 8], r8
mov r8, qword [rax]
mov qword [rbp + 0x1028], r8
mov rax, qword [rax + 8]
mov qword [rbp + 0x1030], rax
lea r8, [rbp + 0x1028]
sub rsp, 0x20
call fcn.1401757bb
mov rcx, qword [rbp + 0xe80]
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x3b8], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x3c0], rcx
mov al, byte [rax]
mov cl, 0x30
xor cl, 0x30
cmp al, cl
jne 0x140173338
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
movaps xmm0, xmmword [0x1401a0bb0]
movaps xmm1, xmmword [0x1401a0bc0]
movaps xmm2, xmmword [0x1401a0bd0]
movaps xmm3, xmmword [0x1401a0be0]
xor eax, eax
mov qword [rbp + 0x368], rax
movaps xmmword [rbp + 0x370], xmm3
movaps xmmword [rbp + 0x380], xmm2
movaps xmmword [rbp + 0x390], xmm1
movaps xmmword [rbp + 0x3a0], xmm0
jmp 0x140172986
mov rax, qword [rbp + 0x368]
movaps xmm2, xmmword [rbp + 0x370]
movaps xmm7, xmmword [rbp + 0x380]
movaps xmm8, xmmword [rbp + 0x390]
movaps xmm5, xmmword [rbp + 0x3a0]
movaps xmmword [rbp + 0x300], xmm5
movaps xmmword [rbp + 0x310], xmm8
movaps xmmword [rbp + 0x320], xmm7
movaps xmmword [rbp + 0x330], xmm2
mov qword [rbp + 0x348], rax
movaps xmm6, xmmword [0x1401a0bf0]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x1401a0c00]
pshufd xmm3, xmm4, 0xf5
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp + 0x350], xmm1
movd eax, xmm0
test al, 1
jne 0x140172aab
jmp 0x140172abe
mov rax, qword [rbp + 0x348]
mov cl, 0xb2
xor cl, 0xb2
mov byte [rbp + rax + 0x1060], cl
movaps xmm0, xmmword [rbp + 0x350]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x140172ad9
jmp 0x140172b10
mov rcx, qword [rbp + 0x348]
movabs rdx, 0x478a0e5dbaac3eb5
movabs rax, 0x478a0e5dbaac3eb4
xor rdx, rax
mov rax, rcx
and rax, rdx
xor rcx, 1
or rax, rcx
mov cl, 0xf5
xor cl, 0xf5
mov byte [rbp + rax + 0x1060], cl
movaps xmm0, xmmword [rbp + 0x350]
pextrw eax, xmm0, 2
test al, 1
jne 0x140172b29
jmp 0x140172c24
mov r11, qword [rbp + 0x348]
mov rcx, r11
xor rcx, 0xffffffffffffffff
movabs r8, 0x4c6f6e818dc96da3
movabs rax, 0x4c6f6e818dc96da1
xor r8, rax
movabs rax, 0x35a7a50b65020073
movabs rdx, 0xca585af49afdff8c
xor rax, rdx
xor r8, rax
movabs rdx, 0x30bad0fe5b546f27
movabs rax, 0x38a2901d244f84e4
xor rdx, rax
movabs rax, 0x7500b6a3ea23f217
movabs r9, 0x8aff495c15dc0de8
xor rax, r9
xor rdx, rax
movabs r9, 0x259211b282ccda7a
movabs rax, 0x2d8a5151fdd731b9
xor r9, rax
mov rax, rcx
and rax, r9
and r11, rdx
movabs r10, 0x81840e37f1bebc3
mov r9, r8
and r9, r10
movabs r10, 0xb921eb99b1155b0e
movabs rsi, 0xb921eb99b1155b0c
xor r10, rsi
and r10, rdx
or rax, r11
or r9, r10
xor rax, r9
or rcx, r8
movabs r8, 0x1d3f42400c656fda
movabs r9, 0xe2c0bdbff39a9025
xor r8, r9
xor rcx, r8
movabs r8, 0x81840e37f1bebc3
or rdx, r8
and rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x1060], 0
movaps xmm0, xmmword [rbp + 0x350]
pextrw eax, xmm0, 3
test al, 1
jne 0x140172c3d
jmp 0x140172ca4
mov rax, qword [rbp + 0x348]
mov rcx, rax
and rcx, 3
movabs rdx, 0x3fe41ce871e25d68
movabs r8, 0xc01be3178e1da297
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x827cb5ed90f27507
movabs r8, 0x827cb5ed90f27504
xor rdx, r8
add rax, rdx
movabs rdx, 0x17e394432c7d10ff
movabs r8, 0x17e394432c7d10fe
xor rdx, r8
add rax, rdx
add rax, rcx
mov byte [rbp + rax + 0x1060], 0
movaps xmm0, xmmword [rbp + 0x350]
pextrw eax, xmm0, 4
test al, 1
jne 0x140172cbd
jmp 0x140172d42
mov rcx, qword [rbp + 0x348]
movabs rdx, 0xe3f091c688c885d7
movabs rax, 0x1c0f6e3977377a28
xor rdx, rax
mov rax, rcx
xor rax, rdx
movabs rdx, 0x8cfc2185da444d0
movabs r8, 0xf7303de7a25bbb2f
xor rdx, r8
xor rcx, rdx
or rax, rcx
movabs rcx, 0x91c5e86782bdf71
movabs rdx, 0x91c5e86782bdf75
xor rcx, rdx
movabs rdx, 0xb76ea8994a940b41
movabs r8, 0xb76ea8994a940b45
xor rdx, r8
and rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
xor rax, 0xffffffffffffffff
mov byte [rbp + rax + 0x1060], 0
movaps xmm0, xmmword [rbp + 0x350]
pextrw eax, xmm0, 5
test al, 1
jne 0x140172d5b
jmp 0x140172d88
mov rax, qword [rbp + 0x348]
mov rdx, 0xffffffffffffffff
xor rdx, 5
mov rcx, rax
and rcx, rdx
mov rdx, rax
xor rdx, 5
add rax, rdx
sub rax, rcx
mov byte [rbp + rax + 0x1060], 0
movaps xmm0, xmmword [rbp + 0x350]
pextrw eax, xmm0, 6
test al, 1
jne 0x140172da1
jmp 0x140172de8
mov rax, qword [rbp + 0x348]
mov rdx, 0xffffffffffffffff
xor rdx, 6
mov rcx, rax
and rcx, rdx
movabs r8, 0xb7e53a700869c19c
movabs rdx, 0xb7e53a700869c19a
xor r8, rdx
mov rdx, rax
xor rdx, r8
add rax, rdx
sub rax, rcx
mov cl, 0xa8
xor cl, 0xa8
mov byte [rbp + rax + 0x1060], cl
movaps xmm0, xmmword [rbp + 0x350]
pextrw eax, xmm0, 7
test al, 1
jne 0x140172e01
jmp 0x140172e6a
mov rax, qword [rbp + 0x348]
movabs rdx, 0x8ab8ab4aba4a8534
movabs rcx, 0x8ab8ab4aba4a8533
xor rdx, rcx
movabs rcx, 0xa4204c256ff59738
movabs r8, 0x5bdfb3da900a68c7
xor rcx, r8
xor rdx, rcx
mov rcx, rax
and rcx, rdx
movabs r8, 0xb6370b29cf5356c3
movabs rdx, 0xb6370b29cf5356c4
xor r8, rdx
mov rdx, rax
xor rdx, r8
add rax, rdx
sub rax, rcx
mov byte [rbp + rax + 0x1060], 0
movaps xmm0, xmmword [rbp + 0x300]
movaps xmm1, xmmword [rbp + 0x310]
movaps xmm2, xmmword [rbp + 0x320]
movaps xmm3, xmmword [rbp + 0x330]
mov rax, qword [rbp + 0x348]
mov ecx, eax
and ecx, 8
xor rax, 8
lea rax, [rax + rcx*2]
movaps xmm4, xmmword [0x1401a0c20]
psubq xmm3, xmm4
psubq xmm2, xmm4
psubq xmm1, xmm4
psubq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x368], rax
movaps xmmword [rbp + 0x370], xmm3
movaps xmmword [rbp + 0x380], xmm2
movaps xmmword [rbp + 0x390], xmm1
movaps xmmword [rbp + 0x3a0], xmm0
jne 0x140172986
jmp 0x140172ee6
mov rdx, qword [rbp + 0xe90]
mov rax, qword [rbp + 0x3c0]
mov rcx, qword [rbp + 0x3b8]
mov qword [rdx], rcx
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x1060]
sub rsp, 0x20
call fcn.14010b650
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xdc
xor cl, 0xdc
cmp al, cl
jne 0x140173338
mov rax, qword [rbp + 0x1070]
mov qword [rbp + 0x1300], rax
movups xmm0, xmmword [rbp + 0x1060]
movaps xmmword [rbp + 0x12f0], xmm0
mov rax, qword [rbp + 0x1070]
mov qword [rbp + 0x12e0], rax
movups xmm0, xmmword [rbp + 0x1060]
movaps xmmword [rbp + 0x12d0], xmm0
lea rax, [rbp + 0x12e0]
mov qword [rbp + 0x2f0], rax
sub rsp, 0x20
lea rcx, [rbp + 0x12f0]
call fcn.140047a83
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov cl, byte [rbp + 0x12e0]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x2ff], al
or al, cl
test al, 1
jne 0x140172ff3
mov rdx, qword [rbp + 0xe98]
mov rax, qword [rbp + 0x12d0]
mov qword [rdx], rax
mov rax, qword [rbp + 0x12d8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x12c0]
sub rsp, 0x20
call fcn.140021260
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x2ef], al
jmp 0x140173073
mov al, byte [rbp + 0x2ff]
test al, 1
jne 0x140173338
jmp 0x140173006
lea rcx, [rbp + 0x1018]
sub rsp, 0x20
call fcn.140077226
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
mov rcx, qword [rbp + 0x1018]
mov qword [rbp + 0x2d8], rcx
mov rcx, qword [rbp + 0x1020]
mov qword [rbp + 0x2e0], rcx
mov al, byte [rax]
mov cl, 0xcf
xor cl, 0xcf
cmp al, cl
jne 0x140173338
mov rax, qword [rbp + 0x428]
mov rcx, qword [rbp + 0x2e0]
mov rdx, qword [rbp + 0x2d8]
mov qword [rbp + 0x12c0], rdx
mov qword [rax], rcx
xor eax, eax
mov byte [rbp + 0x2ef], al
mov rcx, qword [rbp + 0x2f0]
mov al, byte [rbp + 0x2ef]
mov cl, byte [rcx]
test cl, cl
sete cl
test al, al
setne al
or al, cl
test al, 1
jne 0x140173349
movabs rax, 0x97f052319658e0cf
movabs rcx, 0x97f052319658e0cf
xor rax, rcx
mov qword [rbp + 0x1050], rax
lea rax, [rbp + 0x1050]
add rax, 8
mov qword [rbp + 0x2c8], rax
mov qword [rbp + 0x1058], 0
mov ax, 0x2d95
xor ax, 0x24cf
mov word [rbp + 0x104e], ax
lea rcx, [rbp + 0x104e]
sub rsp, 0x20
call fcn.140064a51
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xf30]
mov qword [rbp + 0x2d0], rcx
cmp byte [rax], 0
jne 0x1401732a5
mov eax, dword [rbp + 0x3cc]
mov dword [rbp + 0x3dc], eax
jmp 0x140173355
mov eax, dword [rbp + 0x3cc]
mov dword [rbp + 0x3dc], eax
mov rcx, qword [rbp + 0x420]
mov rdx, qword [rbp + 0xf30]
mov eax, dword [rbp + 0x3dc]
mov dl, byte [rdx]
mov byte [rbp + 0x43f], dl
mov qword [rbp + 0x440], rcx
mov dword [rbp + 0x44c], eax
mov rax, qword [rbp + 0x428]
mov rcx, qword [rbp + 0xf30]
mov dl, byte [rbp + 0x43f]
mov r8, qword [rbp + 0x440]
mov r9d, dword [rbp + 0x44c]
mov dword [rbp + 0x294], r9d
mov qword [rbp + 0x298], r8
mov byte [rbp + 0x2a6], dl
mov r8b, 0xda
xor r8b, 0xda
cmp dl, r8b
sete dl
mov byte [rbp + 0x2a7], dl
mov byte [rcx], 0
mov rax, qword [rax]
mov qword [rbp + 0x2a8], rax
cmp rax, 0
je 0x140173440
mov rax, qword [rbp + 0x2a8]
mov rcx, qword [rax]
movabs rdx, 0x70e3909bc127fb1c
movabs rax, 0x30e3909bc127fb1c
xor rdx, rax
movabs rax, 0x96ce8cda90556763
movabs r8, 0x693173256faa989c
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x140173440
mov rcx, qword [rbp + 0x2a8]
sub rsp, 0x20
call fcn.1400121d0
add rsp, 0x20
lea rcx, [rbp + 0x12d0]
sub rsp, 0x20
call fcn.140047a9a
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14017355f
lea rcx, [rbp + 0x12f0]
sub rsp, 0x20
call fcn.140047a9a
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14017355f
mov rax, qword [rbp + 0x298]
cmp rax, 0
je 0x140173542
mov rax, qword [rbp + 0x298]
mov rax, qword [rax]
or rax, rax
movabs rcx, 0xdad2467259504324
movabs rdx, 0x252db98da6afbcdb
xor rcx, rdx
xor rax, rcx
movabs rcx, 0x4000000000000000
movabs rdx, 0x4000000000000000
or rcx, rdx
movabs rdx, 0x35834a8c3307a0c4
movabs r8, 0xca7cb573ccf85f3b
xor rdx, r8
xor rcx, rdx
or rax, rcx
movabs rcx, 0x925548127fb8992b
movabs rdx, 0x6daab7ed804766d4
xor rcx, rdx
xor rax, rcx
movabs rcx, 0xc01ce5e27d99a270
movabs rdx, 0xc01ce5e27d99a270
xor rcx, rdx
cmp rax, rcx
jne 0x140173542
mov rcx, qword [rbp + 0x298]
sub rsp, 0x20
call fcn.1400121d0
add rsp, 0x20
mov al, byte [rbp + 0x2a7]
mov rcx, qword [rbp + 0xf30]
mov dl, byte [rbp + 0x2a6]
mov byte [rcx], dl
test al, 1
jne 0x140173622
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [rbp + 0x288], rax
cmp word [rax + 0x12], 1
jle 0x1401735fe
mov rax, qword [rbp + 0x288]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x1401735fe
mov rax, qword [rbp + 0xf30]
mov byte [rax], 0
sub rsp, 0x20
call fcn.140175842
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14008afaa
mov rcx, qword [rbp + 0xf30]
mov rax, qword [rbp + 0xc38]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x7f
xor dl, 0x7f
cmp cl, dl
mov qword [rbp + 0xf68], rax
jne 0x14017509e
sub rsp, 0x20
call fcn.1401758a1
add rsp, 0x20
mov rax, qword [rbp + 0xc38]
mov rcx, qword [rbp + 0xf30]
mov cl, byte [rcx]
mov dl, 0x2f
xor dl, 0x2f
cmp cl, dl
mov qword [rbp + 0xf68], rax
jne 0x14017509e
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
movaps xmm0, xmmword [0x1401a0bb0]
movaps xmm1, xmmword [0x1401a0bc0]
movaps xmm2, xmmword [0x1401a0bd0]
movaps xmm3, xmmword [0x1401a0be0]
xor eax, eax
mov qword [rbp + 0x238], rax
movaps xmmword [rbp + 0x240], xmm3
movaps xmmword [rbp + 0x250], xmm2
movaps xmmword [rbp + 0x260], xmm1
movaps xmmword [rbp + 0x270], xmm0
jmp 0x14017367e
mov rax, qword [rbp + 0x238]
movaps xmm2, xmmword [rbp + 0x240]
movaps xmm7, xmmword [rbp + 0x250]
movaps xmm8, xmmword [rbp + 0x260]
movaps xmm5, xmmword [rbp + 0x270]
movaps xmmword [rbp + 0x1d0], xmm5
movaps xmmword [rbp + 0x1e0], xmm8
movaps xmmword [rbp + 0x1f0], xmm7
movaps xmmword [rbp + 0x200], xmm2
mov qword [rbp + 0x218], rax
movaps xmm6, xmmword [0x1401a0bf0]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x1401a0c00]
pshufd xmm3, xmm4, 0xf5
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp + 0x220], xmm1
movd eax, xmm0
test al, 1
jne 0x1401737a3
jmp 0x1401737b2
mov rax, qword [rbp + 0x218]
mov byte [rbp + rax + 0x12a0], 0
movaps xmm0, xmmword [rbp + 0x220]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x1401737cd
jmp 0x1401737e4
mov rax, qword [rbp + 0x218]
or rax, 1
mov cl, 0x7e
xor cl, 0x7e
mov byte [rbp + rax + 0x12a0], cl
movaps xmm0, xmmword [rbp + 0x220]
pextrw eax, xmm0, 2
test al, 1
jne 0x1401737fd
jmp 0x14017382a
mov rax, qword [rbp + 0x218]
movabs rcx, 0xae7b81d882cb663e
movabs rdx, 0xae7b81d882cb663c
xor rcx, rdx
or rax, rcx
mov cl, 0xb2
xor cl, 0xb2
mov byte [rbp + rax + 0x12a0], cl
movaps xmm0, xmmword [rbp + 0x220]
pextrw eax, xmm0, 3
test al, 1
jne 0x140173843
jmp 0x1401738df
mov rax, qword [rbp + 0x218]
and rax, rax
xor rax, 0xffffffffffffffff
movabs rcx, 0xc7a072b10099f6a2
movabs rdx, 0xc7a072b10099f6a1
xor rcx, rdx
movabs rdx, 0x7e432a644cbe800f
movabs r8, 0x7e432a644cbe800c
xor rdx, r8
and rcx, rdx
movabs rdx, 0x12cd891db41dc696
movabs r8, 0xed3276e24be23969
xor rdx, r8
xor rcx, rdx
movabs rdx, 0xc66c57e224050a46
movabs r8, 0x3993a81ddbfaf5b9
xor rdx, r8
xor rax, rdx
movabs rdx, 0x350dad0bd4edda24
movabs r8, 0xcaf252f42b1225db
xor rdx, r8
xor rcx, rdx
or rax, rcx
mov cl, 0x62
xor cl, 0x62
mov byte [rbp + rax + 0x12a0], cl
movaps xmm0, xmmword [rbp + 0x220]
pextrw eax, xmm0, 4
test al, 1
jne 0x1401738f8
jmp 0x140173945
mov rcx, qword [rbp + 0x218]
movabs rdx, 0xbd61b62e9b38fa88
movabs rax, 0xbd61b62e9b38fa8c
xor rdx, rax
mov rax, rcx
and rax, rdx
movabs rdx, 0x245ee5433b63bf82
movabs r8, 0x245ee5433b63bf86
xor rdx, r8
xor rcx, rdx
or rax, rcx
mov cl, 0x69
xor cl, 0x69
mov byte [rbp + rax + 0x12a0], cl
movaps xmm0, xmmword [rbp + 0x220]
pextrw eax, xmm0, 5
test al, 1
jne 0x14017395e
jmp 0x1401739a7
mov rcx, qword [rbp + 0x218]
movabs rdx, 0x3ecb58f1e7ed8b94
movabs rax, 0x3ecb58f1e7ed8b91
xor rdx, rax
mov rax, rcx
and rax, rdx
movabs rdx, 0x21f49e5044477e16
movabs r8, 0x21f49e5044477e13
xor rdx, r8
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x12a0], 0
movaps xmm0, xmmword [rbp + 0x220]
pextrw eax, xmm0, 6
test al, 1
jne 0x1401739c0
jmp 0x1401739ed
mov rax, qword [rbp + 0x218]
movabs rcx, 0x3eeaba70631f0c7b
movabs rdx, 0x3eeaba70631f0c7d
xor rcx, rdx
or rax, rcx
mov cl, 0x78
xor cl, 0x78
mov byte [rbp + rax + 0x12a0], cl
movaps xmm0, xmmword [rbp + 0x220]
pextrw eax, xmm0, 7
test al, 1
jne 0x140173a06
jmp 0x140173a6a
mov rax, qword [rbp + 0x218]
movabs rcx, 0x34382c437cc87b06
movabs rdx, 0x34382c437cc87b01
xor rcx, rdx
and rcx, rax
xor rcx, 0xffffffffffffffff
movabs rdx, 0xf818100b2434ef90
movabs r8, 0xf818100b2434ef97
xor rdx, r8
add rax, rdx
movabs rdx, 0x8b94ce7db23e9f53
movabs r8, 0x8b94ce7db23e9f52
xor rdx, r8
add rax, rdx
add rax, rcx
mov byte [rbp + rax + 0x12a0], 0
movaps xmm0, xmmword [rbp + 0x1d0]
movaps xmm1, xmmword [rbp + 0x1e0]
movaps xmm2, xmmword [rbp + 0x1f0]
movaps xmm3, xmmword [rbp + 0x200]
mov rax, qword [rbp + 0x218]
add rax, 8
movaps xmm4, xmmword [0x1401a0c10]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x238], rax
movaps xmmword [rbp + 0x240], xmm3
movaps xmmword [rbp + 0x250], xmm2
movaps xmmword [rbp + 0x260], xmm1
movaps xmmword [rbp + 0x270], xmm0
jne 0x14017367e
jmp 0x140173add
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
movaps xmm0, xmmword [0x1401a0bb0]
movaps xmm1, xmmword [0x1401a0bc0]
movaps xmm2, xmmword [0x1401a0bd0]
movaps xmm3, xmmword [0x1401a0be0]
xor eax, eax
mov qword [rbp + 0x188], rax
movaps xmmword [rbp + 0x190], xmm3
movaps xmmword [rbp + 0x1a0], xmm2
movaps xmmword [rbp + 0x1b0], xmm1
movaps xmmword [rbp + 0x1c0], xmm0
jmp 0x140173b39
mov rax, qword [rbp + 0x188]
movaps xmm2, xmmword [rbp + 0x190]
movaps xmm7, xmmword [rbp + 0x1a0]
movaps xmm8, xmmword [rbp + 0x1b0]
movaps xmm5, xmmword [rbp + 0x1c0]
movaps xmmword [rbp + 0x120], xmm5
movaps xmmword [rbp + 0x130], xmm8
movaps xmmword [rbp + 0x140], xmm7
movaps xmmword [rbp + 0x150], xmm2
mov qword [rbp + 0x168], rax
movaps xmm6, xmmword [0x1401a0bf0]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x1401a0c00]
pshufd xmm3, xmm4, 0xf5
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp + 0x170], xmm1
movd eax, xmm0
test al, 1
jne 0x140173c5e
jmp 0x140173c74
mov rax, qword [rbp + 0xd40]
mov rcx, qword [rbp + 0x168]
mov dl, 0x4e
xor dl, 0x4e
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x170]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x140173c8f
jmp 0x140173ce9
mov rax, qword [rbp + 0xd40]
mov rcx, qword [rbp + 0x168]
movabs r8, 0xa6e80b5cf1b1bc0b
movabs rdx, 0xa6e80b5cf1b1bc0a
xor r8, rdx
movabs rdx, 0xb90df03b49e0f81b
movabs r9, 0x46f20fc4b61f07e4
xor rdx, r9
xor r8, rdx
mov rdx, rcx
and rdx, r8
mov r8, rcx
xor r8, 1
add rcx, r8
sub rcx, rdx
mov dl, 0x64
xor dl, 0x64
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x170]
pextrw eax, xmm0, 2
test al, 1
jne 0x140173d02
jmp 0x140173d2e
mov rax, qword [rbp + 0xd40]
mov rcx, qword [rbp + 0x168]
movabs rdx, 0xae653d8e09f13ddc
movabs r8, 0xae653d8e09f13dde
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x170]
pextrw eax, xmm0, 3
test al, 1
jne 0x140173d47
jmp 0x140173db9
mov rax, qword [rbp + 0xd40]
mov rdx, qword [rbp + 0x168]
mov rcx, rdx
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or rcx, rdx
movabs rdx, 0xfd96d31f3c3cb4f5
movabs r8, 0xfd96d31f3c3cb4f6
xor rdx, r8
movabs r8, 0x75d59269392fe96d
movabs r9, 0x75d59269392fe96e
xor r8, r9
and rdx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
movabs rdx, 0x350cff30cd2c0bf1
movabs r8, 0xcaf300cf32d3f40e
xor rdx, r8
xor rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x170]
pextrw eax, xmm0, 4
test al, 1
jne 0x140173dd2
jmp 0x140173e02
mov rax, qword [rbp + 0xd40]
mov rcx, qword [rbp + 0x168]
movabs rdx, 0x43b5a7cce092a0c0
movabs r8, 0x43b5a7cce092a0c4
xor rdx, r8
or rcx, rdx
mov dl, 0x29
xor dl, 0x29
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x170]
pextrw eax, xmm0, 5
test al, 1
jne 0x140173e1b
jmp 0x140173e8b
mov rax, qword [rbp + 0xd40]
mov rdx, qword [rbp + 0x168]
movabs r8, 0x69a8fd4908a5b474
movabs rcx, 0x965702b6f75a4b8b
xor r8, rcx
mov rcx, rdx
xor rcx, r8
movabs r8, 0xf62bc172638084e7
movabs r9, 0x9d43e8d9c7f7b18
xor r8, r9
xor rdx, r8
or rcx, rdx
mov rdx, 0xffffffffffffffff
xor rdx, 5
mov r8, 0xffffffffffffffff
xor r8, 5
or rdx, r8
and rcx, rdx
xor rcx, 0xffffffffffffffff
mov dl, 0x4c
xor dl, 0x4c
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x170]
pextrw eax, xmm0, 6
test al, 1
jne 0x140173ea4
jmp 0x140173f0f
mov rax, qword [rbp + 0xd40]
mov rcx, qword [rbp + 0x168]
movabs rdx, 0x10545ae5d718c1c7
movabs r8, 0x10545ae5d718c1c1
xor rdx, r8
and rdx, rcx
movabs r8, 0x1a9bc2a227051ddb
movabs r9, 0xe5643d5dd8fae224
xor r8, r9
xor rdx, r8
movabs r8, 0xbdaa5096ab89f43a
movabs r9, 0xbdaa5096ab89f43c
xor r8, r9
add rcx, r8
add rcx, 1
add rcx, rdx
mov dl, 0xbc
xor dl, 0xbc
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x170]
pextrw eax, xmm0, 7
test al, 1
jne 0x140173f28
jmp 0x140173f54
mov rax, qword [rbp + 0xd40]
mov rcx, qword [rbp + 0x168]
movabs rdx, 0x6975adddfc2a4722
movabs r8, 0x6975adddfc2a4725
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x120]
movaps xmm1, xmmword [rbp + 0x130]
movaps xmm2, xmmword [rbp + 0x140]
movaps xmm3, xmmword [rbp + 0x150]
mov rax, qword [rbp + 0x168]
add rax, 8
movaps xmm4, xmmword [0x1401a0c10]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x188], rax
movaps xmmword [rbp + 0x190], xmm3
movaps xmmword [rbp + 0x1a0], xmm2
movaps xmmword [rbp + 0x1b0], xmm1
movaps xmmword [rbp + 0x1c0], xmm0
jne 0x140173b39
jmp 0x140173fc7
mov rax, qword [rbp + 0xd48]
mov qword [rax], 0
mov rcx, rax
add rcx, 8
mov qword [rbp + 0x100], rcx
mov qword [rax + 8], 0
mov word [rbp + 0x129e], 0x328
lea rcx, [rbp + 0x129e]
sub rsp, 0x20
call fcn.140064a51
mov rdx, qword [rbp + 0xf30]
add rsp, 0x20
mov qword [rbp + 0x108], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x117], cl
mov qword [rbp + 0x118], rax
jne 0x140174d81
mov rax, qword [rbp + 0xf30]
mov rcx, qword [rbp + 0xf68]
mov dl, byte [rax]
mov byte [rbp - 0x72], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1400c2e1f
mov rcx, qword [rbp + 0xf30]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp - 0x71], al
jne 0x14017512d
mov rax, qword [rbp + 0x1358]
mov qword [rbp + 0xf70], rax
mov rax, qword [rbp + 0x1360]
mov qword [rbp + 0xf78], rax
lea rcx, [rbp + 0xf70]
sub rsp, 0x20
call fcn.1400f67be
mov rcx, qword [rbp + 0xf30]
mov al, byte [rbp - 0x72]
add rsp, 0x20
mov dl, 1
mov byte [rbp - 0x74], dl
cmp byte [rcx], 0
mov byte [rbp - 0x73], al
je 0x140175127
mov al, byte [rbp - 0x74]
mov byte [rbp - 0x73], al
mov al, byte [rbp - 0x73]
mov byte [rbp - 0x71], al
mov rax, qword [rbp + 0xf30]
mov cl, byte [rbp - 0x71]
mov byte [rbp - 0x75], cl
mov byte [rax], 0
mov rcx, qword [rbp + 0x1368]
sub rsp, 0x20
call fcn.14016c59d
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140175175
mov al, byte [rbp - 0x75]
mov rcx, qword [rbp + 0xf30]
mov byte [rcx], al
cmp al, 0
je 0x140175203
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000a414
add rsp, 0x20
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [rbp - 0x80], rax
cmp word [rax + 0x12], 1
jle 0x140175203
mov rax, qword [rbp - 0x80]
mov rax, qword [rax + 0x18]
mov eax, dword [rax + 8]
mov ecx, 0xf722ca45
xor ecx, 0x232783c3
cmp eax, ecx
jne 0x140175203
mov rax, qword [rbp + 0xf30]
mov byte [rax], 0
sub rsp, 0x20
call fcn.140175842
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14008afaa
mov rax, qword [rbp + 0xf30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140175203
sub rsp, 0x20
call fcn.1401758a1
add rsp, 0x20
movaps xmm6, xmmword [rbp + 0x1370]
movaps xmm7, xmmword [rbp + 0x1380]
movaps xmm8, xmmword [rbp + 0x1390]
lea rsp, [rbp + 0x13a0]
pop rdi
pop rsi
pop rbp
ret