Function at 0x140237205
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
mov eax, 0x1090
call fcn.140271bb0
sub rsp, rax
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x1000], xmm8
movaps xmmword [rbp + 0xff0], xmm7
movaps xmmword [rbp + 0xfe0], xmm6
mov qword [rbp + 0xa88], rcx
mov eax, 0x10
mov qword [rbp + 0xb38], rax
call fcn.140271bb0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xa90], rax
mov eax, 0x20
mov qword [rbp + 0xad0], rax
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xa98], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xad0]
mov rcx, rsp
mov qword [rbp + 0xaa0], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xad0]
mov rcx, rsp
mov qword [rbp + 0xaa8], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xab0], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xad0]
mov rcx, rsp
mov qword [rbp + 0xab8], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xac0], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xac8], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xad0]
mov rcx, rsp
mov qword [rbp + 0xad8], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xae0], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xae8], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xaf0], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xaf8], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xb00], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xb08], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xb10], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xb18], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xb20], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xb28], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xb30], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0xb38]
mov rcx, rsp
mov qword [rbp + 0xb40], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb48], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov qword [rbp + 0xb80], rax
add rax, 0x60
mov qword [rbp + 0xb50], rax
lea rax, [rbp + 0xf58]
add rax, 8
mov qword [rbp + 0xb58], rax
lea rax, [rbp + 0xf48]
add rax, 8
mov qword [rbp + 0xb60], rax
lea rax, [rbp + 0xf38]
add rax, 8
mov qword [rbp + 0xb68], rax
mov qword [rbp + 0xf28], 0
lea rax, [rbp + 0xf28]
add rax, 8
mov qword [rbp + 0xb70], rax
mov qword [rbp + 0xf30], 0
mov qword [rbp + 0xf18], 0
lea rax, [rbp + 0xf18]
add rax, 8
mov qword [rbp + 0xb78], rax
mov qword [rbp + 0xf20], 0
mov rax, qword [0x14028c6c8]
mov qword [rbp + 0xf58], rax
mov rax, qword [0x14028c6d0]
mov qword [rbp + 0xf60], rax
mov rax, qword [0x14028c6c8]
mov qword [rbp + 0xf48], rax
mov rax, qword [0x14028c6d0]
mov qword [rbp + 0xf50], rax
mov rax, qword [0x14028c6c8]
mov qword [rbp + 0xf38], rax
mov rax, qword [0x14028c6d0]
mov qword [rbp + 0xf40], rax
mov word [rbp + 0xf0e], 0x1c1
lea rcx, [rbp + 0xf0e]
sub rsp, 0x20
call fcn.140096085
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xb80]
mov qword [rbp + 0xb88], rcx
cmp byte [rax + 0x60], 0
jne 0x14023a88d
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rax, qword [rbp + 0xb88]
xorps xmm0, xmm0
movaps xmmword [rbp + 0xef0], xmm0
mov rcx, qword [rax]
mov qword [rbp + 0xe40], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xe48], rax
lea rcx, [rbp + 0xef0]
mov rdx, 0xffffffff80000002
lea r8, [rbp + 0xe40]
mov r9d, 0x20019
sub rsp, 0x20
call fcn.140129fe0
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14023a88d
mov rax, qword [rbp + 0xef0]
mov qword [rbp + 0xa80], rax
mov al, byte [rbp + 0xef8]
mov cl, 0xd8
xor cl, 0xd8
cmp al, cl
jne 0x140237661
sub rsp, 0x20
call fcn.1400ba280
add rsp, 0x20
mov rax, qword [rbp + 0xb50]
mov al, byte [rax]
mov cl, 0x26
xor cl, 0x26
cmp al, cl
jne 0x14023a88d
jmp 0x14023a99a
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
movaps xmm0, xmmword [0x14028c630]
movaps xmm1, xmmword [0x14028c640]
movaps xmm2, xmmword [0x14028c650]
movaps xmm3, xmmword [0x14028c660]
xor eax, eax
mov qword [rbp + 0xa38], rax
movaps xmmword [rbp + 0xa40], xmm3
movaps xmmword [rbp + 0xa50], xmm2
movaps xmmword [rbp + 0xa60], xmm1
movaps xmmword [rbp + 0xa70], xmm0
jmp 0x1402376bd
mov rax, qword [rbp + 0xa38]
movaps xmm2, xmmword [rbp + 0xa40]
movaps xmm7, xmmword [rbp + 0xa50]
movaps xmm8, xmmword [rbp + 0xa60]
movaps xmm5, xmmword [rbp + 0xa70]
movaps xmmword [rbp + 0x9d0], xmm5
movaps xmmword [rbp + 0x9e0], xmm8
movaps xmmword [rbp + 0x9f0], xmm7
movaps xmmword [rbp + 0xa00], xmm2
mov qword [rbp + 0xa18], rax
movaps xmm6, xmmword [0x14028c670]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x14028c680]
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 + 0xa20], xmm1
movd eax, xmm0
test al, 1
jne 0x1402377e2
jmp 0x1402377f1
mov rax, qword [rbp + 0xa18]
mov byte [rbp + rax + 0xed0], 0
movaps xmm0, xmmword [rbp + 0xa20]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x14023780c
jmp 0x14023781f
mov rax, qword [rbp + 0xa18]
or rax, 1
mov byte [rbp + rax + 0xed0], 0
movaps xmm0, xmmword [rbp + 0xa20]
pextrw eax, xmm0, 2
test al, 1
jne 0x140237838
jmp 0x140237886
mov rax, qword [rbp + 0xa18]
movabs rcx, 0x887352d337493f75
movabs rdx, 0x887352d337493f77
xor rcx, rdx
and rcx, rax
xor rcx, 0xffffffffffffffff
movabs rdx, 0x6457a3c1cc31e3b5
movabs r8, 0x6457a3c1cc31e3b7
xor rdx, r8
add rax, rdx
add rax, 1
add rax, rcx
mov byte [rbp + rax + 0xed0], 0
movaps xmm0, xmmword [rbp + 0xa20]
pextrw eax, xmm0, 3
test al, 1
jne 0x14023789f
jmp 0x140237951
mov r11, qword [rbp + 0xa18]
movabs rax, 0x516b257bc307ae1d
movabs rcx, 0xae94da843cf851e2
xor rax, rcx
mov rcx, r11
xor rcx, rax
mov rdx, 0xffffffffffffffff
xor rdx, 3
mov r8, 0xffffffffffffffff
movabs rax, 0xee91ea1a0b749d7d
xor r8, rax
movabs r9, 0xee91ea1a0b749d7d
mov rax, rcx
and rax, r9
and r11, r8
movabs r10, 0x3c15794225f6d16d
movabs r9, 0xd28493582e824c10
xor r10, r9
mov r9, rdx
and r9, r10
mov r10, r8
and r10, 3
or rax, r11
or r9, r10
xor rax, r9
or rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x1a052fead3ca82d3
movabs r9, 0xf494c5f0d8be1fae
xor rdx, r9
or rdx, r8
and rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0xed0], 0
movaps xmm0, xmmword [rbp + 0xa20]
pextrw eax, xmm0, 4
test al, 1
jne 0x14023796a
jmp 0x14023797d
mov rax, qword [rbp + 0xa18]
or rax, 4
mov byte [rbp + rax + 0xed0], 0
movaps xmm0, xmmword [rbp + 0xa20]
pextrw eax, xmm0, 5
test al, 1
jne 0x140237996
jmp 0x1402379bf
mov rax, qword [rbp + 0xa18]
movabs rcx, 0x6faf39da54b52bc4
movabs rdx, 0x6faf39da54b52bc1
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0xed0], 0
movaps xmm0, xmmword [rbp + 0xa20]
pextrw eax, xmm0, 6
test al, 1
jne 0x1402379d8
jmp 0x1402379ef
mov rax, qword [rbp + 0xa18]
or rax, 6
mov cl, 0xdd
xor cl, 0xdd
mov byte [rbp + rax + 0xed0], cl
movaps xmm0, xmmword [rbp + 0xa20]
pextrw eax, xmm0, 7
test al, 1
jne 0x140237a08
jmp 0x140237a1f
mov rax, qword [rbp + 0xa18]
or rax, 7
mov cl, 0x32
xor cl, 0x32
mov byte [rbp + rax + 0xed0], cl
movaps xmm0, xmmword [rbp + 0x9d0]
movaps xmm1, xmmword [rbp + 0x9e0]
movaps xmm2, xmmword [rbp + 0x9f0]
movaps xmm3, xmmword [rbp + 0xa00]
mov rax, qword [rbp + 0xa18]
add rax, 8
movaps xmm4, xmmword [0x14028c690]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0xa38], rax
movaps xmmword [rbp + 0xa40], xmm3
movaps xmmword [rbp + 0xa50], xmm2
movaps xmmword [rbp + 0xa60], xmm1
movaps xmmword [rbp + 0xa70], xmm0
jne 0x1402376bd
jmp 0x140237a92
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
movaps xmm0, xmmword [0x14028c630]
movaps xmm1, xmmword [0x14028c640]
movaps xmm2, xmmword [0x14028c650]
movaps xmm3, xmmword [0x14028c660]
xor eax, eax
mov qword [rbp + 0x988], rax
movaps xmmword [rbp + 0x990], xmm3
movaps xmmword [rbp + 0x9a0], xmm2
movaps xmmword [rbp + 0x9b0], xmm1
movaps xmmword [rbp + 0x9c0], xmm0
jmp 0x140237aee
mov rax, qword [rbp + 0x988]
movaps xmm2, xmmword [rbp + 0x990]
movaps xmm7, xmmword [rbp + 0x9a0]
movaps xmm8, xmmword [rbp + 0x9b0]
movaps xmm5, xmmword [rbp + 0x9c0]
movaps xmmword [rbp + 0x920], xmm5
movaps xmmword [rbp + 0x930], xmm8
movaps xmmword [rbp + 0x940], xmm7
movaps xmmword [rbp + 0x950], xmm2
mov qword [rbp + 0x968], rax
movaps xmm6, xmmword [0x14028c670]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x14028c680]
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 + 0x970], xmm1
movd eax, xmm0
test al, 1
jne 0x140237c13
jmp 0x140237c25
mov rax, qword [rbp + 0xa98]
mov rcx, qword [rbp + 0x968]
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x970]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x140237c40
jmp 0x140237c64
mov rax, qword [rbp + 0xa98]
mov rdx, qword [rbp + 0x968]
mov rcx, rdx
and rcx, 1
xor rdx, 1
or rcx, rdx
mov dl, 0xcf
xor dl, 0xcf
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x970]
pextrw eax, xmm0, 2
test al, 1
jne 0x140237c7d
jmp 0x140237c93
mov rax, qword [rbp + 0xa98]
mov rcx, qword [rbp + 0x968]
or rcx, 2
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x970]
pextrw eax, xmm0, 3
test al, 1
jne 0x140237cac
jmp 0x140237cea
mov rax, qword [rbp + 0xa98]
mov rcx, qword [rbp + 0x968]
mov rdx, rcx
and rdx, 3
xor rdx, 0xffffffffffffffff
add rcx, 3
movabs r8, 0xcd9c681bbf62419a
movabs r9, 0xcd9c681bbf62419b
xor r8, r9
add rcx, r8
add rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x970]
pextrw eax, xmm0, 4
test al, 1
jne 0x140237d03
jmp 0x140237d1d
mov rax, qword [rbp + 0xa98]
mov rcx, qword [rbp + 0x968]
or rcx, 4
mov dl, 0xdc
xor dl, 0xdc
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x970]
pextrw eax, xmm0, 5
test al, 1
jne 0x140237d36
jmp 0x140237e0a
mov rax, qword [rbp + 0xa98]
mov rsi, qword [rbp + 0x968]
mov rdx, rsi
xor rdx, 0xffffffffffffffff
movabs r9, 0x883ceb29e89fad56
movabs rcx, 0x883ceb29e89fad53
xor r9, rcx
movabs rcx, 0x7359b6ea8bd9ce74
movabs r8, 0x8ca649157426318b
xor rcx, r8
xor r9, rcx
mov r8, 0xffffffffffffffff
movabs rcx, 0xb3871223c7e716f0
xor r8, rcx
movabs r10, 0xb3871223c7e716f0
mov rcx, rdx
and rcx, r10
and rsi, r8
movabs r11, 0xb3871223c7e716f0
mov r10, r9
and r10, r11
movabs r11, 0xa54d85a54ac4b5d
movabs rdi, 0xa54d85a54ac4b58
xor r11, rdi
and r11, r8
or rcx, rsi
or r10, r11
xor rcx, r10
or rdx, r9
movabs r9, 0x17630aa9f5edf356
movabs r10, 0xe89cf5560a120ca9
xor r9, r10
xor rdx, r9
movabs r9, 0xb3871223c7e716f0
or r8, r9
and rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x970]
pextrw eax, xmm0, 6
test al, 1
jne 0x140237e23
jmp 0x140237ed5
mov rax, qword [rbp + 0xa98]
mov rsi, qword [rbp + 0x968]
mov rdx, rsi
xor rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 6
mov r9, 0xffffffffffffffff
movabs rcx, 0x724eb96631b97c90
xor r9, rcx
movabs r10, 0x3c48e892ba1b4eb6
movabs rcx, 0x4e0651f48ba23226
xor r10, rcx
mov rcx, rdx
and rcx, r10
and rsi, r9
movabs r11, 0x724eb96631b97c90
mov r10, r8
and r10, r11
movabs r11, 0xa4423c89a97ad0f7
movabs rdi, 0xa4423c89a97ad0f1
xor r11, rdi
and r11, r9
or rcx, rsi
or r10, r11
xor rcx, r10
or rdx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0x41f3343b383e17b5
movabs r10, 0x33bd8d5d09876b25
xor r8, r10
or r8, r9
and rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x970]
pextrw eax, xmm0, 7
test al, 1
jne 0x140237eee
jmp 0x140237f3f
mov rax, qword [rbp + 0xa98]
mov rcx, qword [rbp + 0x968]
movabs rdx, 0xa116f4d3a84f7f67
movabs r8, 0xa116f4d3a84f7f60
xor rdx, r8
and rdx, rcx
xor rdx, 0xffffffffffffffff
movabs r8, 0xf55d75091148ab0b
movabs r9, 0xf55d75091148ab0c
xor r8, r9
add rcx, r8
add rcx, 1
add rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x920]
movaps xmm1, xmmword [rbp + 0x930]
movaps xmm2, xmmword [rbp + 0x940]
movaps xmm3, xmmword [rbp + 0x950]
mov rax, qword [rbp + 0x968]
add rax, 8
movaps xmm4, xmmword [0x14028c690]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x988], rax
movaps xmmword [rbp + 0x990], xmm3
movaps xmmword [rbp + 0x9a0], xmm2
movaps xmmword [rbp + 0x9b0], xmm1
movaps xmmword [rbp + 0x9c0], xmm0
jne 0x140237aee
jmp 0x140237fb2
mov rax, qword [rbp + 0xaa0]
xor ecx, ecx
mov qword [rbp + 0x8d0], rcx
mov qword [rax], rcx
mov rdx, rax
add rdx, 8
mov qword [rbp + 0x8c8], rdx
mov qword [rax + 8], rcx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rax, qword [rbp + 0x8d0]
movaps xmm0, xmmword [0x14028c630]
movaps xmm1, xmmword [0x14028c640]
movaps xmm2, xmmword [0x14028c650]
movaps xmm3, xmmword [0x14028c660]
mov qword [rbp + 0x8d8], rax
movaps xmmword [rbp + 0x8e0], xmm3
movaps xmmword [rbp + 0x8f0], xmm2
movaps xmmword [rbp + 0x900], xmm1
movaps xmmword [rbp + 0x910], xmm0
jmp 0x140238038
mov rax, qword [rbp + 0x8d8]
movaps xmm2, xmmword [rbp + 0x8e0]
movaps xmm7, xmmword [rbp + 0x8f0]
movaps xmm8, xmmword [rbp + 0x900]
movaps xmm5, xmmword [rbp + 0x910]
movaps xmmword [rbp + 0x860], xmm5
movaps xmmword [rbp + 0x870], xmm8
movaps xmmword [rbp + 0x880], xmm7
movaps xmmword [rbp + 0x890], xmm2
mov qword [rbp + 0x8a8], rax
movaps xmm6, xmmword [0x14028c670]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x14028c680]
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 + 0x8b0], xmm1
movd eax, xmm0
test al, 1
jne 0x14023815d
jmp 0x14023816c
mov rax, qword [rbp + 0x8a8]
mov byte [rbp + rax + 0xeb0], 0
movaps xmm0, xmmword [rbp + 0x8b0]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x140238187
jmp 0x1402381e1
mov rax, qword [rbp + 0x8a8]
and rax, rax
xor rax, 0xffffffffffffffff
movabs rcx, 0x4dfaaa0ee14efad3
movabs rdx, 0x4dfaaa0ee14efad2
xor rcx, rdx
movabs rdx, 0xb462f2f24cbfa151
movabs r8, 0xb462f2f24cbfa150
xor rdx, r8
and rcx, rdx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
mov cl, 0xee
xor cl, 0xee
mov byte [rbp + rax + 0xeb0], cl
movaps xmm0, xmmword [rbp + 0x8b0]
pextrw eax, xmm0, 2
test al, 1
jne 0x1402381fa
jmp 0x140238211
mov rax, qword [rbp + 0x8a8]
or rax, 2
mov cl, 0x17
xor cl, 0x17
mov byte [rbp + rax + 0xeb0], cl
movaps xmm0, xmmword [rbp + 0x8b0]
pextrw eax, xmm0, 3
test al, 1
jne 0x14023822a
jmp 0x140238257
mov rax, qword [rbp + 0x8a8]
mov rdx, 0xffffffffffffffff
xor rdx, 3
mov rcx, rax
and rcx, rdx
mov rdx, rax
xor rdx, 3
add rax, rdx
sub rax, rcx
mov byte [rbp + rax + 0xeb0], 0
movaps xmm0, xmmword [rbp + 0x8b0]
pextrw eax, xmm0, 4
test al, 1
jne 0x140238270
jmp 0x1402382a8
mov rax, qword [rbp + 0x8a8]
movabs rcx, 0x51bf2b5bd17472e7
movabs rdx, 0x51bf2b5bd17472e3
xor rcx, rdx
and rcx, rax
xor rcx, 0xffffffffffffffff
add rax, 4
add rax, 1
add rax, rcx
mov byte [rbp + rax + 0xeb0], 0
movaps xmm0, xmmword [rbp + 0x8b0]
pextrw eax, xmm0, 5
test al, 1
jne 0x1402382c1
jmp 0x1402382d4
mov rax, qword [rbp + 0x8a8]
or rax, 5
mov byte [rbp + rax + 0xeb0], 0
movaps xmm0, xmmword [rbp + 0x8b0]
pextrw eax, xmm0, 6
test al, 1
jne 0x1402382ed
jmp 0x14023831a
mov rax, qword [rbp + 0x8a8]
movabs rcx, 0xd3d69ed3b0e1571
movabs rdx, 0xd3d69ed3b0e1577
xor rcx, rdx
or rax, rcx
mov cl, 0xca
xor cl, 0xca
mov byte [rbp + rax + 0xeb0], cl
movaps xmm0, xmmword [rbp + 0x8b0]
pextrw eax, xmm0, 7
test al, 1
jne 0x140238333
jmp 0x140238346
mov rax, qword [rbp + 0x8a8]
or rax, 7
mov byte [rbp + rax + 0xeb0], 0
movaps xmm0, xmmword [rbp + 0x860]
movaps xmm1, xmmword [rbp + 0x870]
movaps xmm2, xmmword [rbp + 0x880]
movaps xmm3, xmmword [rbp + 0x890]
mov rax, qword [rbp + 0x8a8]
add rax, 8
movaps xmm4, xmmword [0x14028c690]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x8d8], rax
movaps xmmword [rbp + 0x8e0], xmm3
movaps xmmword [rbp + 0x8f0], xmm2
movaps xmmword [rbp + 0x900], xmm1
movaps xmmword [rbp + 0x910], xmm0
jne 0x140238038
jmp 0x1402383b9
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
movaps xmm0, xmmword [0x14028c630]
movaps xmm1, xmmword [0x14028c640]
movaps xmm2, xmmword [0x14028c650]
movaps xmm3, xmmword [0x14028c660]
xor eax, eax
mov qword [rbp + 0x818], rax
movaps xmmword [rbp + 0x820], xmm3
movaps xmmword [rbp + 0x830], xmm2
movaps xmmword [rbp + 0x840], xmm1
movaps xmmword [rbp + 0x850], xmm0
jmp 0x140238415
mov rax, qword [rbp + 0x818]
movaps xmm2, xmmword [rbp + 0x820]
movaps xmm7, xmmword [rbp + 0x830]
movaps xmm8, xmmword [rbp + 0x840]
movaps xmm5, xmmword [rbp + 0x850]
movaps xmmword [rbp + 0x7b0], xmm5
movaps xmmword [rbp + 0x7c0], xmm8
movaps xmmword [rbp + 0x7d0], xmm7
movaps xmmword [rbp + 0x7e0], xmm2
mov qword [rbp + 0x7f8], rax
movaps xmm6, xmmword [0x14028c670]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x14028c680]
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 + 0x800], xmm1
movd eax, xmm0
test al, 1
jne 0x14023853a
jmp 0x140238550
mov rax, qword [rbp + 0xaa8]
mov rcx, qword [rbp + 0x7f8]
mov dl, 0x11
xor dl, 0x11
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x800]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x14023856b
jmp 0x1402385ad
mov rax, qword [rbp + 0xaa8]
mov rcx, qword [rbp + 0x7f8]
mov rdx, rcx
and rdx, 1
xor rdx, 0xffffffffffffffff
add rcx, 1
movabs r8, 0x89aaca3b81f79d94
movabs r9, 0x89aaca3b81f79d95
xor r8, r9
add rcx, r8
add rcx, rdx
mov dl, 0x15
xor dl, 0x15
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x800]
pextrw eax, xmm0, 2
test al, 1
jne 0x1402385c6
jmp 0x1402385e0
mov rax, qword [rbp + 0xaa8]
mov rcx, qword [rbp + 0x7f8]
or rcx, 2
mov dl, 0x7d
xor dl, 0x7d
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x800]
pextrw eax, xmm0, 3
test al, 1
jne 0x1402385f9
jmp 0x14023860f
mov rax, qword [rbp + 0xaa8]
mov rcx, qword [rbp + 0x7f8]
or rcx, 3
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x800]
pextrw eax, xmm0, 4
test al, 1
jne 0x140238628
jmp 0x140238680
mov rax, qword [rbp + 0xaa8]
mov rcx, qword [rbp + 0x7f8]
mov rdx, rcx
and rdx, 4
xor rdx, 0xffffffffffffffff
movabs r8, 0xae6fe081363edfe8
movabs r9, 0xae6fe081363edfec
xor r8, r9
add rcx, r8
movabs r8, 0x4f232e11c8a0d1bd
movabs r9, 0x4f232e11c8a0d1bc
xor r8, r9
add rcx, r8
add rcx, rdx
mov dl, 0xb9
xor dl, 0xb9
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x800]
pextrw eax, xmm0, 5
test al, 1
jne 0x140238699
jmp 0x1402386f3
mov rax, qword [rbp + 0xaa8]
mov rcx, qword [rbp + 0x7f8]
movabs r8, 0x15e05fe44ce35f0c
movabs rdx, 0x15e05fe44ce35f09
xor r8, rdx
movabs rdx, 0x328f622930dda32e
movabs r9, 0xcd709dd6cf225cd1
xor rdx, r9
xor r8, rdx
mov rdx, rcx
and rdx, r8
mov r8, rcx
xor r8, 5
add rcx, r8
sub rcx, rdx
mov dl, 0xd3
xor dl, 0xd3
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x800]
pextrw eax, xmm0, 6
test al, 1
jne 0x14023870c
jmp 0x140238738
mov rax, qword [rbp + 0xaa8]
mov rcx, qword [rbp + 0x7f8]
movabs rdx, 0xc395eb8f2a0fd904
movabs r8, 0xc395eb8f2a0fd902
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x800]
pextrw eax, xmm0, 7
test al, 1
jne 0x140238751
jmp 0x140238829
mov rax, qword [rbp + 0xaa8]
mov rsi, qword [rbp + 0x7f8]
mov rdx, rsi
xor rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 7
movabs r9, 0xc93c1d98ea40c1cd
movabs rcx, 0x40928faad03cee6c
xor r9, rcx
movabs rcx, 0x8073732f9527d236
movabs r10, 0x7f8c8cd06ad82dc9
xor rcx, r10
xor r9, rcx
movabs r10, 0x89ae92323a7c2fa1
mov rcx, rdx
and rcx, r10
and rsi, r9
movabs r11, 0x89ae92323a7c2fa1
mov r10, r8
and r10, r11
movabs r11, 0x8adf50a2830849f3
movabs rdi, 0x8adf50a2830849f4
xor r11, rdi
and r11, r9
or rcx, rsi
or r10, r11
xor rcx, r10
or rdx, r8
movabs r8, 0xa07e38a6ea11ce36
movabs r10, 0x5f81c75915ee31c9
xor r8, r10
xor rdx, r8
movabs r8, 0x9d3d375e7e5d5ab8
movabs r10, 0x1493a56c44217519
xor r8, r10
or r8, r9
and rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x7b0]
movaps xmm1, xmmword [rbp + 0x7c0]
movaps xmm2, xmmword [rbp + 0x7d0]
movaps xmm3, xmmword [rbp + 0x7e0]
mov rax, qword [rbp + 0x7f8]
add rax, 8
movaps xmm4, xmmword [0x14028c690]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x818], rax
movaps xmmword [rbp + 0x820], xmm3
movaps xmmword [rbp + 0x830], xmm2
movaps xmmword [rbp + 0x840], xmm1
movaps xmmword [rbp + 0x850], xmm0
jne 0x140238415
jmp 0x14023889c
xor eax, eax
mov qword [rbp + 0x760], rax
mov qword [rbp + 0xea0], rax
lea rcx, [rbp + 0xea8]
mov qword [rbp + 0x758], rcx
mov qword [rbp + 0xea8], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rax, qword [rbp + 0x760]
movaps xmm0, xmmword [0x14028c630]
movaps xmm1, xmmword [0x14028c640]
movaps xmm2, xmmword [0x14028c650]
movaps xmm3, xmmword [0x14028c660]
mov qword [rbp + 0x768], rax
movaps xmmword [rbp + 0x770], xmm3
movaps xmmword [rbp + 0x780], xmm2
movaps xmmword [rbp + 0x790], xmm1
movaps xmmword [rbp + 0x7a0], xmm0
jmp 0x140238922
mov rax, qword [rbp + 0x768]
movaps xmm2, xmmword [rbp + 0x770]
movaps xmm7, xmmword [rbp + 0x780]
movaps xmm8, xmmword [rbp + 0x790]
movaps xmm5, xmmword [rbp + 0x7a0]
movaps xmmword [rbp + 0x6f0], xmm5
movaps xmmword [rbp + 0x700], xmm8
movaps xmmword [rbp + 0x710], xmm7
movaps xmmword [rbp + 0x720], xmm2
mov qword [rbp + 0x738], rax
movaps xmm6, xmmword [0x14028c670]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x14028c680]
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 + 0x740], xmm1
movd eax, xmm0
test al, 1
jne 0x140238a47
jmp 0x140238a56
mov rax, qword [rbp + 0x738]
mov byte [rbp + rax + 0xe80], 0
movaps xmm0, xmmword [rbp + 0x740]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x140238a71
jmp 0x140238a9a
mov rax, qword [rbp + 0x738]
movabs rcx, 0x7249b93b8755f4e6
movabs rdx, 0x7249b93b8755f4e7
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0xe80], 0
movaps xmm0, xmmword [rbp + 0x740]
pextrw eax, xmm0, 2
test al, 1
jne 0x140238ab3
jmp 0x140238b05
mov rax, qword [rbp + 0x738]
movabs rcx, 0x5c87cf871297a426
movabs rdx, 0x5c87cf871297a424
xor rcx, rdx
and rcx, rax
movabs rdx, 0x9a0ec41239a57773
movabs r8, 0x65f13bedc65a888c
xor rdx, r8
xor rcx, rdx
add rax, 2
add rax, 1
add rax, rcx
mov cl, 0xbf
xor cl, 0xbf
mov byte [rbp + rax + 0xe80], cl
movaps xmm0, xmmword [rbp + 0x740]
pextrw eax, xmm0, 3
test al, 1
jne 0x140238b1e
jmp 0x140238b35
mov rax, qword [rbp + 0x738]
or rax, 3
mov cl, 0xe7
xor cl, 0xe7
mov byte [rbp + rax + 0xe80], cl
movaps xmm0, xmmword [rbp + 0x740]
pextrw eax, xmm0, 4
test al, 1
jne 0x140238b4e
jmp 0x140238b61
mov rax, qword [rbp + 0x738]
or rax, 4
mov byte [rbp + rax + 0xe80], 0
movaps xmm0, xmmword [rbp + 0x740]
pextrw eax, xmm0, 5
test al, 1
jne 0x140238b7a
jmp 0x140238ba3
mov rax, qword [rbp + 0x738]
movabs rcx, 0xba7aca1d50f78e88
movabs rdx, 0xba7aca1d50f78e8d
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0xe80], 0
movaps xmm0, xmmword [rbp + 0x740]
pextrw eax, xmm0, 6
test al, 1
jne 0x140238bbc
jmp 0x140238c1c
mov rax, qword [rbp + 0x738]
and rax, rax
xor rax, 0xffffffffffffffff
movabs rcx, 0xb3a72d47de6a02ed
movabs rdx, 0xb3a72d47de6a02eb
xor rcx, rdx
movabs rdx, 0x7a4b02f0d042dcd3
movabs r8, 0x85b4fd0f2fbd232c
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
xor rdx, 6
or rcx, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
mov byte [rbp + rax + 0xe80], 0
movaps xmm0, xmmword [rbp + 0x740]
pextrw eax, xmm0, 7
test al, 1
jne 0x140238c35
jmp 0x140238cb7
mov r11, qword [rbp + 0x738]
mov rcx, r11
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 7
mov rdx, 0xffffffffffffffff
movabs rax, 0xe3ce486f58fa2673
xor rdx, rax
movabs r9, 0xe3ce486f58fa2673
mov rax, rcx
and rax, r9
and r11, rdx
movabs r10, 0xe3ce486f58fa2673
mov r9, r8
and r9, r10
mov r10, rdx
and r10, 7
or rax, r11
or r9, r10
xor rax, r9
or rcx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0xe3ce486f58fa2673
or rdx, r8
and rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0xe80], 0
movaps xmm0, xmmword [rbp + 0x6f0]
movaps xmm1, xmmword [rbp + 0x700]
movaps xmm2, xmmword [rbp + 0x710]
movaps xmm3, xmmword [rbp + 0x720]
mov rax, qword [rbp + 0x738]
mov ecx, eax
and ecx, 8
xor rax, 8
lea rax, [rax + rcx*2]
movaps xmm4, xmmword [0x14028c6a0]
psubq xmm3, xmm4
psubq xmm2, xmm4
psubq xmm1, xmm4
psubq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x768], rax
movaps xmmword [rbp + 0x770], xmm3
movaps xmmword [rbp + 0x780], xmm2
movaps xmmword [rbp + 0x790], xmm1
movaps xmmword [rbp + 0x7a0], xmm0
jne 0x140238922
jmp 0x140238d33
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
movaps xmm0, xmmword [0x14028c630]
movaps xmm1, xmmword [0x14028c640]
movaps xmm2, xmmword [0x14028c650]
movaps xmm3, xmmword [0x14028c660]
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 0x140238d8f
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 [0x14028c670]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x14028c680]
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 0x140238eb4
jmp 0x140238ec3
mov rax, qword [rbp + 0x688]
mov byte [rbp + rax + 0xe60], 0
movaps xmm0, xmmword [rbp + 0x690]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x140238ede
jmp 0x140238ef1
mov rax, qword [rbp + 0x688]
or rax, 1
mov byte [rbp + rax + 0xe60], 0
movaps xmm0, xmmword [rbp + 0x690]
pextrw eax, xmm0, 2
test al, 1
jne 0x140238f0a
jmp 0x140238f1d
mov rax, qword [rbp + 0x688]
or rax, 2
mov byte [rbp + rax + 0xe60], 0
movaps xmm0, xmmword [rbp + 0x690]
pextrw eax, xmm0, 3
test al, 1
jne 0x140238f36
jmp 0x140238f49
mov rax, qword [rbp + 0x688]
or rax, 3
mov byte [rbp + rax + 0xe60], 0
movaps xmm0, xmmword [rbp + 0x690]
pextrw eax, xmm0, 4
test al, 1
jne 0x140238f62
jmp 0x140238f8b
mov rax, qword [rbp + 0x688]
movabs rcx, 0x75a39c92a2760a20
movabs rdx, 0x75a39c92a2760a24
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0xe60], 0
movaps xmm0, xmmword [rbp + 0x690]
pextrw eax, xmm0, 5
test al, 1
jne 0x140238fa4
jmp 0x140239039
mov r11, qword [rbp + 0x688]
mov rcx, r11
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 5
mov rdx, 0xffffffffffffffff
movabs rax, 0x67447a04a96dedc6
xor rdx, rax
movabs r9, 0x67447a04a96dedc6
mov rax, rcx
and rax, r9
and r11, rdx
movabs r10, 0x67447a04a96dedc6
mov r9, r8
and r9, r10
movabs r10, 0x1ce9ffce93de4094
movabs rsi, 0x1ce9ffce93de4091
xor r10, rsi
and r10, rdx
or rax, r11
or r9, r10
xor rax, r9
or rcx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x67447a04a96dedc6
or rdx, r8
and rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0xe60], 0
movaps xmm0, xmmword [rbp + 0x690]
pextrw eax, xmm0, 6
test al, 1
jne 0x140239052
jmp 0x140239099
mov rax, qword [rbp + 0x688]
mov rdx, 0xffffffffffffffff
xor rdx, 6
mov rcx, rax
and rcx, rdx
movabs r8, 0x1c5a5a63317c5ec0
movabs rdx, 0x1c5a5a63317c5ec6
xor r8, rdx
mov rdx, rax
xor rdx, r8
add rax, rdx
sub rax, rcx
mov cl, 0xe9
xor cl, 0xe9
mov byte [rbp + rax + 0xe60], cl
movaps xmm0, xmmword [rbp + 0x690]
pextrw eax, xmm0, 7
test al, 1
jne 0x1402390b2
jmp 0x1402390d3
mov rcx, qword [rbp + 0x688]
mov rax, rcx
and rax, 7
xor rcx, 7
or rax, rcx
mov cl, 0x7c
xor cl, 0x7c
mov byte [rbp + rax + 0xe60], 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 xmm4, xmmword [0x14028c690]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
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 0x140238d8f
jmp 0x140239146
mov qword [rbp + 0xe50], 0
lea rax, [rbp + 0xe50]
add rax, 8
mov qword [rbp + 0x630], rax
mov qword [rbp + 0xe58], 0
mov word [rbp + 0xe3e], 0xa7d
lea rcx, [rbp + 0xe3e]
sub rsp, 0x20
call fcn.140096085
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xb50]
mov qword [rbp + 0x638], rcx
cmp byte [rax], 0
jne 0x140239836
mov rax, qword [rbp + 0x638]
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0xe10], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0xe28]
lea rdx, [rbp + 0xe10]
call fcn.140039831
add rsp, 0x20
mov rax, qword [rbp + 0xe28]
mov qword [rbp + 0x5d8], rax
mov rax, qword [rbp + 0xe30]
mov qword [rbp + 0x5e0], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
movaps xmm0, xmmword [0x14028c630]
movaps xmm1, xmmword [0x14028c640]
movaps xmm2, xmmword [0x14028c650]
movaps xmm3, xmmword [0x14028c660]
xor eax, eax
mov qword [rbp + 0x5e8], rax
movaps xmmword [rbp + 0x5f0], xmm3
movaps xmmword [rbp + 0x600], xmm2
movaps xmmword [rbp + 0x610], xmm1
movaps xmmword [rbp + 0x620], xmm0
jmp 0x140239249
mov rax, qword [rbp + 0x5e8]
movaps xmm2, xmmword [rbp + 0x5f0]
movaps xmm7, xmmword [rbp + 0x600]
movaps xmm8, xmmword [rbp + 0x610]
movaps xmm5, xmmword [rbp + 0x620]
movaps xmmword [rbp + 0x570], xmm5
movaps xmmword [rbp + 0x580], xmm8
movaps xmmword [rbp + 0x590], xmm7
movaps xmmword [rbp + 0x5a0], xmm2
mov qword [rbp + 0x5b8], rax
movaps xmm6, xmmword [0x14028c670]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x14028c680]
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 + 0x5c0], xmm1
movd eax, xmm0
test al, 1
jne 0x14023936e
jmp 0x140239384
mov rax, qword [rbp + 0xab0]
mov rcx, qword [rbp + 0x5b8]
mov dl, 8
xor dl, 8
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x5c0]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x14023939f
jmp 0x140239447
mov rax, qword [rbp + 0xab0]
mov rsi, qword [rbp + 0x5b8]
mov rdx, rsi
xor rdx, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 1
mov r8, 0xffffffffffffffff
movabs rcx, 0xaf8b8eac7efd2add
xor r8, rcx
movabs r10, 0x4793de7f4eec9fd3
movabs rcx, 0xe81850d33011b50e
xor r10, rcx
mov rcx, rdx
and rcx, r10
and rsi, r8
movabs r11, 0xaf8b8eac7efd2add
mov r10, r9
and r10, r11
mov r11, r8
and r11, 1
or rcx, rsi
or r10, r11
xor rcx, r10
or rdx, r9
movabs r9, 0x5cb2532293c53cce
movabs r10, 0xa34dacdd6c3ac331
xor r9, r10
xor rdx, r9
movabs r9, 0xaf8b8eac7efd2add
or r8, r9
and rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x5c0]
pextrw eax, xmm0, 2
test al, 1
jne 0x140239460
jmp 0x14023947a
mov rax, qword [rbp + 0xab0]
mov rcx, qword [rbp + 0x5b8]
or rcx, 2
mov dl, 0xff
xor dl, 0xff
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x5c0]
pextrw eax, xmm0, 3
test al, 1
jne 0x140239493
jmp 0x1402394ad
mov rax, qword [rbp + 0xab0]
mov rcx, qword [rbp + 0x5b8]
or rcx, 3
mov dl, 7
xor dl, 7
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x5c0]
pextrw eax, xmm0, 4
test al, 1
jne 0x1402394c6
jmp 0x1402394e0
mov rax, qword [rbp + 0xab0]
mov rcx, qword [rbp + 0x5b8]
or rcx, 4
mov dl, 0xec
xor dl, 0xec
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x5c0]
pextrw eax, xmm0, 5
test al, 1
jne 0x1402394f9
jmp 0x14023952d
mov rax, qword [rbp + 0xab0]
mov rcx, qword [rbp + 0x5b8]
mov r8, 0xffffffffffffffff
xor r8, 5
mov rdx, rcx
and rdx, r8
mov r8, rcx
xor r8, 5
add rcx, r8
sub rcx, rdx
mov dl, 0x40
xor dl, 0x40
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x5c0]
pextrw eax, xmm0, 6
test al, 1
jne 0x140239546
jmp 0x14023955c
mov rax, qword [rbp + 0xab0]
mov rcx, qword [rbp + 0x5b8]
or rcx, 6
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x5c0]
pextrw eax, xmm0, 7
test al, 1
jne 0x140239575
jmp 0x14023958b
mov rax, qword [rbp + 0xab0]
mov rcx, qword [rbp + 0x5b8]
or rcx, 7
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x570]
movaps xmm1, xmmword [rbp + 0x580]
movaps xmm2, xmmword [rbp + 0x590]
movaps xmm3, xmmword [rbp + 0x5a0]
mov rax, qword [rbp + 0x5b8]
add rax, 8
movaps xmm4, xmmword [0x14028c690]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x5e8], rax
movaps xmmword [rbp + 0x5f0], xmm3
movaps xmmword [rbp + 0x600], xmm2
movaps xmmword [rbp + 0x610], xmm1
movaps xmmword [rbp + 0x620], xmm0
jne 0x140239249
jmp 0x1402395fe
mov rdx, qword [rbp + 0xa80]
mov rcx, qword [rbp + 0xab0]
mov rax, qword [rbp + 0x5e0]
mov r8, qword [rbp + 0x5d8]
mov qword [rbp + 0xe00], r8
mov qword [rbp + 0xe08], rax
lea r8, [rbp + 0xe00]
sub rsp, 0x20
call fcn.14012c8b0
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xfe
xor cl, 0xfe
cmp al, cl
jne 0x140239836
mov rax, qword [rbp + 0xa98]
mov rcx, qword [rbp + 0xab0]
mov rdx, qword [rcx + 0x10]
mov qword [rbp + 0xee0], rdx
movups xmm0, xmmword [rcx]
movaps xmmword [rbp + 0xed0], xmm0
mov rdx, qword [rcx + 0x10]
mov qword [rax + 0x10], rdx
movups xmm0, xmmword [rcx]
movups xmmword [rax], xmm0
add rax, 0x10
mov qword [rbp + 0x560], rax
sub rsp, 0x20
lea rcx, [rbp + 0xed0]
call fcn.1400913b8
mov rcx, qword [rbp + 0xa98]
mov rax, qword [rbp + 0xb50]
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 + 0x56f], al
or al, cl
test al, 1
jne 0x140239713
mov rdx, qword [rbp + 0xab8]
mov rcx, qword [rbp + 0xaa0]
mov rax, qword [rbp + 0xa98]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400344e0
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x55f], al
jmp 0x140239796
mov al, byte [rbp + 0x56f]
test al, 1
jne 0x140239836
jmp 0x140239726
lea rcx, [rbp + 0xdf0]
sub rsp, 0x20
call fcn.1400ba2f0
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov rcx, qword [rbp + 0xdf0]
mov qword [rbp + 0x548], rcx
mov rcx, qword [rbp + 0xdf8]
mov qword [rbp + 0x550], rcx
mov al, byte [rax]
mov cl, 0x90
xor cl, 0x90
cmp al, cl
jne 0x140239836
mov rax, qword [rbp + 0x8c8]
mov rcx, qword [rbp + 0x550]
mov rdx, qword [rbp + 0xaa0]
mov r8, qword [rbp + 0x548]
mov qword [rdx], r8
mov qword [rax], rcx
xor eax, eax
mov byte [rbp + 0x55f], al
mov rcx, qword [rbp + 0x560]
mov al, byte [rbp + 0x55f]
mov cl, byte [rcx]
test cl, cl
sete cl
test al, al
setne al
mov byte [rbp + 0x547], al
or al, cl
test al, 1
jne 0x140239843
mov rax, qword [rbp + 0xaa0]
mov rcx, qword [rax]
mov qword [rbp + 0xde0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xde8], rax
lea rcx, [rbp + 0xf48]
lea rdx, [rbp + 0xde0]
sub rsp, 0x20
call fcn.14002b970
mov rcx, qword [rbp + 0xaa0]
call fcn.140020530
add rsp, 0x20
lea rcx, [rbp + 0xf48]
mov edx, 0x5c
sub rsp, 0x20
call fcn.140064750
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xa
xor cl, 0xa
cmp al, cl
jne 0x140239836
jmp 0x14023985a
mov al, 1
mov byte [rbp + 0x546], al
jmp 0x14023a609
mov cl, byte [rbp + 0x547]
mov al, 1
test cl, 1
mov byte [rbp + 0x546], al
jne 0x14023a609
mov word [rbp + 0xdde], 0x260
lea rcx, [rbp + 0xdde]
sub rsp, 0x20
call fcn.140096085
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xb50]
mov qword [rbp + 0x538], rcx
mov al, byte [rax]
mov cl, 0x1a
xor cl, 0x1a
cmp al, cl
jne 0x140239f32
mov rax, qword [rbp + 0x538]
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0xdb0], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0xdc8]
lea rdx, [rbp + 0xdb0]
call fcn.140039831
add rsp, 0x20
mov rax, qword [rbp + 0xdc8]
mov qword [rbp + 0x4d8], rax
mov rax, qword [rbp + 0xdd0]
mov qword [rbp + 0x4e0], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
movaps xmm0, xmmword [0x14028c630]
movaps xmm1, xmmword [0x14028c640]
movaps xmm2, xmmword [0x14028c650]
movaps xmm3, xmmword [0x14028c660]
xor eax, eax
mov qword [rbp + 0x4e8], rax
movaps xmmword [rbp + 0x4f0], xmm3
movaps xmmword [rbp + 0x500], xmm2
movaps xmmword [rbp + 0x510], xmm1
movaps xmmword [rbp + 0x520], xmm0
jmp 0x14023993b
mov rax, qword [rbp + 0x4e8]
movaps xmm2, xmmword [rbp + 0x4f0]
movaps xmm7, xmmword [rbp + 0x500]
movaps xmm8, xmmword [rbp + 0x510]
movaps xmm5, xmmword [rbp + 0x520]
movaps xmmword [rbp + 0x470], xmm5
movaps xmmword [rbp + 0x480], xmm8
movaps xmmword [rbp + 0x490], xmm7
movaps xmmword [rbp + 0x4a0], xmm2
mov qword [rbp + 0x4b8], rax
movaps xmm6, xmmword [0x14028c670]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x14028c680]
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 + 0x4c0], xmm1
movd eax, xmm0
test al, 1
jne 0x140239a60
jmp 0x140239a72
mov rax, qword [rbp + 0xac0]
mov rcx, qword [rbp + 0x4b8]
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x4c0]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x140239a8d
jmp 0x140239aa3
mov rax, qword [rbp + 0xac0]
mov rcx, qword [rbp + 0x4b8]
or rcx, 1
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x4c0]
pextrw eax, xmm0, 2
test al, 1
jne 0x140239abc
jmp 0x140239af7
mov rax, qword [rbp + 0xac0]
mov rcx, qword [rbp + 0x4b8]
movabs rdx, 0x1786aa5e73f06324
movabs r8, 0x1786aa5e73f06326
xor rdx, r8
and rdx, rcx
xor rdx, 0xffffffffffffffff
add rcx, 2
add rcx, 1
add rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x4c0]
pextrw eax, xmm0, 3
test al, 1
jne 0x140239b10
jmp 0x140239b26
mov rax, qword [rbp + 0xac0]
mov rcx, qword [rbp + 0x4b8]
or rcx, 3
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x4c0]
pextrw eax, xmm0, 4
test al, 1
jne 0x140239b3f
jmp 0x140239b59
mov rax, qword [rbp + 0xac0]
mov rcx, qword [rbp + 0x4b8]
or rcx, 4
mov dl, 0xbb
xor dl, 0xbb
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x4c0]
pextrw eax, xmm0, 5
test al, 1
jne 0x140239b72
jmp 0x140239b9a
mov rax, qword [rbp + 0xac0]
mov rcx, qword [rbp + 0x4b8]
mov rdx, rcx
and rdx, 5
xor rdx, 0xffffffffffffffff
add rcx, 5
add rcx, 1
add rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x4c0]
pextrw eax, xmm0, 6
test al, 1
jne 0x140239bb3
jmp 0x140239bcd
mov rax, qword [rbp + 0xac0]
mov rcx, qword [rbp + 0x4b8]
or rcx, 6
mov dl, 0x78
xor dl, 0x78
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x4c0]
pextrw eax, xmm0, 7
test al, 1
jne 0x140239be6
jmp 0x140239c78
mov rax, qword [rbp + 0xac0]
mov rsi, qword [rbp + 0x4b8]
mov rdx, rsi
xor rdx, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 7
mov r8, 0xffffffffffffffff
movabs rcx, 0xb650484131e72344
xor r8, rcx
movabs r10, 0xbda8e268e00e6c3c
movabs rcx, 0xbf8aa29d1e94f78
xor r10, rcx
mov rcx, rdx
and rcx, r10
and rsi, r8
movabs r11, 0xb650484131e72344
mov r10, r9
and r10, r11
mov r11, r8
and r11, 7
or rcx, rsi
or r10, r11
xor rcx, r10
or rdx, r9
xor rdx, 0xffffffffffffffff
movabs r9, 0xb650484131e72344
or r8, r9
and rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x470]
movaps xmm1, xmmword [rbp + 0x480]
movaps xmm2, xmmword [rbp + 0x490]
movaps xmm3, xmmword [rbp + 0x4a0]
mov rax, qword [rbp + 0x4b8]
mov ecx, eax
and ecx, 8
xor rax, 8
lea rax, [rax + rcx*2]
movaps xmm4, xmmword [0x14028c690]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x4e8], rax
movaps xmmword [rbp + 0x4f0], xmm3
movaps xmmword [rbp + 0x500], xmm2
movaps xmmword [rbp + 0x510], xmm1
movaps xmmword [rbp + 0x520], xmm0
jne 0x14023993b
jmp 0x140239cf4
mov rdx, qword [rbp + 0xa80]
mov rcx, qword [rbp + 0xac0]
mov rax, qword [rbp + 0x4e0]
mov r8, qword [rbp + 0x4d8]
mov qword [rbp + 0xda0], r8
mov qword [rbp + 0xda8], rax
lea r8, [rbp + 0xda0]
sub rsp, 0x20
call fcn.14012c8b0
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140239f32
mov rax, qword [rbp + 0xaa8]
mov rcx, qword [rbp + 0xac0]
mov rdx, qword [rcx + 0x10]
mov qword [rbp + 0xec0], rdx
movups xmm0, xmmword [rcx]
movaps xmmword [rbp + 0xeb0], xmm0
mov rdx, qword [rcx + 0x10]
mov qword [rax + 0x10], rdx
movups xmm0, xmmword [rcx]
movups xmmword [rax], xmm0
add rax, 0x10
mov qword [rbp + 0x460], rax
sub rsp, 0x20
lea rcx, [rbp + 0xeb0]
call fcn.1400913b8
mov rcx, qword [rbp + 0xaa8]
mov rax, qword [rbp + 0xb50]
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 + 0x46f], al
or al, cl
test al, 1
jne 0x140239e03
mov rdx, qword [rbp + 0xac8]
mov rax, qword [rbp + 0xaa8]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0xea0]
sub rsp, 0x20
call fcn.1400344e0
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x45f], al
jmp 0x140239e8a
mov al, byte [rbp + 0x46f]
test al, 1
jne 0x140239e16
jmp 0x140239e23
mov al, 1
mov byte [rbp + 0x546], al
jmp 0x14023a609
lea rcx, [rbp + 0xd90]
sub rsp, 0x20
call fcn.1400ba2f0
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov rcx, qword [rbp + 0xd90]
mov qword [rbp + 0x448], rcx
mov rcx, qword [rbp + 0xd98]
mov qword [rbp + 0x450], rcx
cmp byte [rax], 0
jne 0x140239f32
mov rax, qword [rbp + 0x758]
mov rcx, qword [rbp + 0x450]
mov rdx, qword [rbp + 0x448]
mov qword [rbp + 0xea0], rdx
mov qword [rax], rcx
xor eax, eax
mov byte [rbp + 0x45f], al
mov rcx, qword [rbp + 0x460]
mov al, byte [rbp + 0x45f]
mov byte [rbp + 0x446], al
mov cl, byte [rcx]
test cl, cl
sete cl
test al, al
setne al
mov byte [rbp + 0x447], al
or al, cl
test al, 1
jne 0x140239f3f
mov rax, qword [rbp + 0xea0]
mov qword [rbp + 0xd80], rax
mov rax, qword [rbp + 0xea8]
mov qword [rbp + 0xd88], rax
lea rcx, [rbp + 0xf58]
lea rdx, [rbp + 0xd80]
sub rsp, 0x20
call fcn.14002b970
add rsp, 0x20
lea rcx, [rbp + 0xea0]
sub rsp, 0x20
call fcn.140020530
add rsp, 0x20
lea rcx, [rbp + 0xf58]
mov edx, 0x5c
sub rsp, 0x20
call fcn.140064750
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140239f32
jmp 0x140239f5a
mov al, 1
mov byte [rbp + 0x546], al
jmp 0x14023a609
mov al, byte [rbp + 0x446]
mov cl, byte [rbp + 0x447]
test cl, 1
mov byte [rbp + 0x546], al
jne 0x14023a609
mov rcx, qword [rbp + 0xad8]
mov word [rcx], 0xba9
sub rsp, 0x20
call fcn.140096085
mov rcx, qword [rbp + 0xb50]
add rsp, 0x20
mov qword [rbp + 0x438], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x445], al
jne 0x14023a5ec
mov rax, qword [rbp + 0x438]
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0xd60], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0xd70]
lea rdx, [rbp + 0xd60]
call fcn.140039831
add rsp, 0x20
mov rax, qword [rbp + 0xd70]
mov qword [rbp + 0x3d8], rax
mov rax, qword [rbp + 0xd78]
mov qword [rbp + 0x3e0], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
movaps xmm0, xmmword [0x14028c630]
movaps xmm1, xmmword [0x14028c640]
movaps xmm2, xmmword [0x14028c650]
movaps xmm3, xmmword [0x14028c660]
xor eax, eax
mov qword [rbp + 0x3e8], rax
movaps xmmword [rbp + 0x3f0], xmm3
movaps xmmword [rbp + 0x400], xmm2
movaps xmmword [rbp + 0x410], xmm1
movaps xmmword [rbp + 0x420], xmm0
jmp 0x14023a036
mov rax, qword [rbp + 0x3e8]
movaps xmm2, xmmword [rbp + 0x3f0]
movaps xmm7, xmmword [rbp + 0x400]
movaps xmm8, xmmword [rbp + 0x410]
movaps xmm5, xmmword [rbp + 0x420]
movaps xmmword [rbp + 0x370], xmm5
movaps xmmword [rbp + 0x380], xmm8
movaps xmmword [rbp + 0x390], xmm7
movaps xmmword [rbp + 0x3a0], xmm2
mov qword [rbp + 0x3b8], rax
movaps xmm6, xmmword [0x14028c670]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x14028c680]
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 + 0x3c0], xmm1
movd eax, xmm0
test al, 1
jne 0x14023a15b
jmp 0x14023a16d
mov rax, qword [rbp + 0xae0]
mov rcx, qword [rbp + 0x3b8]
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x3c0]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x14023a188
jmp 0x14023a19e
mov rax, qword [rbp + 0xae0]
mov rcx, qword [rbp + 0x3b8]
or rcx, 1
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x3c0]
pextrw eax, xmm0, 2
test al, 1
jne 0x14023a1b7
jmp 0x14023a1e7
mov rax, qword [rbp + 0xae0]
mov rcx, qword [rbp + 0x3b8]
mov r8, 0xffffffffffffffff
xor r8, 2
mov rdx, rcx
and rdx, r8
mov r8, rcx
xor r8, 2
add rcx, r8
sub rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x3c0]
pextrw eax, xmm0, 3
test al, 1
jne 0x14023a200
jmp 0x14023a230
mov rax, qword [rbp + 0xae0]
mov rcx, qword [rbp + 0x3b8]
movabs rdx, 0xf1ecd3753ab4a6b7
movabs r8, 0xf1ecd3753ab4a6b4
xor rdx, r8
or rcx, rdx
mov dl, 0xcc
xor dl, 0xcc
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x3c0]
pextrw eax, xmm0, 4
test al, 1
jne 0x14023a249
jmp 0x14023a25f
mov rax, qword [rbp + 0xae0]
mov rcx, qword [rbp + 0x3b8]
or rcx, 4
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x3c0]
pextrw eax, xmm0, 5
test al, 1
jne 0x14023a278
jmp 0x14023a2d2
mov rax, qword [rbp + 0xae0]
mov rdx, qword [rbp + 0x3b8]
movabs r8, 0xbe8cfe90205d896a
movabs rcx, 0x4173016fdfa27695
xor r8, rcx
mov rcx, rdx
xor rcx, r8
xor rdx, 0xffffffffffffffff
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, 0xab
xor dl, 0xab
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x3c0]
pextrw eax, xmm0, 6
test al, 1
jne 0x14023a2eb
jmp 0x14023a30f
mov rax, qword [rbp + 0xae0]
mov rdx, qword [rbp + 0x3b8]
mov rcx, rdx
and rcx, 6
xor rdx, 6
or rcx, rdx
mov dl, 0x6a
xor dl, 0x6a
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x3c0]
pextrw eax, xmm0, 7
test al, 1
jne 0x14023a328
jmp 0x14023a33e
mov rax, qword [rbp + 0xae0]
mov rcx, qword [rbp + 0x3b8]
or rcx, 7
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x370]
movaps xmm1, xmmword [rbp + 0x380]
movaps xmm2, xmmword [rbp + 0x390]
movaps xmm3, xmmword [rbp + 0x3a0]
mov rax, qword [rbp + 0x3b8]
add rax, 8
movaps xmm4, xmmword [0x14028c6a0]
psubq xmm3, xmm4
psubq xmm2, xmm4
psubq xmm1, xmm4
psubq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x3e8], rax
movaps xmmword [rbp + 0x3f0], xmm3
movaps xmmword [rbp + 0x400], xmm2
movaps xmmword [rbp + 0x410], xmm1
movaps xmmword [rbp + 0x420], xmm0
jne 0x14023a036
jmp 0x14023a3b1
mov rdx, qword [rbp + 0xa80]
mov rcx, qword [rbp + 0xae0]
mov rax, qword [rbp + 0x3e0]
mov r8, qword [rbp + 0x3d8]
mov qword [rbp + 0xd50], r8
mov qword [rbp + 0xd58], rax
lea r8, [rbp + 0xd50]
sub rsp, 0x20
call fcn.14012c8b0
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0xb7
xor dl, 0xb7
mov al, 1
cmp cl, dl
mov byte [rbp + 0x445], al
jne 0x14023a5ec
mov rax, qword [rbp + 0xae0]
mov rcx, qword [rax + 0x10]
mov qword [rbp + 0xe90], rcx
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0xe80], xmm0
mov rcx, qword [rax + 0x10]
mov qword [rbp + 0xe70], rcx
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0xe60], xmm0
lea rax, [rbp + 0xe70]
mov qword [rbp + 0x360], rax
sub rsp, 0x20
lea rcx, [rbp + 0xe80]
call fcn.1400913b8
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov cl, byte [rbp + 0xe70]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x36f], al
or al, cl
test al, 1
jne 0x14023a4d4
mov rax, qword [rbp + 0xe60]
mov qword [rbp + 0xd40], rax
mov rax, qword [rbp + 0xe68]
mov qword [rbp + 0xd48], rax
lea rcx, [rbp + 0xe50]
lea rdx, [rbp + 0xd40]
sub rsp, 0x20
call fcn.1400344e0
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x35f], al
jmp 0x14023a569
mov al, byte [rbp + 0x36f]
test al, 1
jne 0x14023a4e7
jmp 0x14023a4f4
mov al, 1
mov byte [rbp + 0x546], al
jmp 0x14023a609
mov rcx, qword [rbp + 0xae8]
sub rsp, 0x20
call fcn.1400ba2f0
mov rcx, qword [rbp + 0xae8]
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x348], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x350], rcx
mov cl, byte [rax]
mov dl, 7
xor dl, 7
mov al, 1
cmp cl, dl
mov byte [rbp + 0x445], al
jne 0x14023a5ec
mov rax, qword [rbp + 0x630]
mov rcx, qword [rbp + 0x350]
mov rdx, qword [rbp + 0x348]
mov qword [rbp + 0xe50], rdx
mov qword [rax], rcx
xor eax, eax
mov byte [rbp + 0x35f], al
mov rcx, qword [rbp + 0x360]
mov al, byte [rbp + 0x35f]
mov byte [rbp + 0x347], al
mov cl, byte [rcx]
test cl, cl
sete cl
test al, al
setne al
or al, cl
test al, 1
jne 0x14023a5fd
mov rax, qword [rbp + 0xe50]
mov qword [rbp + 0xd30], rax
mov rax, qword [rbp + 0xe58]
mov qword [rbp + 0xd38], rax
lea rcx, [rbp + 0xf38]
lea rdx, [rbp + 0xd30]
sub rsp, 0x20
call fcn.14002b970
add rsp, 0x20
lea rcx, [rbp + 0xe50]
sub rsp, 0x20
call fcn.140020530
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x445], al
mov al, byte [rbp + 0x445]
mov byte [rbp + 0x546], al
jmp 0x14023a609
mov al, byte [rbp + 0x347]
mov byte [rbp + 0x546], al
mov rax, qword [rbp + 0x630]
mov rcx, qword [rbp + 0xb50]
mov dl, byte [rbp + 0x546]
mov byte [rbp + 0x337], dl
mov dl, 0x94
xor dl, 0x94
mov byte [rcx], dl
mov rax, qword [rax]
mov qword [rbp + 0x338], rax
cmp rax, 0
je 0x14023a670
mov rcx, qword [rbp + 0x338]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14023a670
mov rcx, qword [rbp + 0x338]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
lea rcx, [rbp + 0xe60]
sub rsp, 0x20
call fcn.1400913d0
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0x31
xor dl, 0x31
mov al, 1
cmp cl, dl
mov byte [rbp + 0x336], al
jne 0x14023a83c
lea rcx, [rbp + 0xe80]
sub rsp, 0x20
call fcn.1400913d0
mov rcx, qword [rbp + 0xb50]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x336], al
jne 0x14023a83c
mov rax, qword [rbp + 0x758]
mov rax, qword [rax]
mov qword [rbp + 0x328], rax
cmp rax, 0
je 0x14023a71b
mov rcx, qword [rbp + 0x328]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14023a71b
mov rcx, qword [rbp + 0x328]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
mov rcx, qword [rbp + 0xaa8]
sub rsp, 0x20
call fcn.1400913d0
mov rcx, qword [rbp + 0xb50]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x336], al
jne 0x14023a83c
lea rcx, [rbp + 0xeb0]
sub rsp, 0x20
call fcn.1400913d0
mov rcx, qword [rbp + 0xb50]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x336], al
jne 0x14023a83c
mov rax, qword [rbp + 0x8c8]
mov rax, qword [rax]
mov qword [rbp + 0x320], rax
cmp rax, 0
je 0x14023a7c0
mov rcx, qword [rbp + 0x320]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14023a7c0
mov rcx, qword [rbp + 0x320]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
mov rcx, qword [rbp + 0xa98]
sub rsp, 0x20
call fcn.1400913d0
mov rcx, qword [rbp + 0xb50]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x336], al
jne 0x14023a83c
lea rcx, [rbp + 0xed0]
sub rsp, 0x20
call fcn.1400913d0
mov rcx, qword [rbp + 0xb50]
mov al, byte [rbp + 0x337]
add rsp, 0x20
mov dl, 1
mov byte [rbp + 0x31e], dl
cmp byte [rcx], 0
mov byte [rbp + 0x31f], al
je 0x14023a830
mov al, byte [rbp + 0x31e]
mov byte [rbp + 0x31f], al
mov al, byte [rbp + 0x31f]
mov byte [rbp + 0x336], al
mov rax, qword [rbp + 0xb50]
mov rcx, qword [rbp + 0xa80]
mov dl, byte [rbp + 0x336]
mov byte [rbp + 0x31d], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.14012ad40
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14023a88d
mov al, byte [rbp + 0x31d]
mov rcx, qword [rbp + 0xb50]
mov byte [rcx], al
cmp al, 0
je 0x14023a987
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [rbp + 0x310], rax
cmp word [rax + 0x12], 1
jle 0x14023a977
mov rax, qword [rbp + 0x310]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x14023a977
mov rax, qword [rbp + 0xb50]
mov cl, 0x9c
xor cl, 0x9c
mov byte [rax], cl
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov qword [rbp + 0xf68], 0
mov rdx, qword [rax + 0x10]
lea rcx, [rbp + 0xf68]
xor r8d, r8d
sub rsp, 0x20
call fcn.140028560
add rsp, 0x20
mov rcx, qword [rbp + 0xf68]
sub rsp, 0x20
call fcn.1400cdd40
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14023a98c
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rcx, rax
add rcx, 0x10
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x38]
xor r8d, r8d
sub rsp, 0x20
call fcn.140028560
add rsp, 0x20
mov rax, qword [rbp + 0xb50]
cmp byte [rax], 0
jne 0x14023a98c
jmp 0x14023a99a
xor eax, eax
mov qword [rbp + 0x308], rax
jmp 0x14023c9e5
mov qword [rbp + 0xf28], 3
mov ecx, 3
mov edx, 0x10
mov r8d, 8
sub rsp, 0x20
call fcn.140020645
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xb70]
mov qword [rax], rcx
mov word [rbp + 0xf16], 0x744
lea rcx, [rbp + 0xf16]
sub rsp, 0x20
call fcn.140096085
mov rdx, qword [rbp + 0xb50]
add rsp, 0x20
mov qword [rbp + 0x2f0], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x2ff], cl
mov qword [rbp + 0x300], rax
jne 0x14023ca02
mov rax, qword [rbp + 0x2f0]
mov rcx, qword [0x14028d368]
mov rdx, qword [rcx]
mov qword [rbp + 0xd10], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0xd18], rcx
mov rcx, qword [rax]
mov qword [rbp + 0xd00], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xd08], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rdx, qword [rbp + 0xa90]
add rsp, 0x20
mov rax, qword [rbp + 0xd10]
mov qword [rdx], rax
mov rax, qword [rbp + 0xd18]
mov qword [rdx + 8], rax
mov rax, qword [rbp + 0xd00]
mov qword [rbp + 0xf70], rax
mov rax, qword [rbp + 0xd08]
mov qword [rbp + 0xf78], rax
lea rcx, [rbp + 0xd20]
lea r8, [rbp + 0xf70]
sub rsp, 0x20
call fcn.1400ca2e0
mov rdx, qword [rbp + 0xb50]
add rsp, 0x20
mov rax, qword [rbp + 0xd20]
mov qword [rbp + 0x2e0], rax
mov rax, qword [rbp + 0xd28]
mov qword [rbp + 0x2e8], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x2ff], cl
mov qword [rbp + 0x300], rax
jne 0x14023ca02
mov rcx, qword [rbp + 0x2e8]
mov rdx, qword [rbp + 0x2e0]
mov rax, qword [rbp + 0xb70]
mov rax, qword [rax]
mov qword [rax + 8], rdx
mov qword [rax + 0x10], rcx
mov ax, 0xe474
xor ax, 0xe743
mov word [rbp + 0xf14], ax
lea rcx, [rbp + 0xf14]
sub rsp, 0x20
call fcn.140096085
mov rdx, qword [rbp + 0xb50]
add rsp, 0x20
mov qword [rbp + 0x2d8], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x2ff], cl
mov qword [rbp + 0x300], rax
jne 0x14023ca02
mov rax, qword [rbp + 0x2d8]
mov rcx, qword [0x14028d368]
mov rdx, qword [rcx]
mov qword [rbp + 0xce0], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0xce8], rcx
mov rcx, qword [rax]
mov qword [rbp + 0xcd0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xcd8], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rax, qword [rbp + 0xce0]
mov qword [rbp + 0xf90], rax
mov rax, qword [rbp + 0xce8]
mov qword [rbp + 0xf98], rax
mov rax, qword [rbp + 0xcd0]
mov qword [rbp + 0xf80], rax
mov rax, qword [rbp + 0xcd8]
mov qword [rbp + 0xf88], rax
lea rcx, [rbp + 0xcf0]
lea rdx, [rbp + 0xf90]
lea r8, [rbp + 0xf80]
sub rsp, 0x20
call fcn.1400ca2e0
mov rdx, qword [rbp + 0xb50]
add rsp, 0x20
mov rax, qword [rbp + 0xcf0]
mov qword [rbp + 0x2c8], rax
mov rax, qword [rbp + 0xcf8]
mov qword [rbp + 0x2d0], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x2ff], cl
mov qword [rbp + 0x300], rax
jne 0x14023ca02
mov rcx, qword [rbp + 0x2d0]
mov rdx, qword [rbp + 0x2c8]
mov rax, qword [rbp + 0xb70]
mov rax, qword [rax]
mov qword [rax + 0x18], rdx
mov qword [rax + 0x20], rcx
mov ax, 0xdcf6
xor ax, 0xda7d
mov word [rbp + 0xf12], ax
lea rcx, [rbp + 0xf12]
sub rsp, 0x20
call fcn.140096085
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xb50]
mov qword [rbp + 0x2c0], rcx
mov dl, byte [rax]
mov r8b, 0xec
xor r8b, 0xec
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x2ff], cl
mov qword [rbp + 0x300], rax
jne 0x14023ca02
mov rax, qword [rbp + 0x2c0]
mov rcx, qword [0x14028d388]
mov rdx, qword [rcx]
mov qword [rbp + 0xcb0], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0xcb8], rcx
mov rcx, qword [rax]
mov qword [rbp + 0xca0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xca8], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rax, qword [rbp + 0xcb0]
mov qword [rbp + 0xfb0], rax
mov rax, qword [rbp + 0xcb8]
mov qword [rbp + 0xfb8], rax
mov rax, qword [rbp + 0xca0]
mov qword [rbp + 0xfa0], rax
mov rax, qword [rbp + 0xca8]
mov qword [rbp + 0xfa8], rax
lea rcx, [rbp + 0xcc0]
lea rdx, [rbp + 0xfb0]
lea r8, [rbp + 0xfa0]
sub rsp, 0x20
call fcn.1400ca2e0
mov rdx, qword [rbp + 0xb50]
add rsp, 0x20
mov rax, qword [rbp + 0xcc0]
mov qword [rbp + 0x2b0], rax
mov rax, qword [rbp + 0xcc8]
mov qword [rbp + 0x2b8], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x2ff], cl
mov qword [rbp + 0x300], rax
jne 0x14023ca02
mov rcx, qword [rbp + 0x2b8]
mov rdx, qword [rbp + 0x2b0]
mov rax, qword [rbp + 0xb70]
mov rax, qword [rax]
mov qword [rbp + 0x2a0], rax
mov qword [rax + 0x28], rdx
mov qword [rax + 0x30], rcx
mov rax, qword [rbp + 0xf58]
mov qword [rbp + 0x2a8], rax
movabs rcx, 0xcedcdc2f44d05cac
movabs rdx, 0xcedcdc2f44d05cac
xor rcx, rdx
cmp rax, rcx
je 0x14023b022
mov rax, qword [rbp + 0x2a8]
mov rcx, qword [rbp + 0xb58]
mov rdx, qword [rbp + 0x2a0]
add rdx, 8
mov qword [rbp + 0x278], rdx
mov r8, qword [rbp + 0xf28]
mov rcx, qword [rcx]
xor edx, edx
test r8, r8
cmovg rdx, r8
mov qword [rbp + 0x280], rdx
add rcx, 8
mov qword [rbp + 0x288], rcx
cmp rax, 0
setg al
mov byte [rbp + 0x297], al
xor eax, eax
mov qword [rbp + 0x298], rax
mov rcx, qword [rbp + 0x280]
mov rax, qword [rbp + 0x298]
mov qword [rbp + 0x270], rax
cmp rax, rcx
je 0x14023afbb
mov rcx, qword [rbp + 0x2a8]
mov rax, qword [rbp + 0x278]
mov rdx, qword [rbp + 0x270]
shl rdx, 4
add rax, rdx
mov qword [rbp + 0x268], rax
cmp qword [rax], rcx
jne 0x14023af2b
mov cl, byte [rbp + 0x297]
mov rax, qword [rbp + 0x268]
mov rax, qword [rax + 8]
add rax, 8
mov qword [rbp + 0x258], rax
xor eax, eax
test cl, 1
mov qword [rbp + 0x260], rax
jne 0x14023af03
jmp 0x14023afaa
mov rcx, qword [rbp + 0x2a8]
mov rax, qword [rbp + 0x250]
movabs rdx, 0xfbe5cbee7ed98804
movabs r8, 0xfbe5cbee7ed98805
xor rdx, r8
add rax, rdx
cmp rax, rcx
mov qword [rbp + 0x260], rax
je 0x14023afaa
mov rcx, qword [rbp + 0x288]
mov rax, qword [rbp + 0x258]
mov rdx, qword [rbp + 0x260]
mov qword [rbp + 0x250], rdx
mov al, byte [rax + rdx]
cmp al, byte [rcx + rdx]
je 0x14023aecb
mov r8, qword [rbp + 0x270]
mov rax, r8
add rax, 1
xor r8, 0xffffffffffffffff
mov rcx, rax
or rcx, rcx
movabs rdx, 0x9295e79b7fb6c129
movabs r9, 0x6d6a186480493ed6
xor rdx, r9
xor rcx, rdx
mov rdx, r8
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
movabs rdx, 0xc854c37212950069
movabs r8, 0xc854c37212950069
xor rdx, r8
cmp rcx, rdx
mov qword [rbp + 0x298], rax
jge 0x14023ae4e
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
mov rax, qword [rbp + 0x270]
cmp rax, 0
jge 0x14023b022
mov rax, qword [rbp + 0xaf0]
mov rcx, qword [rbp + 0xf58]
mov qword [rax], rcx
mov rcx, qword [rbp + 0xf60]
mov qword [rax + 8], rcx
lea rcx, [rbp + 0xf58]
sub rsp, 0x20
call fcn.140020530
mov rax, qword [rbp + 0xaf0]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0xc90], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xc98], rax
lea rcx, [rbp + 0xf28]
lea rdx, [rbp + 0xc90]
sub rsp, 0x20
call fcn.1400363f2
add rsp, 0x20
mov rax, qword [rbp + 0xf48]
mov qword [rbp + 0x248], rax
cmp rax, 0
je 0x14023b2c5
mov rax, qword [rbp + 0x248]
mov rcx, qword [rbp + 0xb60]
mov rdx, qword [rbp + 0xb70]
mov r9, qword [rdx]
mov rdx, r9
add rdx, 8
xor r8d, r8d
cmp r9, 0
cmove rdx, r8
mov qword [rbp + 0x220], rdx
mov r8, qword [rbp + 0xf28]
mov rcx, qword [rcx]
xor edx, edx
test r8, r8
cmovg rdx, r8
mov qword [rbp + 0x228], rdx
add rcx, 8
mov qword [rbp + 0x230], rcx
cmp rax, 0
setg al
mov byte [rbp + 0x23f], al
xor eax, eax
mov qword [rbp + 0x240], rax
mov rcx, qword [rbp + 0x228]
mov rax, qword [rbp + 0x240]
mov qword [rbp + 0x218], rax
cmp rax, rcx
je 0x14023b25e
mov rcx, qword [rbp + 0x248]
mov rax, qword [rbp + 0x220]
mov rdx, qword [rbp + 0x218]
shl rdx, 4
add rax, rdx
mov qword [rbp + 0x210], rax
cmp qword [rax], rcx
jne 0x14023b172
mov cl, byte [rbp + 0x23f]
mov rax, qword [rbp + 0x210]
mov rax, qword [rax + 8]
add rax, 8
mov qword [rbp + 0x200], rax
xor eax, eax
test cl, 1
mov qword [rbp + 0x208], rax
jne 0x14023b14a
jmp 0x14023b237
mov rcx, qword [rbp + 0x248]
mov rax, qword [rbp + 0x1f8]
xor edx, edx
sub rdx, 1
sub rax, rdx
cmp rax, rcx
mov qword [rbp + 0x208], rax
je 0x14023b237
mov rcx, qword [rbp + 0x230]
mov rax, qword [rbp + 0x200]
mov rdx, qword [rbp + 0x208]
mov qword [rbp + 0x1f8], rdx
mov al, byte [rax + rdx]
cmp al, byte [rcx + rdx]
je 0x14023b123
mov r8, qword [rbp + 0x218]
movabs rcx, 0x291111285ac6c7ed
movabs rax, 0x291111285ac6c7ec
xor rcx, rax
mov rax, r8
add rax, rcx
mov rcx, r8
xor rcx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rcx, 0xffffffffffffffff
shl rcx, 1
sub rcx, 0xffffffffffffffff
sub r8, rcx
movabs rdx, 0x797d53b0dc5b743f
movabs rcx, 0x8682ac4f23a48bc0
xor rdx, rcx
mov rcx, rax
xor rcx, rdx
xor r8, 0xffffffffffffffff
movabs rdx, 0x68b36aa0e08c23c2
movabs r9, 0x8551240e81277f31
xor rdx, r9
movabs r9, 0x3022246ae8ea29be
movabs r10, 0xcfdddb951715d641
xor r9, r10
xor rdx, r9
or rcx, r8
movabs r8, 0xede24eae61ab5cf3
or rdx, r8
xor rcx, 0xffffffffffffffff
and rcx, rdx
cmp rcx, 0
mov qword [rbp + 0x240], rax
jge 0x14023b0a6
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
mov rax, qword [rbp + 0x218]
movabs rcx, 0xdeda1b05def2385
movabs rdx, 0xdeda1b05def2385
xor rcx, rdx
cmp rax, rcx
jge 0x14023b2c5
mov rax, qword [rbp + 0xaf8]
mov rcx, qword [rbp + 0xf48]
mov qword [rax], rcx
mov rcx, qword [rbp + 0xf50]
mov qword [rax + 8], rcx
lea rcx, [rbp + 0xf48]
sub rsp, 0x20
call fcn.140020530
mov rax, qword [rbp + 0xaf8]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0xc80], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xc88], rax
lea rcx, [rbp + 0xf28]
lea rdx, [rbp + 0xc80]
sub rsp, 0x20
call fcn.1400363f2
add rsp, 0x20
movabs rax, 0x8ed8125ce2a36ffb
movabs rcx, 0x8ed8125ce2a36ffa
xor rax, rcx
mov qword [rbp + 0xf18], rax
mov ecx, 1
mov r8d, 8
sub rsp, 0x20
mov rdx, r8
call fcn.140020645
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xb78]
mov qword [rax], rcx
movabs rcx, 0x2a52b74ebab89ada
movabs rax, 0x2a52b74ebab89ac2
xor rcx, rax
movabs rdx, 0x12646d9d1af02e2e
movabs rax, 0x12646d9d1af02e26
xor rdx, rax
sub rsp, 0x20
call fcn.1400370c0
add rsp, 0x20
mov qword [rbp + 0x1e8], rax
mov word [rbp + 0xf10], 0xa34
lea rcx, [rbp + 0xf10]
sub rsp, 0x20
call fcn.140096085
mov rdx, qword [rbp + 0xb50]
add rsp, 0x20
mov qword [rbp + 0x1f0], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x2ff], cl
mov qword [rbp + 0x300], rax
jne 0x14023ca02
mov rax, qword [rbp + 0x1f0]
mov rcx, qword [rax]
mov qword [rbp + 0xc60], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xc68], rax
lea rcx, [rbp + 0xc70]
lea rdx, [rbp + 0xc60]
sub rsp, 0x20
call fcn.140039831
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
mov rdx, qword [rbp + 0xc70]
mov rcx, qword [rbp + 0xc78]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x819
sub rsp, 0x20
call fcn.140096360
mov rdx, qword [rbp + 0xb50]
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x1e8]
mov dword [rax + 0x10], ecx
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x2ff], cl
mov qword [rbp + 0x300], rax
jne 0x14023ca02
mov ecx, 0x8c9
sub rsp, 0x20
call fcn.140096360
mov rdx, qword [rbp + 0xb50]
add rsp, 0x20
mov dword [rbp + 0x1e4], eax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x2ff], cl
mov qword [rbp + 0x300], rax
jne 0x14023ca02
mov ecx, 0x8fd
sub rsp, 0x20
call fcn.140096360
mov rdx, qword [rbp + 0xb50]
add rsp, 0x20
mov dword [rbp + 0x1e0], eax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x2ff], cl
mov qword [rbp + 0x300], rax
jne 0x14023ca02
mov ecx, dword [rbp + 0x1e0]
mov edx, dword [rbp + 0x1e4]
movsxd r8, edx
movsxd rax, ecx
imul rax, r8
mov qword [rbp + 0x1c8], rax
cvtsi2sd xmm0, edx
cvtsi2sd xmm1, ecx
mulsd xmm0, xmm1
movsd qword [rbp + 0x1d0], xmm0
cvtsi2sd xmm1, rax
movsd qword [rbp + 0x1d8], xmm1
ucomisd xmm0, xmm1
jne 0x14023b4e9
jp 0x14023b4e9
jmp 0x14023b563
movsd xmm1, qword [rbp + 0x1d0]
movsd xmm0, qword [rbp + 0x1d8]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.140271c60
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0x1d0]
movsd qword [rbp + 0x1c0], xmm1
sub rsp, 0x20
call fcn.140271c60
movsd xmm1, qword [rbp + 0x1c0]
add rsp, 0x20
movsd xmm2, qword [0x14028c6b0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x14023b563
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x308], rax
jmp 0x14023c9e5
mov rax, qword [rbp + 0x1c8]
movabs rcx, 0x9cc7f95189340028
movabs rdx, 0x633806ae09340028
xor rcx, rdx
movabs rdx, 0xd72775ece2b26ed2
movabs r8, 0x28d88a131d4d912d
xor rdx, r8
xor rcx, rdx
movabs rdx, 0xc8eb7d42bd2b21d8
movabs r8, 0xc8eb7d42bd2b21d8
xor rdx, r8
movabs r8, 0x42f858802e34bc7f
movabs r9, 0x42f858802e34bc7e
xor r8, r9
sub rdx, r8
sub rcx, rdx
sub rax, rcx
movabs rcx, 0xb49b7a3b9e89f4f4
movabs rdx, 0x4b6485c49e89f4f4
xor rcx, rdx
cmp rax, rcx
jae 0x14023b60d
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x308], rax
jmp 0x14023c9e5
mov ecx, 0x141
sub rsp, 0x20
call fcn.140096360
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xb50]
mov dword [rbp + 0x1bc], ecx
mov dl, byte [rax]
mov r8b, 0xdc
xor r8b, 0xdc
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x2ff], cl
mov qword [rbp + 0x300], rax
jne 0x14023ca02
movsd xmm0, qword [rbp + 0x1d8]
mov ecx, dword [rbp + 0x1bc]
mov rax, qword [rbp + 0x1c8]
movsxd rdx, ecx
imul rax, rdx
mov qword [rbp + 0x1a0], rax
cvtsi2sd xmm1, ecx
mulsd xmm0, xmm1
movsd qword [rbp + 0x1a8], xmm0
cvtsi2sd xmm1, rax
movsd qword [rbp + 0x1b0], xmm1
ucomisd xmm0, xmm1
jne 0x14023b6a6
jp 0x14023b6a6
jmp 0x14023b720
movsd xmm1, qword [rbp + 0x1a8]
movsd xmm0, qword [rbp + 0x1b0]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.140271c60
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0x1a8]
movsd qword [rbp + 0x198], xmm1
sub rsp, 0x20
call fcn.140271c60
movsd xmm1, qword [rbp + 0x198]
add rsp, 0x20
movsd xmm2, qword [0x14028c6b0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x14023b720
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x308], rax
jmp 0x14023c9e5
mov rax, qword [rbp + 0x1a0]
movabs rcx, 0xfd71325c9d848960
sub rax, rcx
add rax, 0xffffffff80000000
movabs rcx, 0xfd71325c9d848960
add rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x14023b775
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x308], rax
jmp 0x14023c9e5
mov rcx, qword [rbp + 0x1e8]
mov rax, qword [rbp + 0xb78]
mov rdx, qword [rbp + 0x1a0]
mov dword [rcx + 0x14], edx
mov rax, qword [rax]
mov qword [rax + 8], rcx
mov rax, qword [rbp + 0xf38]
movabs rcx, 0xfcf4c3a7a8b21326
movabs rdx, 0xfcf4c3a7a8b21326
xor rcx, rdx
cmp rax, rcx
je 0x14023bbe4
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.1400370c0
mov rcx, qword [rbp + 0xb08]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0xb00]
mov qword [rbp + 0x188], rdx
mov qword [rax], 0
mov qword [rax + 8], 0
mov word [rcx], 0x3e8
sub rsp, 0x20
call fcn.140096085
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xb50]
mov qword [rbp + 0x190], rcx
cmp byte [rax], 0
jne 0x14023bbd6
mov rcx, qword [rbp + 0xb00]
mov rax, qword [rbp + 0x190]
mov r8, qword [rax]
mov rdx, qword [rbp + 0xf38]
mov rax, rdx
and rax, r8
shl rax, 1
xor rdx, r8
add rdx, rax
sub rsp, 0x20
call fcn.140037460
mov rax, qword [rbp + 0x190]
mov rdx, qword [rbp + 0xb10]
mov rcx, qword [rbp + 0xb00]
add rsp, 0x20
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14023ccc3
mov rcx, qword [rbp + 0xb00]
add rsp, 0x20
mov rax, qword [rbp + 0xf38]
mov qword [rbp + 0xc50], rax
mov rax, qword [rbp + 0xf40]
mov qword [rbp + 0xc58], rax
lea rdx, [rbp + 0xc50]
sub rsp, 0x20
call fcn.14023ccc3
mov rcx, qword [rbp + 0xb00]
mov rax, qword [rbp + 0x188]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rcx, qword [rcx + 8]
mov qword [rax + 8], rcx
mov ecx, 0x4e9
sub rsp, 0x20
call fcn.140096360
mov rcx, qword [rbp + 0x188]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0xb50]
mov dword [rcx + 0x10], edx
cmp byte [rax], 0
jne 0x14023bbd6
mov ecx, 0x3ab
sub rsp, 0x20
call fcn.140096360
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xb50]
mov dword [rbp + 0x184], ecx
mov al, byte [rax]
mov cl, 0xb6
xor cl, 0xb6
cmp al, cl
jne 0x14023bbd6
mov cx, 0x594b
xor cx, 0x5eb6
sub rsp, 0x20
call fcn.140096360
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xb50]
mov dword [rbp + 0x180], ecx
cmp byte [rax], 0
jne 0x14023bbd6
mov ecx, dword [rbp + 0x180]
mov edx, dword [rbp + 0x184]
movsxd r8, edx
movsxd rax, ecx
imul rax, r8
mov qword [rbp + 0x168], rax
cvtsi2sd xmm0, edx
cvtsi2sd xmm1, ecx
mulsd xmm0, xmm1
movsd qword [rbp + 0x170], xmm0
cvtsi2sd xmm1, rax
movsd qword [rbp + 0x178], xmm1
ucomisd xmm0, xmm1
jne 0x14023b9bc
jp 0x14023b9bc
jmp 0x14023ba39
movsd xmm1, qword [rbp + 0x170]
movsd xmm0, qword [rbp + 0x178]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.140271c60
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0x170]
movsd qword [rbp + 0x160], xmm1
sub rsp, 0x20
call fcn.140271c60
movsd xmm1, qword [rbp + 0x160]
mov rdx, qword [rbp + 0x168]
add rsp, 0x20
movsd xmm2, qword [0x14028c6b0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
setb al
mov ecx, edx
movsxd rcx, ecx
sub rcx, rdx
setne cl
or al, cl
test al, 1
jne 0x14023bbc9
jmp 0x14023ba59
mov rax, qword [rbp + 0x168]
add rax, 0xffffffff80000000
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jb 0x14023bbc9
mov ecx, 0x330
sub rsp, 0x20
call fcn.140096360
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xb50]
mov dword [rbp + 0x15c], ecx
cmp byte [rax], 0
jne 0x14023bbd6
movsd xmm0, qword [rbp + 0x178]
mov ecx, dword [rbp + 0x15c]
mov rax, qword [rbp + 0x168]
movsxd r9, ecx
mov rdx, rax
xor rdx, 0xffffffffffffffff
mov r8, r9
and r8, rdx
mov r10, r9
xor r10, 0xffffffffffffffff
mov rdx, rax
and rdx, r10
imul rdx, r8
mov r8, rax
and r8, r9
or rax, r9
imul rax, r8
add rax, rdx
mov qword [rbp + 0x140], rax
cvtsi2sd xmm1, ecx
mulsd xmm0, xmm1
movsd qword [rbp + 0x148], xmm0
cvtsi2sd xmm1, rax
movsd qword [rbp + 0x150], xmm1
ucomisd xmm0, xmm1
jne 0x14023bb02
jp 0x14023bb02
jmp 0x14023bb7f
movsd xmm1, qword [rbp + 0x148]
movsd xmm0, qword [rbp + 0x150]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.140271c60
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0x148]
movsd qword [rbp + 0x138], xmm1
sub rsp, 0x20
call fcn.140271c60
movsd xmm1, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x140]
add rsp, 0x20
movsd xmm2, qword [0x14028c6b0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
setb al
mov ecx, edx
movsxd rcx, ecx
sub rcx, rdx
setne cl
or al, cl
test al, 1
jne 0x14023bbc9
jmp 0x14023bb9f
mov rax, qword [rbp + 0x140]
add rax, 0xffffffff80000000
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jb 0x14023bbc9
mov rdx, qword [rbp + 0x188]
mov rax, qword [rbp + 0x140]
mov dword [rdx + 0x14], eax
lea rcx, [rbp + 0xf18]
sub rsp, 0x20
call fcn.14004f2d0
add rsp, 0x20
jmp 0x14023bbe4
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x308], rax
jmp 0x14023c9e5
mov ecx, 0x4a0
sub rsp, 0x20
call fcn.140095ec0
mov rcx, qword [rbp + 0xb50]
add rsp, 0x20
mov qword [rbp + 0x130], rax
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0x308], rax
jne 0x14023c9e5
mov rcx, qword [rbp + 0x130]
mov rax, qword [rbp + 0xb30]
mov r8, qword [rbp + 0xb28]
mov rdx, qword [rbp + 0xf28]
lea r9, [rbp + 0xc38]
add r9, 8
mov qword [rbp + 0xd8], r9
lea r9, [rbp + 0xc10]
add r9, 8
mov qword [rbp + 0xe0], r9
lea r9, [rbp + 0xc00]
add r9, 8
mov qword [rbp + 0xe8], r9
lea r9, [rbp + 0xbe0]
add r9, 8
mov qword [rbp + 0xf0], r9
lea r9, [rbp + 0xbd0]
add r9, 8
mov qword [rbp + 0xf8], r9
add r8, 8
mov qword [rbp + 0x100], r8
add rax, 8
mov qword [rbp + 0x108], rax
lea rax, [rbp + 0xbb0]
add rax, 8
mov qword [rbp + 0x110], rax
xor eax, eax
test rdx, rdx
cmovg rax, rdx
mov qword [rbp + 0x118], rax
xor eax, eax
mov qword [rbp + 0x120], rcx
mov qword [rbp + 0x128], rax
mov rcx, qword [rbp + 0x118]
mov rdx, qword [rbp + 0x120]
mov rax, qword [rbp + 0x128]
mov qword [rbp + 0xc8], rax
mov qword [rbp + 0xd0], rdx
cmp rax, rcx
je 0x14023c83f
mov rax, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0xf28]
mov qword [rbp + 0xc0], rcx
cmp rax, rcx
jl 0x14023bd5f
mov rcx, qword [rbp + 0xc8]
mov rdx, qword [rbp + 0xc0]
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
sub rsp, 0x20
call fcn.1400292ad
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x308], rax
jmp 0x14023c9e5
mov rcx, qword [rbp + 0xc8]
mov rax, qword [rbp + 0xb70]
mov rax, qword [rax]
shl rcx, 4
lea rdx, [rax + rcx + 8]
mov qword [rbp + 0xa8], rdx
movups xmm0, xmmword [rax + rcx + 8]
movaps xmmword [rbp + 0xc20], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0xc38]
lea rdx, [rbp + 0xc20]
call fcn.140039831
mov rcx, qword [rbp + 0xd8]
mov rax, qword [rbp + 0xe0]
add rsp, 0x20
mov rdx, qword [rbp + 0xc38]
mov rcx, qword [rcx]
mov qword [rbp + 0xc10], rdx
mov qword [rax], rcx
sub rsp, 0x20
lea rcx, [rbp + 0xc10]
call fcn.14010c730
mov rcx, qword [rbp + 0xb50]
add rsp, 0x20
mov dl, al
mov rax, qword [rbp + 0xd0]
mov cl, byte [rcx]
movzx edx, dl
mov r8d, 0x1e
sub r8d, edx
test cl, cl
mov edx, 0x1c
cmove edx, r8d
mov dword [rbp + 0xb0], edx
sub edx, 0x1c
mov byte [rbp + 0xb7], cl
mov qword [rbp + 0xb8], rax
je 0x14023c7ac
jmp 0x14023be27
mov rax, qword [rbp + 0xd0]
mov ecx, dword [rbp + 0xb0]
sub ecx, 0x1d
mov qword [rbp + 0xa0], rax
jne 0x14023c7d7
jmp 0x14023be49
mov rdx, qword [rbp + 0xb18]
mov rax, qword [rbp + 0xf18]
mov qword [rdx], rax
mov rax, qword [rbp + 0xf20]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0xc00]
sub rsp, 0x20
call fcn.1401c9a60
mov rcx, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov rdx, qword [rbp + 0xc00]
mov qword [rbp + 0x90], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x98], rcx
cmp byte [rax], 0
jne 0x14023c7c9
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rbp + 0x98]
mov rdx, qword [rbp + 0x90]
mov r8, qword [rbp + 0xa8]
mov r9, qword [r8]
mov qword [rbp + 0xbf0], r9
mov r8, qword [r8 + 8]
mov qword [rbp + 0xbf8], r8
mov qword [rbp + 0xbe0], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0xbf0]
lea rdx, [rbp + 0xbe0]
mov r8d, 1
sub rsp, 0x20
call fcn.1401b7fea
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xb50]
mov qword [rbp + 0x88], rcx
mov al, byte [rax]
mov cl, 0x42
xor cl, 0x42
cmp al, cl
jne 0x14023c7c9
mov ax, 0xf6cd
xor ax, 0xf6f3
mov word [rbp + 0xc4e], ax
lea rcx, [rbp + 0xc4e]
sub rsp, 0x20
call fcn.140096085
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xb50]
mov qword [rbp + 0x80], rcx
cmp byte [rax], 0
jne 0x14023c7c9
mov word [rbp + 0xc4c], 0x61d
lea rcx, [rbp + 0xc4c]
sub rsp, 0x20
call fcn.140096085
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xb50]
mov qword [rbp + 0x78], rcx
mov al, byte [rax]
mov cl, 0x54
xor cl, 0x54
cmp al, cl
jne 0x14023c7c9
mov rax, qword [rbp + 0xb20]
mov rcx, qword [rbp + 0x78]
mov rdx, qword [rbp + 0x80]
mov r8, qword [rdx]
mov qword [rbp + 0xbc0], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0xbc8], rdx
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rcx, qword [rcx + 8]
mov qword [rax + 8], rcx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rax, qword [rbp + 0xb20]
mov rcx, qword [rbp + 0xbc0]
mov qword [rbp + 0xfd0], rcx
mov rcx, qword [rbp + 0xbc8]
mov qword [rbp + 0xfd8], rcx
mov rcx, qword [rax]
mov qword [rbp + 0xfc0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xfc8], rax
lea rcx, [rbp + 0xbd0]
lea rdx, [rbp + 0xfd0]
lea r8, [rbp + 0xfc0]
sub rsp, 0x20
call fcn.1400ca2e0
mov rcx, qword [rbp + 0xf8]
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov rdx, qword [rbp + 0xbd0]
mov qword [rbp + 0x68], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x70], rcx
mov al, byte [rax]
mov cl, 0x7c
xor cl, 0x7c
cmp al, cl
jne 0x14023c7c9
mov rdx, qword [rbp + 0xd0]
mov rcx, qword [rbp + 0xb28]
sub rsp, 0x20
call fcn.14000a570
mov r8, qword [rbp + 0xb28]
mov rdx, qword [rbp + 0x100]
mov rcx, qword [rbp + 0xb50]
mov rax, qword [rbp + 0xd0]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0x50], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x58], rdx
cmp byte [rcx], 0
mov qword [rbp + 0x60], rax
jne 0x14023c720
mov r8, qword [rbp + 0x68]
mov rcx, qword [rbp + 0xb30]
mov rax, qword [rbp + 0x50]
mov rdx, rax
and rdx, r8
or rax, r8
add rdx, rax
sub rsp, 0x20
call fcn.140037460
mov rax, qword [rbp + 0xb30]
mov rdx, qword [rbp + 0x108]
mov rcx, qword [rbp + 0x68]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0x38], rax
mov rdx, qword [rdx]
mov qword [rbp + 0x40], rdx
movabs rdx, 0xd613a935df231e27
movabs r8, 0xd613a935df231e27
xor rdx, r8
cmp rcx, rdx
mov qword [rbp + 0x48], rax
jle 0x14023c386
mov rdx, qword [rbp + 0x68]
mov rax, rdx
add rax, 1
mov qword [rbp + 0x30], rax
mov rcx, rdx
or rcx, rcx
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
or r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rcx, r8
movabs r8, 0xd74454c6bde5c3d2
movabs r9, 0x28bbab39421a3c2d
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0xceb835fe8b87e17d
movabs r9, 0x3147ca0174781e82
xor r8, r9
movabs r9, 0x78b1f3c8a51ce340
movabs r10, 0x874e0c375ae31cbf
xor r9, r10
xor r8, r9
and rdx, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x14023c1dc
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0x38]
add rsp, 0x20
mov qword [rbp + 0x48], rax
jmp 0x14023c386
mov rax, qword [rbp + 0x30]
cmp rax, 0
jge 0x14023c236
mov rcx, qword [rbp + 0x30]
movabs rdx, 0x2be1b4beeb9767aa
movabs rax, 0x2be1b4beeb9767aa
xor rdx, rax
movabs r8, 0x4e7cff1a132077a9
movabs rax, 0x318300e5ecdf8856
xor r8, rax
sub rsp, 0x20
call fcn.14001a720
mov rax, qword [rbp + 0x38]
add rsp, 0x20
mov qword [rbp + 0x48], rax
jmp 0x14023c386
mov rax, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x38]
mov rcx, qword [rbp + 0x40]
add rcx, 8
add rcx, rdx
mov qword [rbp + 0x18], rcx
add rax, 8
mov qword [rbp + 0x20], rax
xor eax, eax
mov qword [rbp + 0x28], rax
mov rcx, qword [rbp + 0x28]
mov rdx, qword [rbp + 0x68]
mov rax, qword [rbp + 0x18]
mov r8, qword [rbp + 0x20]
mov r8b, byte [r8 + rcx]
mov byte [rax + rcx], r8b
mov rax, rcx
add rax, 1
cmp rcx, rdx
mov qword [rbp + 0x28], rax
jne 0x14023c25b
mov r9, qword [rbp + 0x68]
mov rcx, qword [rbp + 0x38]
mov rax, rcx
add rax, r9
mov rdx, rax
xor rdx, rcx
mov r8, rax
xor r8, 0xffffffffffffffff
mov rcx, rax
xor rcx, 0xffffffffffffffff
and r8, rcx
mov rcx, r9
or rcx, rcx
xor rcx, 0xffffffffffffffff
or r8, rcx
movabs rcx, 0xa8b19331a07de03b
movabs r10, 0x574e6cce5f821fc4
xor rcx, r10
xor r8, rcx
mov rcx, rax
or rcx, r9
xor rcx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
movabs r9, 0xc010ca42bbd35b7b
movabs r10, 0x3fef35bd442ca484
xor r9, r10
xor rcx, r9
and r8, rcx
mov rcx, rdx
xor rcx, 0xffffffffffffffff
movabs r10, 0xeb8c618c39afd63e
movabs r9, 0x14739e73c65029c1
xor r10, r9
mov r9, r8
xor r9, r10
or rcx, r9
movabs r9, 0x6988993947a58c1e
movabs r10, 0x967766c6b85a73e1
xor r9, r10
xor rdx, r9
xor r8, 0xffffffffffffffff
or rdx, r8
and rcx, rdx
movabs rdx, 0x1a37753846006d7f
movabs r8, 0xe5c88ac7b9ff9280
xor rdx, r8
xor rcx, rdx
cmp rcx, 0
mov qword [rbp + 0x48], rax
jge 0x14023c386
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0x38]
add rsp, 0x20
mov qword [rbp + 0x48], rax
mov rcx, qword [rbp + 0x50]
mov rax, qword [rbp + 0x48]
mov qword [rbp + 8], rax
movabs rdx, 0xad86fbb92db98833
movabs r8, 0xad86fbb92db98833
xor rdx, r8
cmp rcx, rdx
mov qword [rbp + 0x10], rax
jle 0x14023c54f
mov rcx, qword [rbp + 0x50]
mov rax, rcx
add rax, 1
mov qword [rbp], rax
movabs rdx, 0x8f45442c82d54496
movabs r8, 0x70babbd37d2abb69
xor rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x14023c406
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 8]
add rsp, 0x20
mov qword [rbp + 0x10], rax
jmp 0x14023c54f
mov rax, qword [rbp]
movabs rcx, 0x864eeeb1b3a7160d
movabs rdx, 0x864eeeb1b3a7160d
xor rcx, rdx
cmp rax, rcx
jge 0x14023c456
mov rcx, qword [rbp]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
mov rax, qword [rbp + 8]
add rsp, 0x20
mov qword [rbp + 0x10], rax
jmp 0x14023c54f
mov rax, qword [rbp + 0x58]
mov rdx, qword [rbp + 8]
mov rcx, qword [rbp + 0x40]
add rcx, 8
add rcx, rdx
mov qword [rbp - 0x18], rcx
add rax, 8
mov qword [rbp - 0x10], rax
xor eax, eax
mov qword [rbp - 8], rax
mov rcx, qword [rbp - 8]
mov rdx, qword [rbp + 0x50]
mov rax, qword [rbp - 0x18]
mov r8, qword [rbp - 0x10]
mov r8b, byte [r8 + rcx]
mov byte [rax + rcx], r8b
movabs r8, 0xde76e05babb98ff6
movabs rax, 0xde76e05babb98ff7
xor r8, rax
mov rax, rcx
add rax, r8
cmp rcx, rdx
mov qword [rbp - 8], rax
jne 0x14023c47b
mov r8, qword [rbp + 0x50]
mov r9, qword [rbp + 8]
xor eax, eax
mov ecx, eax
sub rcx, r8
mov rax, r9
sub rax, rcx
mov rcx, rax
or rcx, rcx
xor rcx, 0xffffffffffffffff
mov rdx, r9
xor rdx, 0xffffffffffffffff
mov r10, r9
xor r10, 0xffffffffffffffff
and rdx, r10
or rcx, rdx
xor rcx, 0xffffffffffffffff
mov rdx, rax
xor rdx, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
and rdx, r9
movabs r9, 0x4f17a6db75485fa0
movabs r10, 0xb0e859248ab7a05f
xor r9, r10
xor rcx, r9
xor rdx, 0xffffffffffffffff
and rcx, rdx
mov rdx, rax
xor rdx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rbp + 0x10], rax
jge 0x14023c54f
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 8]
add rsp, 0x20
mov qword [rbp + 0x10], rax
mov rcx, qword [rbp + 0xb40]
mov rax, qword [rbp + 0x110]
mov rdx, qword [rbp + 0x40]
mov r9, qword [rbp + 0xa88]
mov r8, qword [rbp + 0x10]
mov r9, qword [r9]
add r9, 0x18
mov qword [rbp - 0x28], r9
mov qword [rbp + 0xbb0], r8
mov qword [rax], rdx
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp + 0x88]
mov rax, qword [rbp + 0xb40]
add rsp, 0x20
lea r8, [rbp + 0xbb0]
xor r9d, r9d
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.1401b7d64
mov rcx, qword [rbp + 0xb50]
add rsp, 0x30
mov rax, qword [rbp + 0xd0]
cmp byte [rcx], 0
mov qword [rbp - 0x20], rax
jne 0x14023c6a1
mov r8, qword [rbp + 0xd0]
movabs rcx, 0xc0980d09071f1394
movabs rax, 0xc0980d09071f1394
xor rcx, rax
sub rcx, r8
xor eax, eax
sub rax, 1
add rcx, rax
xor eax, eax
sub rax, rcx
xor r8, 0xffffffffffffffff
mov rcx, rax
xor rcx, 0xffffffffffffffff
movabs rdx, 0xa8a4e9abb9b2f43
movabs r9, 0xf575b1654464d0bc
xor rdx, r9
xor r8, rdx
movabs rdx, 0xbd20e834b8db2ac0
movabs r9, 0x34fa3d07c7686f3d
xor rdx, r9
movabs r9, 0x5cfb42bf71aef31
movabs r10, 0xfa304bd408e510ce
xor r9, r10
xor rdx, r9
or rcx, r8
movabs r8, 0x89dad5337fb345fd
or rdx, r8
xor rcx, 0xffffffffffffffff
and rcx, rdx
cmp rcx, 0
mov qword [rbp - 0x20], rax
jge 0x14023c6a1
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0xd0]
add rsp, 0x20
mov qword [rbp - 0x20], rax
mov rcx, qword [rbp + 0x58]
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x30], rax
cmp rcx, 0
mov qword [rbp + 0x60], rax
je 0x14023c720
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rcx]
mov r8, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor r8, rcx
mov rcx, rdx
xor rcx, r8
and rcx, rdx
movabs rdx, 0x19d729c03a9cb364
movabs r8, 0x19d729c03a9cb364
xor rdx, r8
cmp rcx, rdx
mov qword [rbp + 0x60], rax
jne 0x14023c720
mov rcx, qword [rbp + 0x58]
sub rsp, 0x20
call fcn.14001d1d6
mov rax, qword [rbp - 0x30]
add rsp, 0x20
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x60]
mov qword [rbp - 0x38], rcx
cmp rax, 0
je 0x14023c792
mov rax, qword [rbp + 0x70]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
movabs rcx, 0xde9e7f7818cb97f
movabs rdx, 0xde9e7f7818cb97f
xor rcx, rdx
cmp rax, rcx
jne 0x14023c792
mov rcx, qword [rbp + 0x70]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
mov rax, qword [rbp - 0x38]
mov rcx, qword [rbp + 0xb50]
mov cl, byte [rcx]
mov byte [rbp + 0xb7], cl
mov qword [rbp + 0xb8], rax
mov cl, byte [rbp + 0xb7]
mov rax, qword [rbp + 0xb8]
cmp cl, 0
mov qword [rbp + 0xa0], rax
je 0x14023c7d7
xor eax, eax
mov qword [rbp + 0x308], rax
jmp 0x14023c9e5
mov r8, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0xa0]
movabs rdx, 0x7b278ae15d0f9f35
movabs rax, 0x7b278ae15d0f9f34
xor rdx, rax
mov rax, r8
add rax, rdx
xor r8, 0xffffffffffffffff
mov rdx, rax
and rdx, r8
cmp rdx, 0
mov qword [rbp + 0x120], rcx
mov qword [rbp + 0x128], rax
jge 0x14023bcd4
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x308], rax
jmp 0x14023c9e5
movabs rcx, 0xc25cf66de3b03c47
movabs rax, 0xc25cf66de3b03c77
xor rcx, rax
movabs rdx, 0x9ca820faceeb4ca4
movabs rax, 0x9ca820faceeb4cac
xor rdx, rax
sub rsp, 0x20
call fcn.1400370c0
add rsp, 0x20
mov qword [rbp - 0x48], rax
mov qword [rax], 0
mov dword [rax + 8], 1
mov ecx, 0x49b
sub rsp, 0x20
call fcn.140095ec0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xb50]
mov qword [rbp - 0x40], rcx
mov dl, byte [rax]
xor eax, eax
mov r8b, al
xor r8b, 0
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x2ff], cl
mov qword [rbp + 0x300], rax
jne 0x14023ca02
mov rax, qword [rbp - 0x40]
add rax, 0xffffffff80000000
movabs rcx, 0x2e286743d936dea5
movabs rdx, 0xd1d798bcd936dea5
xor rcx, rdx
cmp rax, rcx
jae 0x14023c927
mov rcx, qword [rbp - 0x40]
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
sub rsp, 0x20
call fcn.14001a720
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x308], rax
jmp 0x14023c9e5
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x40]
mov dword [rax + 0xc], ecx
mov ecx, 0x10
mov edx, 8
sub rsp, 0x20
call fcn.140029060
add rsp, 0x20
mov rdx, rax
mov qword [rbp - 0x50], rdx
lea rcx, [rbp + 0xba0]
sub rsp, 0x20
call fcn.1400af991
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp + 0xb50]
mov rax, qword [rbp - 0x50]
add rsp, 0x20
mov r8, qword [rbp + 0xba0]
mov qword [rcx + 0x10], r8
mov r8, qword [rbp + 0xba8]
mov qword [rcx + 0x18], r8
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x2ff], cl
mov qword [rbp + 0x300], rax
jne 0x14023ca02
mov rdx, qword [rbp - 0x48]
mov rax, qword [rbp + 0xa88]
mov rcx, qword [0x14028c6c8]
mov qword [rdx + 0x20], rcx
mov rcx, qword [0x14028c6d0]
mov qword [rdx + 0x28], rcx
mov rax, qword [rax]
mov rcx, qword [rax + 0x20]
add rcx, 8
sub rsp, 0x20
call fcn.140048270
mov rax, qword [rbp - 0x50]
add rsp, 0x20
mov qword [rbp + 0x308], rax
mov rcx, qword [rbp + 0xb50]
mov rax, qword [rbp + 0x308]
mov cl, byte [rcx]
mov byte [rbp + 0x2ff], cl
mov qword [rbp + 0x300], rax
mov rax, qword [rbp + 0xb50]
mov dl, byte [rbp + 0x2ff]
mov rcx, qword [rbp + 0x300]
mov byte [rbp - 0x52], dl
cmp dl, 0
sete dl
mov byte [rbp - 0x51], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1402352b0
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x61
xor cl, 0x61
cmp al, cl
jne 0x14023cc0c
mov rax, qword [rbp + 0xf18]
mov qword [rbp + 0xb90], rax
mov rax, qword [rbp + 0xf20]
mov qword [rbp + 0xb98], rax
lea rcx, [rbp + 0xb90]
sub rsp, 0x20
call fcn.14019fb10
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xd4
xor cl, 0xd4
cmp al, cl
jne 0x14023cc0c
mov rcx, qword [rbp + 0xb48]
mov rax, qword [rbp + 0xf28]
mov qword [rcx], rax
mov rax, qword [rbp + 0xf30]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1400333b0
mov rax, qword [rbp + 0xb68]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x60], rax
cmp rax, 0
je 0x14023cafb
mov rcx, qword [rbp - 0x60]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14023cafb
mov rcx, qword [rbp - 0x60]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
mov rax, qword [rbp + 0xb60]
mov rax, qword [rax]
mov qword [rbp - 0x68], rax
cmp rax, 0
je 0x14023cb55
mov rcx, qword [rbp - 0x68]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0x8ca7598df28f2125
movabs rdx, 0x8ca7598df28f2125
xor rcx, rdx
cmp rax, rcx
jne 0x14023cb55
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
mov rax, qword [rbp + 0xb58]
mov rax, qword [rax]
mov qword [rbp - 0x70], rax
cmp rax, 0
je 0x14023cbf5
mov rax, qword [rbp - 0x70]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x52b07f76dc9bb2a2
movabs r8, 0xad4f808923644d5d
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rcx, rdx
movabs rdx, 0xa20d26bea63b8ea3
movabs r8, 0x5df2d94159c4715c
xor rdx, r8
xor rax, rdx
xor rcx, 0xffffffffffffffff
or rax, rcx
cmp rax, 0
jne 0x14023cbf5
mov rcx, qword [rbp - 0x70]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
mov al, byte [rbp - 0x51]
mov rcx, qword [rbp + 0xb50]
mov dl, byte [rbp - 0x52]
mov byte [rcx], dl
test al, 1
jne 0x14023cca2
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [rbp - 0x78], rax
mov ax, word [rax + 0x12]
mov cx, 0x1807
xor cx, 0x1806
cmp ax, cx
jle 0x14023cca2
mov rax, qword [rbp - 0x78]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x14023cca2
mov rax, qword [rbp + 0xb50]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1402371a0
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.1400cdd40
mov rax, qword [rbp + 0xb50]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x95
xor cl, 0x95
cmp al, cl
jne 0x14023cca2
sub rsp, 0x20
call fcn.1402371d6
add rsp, 0x20
movaps xmm6, xmmword [rbp + 0xfe0]
movaps xmm7, xmmword [rbp + 0xff0]
movaps xmm8, xmmword [rbp + 0x1000]
lea rsp, [rbp + 0x1010]
pop rdi
pop rsi
pop rbp
ret