Function at 0x1400facc0
Capabilities:
Access peb ldr_data
Encode data using xor
Get ntdll base address
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], r9
mov qword [rax + 8], rcx
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x8b0
xor r14d, r14d
mov eax, r14d
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
movabs rdi, 0xf14da29d80201a4d
movabs rbx, 0x1d01c1f0e3b0ea2c
movabs rax, 0x64d450944841af30
movabs r11, 0x191fd657c885ab06
mov rcx, qword [0x14031d070]
imul rcx, rax
not rcx
movabs rdx, 0xe6e029a82efa71f8
mov rax, qword [0x14031d060]
xor rax, rdx
and rcx, rax
ror rcx, 0x15
shr rcx, 8
mov qword [rsp + 0x90], rcx
movabs rax, 0x2b0250efd0446570
mov r9, qword [0x14031d078]
imul r9, rax
add r9, rbx
movabs rax, 0x7b3c29dc00000000
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xe2fe3e0f1c4f15d4
lea rcx, [r9 + r8]
movabs r12, 0xaaaaaaaaaaaaaaab
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r13, [0x14031d060]
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x99
and ecx, 0x8000003f
lea r15d, [r14 + 1]
jge 0x1400faddb
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
movabs rdx, 0x754c52cc043ccbf4
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x100], rcx
add r8, rcx
mov r10, r9
imul r10, qword [rsp + 0x90]
sub r10, r8
xor r10, rdi
movzx ecx, r8b
mov dword [rsp + 0x58], ecx
xor ecx, 6
and ecx, 0xf
jge 0x1400fae2b
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r10, cl
movabs rcx, 0xff87b255e0a015f0
imul rax, rcx
movabs rcx, 0x43a8a40cdab47790
sub rax, rcx
xor r10, rax
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
xor r10, r11
mov eax, 2
dec rax
sub rax, 1
je 0x1400faf64
cmp rax, 1
jne 0x1400fb030
mov rdi, r8
imul rdi, r9
movabs rax, 0x57b41c6ccf5854f4
add rax, r10
xor rdi, rax
ror rdi, 0x2e
shr rdi, 0xc
not rdi
movabs rcx, 0x83571801c08e
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0xe27cbb774f55f5da
xor rdx, rax
movzx eax, r10b
movzx ecx, dil
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db940e12c71
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rbx
mov eax, 0x913afe9b
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0xc255e259b7acc93d
sub rbx, rdi
shr rbx, cl
movabs rax, 0xe3066297800da42c
mov rcx, qword [rsp + 0x100]
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x90]
xor rbx, rax
jmp 0x1400fb030
movabs rcx, 0xaaaaaa1a912303a5
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed532edfe9
imul r9, rcx
movabs rdx, 0xffff7e8ab7333179
mov rcx, qword [rsp + 0x100]
imul rcx, rdx
movabs rdx, 0x50e855be923977ce
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be43f3d4c5
mov rcx, r9
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xffffffffc476d575
lea ecx, [r10 - 0x19]
and cl, 0x3f
rol r8, cl
movabs rax, 0x4c7a7c8600000000
imul r8, rax
mov rcx, r8
ror rcx, 0x35
not rcx
movabs rax, 0x9b2de6b2307d5b88
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x90]
and cl, 0x3f
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
movabs rax, 0xff055d7bb1552ea9
xor rdi, rax
mov rax, r12
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rdi, rax
xor r11, r14
imul r11, qword [r13 + rdi*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x90]
imul r8, rbx
movabs rcx, 0xf5ed7e87b6e66475
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400c8fb4
mov qword [0x140321f30], rax
movabs rdi, 0xf472cf3f82b64dfc
movabs rbx, 0xd78d43508f34bc6b
mov rsi, r14
movabs rax, 0x6a9e6772503277a0
movabs r11, 0x304edb1edc35fa64
mov rcx, qword [0x14031d070]
imul rcx, rax
not rcx
movabs r8, 0xcfb124e12abf5d7e
mov rax, qword [0x14031d060]
xor rax, r8
and rcx, rax
ror rcx, 0x32
shr rcx, 8
mov qword [rsp + 0x30], rcx
movabs rax, 0x5fc5a7b4feaed90
mov r9, qword [0x14031d060]
imul r9, rax
movabs r8, 0x2872bcaf70cb4395
sub r9, r8
movabs rax, 0x37d84c5680000000
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x39
and ecx, 0x8000003f
jge 0x1400fb15f
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
movabs rdx, 0x42fbfc1aa5baaa28
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x60], rcx
add r8, rcx
mov r10, r9
mov rdx, qword [rsp + 0x30]
imul r10, rdx
sub r10, r8
xor r10, rdi
movzx ecx, r8b
mov dword [rsp + 0x58], ecx
xor ecx, 6
and ecx, 0xf
jge 0x1400fb1ac
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r10, cl
movabs rcx, 0x1958844f421a7eb8
imul rax, rcx
movabs rcx, 0x4c7045c35fdaab47
add rax, rcx
xor r10, rax
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
xor r10, r11
mov rax, r10
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x1400fb4aa
sub rax, 1
je 0x1400fb3bc
sub rax, 1
je 0x1400fb2f1
cmp rax, 1
jne 0x1400fb53c
mov rdi, r8
imul rdi, r9
movabs rax, 0xbc91c8f15214d33d
add rax, r10
xor rdi, rax
ror rdi, 0xa
shr rdi, 0xc
not rdi
movabs rcx, 0x8357343a482e
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0x28f039d70fea2b3d
xor rdx, rax
movzx eax, dil
movzx ecx, r10b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db96cdaa4d1
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rbx
mov eax, 0xbd01763b
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0x7a541710f2201e84
sub rbx, rdi
shr rbx, cl
movabs rax, 0x287ae137c0504a8d
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x30]
xor rbx, rax
jmp 0x1400fb53c
movabs rcx, 0xaaaaaa1abd188b05
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed7f155749
imul r9, rcx
movabs rdx, 0xffff7e8a9b08b9d9
mov rcx, qword [rsp + 0x60]
imul rcx, rdx
movabs rdx, 0x17e3eca4b8846909
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be6fc85c65
mov rcx, r9
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xffffffffe84d5dd5
lea ecx, [r10 + 7]
and cl, 0x3f
rol r8, cl
movabs rax, 0xc28344000000000
imul r8, rax
mov rcx, r8
ror rcx, 0x24
not rcx
movabs rax, 0x9b2de6b280937908
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x30]
and cl, 0x3f
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
jmp 0x1400fb53c
movabs rax, 0x14ffe498dafee15b
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0xb8d30c07d49b203
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0x58]
and eax, 0x8000003f
jge 0x1400fb410
sub eax, r15d
or eax, 0xffffffc0
add eax, r15d
mov cl, al
rol r11, cl
movabs rcx, 0x2872bcaf70cb4395
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x3508f34bc6b
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7e1dcfd28
or r11, rax
mov rbx, qword [0x14031d070]
imul rbx, rdi
sub rbx, r8
mov rax, qword [rsp + 0x30]
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a6b0d4fd25
xor rbx, rax
mov rax, r10
imul rax, r8
imul rax, rbx
mov rsi, r9
sub rsi, rax
movabs rax, 0x78958947f86b13f
add rsi, rax
xor rsi, qword [rsp + 0x30]
not rsi
jmp 0x1400fb53c
mov rcx, r10
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d070]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x24
imul r11, r8
mov rsi, rdx
not rsi
imul rsi, r9
movabs rax, 0x7cd8a7de6d25acc4
imul rsi, rax
imul rax, qword [0x14031d060], 0xfffffffff68aa71a
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x30], rax
mov al, sil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1400fb51d
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x30]
ror rax, cl
movabs rcx, 0x2872bcaf70cb4395
add rax, rcx
add rax, qword [rsp + 0x60]
mov qword [rsp + 0x30], rax
movabs rax, 0xff055d7b9d6ea609
xor rdi, rax
mov rax, r12
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rdi, rax
xor r11, rsi
imul r11, qword [r13 + rdi*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x30]
imul r8, rbx
movabs rcx, 0xf5ed7e879addecd5
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400c950c
mov qword [0x140321f60], rax
movabs rdi, 0x346c1bfe5ef82676
movabs rbx, 0xac3cfb6ecf502b5
mov rsi, r14
movabs rax, 0x690fb761bb501caa
movabs r11, 0xff16f0e95e229f57
mov rcx, qword [0x14031d070]
imul rcx, rax
not rcx
movabs r8, 0xe90f169663c743
mov rax, qword [0x14031d060]
xor rax, r8
and rcx, rax
ror rcx, 0x22
shr rcx, 8
mov qword [rsp + 0x30], rcx
movabs rax, 0xf4aa6c474915e308
mov r9, qword [0x14031d060]
imul r9, rax
add r9, rbx
movabs rax, 0xd64aececffffffff
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xf53c3049130afd4b
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x77
and ecx, 0x8000003f
jge 0x1400fb668
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, r9
ror rdx, cl
not rdx
movabs rcx, 0xef445e86ae915acc
mov rax, rdx
imul rax, rcx
mov qword [rsp + 0x60], rax
add r8, rax
mov r10, r9
imul r10, qword [rsp + 0x30]
sub r10, r8
xor r10, rdi
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
movabs rax, 0x190c746e84b6ca3c
imul rdx, rax
movabs rax, 0x45d336d7e67953f9
sub rdx, rax
xor r10, rdx
xor r10, r11
mov rax, r10
and rax, r15
je 0x1400fb999
sub rax, 1
je 0x1400fb8ae
sub rax, 1
je 0x1400fb7e3
cmp rax, 1
jne 0x1400fba2d
mov rdi, r8
imul rdi, r9
movabs rax, 0x51b127234bf2cacd
add rax, r10
xor rdi, rax
ror rdi, 0x18
shr rdi, 0xc
not rdi
movabs rcx, 0x83572b2d6e64
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0xf5beb531733cb3ad
xor rdx, rax
movzx eax, r10b
movzx ecx, dil
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db973cd829f
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rbx
mov eax, 0xa2165075
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0x3d3c6491fe6b7262
sub rbx, rdi
shr rbx, cl
movabs rax, 0xf54454d1639d1e05
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x30]
xor rbx, rax
jmp 0x1400fba2d
movabs rcx, 0xaaaaaa1aa20fad4b
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed60027107
imul r9, rcx
movabs rdx, 0xffff7e8a841f9f97
mov rcx, qword [rsp + 0x60]
imul rcx, rdx
movabs rdx, 0x3d8d3d94bfb29774
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be70df7a2b
mov rcx, r9
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xfffffffff75a7b9b
lea ecx, [r10 + 9]
and cl, 0x3f
rol r8, cl
movabs rax, 0x3420790000000000
imul r8, rax
mov rcx, r8
ror rcx, 0x20
not rcx
movabs rax, 0x9b2de6b2fccfe030
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x30]
and cl, 0x3f
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
jmp 0x1400fba2d
movabs rax, 0xec01a936da58e9b5
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0xcb93e401a107d989
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r8b
and cl, 0x3f
rol r11, cl
movabs rcx, 0xf53c3049130afd4b
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfb6ecf502b5
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7fecbdb66
or r11, rax
mov rbx, qword [0x14031d070]
imul rbx, rdi
sub rbx, r8
mov rax, qword [rsp + 0x30]
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a6afc3db6b
xor rbx, rax
mov rax, r10
imul rax, r8
imul rax, rbx
mov rsi, r9
sub rsi, rax
movabs rax, 0x789589460919771
add rsi, rax
xor rsi, qword [rsp + 0x30]
movzx eax, r9b
imul ecx, eax, 0xe
and cl, 0x3f
rol rsi, cl
not rsi
jmp 0x1400fba2d
mov rcx, r10
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d088]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x17
imul r11, r8
mov rsi, qword [rsp + 0x30]
not rsi
imul rsi, r9
movabs rax, 0x7cd8a7de72328a8a
imul rsi, rax
imul rax, qword [0x14031d060], 0xffffffffc8415814
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x30], rax
mov al, sil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1400fba0e
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x30]
ror rax, cl
movabs rcx, 0xf53c3049130afd4b
add rax, rcx
add rax, qword [rsp + 0x60]
mov qword [rsp + 0x30], rax
movabs rax, 0xff055d7b82798047
xor rdi, rax
mov rax, r12
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rdi, rax
xor r11, rsi
imul r11, qword [r13 + rdi*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x30]
imul r8, rbx
movabs rcx, 0xf5ed7e8785caca9b
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400c9530
mov qword [0x140321f90], rax
mov qword [rsp + 0x1b0], r14
movabs rax, 0x26bfb6ddf3a60b99
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x120], r14
movabs rax, 0x93f33fdbd57a23a1
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x8e0]
mov rsi, qword [rax + 8]
sub rsi, qword [rax]
movabs rcx, 0xf33a52a8c5db0503
add rcx, qword [rsp + 0x1b0]
movabs rax, 0x2a55366252fc57df
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f31b7200e
sub rcx, rax
movabs rax, 0xf8f8cda5e8a82899
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x47d654cb8fedc3a0
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179b77e52a851
xor rcx, rax
movabs rax, 0x5f627de07cc184c4
sub rcx, rax
movabs rax, 0xb63b3cd8feba43d8
xor rcx, rax
movabs rdx, 0x3483ce51a4524c83
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94aa3176a68
mov r10, qword [0x14031d038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b55ce89597
mov r11, qword [0x14031d030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d58625a453d
add rdx, rax
add rdx, rcx
movabs rax, 0x95516ef0a1fe4b58
xor rdx, rax
mov qword [rsp + 0x1b0], rdx
movabs rcx, 0xf33a52b11b039883
add rcx, qword [rsp + 0x120]
movabs rax, 0xbdd536625304ad08
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80b5496638
add rcx, rax
movabs rax, 0xf8f8cd9d722af2cb
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654c040552f67
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179adfd306013
xor rcx, rax
movabs rax, 0x5f627dc65a9181a6
sub rcx, rax
movabs rax, 0x1a3b3cd4d3e350d3
xor rcx, rax
movabs rax, 0xb483ce49897dd50c
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ac46c0cb6
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b53b93f349
xor r11, rax
movabs rax, 0xe0b56d7a180f760b
add rcx, rax
add rcx, r11
movabs rax, 0xd1d2d06bd16261e6
xor rcx, rax
mov qword [rsp + 0x120], rcx
and rcx, rdx
mov qword [rsp + 0x120], r14
mov qword [rsp + 0x1b0], r14
cmp rsi, rcx
jne 0x1400fbd69
mov dword [rsp + 0x108], r14d
mov dword [rsp + 0x108], 0x6de11c86
mov eax, dword [rsp + 0x108]
add eax, 0xd9745237
xor eax, 0xe78c6b78
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x1e0e140b
xor eax, 0x94c07631
sub eax, dword [0x14031d048]
mov rdx, qword [0x14031d040]
add eax, 0xfd532b53
add eax, edx
xor eax, 0x27f7cc43
sub eax, 0x2ef8b421
xor eax, 0x506d0073
mov ecx, dword [0x14031d030]
xor ecx, 0x1c9a3063
sub ecx, eax
mov eax, dword [0x14031d038]
xor eax, 0xe365cf9c
sub ecx, eax
sub ecx, edx
lea eax, [rcx + 0x6fc9e756]
xor eax, 0xfb248954
mov dword [rsp + 0x108], eax
mov dword [rsp + 0x108], r14d
lea r11, [rsp + 0x8b0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
movabs rdi, 0xe4f684a849dc8e88
movabs rbx, 0x80b4868682bab3b9
mov rsi, r14
movabs rax, 0x6c47bc64c7d2726c
movabs r11, 0x3067f5400e8668de
mov rcx, qword [0x14031d070]
imul rcx, rax
not rcx
movabs r8, 0xcf980abff8403d7a
mov rax, qword [0x14031d060]
xor rax, r8
and rcx, rax
ror rcx, 0x22
shr rcx, 8
mov qword [rsp + 0x30], rcx
movabs rax, 0xbcd97333c0392338
mov r9, qword [0x14031d060]
imul r9, rax
movabs r8, 0x7f4b79797d454c47
sub r9, r8
movabs rax, 0x223aedee80000000
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x3b
and ecx, 0x8000003f
jge 0x1400fbe38
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
movabs rdx, 0xb6015db85ea0e438
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x60], rcx
add r8, rcx
mov r10, r9
mov rdx, qword [rsp + 0x30]
imul r10, rdx
sub r10, r8
xor r10, rdi
movzx ecx, r8b
mov dword [rsp + 0x58], ecx
xor ecx, 4
and ecx, 0xf
jge 0x1400fbe85
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r10, cl
movabs rcx, 0x6a93de8122881478
imul rax, rcx
movabs rcx, 0x4e83f85d8b003bb1
sub rax, rcx
xor r10, rax
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
xor r10, r11
mov rax, r10
and rax, r15
je 0x1400fc18a
sub rax, 1
je 0x1400fc091
sub rax, 1
je 0x1400fbfc6
cmp rax, 1
jne 0x1400fc21c
mov rdi, r8
imul rdi, r9
movabs rax, 0x49e2f96f656e570d
add rax, r10
xor rdi, rax
ror rdi, 0x18
shr rdi, 0xc
not rdi
movabs rcx, 0x83572cdddf30
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0x7fc9fc011a83b3ed
xor rdx, rax
movzx eax, dil
movzx ecx, r10b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9743d33d3
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rbx
mov eax, 0xa5e6e139
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0xad6baae4d397f516
sub rbx, rdi
shr rbx, cl
movabs rax, 0x7f539e01d4a7de3d
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x30]
xor rbx, rax
jmp 0x1400fc21c
movabs rcx, 0xaaaaaa1aa5ff1c07
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed67f2c04b
imul r9, rcx
movabs rdx, 0xffff7e8a83ef2edb
mov rcx, qword [rsp + 0x60]
imul rcx, rdx
movabs rdx, 0x8ff32e133119eef3
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be772fcb67
mov rcx, r9
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xfffffffff0aacad7
lea ecx, [r10 + 5]
and cl, 0x3f
rol r8, cl
movabs rax, 0x74406c0680000000
imul r8, rax
mov rcx, r8
ror rcx, 0x12
not rcx
movabs rax, 0x9b2de6b2e30d2500
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x30]
and cl, 0x3f
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
jmp 0x1400fc21c
movabs rax, 0x8adee1e026937fbb
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0x1b097b57b6237177
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0x58]
and eax, 0x8000003f
jge 0x1400fc0e5
sub eax, r15d
or eax, 0xffffffc0
add eax, r15d
mov cl, al
rol r11, cl
movabs rcx, 0x7f4b79797d454c47
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x68682bab3b9
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7f93b6a2a
or r11, rax
mov rbx, qword [0x14031d070]
imul rbx, rdi
sub rbx, r8
mov rax, qword [rsp + 0x30]
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a6a8336a27
xor rbx, rax
mov rax, rbx
imul rax, r10
imul rax, r8
mov rsi, r9
sub rsi, rax
movabs rax, 0x78958946761263d
add rsi, rax
xor rsi, qword [rsp + 0x30]
mov cl, r9b
add cl, cl
and cl, 0x3f
rol rsi, cl
not rsi
jmp 0x1400fc21c
mov rcx, r10
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d080]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x1e
imul r11, r8
mov rsi, rdx
not rsi
imul rsi, r9
movabs rax, 0x7cd8a7de75c23bc6
imul rsi, rax
imul rax, qword [0x14031d060], 0xfffffffff6c655a4
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x30], rax
mov al, sil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1400fc1fd
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x30]
ror rax, cl
movabs rcx, 0x7f4b79797d454c47
add rax, rcx
add rax, qword [rsp + 0x60]
mov qword [rsp + 0x30], rax
movabs rax, 0xff055d7b8589310b
xor rdi, rax
mov rax, r12
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rdi, rax
xor r11, rsi
imul r11, qword [r13 + rdi*8]
not r8
imul r8, rbx
imul r8, r10
imul r8, qword [rsp + 0x30]
movabs rcx, 0xf5ed7e87823a7bd7
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400c95e4
mov qword [0x140321f48], rax
xor eax, eax
mov byte [rsp + 0x78], al
lea rcx, [rsp + 0x78]
call fcn.1400d8578
movabs rax, 0x9486f48b24b11b18
mov qword [rsp + 0x30], rax
movabs r10, 0xb7e7b5a782dfa79
mov rdi, r14
movabs rbx, 0x41f170cbd85df364
movabs rax, 0x248a7019b7c69e28
mov rsi, qword [0x14031d070]
imul rsi, rax
not rsi
movabs rdx, 0xbe0e8f342f5c7c8c
mov rax, qword [0x14031d060]
xor rax, rdx
and rsi, rax
ror rsi, 0x12
shr rsi, 8
movabs rax, 0xdf02d826b0b226b0
mov r9, qword [0x14031d060]
imul r9, rax
add r9, r10
movabs rax, 0xec2ce8800000000
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xf48184a587d20587
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x8b
and ecx, 0x8000003f
jge 0x1400fc35b
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, r9
ror rdx, cl
not rdx
movabs rcx, 0xe700a167ff7d6ea0
mov rax, rdx
imul rax, rcx
mov qword [rsp + 0x60], rax
lea r11, [rax + r8]
mov r8, r9
imul r8, rsi
sub r8, r11
movabs rax, 0x9486f48b24b11b18
xor r8, rax
movzx ecx, r11b
mov dword [rsp + 0x58], ecx
xor ecx, 4
and ecx, 0xf
jge 0x1400fc3ae
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r8, cl
movabs rax, 0x54f652cfb27189a0
imul rdx, rax
movabs rax, 0x237479d88c6572cf
add rdx, rax
xor r8, rdx
mov rax, r11
sub rax, qword [0x14031d078]
xor r8, rax
xor r8, rbx
mov rax, r8
and rax, r15
je 0x1400fc6be
sub rax, 1
je 0x1400fc5ba
sub rax, 1
je 0x1400fc4f0
cmp rax, 1
jne 0x1400fc741
mov rcx, r11
imul rcx, r9
movabs rax, 0x76189aee83c4359d
add rax, r8
xor rcx, rax
ror rcx, 0x28
shr rcx, 0xc
not rcx
mov qword [rsp + 0x30], rcx
movabs rdx, 0x83572881dba0
add rdx, qword [0x14031d088]
movabs rax, 0xf40301dde448fe9d
xor rdx, rax
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db970613763
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, r10
mov eax, 0xa1bae589
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs r10, 0x7e8d13e7854f05f6
sub r10, qword [rsp + 0x30]
shr r10, cl
movabs rax, 0xf489a92ddb109acd
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, rsi
xor r10, rax
jmp 0x1400fc741
movabs rcx, 0xaaaaaa1aa1a318b7
mov r9, r8
xor r9, rcx
movabs rcx, 0x1206ed63aec4fb
imul r9, rcx
movabs rdx, 0xffff7e8a87b32a6b
mov rcx, qword [rsp + 0x60]
imul rcx, rdx
movabs rdx, 0x4eab3129212bc229
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be7373cfd7
mov rcx, r9
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r11, r9
not r11
imul r11, qword [r13 + rcx*8]
xor r11, 0xfffffffff4f6ce67
lea ecx, [r8 - 0xb]
and cl, 0x3f
rol r11, cl
movabs rax, 0x18685c8480000000
imul r11, rax
mov rcx, r11
ror rcx, 0x32
not rcx
movabs rax, 0x9b2de6b2f27d37c0
imul rcx, rax
mov rax, r9
sub rax, r11
lea rdx, [rcx + rax*4]
mov cl, sil
and cl, 0x3f
ror rdx, cl
mov rax, r10
mov r10, rdx
imul r10, rax
jmp 0x1400fc741
movabs rax, 0x73096af48efa9e9b
imul r8, rax
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
movabs rdx, 0x6b790b74db4ee4e7
shl rdx, cl
mov rax, rbx
mov rbx, rdx
xor rbx, rax
mov eax, dword [rsp + 0x58]
and eax, 0x8000003f
jge 0x1400fc60e
sub eax, r15d
or eax, 0xffffffc0
add eax, r15d
mov cl, al
rol rbx, cl
movabs rcx, 0xf48184a587d20587
add rcx, r8
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffffb5a782dfa79
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor rbx, rax
movabs rax, 0xffffc7a7fd676e9a
or rbx, rax
mov r10, qword [0x14031d070]
movabs rax, 0x9486f48b24b11b18
imul r10, rax
sub r10, r11
mov rax, rsi
sub rax, rbx
xor r10, rax
movabs rax, 0xc7a7c6a6ac6f6e97
xor r10, rax
mov rax, r8
imul rax, r11
imul rax, r10
mov rdi, r9
sub rdi, rax
movabs rax, 0x7895894633d228d
add rdi, rax
xor rdi, rsi
movzx eax, r9b
imul ecx, eax, 0xf2
and cl, 0x3f
rol rdi, cl
not rdi
jmp 0x1400fc741
mov rcx, r8
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d080]
mov rax, rbx
mov rbx, rcx
xor rbx, rax
ror rbx, 0x24
imul rbx, r11
mov rdi, rsi
not rdi
imul rdi, r9
movabs rax, 0x7cd8a7de719e3f76
imul rdi, rax
imul rsi, qword [0x14031d060], 0xfffffffff7018fe8
mov rdx, qword [0x14031d068]
sub rsi, rdx
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1400fc72c
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rsi, cl
movabs rax, 0xf48184a587d20587
add rsi, rax
add rsi, qword [rsp + 0x60]
movabs rax, 0xff055d7b81d535bb
mov rcx, qword [rsp + 0x30]
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor rbx, rdi
imul rbx, qword [r13 + rcx*8]
not r11
imul r11, r8
imul r11, rsi
imul r11, r10
movabs rcx, 0xf5ed7e8786667f67
xor rcx, r9
not rcx
xor rcx, r11
sub rcx, rbx
call fcn.1400c9674
mov qword [0x140321f80], rax
mov dword [rsp + 0x10c], r14d
mov dword [rsp + 0x10c], 0xfc948f6b
mov eax, dword [rsp + 0x10c]
add eax, 0x2ba168af
xor eax, 0xfe03bda5
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x47e87338
xor eax, 0x654aab5f
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x546f753
add eax, ecx
xor eax, 0xe3c5ea2
add eax, 0x75d97593
xor eax, 0xf39be3cf
lea edx, [rcx + 0x72545590]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xc0ae83f6
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x3f517c09
add ecx, 0x56cb2d78
add ecx, edx
xor ecx, 0x98e3cba6
mov dword [rsp + 0x10c], ecx
mov dword [rsp + 0x10c], r14d
mov byte [rsp + 0x68], r14b
movabs rax, 0xf867a0bb8ec7c852
mov qword [rsp + 0x128], rax
movabs rax, 0x960e3c287b214b45
mov qword [rsp + 0x130], rax
movabs rax, 0xf2648d4800707f82
mov qword [rsp + 0x138], rax
movabs rax, 0x5bf26744427beda1
mov qword [rsp + 0x140], rax
movabs rbx, 0x13cce94adba99340
xor eax, eax
mov byte [rsp + 0x79], al
lea rdx, [rsp + 0x398]
lea rcx, [rsp + 0x79]
call fcn.140083804
mov r12, rax
mov qword [rsp + 0x30], rax
mov r13, r14
xor edx, edx
mov rax, r13
div rbx
lea esi, [rdx + 0x38]
ror si, 8
movzx edi, si
shr di, 0xa
movzx eax, si
shl ax, 6
or di, ax
movzx ebx, di
ror bx, 8
movzx r8d, si
shr r8w, 0xd
movzx eax, si
shl ax, 3
or r8w, ax
movzx r10d, si
shr r10w, 0xb
movzx eax, si
shl ax, 5
or r10w, ax
movzx edx, si
shr dx, 0xc
movzx eax, si
shl ax, 4
or dx, ax
movzx r11d, si
not r11w
movzx ecx, si
ror cx, 1
movzx r9d, word [r12 + r13*2]
sub r9w, di
mov eax, 0x6afe
add r9w, ax
mov eax, 0x9204
sub ax, di
xor r9w, ax
sub r9w, word [0x14031d050]
sub r9w, word [0x14031d058]
add r9w, bx
add r9w, si
sub r9w, cx
mov eax, 0x6fc1
add r9w, ax
lea eax, [rsi + rdi]
mov ecx, 0x2d07
add ax, cx
xor r9w, ax
sub r9w, word [0x14031d048]
sub r9w, r8w
sub r9w, si
mov rcx, qword [0x14031d040]
add r9w, cx
add r9w, r10w
add r9w, di
movzx eax, si
ror ax, 3
sub r9w, ax
sub r9w, 0x50
movzx eax, dx
sub ax, r8w
add ax, di
add ax, si
xor r9w, ax
movzx eax, si
sub ax, dx
xor ax, si
sub r9w, ax
sub r9w, r10w
add r9w, si
mov eax, 0x4230
add r9w, ax
movzx eax, si
ror ax, 7
mov edx, 0x4050
sub r10w, dx
add ax, r10w
xor r9w, ax
movzx edx, si
xor dx, word [0x14031d030]
sub dx, r9w
mov eax, 0x7100
add eax, esi
mov r8d, 0x2440
xor ax, r8w
sub dx, ax
movzx eax, r11w
xor ax, word [0x14031d038]
sub dx, ax
mov eax, 0x9d7
add eax, esi
add ax, ax
add dx, ax
sub dx, bx
sub dx, cx
sub dx, di
movzx eax, si
ror ax, 8
sub dx, ax
movzx eax, si
movzx ecx, r11w
imul ecx, eax
xor dx, cx
mov word [r12 + r13*2], dx
add r13, r15
cmp r13, 0x22
movabs rbx, 0x13cce94adba99340
jb 0x1400fc8b8
movabs r12, 0xaaaaaaaaaaaaaaab
lea r13, [0x14031d060]
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x318], rax
mov qword [rsp + 0x320], 0x44
mov eax, dword [rsp + 0x6c]
or eax, r15d
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x70], rax
movabs rsi, 0xa63e3f33b814b236
mov qword [rsp + 0x30], rsi
movabs rdi, 0x719c5d1849c2a23b
mov qword [rsp + 0x60], rdi
mov r8, qword [0x14031d070]
movabs rax, 0xe9d04f8f8773e720
imul r8, rax
movabs rax, 0xed8a9dce50daa5f0
xor r8, rax
mov qword [rsp + 0x58], r8
mov rcx, r8
imul rcx, rdi
mov qword [rsp + 0x50], rcx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r8
and r9, rdi
imul r9, qword [r13 + rcx*8]
movabs rax, 0xe29783ae219ad068
imul r9, rax
shr r9, 3
movabs rax, 0x21338b3cb0c92e41
xor r9, rax
mov r10, r8
movabs rax, 0xffffff57f161db73
imul r10, rax
sub r10, 0x18ab3024
xor r10, r9
xor r10, qword [0x14031d060]
mov rax, r9
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bf8d26452
imul rax, rcx
not rax
and r10, rax
ror r10, 0x18
shr r10, 8
movabs r11, 0x8e63a2e7b63d5dc5
lea rcx, [r8 + r11]
xor rcx, 0xffffffffc65c6f5f
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rbx, qword [r13 + rcx*8]
movabs rax, 0xf6afc619e1eac28
imul rbx, rax
add rbx, rdi
mov rax, r9
movabs rcx, 0x3a7413e3e1dcf9c8
imul rax, rcx
xor rbx, rax
shr rbx, 0x1f
not rbx
mov rdi, rbx
xor rdi, r8
lea rcx, [rbx + r11]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, bl
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x43
and ecx, 0x8000003f
jge 0x1400fcc28
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
not rdi
imul rdi, r9
imul rdx, rdi, 0xffffffffe754cfdc
mov qword [rsp + 0x48], rdx
add r11, rdx
mov r8, rbx
imul r8, r10
sub r8, r11
xor r8, rsi
mov cl, r11b
xor cl, 0xfc
and cl, 0xf
rol r8, cl
movabs rax, 0x3e6ad6893ccd1fb4
imul rdi, rax
movabs rax, 0x2185dd8fee3ab999
sub rdi, rax
xor r8, rdi
mov rax, r11
sub rax, qword [0x14031d078]
xor r8, rax
xor r8, r9
mov rdi, qword [rsp + 0x58]
xor r8, rdi
mov rax, r8
and eax, 3
je 0x1400fcfe9
sub rax, 1
je 0x1400fceae
sub rax, 1
mov sil, 0x3f
je 0x1400fcdb8
cmp rax, 1
jne 0x1400fd093
mov rcx, r11
imul rcx, rbx
movabs rax, 0x6d97d01604aab87f
add rax, r8
xor rcx, rax
ror rcx, 0x20
shr rcx, 0xc
xor rcx, rdi
not rcx
mov qword [rsp + 0x30], rcx
movabs rdx, 0x83571a236a58
add rdx, qword [0x14031d088]
movabs rax, 0x8ee1279fe7051717
xor rdx, rax
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db942c386ab
sub rax, rbx
mov rbx, rdx
xor rbx, rax
mov rcx, rbx
movabs rdx, 0x719c5d1849c2a23b
imul rcx, rdx
mov eax, 0x93185441
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rax, 0x2e73ae57f959ab3c
sub rax, qword [rsp + 0x30]
shr rax, cl
mov qword [rsp + 0x60], rax
mov rcx, qword [rsp + 0x48]
movabs rax, 0x8e6bc77017d98253
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, r10
xor qword [rsp + 0x60], rax
jmp 0x1400fd093
mov rcx, r8
movabs rax, 0xaaaaaa1a9301a97f
xor rcx, rax
movabs rax, 0x1206ed510c7533
imul rcx, rax
mov rax, r9
movabs r11, 0xfff17ca844639f03
xor rax, r11
sub rcx, rax
movabs rax, 0xffff7e8ab5119ba3
imul rdx, rax
movabs rbx, 0xb5c582fc68ff9712
add rbx, rcx
add rbx, rdx
mov rcx, rbx
movabs rax, 0x277cd7be41d17e1f
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r11, rbx
not r11
imul r11, qword [r13 + rcx*8]
xor r11, 0xffffffffc6547faf
lea ecx, [r8 - 3]
and cl, sil
rol r11, cl
mov rax, qword [rsp + 0x50]
movabs rcx, 0x878698020000000
xor rax, rcx
movabs rcx, 0x7c7a7dc6af53751e
and rax, rcx
imul r11, rax
mov rcx, r11
ror rcx, 0x14
not rcx
movabs rax, 0x9b2de6b238f7f0e0
imul rcx, rax
mov rax, rbx
sub rax, r11
lea rax, [rcx + rax*4]
mov cl, r10b
and cl, sil
ror rax, cl
movabs rdx, 0x719c5d1849c2a23b
imul rax, rdx
mov qword [rsp + 0x60], rax
jmp 0x1400fd093
movabs rax, 0x3efc204132b2a043
imul r8, rax
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
mov rax, rdi
movabs rdx, 0x8e63a2e7b63d5dc4
imul rax, rdx
xor rax, rsi
not rax
shl rax, cl
xor r9, rax
mov cl, r11b
mov sil, 0x3f
and cl, sil
rol r9, cl
movabs rcx, 0x8e63a2e7b63d5dc5
add rcx, r8
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0x1d1849c2a23b
imul rax, rcx
xor r9, rax
movabs rax, 0xffffc7a7cfc5df52
or r9, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xa63e3f33b814b236
imul rcx, rax
sub rcx, r11
mov rax, r10
sub rax, r9
xor rcx, rax
movabs rax, 0xc7a7c6a69ecddf5f
xor rcx, rax
mov qword [rsp + 0x60], rcx
movabs rax, 0xcccccccccccccccd
mul rdi
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rdi
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, qword [rsp + 0x60]
div rcx
mov rcx, rdx
mov rdx, r8
imul rdx, r11
imul rdx, qword [rsp + 0x60]
shr rdx, cl
mov rax, rbx
sub rax, rdx
sub rax, rdi
mov rdi, rax
movabs rax, 0x7895894519f9345
add rdi, rax
xor rdi, r10
movzx eax, bl
imul ecx, eax, 0xfa
and cl, sil
rol rdi, cl
not rdi
jmp 0x1400fd093
mov rax, r12
mul r9
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r9
sub rcx, rax
mov rax, r8
imul rax, qword [0x14031d080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r9
mov sil, 0x3f
and r9b, sil
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r11
not r10
imul r10, rbx
movabs rax, 0x7cd8a7de433c8ebe
imul r10, rax
mov rax, r9
imul rax, rdi
mov rdi, r10
xor rdi, rax
imul r10, qword [0x14031d060], 0xffffffffe754cfdc
mov rdx, qword [0x14031d068]
sub r10, rdx
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1400fd07e
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror r10, cl
movabs rax, 0x8e63a2e7b63d5dc5
add r10, rax
add r10, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
movabs rax, 0xff055d7bb3778473
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r9, rdi
imul r9, qword [r13 + rcx*8]
not r11
imul r11, r8
imul r11, r10
imul r11, qword [rsp + 0x60]
movabs rcx, 0xf5ed7e87b4c4ceaf
xor rcx, rbx
not rcx
xor rcx, r11
sub rcx, r9
call fcn.1400c90d4
mov qword [0x140321f60], rax
movabs rax, 0xfd54ec6a18af1f15
mov qword [rsp + 0x48], rax
movabs r10, 0xb1a41ced6fc82213
mov rdi, r10
mov r8, qword [0x14031d078]
movabs rax, 0x27a88188f0000000
imul r8, rax
movabs rax, 0xcc47f11710000000
xor r8, rax
mov qword [rsp + 0x50], r8
mov rcx, r8
imul rcx, r10
mov qword [rsp + 0x30], rcx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r8
and r9, r10
imul r9, qword [r13 + rcx*8]
movabs rax, 0xa42fa30e3271091a
imul r9, rax
shr r9, 3
movabs rax, 0x5bc46bd93dec8e26
xor r9, rax
mov rbx, r8
movabs rax, 0xffffff57d013605d
imul rbx, rax
sub rbx, 0x387124ce
xor rbx, r9
xor rbx, qword [0x14031d060]
mov rax, r9
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bd9a0df7c
imul rax, rcx
not rax
and rbx, rax
ror rbx, 0x1e
shr rbx, 8
mov qword [rsp + 0x60], rbx
movabs rcx, 0x4e5be3129037dded
add rcx, r8
xor rcx, 0xffffffffe72ed471
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, qword [r13 + rcx*8]
movabs rax, 0x872fb9e808874b98
imul r10, rax
movabs rcx, 0x4e5be3129037dded
sub r10, rcx
mov rax, r9
movabs rdx, 0xe113b389ea20623c
imul rax, rdx
xor r10, rax
shr r10, 0x1f
not r10
mov qword [rsp + 0x58], r10
mov r11, r10
xor r11, r8
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x6d
mov eax, 0x8000003f
and ecx, eax
jge 0x1400fd27b
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror r11, cl
not r11
imul r11, r9
imul rdx, r11, 0xffffffffc78edb32
mov qword [rsp + 0x38], rdx
movabs r10, 0x4e5be3129037dded
add r10, rdx
mov r8, qword [rsp + 0x58]
imul r8, rbx
sub r8, r10
movabs rcx, 0xfd54ec6a18af1f15
xor r8, rcx
movzx ebx, r10b
mov ecx, ebx
xor ecx, 2
and ecx, 0xf
and ecx, eax
jge 0x1400fd2d0
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r8, cl
movabs rax, 0x449d366cb5c6e8b6
imul r11, rax
movabs rax, 0x20d596d043c6f297
add r11, rax
xor r8, r11
mov rax, r10
sub rax, qword [0x14031d078]
xor r8, rax
xor r8, r9
mov r11, qword [rsp + 0x50]
xor r8, r11
mov rax, r8
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x1400fd67e
sub rax, 1
je 0x1400fd532
sub rax, 1
je 0x1400fd432
mov rbx, r11
cmp rax, 1
jne 0x1400fd72c
mov rcx, r10
imul rcx, qword [rsp + 0x58]
movabs rax, 0x845c6e632a94519
add rax, r8
xor rcx, rax
ror rcx, 0x26
shr rcx, 0xc
xor rcx, rbx
not rcx
mov qword [rsp + 0x48], rcx
movabs r11, 0x83573b51d17a
add r11, qword [0x14031d088]
movabs rax, 0x4ed9666ae07d2c11
xor r11, rax
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, sil
ror r11, cl
shl r11, 0xf
movabs rax, 0xf7ca7db963b13d85
sub rax, qword [rsp + 0x58]
xor r11, rax
mov qword [rsp + 0x58], r11
mov rcx, r11
mov rdx, rdi
imul rcx, rdx
mov eax, 0xb26aef6f
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0x2369f6d0566ff1fc
sub rdi, qword [rsp + 0x48]
shr rdi, cl
mov rcx, qword [rsp + 0x38]
movabs rax, 0x4e64079ad1267d91
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
mov r11, qword [rsp + 0x60]
sub rax, r11
xor rdi, rax
jmp 0x1400fd731
mov rcx, r8
movabs rax, 0xaaaaaa1ab2731251
xor rcx, rax
movabs rax, 0x1206ed707ece1d
imul rcx, rax
mov rax, r9
movabs r10, 0xfff17ca86511242d
xor rax, r10
sub rcx, rax
movabs rax, 0xffff7e8a9463208d
imul rdx, rax
movabs r11, 0x8ff73b74d58cfc16
add r11, rcx
add r11, rdx
mov qword [rsp + 0x58], r11
mov rcx, r11
movabs rax, 0x277cd7be60a3c531
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r11
not r10
imul r10, qword [r13 + rcx*8]
xor r10, 0xffffffffe726c481
lea ecx, [r8 + 0x13]
and cl, sil
rol r10, cl
mov rax, qword [rsp + 0x30]
movabs rcx, 0x3c6a1c0400000000
xor rax, rcx
movabs rcx, 0x7c7a7dc68e21ce30
and rax, rcx
imul r10, rax
mov rcx, r10
ror rcx, 0x19
not rcx
movabs rax, 0x9b2de6b2bd3d1c58
imul rcx, rax
mov rax, r11
sub rax, r10
lea rdi, [rcx + rax*4]
mov r11, qword [rsp + 0x60]
mov cl, r11b
and cl, sil
ror rdi, cl
movabs rdx, 0xb1a41ced6fc82213
imul rdi, rdx
mov rbx, qword [rsp + 0x50]
jmp 0x1400fd731
movabs rax, 0x8aa0350548e6ea3f
imul r8, rax
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
mov rax, r11
movabs rdx, 0x4e5be3129037ddec
imul rax, rdx
movabs r11, 0xfd54ec6a18af1f15
xor rax, r11
not rax
shl rax, cl
xor r9, rax
and ebx, 0x8000003f
jge 0x1400fd594
sub ebx, r15d
or ebx, 0xffffffc0
add ebx, r15d
mov cl, bl
rol r9, cl
movabs rcx, 0x4e5be3129037dded
add rcx, r8
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0x1ced6fc82213
imul rax, rcx
xor r9, rax
movabs rax, 0xffffc7a7eeb7647c
or r9, rax
mov rdi, qword [0x14031d070]
imul rdi, r11
sub rdi, r10
mov r11, qword [rsp + 0x60]
mov rax, r11
sub rax, r9
xor rdi, rax
movabs rax, 0xc7a7c6a6bfbf6471
xor rdi, rax
movabs rax, 0xcccccccccccccccd
mov rbx, qword [rsp + 0x50]
mul rbx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rbx
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, rdi
div rcx
mov rcx, rdx
mov rdx, r8
imul rdx, r10
imul rdx, rdi
shr rdx, cl
mov rcx, qword [rsp + 0x58]
mov rax, rcx
sub rax, rdx
sub rax, rbx
mov rbx, rax
movabs rax, 0x789589470ed286b
add rbx, rax
xor rbx, r11
mov al, cl
shl al, 2
add cl, al
shl cl, 2
and cl, sil
rol rbx, cl
not rbx
jmp 0x1400fd731
mov rax, r12
mul r9
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r9
sub rcx, rax
mov rax, r8
imul rax, qword [0x14031d080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r9
and r9b, sil
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r10
mov rbx, qword [rsp + 0x60]
not rbx
imul rbx, qword [rsp + 0x58]
movabs rax, 0x7cd8a7de624e3590
imul rbx, rax
mov rax, r9
imul rax, qword [rsp + 0x50]
xor rbx, rax
imul r11, qword [0x14031d060], 0xffffffffc78edb32
mov rdx, qword [0x14031d068]
sub r11, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1400fd715
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror r11, cl
movabs rax, 0x4e5be3129037dded
add r11, rax
add r11, qword [rsp + 0x38]
jmp 0x1400fd731
mov r11, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x48]
movabs rax, 0xff055d7b92053f5d
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r9, rbx
imul r9, qword [r13 + rcx*8]
not r10
imul r10, r8
imul r10, r11
imul r10, rdi
movabs rcx, 0xf5ed7e8795b67581
xor rcx, qword [rsp + 0x58]
not rcx
xor rcx, r10
sub rcx, r9
call fcn.1400c9704
mov qword [0x140321f90], rax
mov qword [rsp + 0x148], r14
movabs rax, 0x57eb3c8e65ec7a4c
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], r14
movabs rax, 0xdb22e1cbfd686f1
mov qword [rsp + 0x150], rax
movabs rcx, 0xf33a52b09b005603
add rcx, qword [rsp + 0x150]
movabs rax, 0x7b55366253042d04
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f49369001
sub rcx, rax
movabs rax, 0xf8f8cd9df42e4255
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654c0ee199c2c
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179ae8f3417ed
xor rcx, rax
movabs rax, 0x5f627dc63893c340
sub rcx, rax
movabs rax, 0x2e3b3cd513e8f22d
xor rcx, rax
movabs rdx, 0x3483ce4a060100ba
add rdx, rcx
add rdx, rdi
not rdx
mov r10, qword [0x14031d038]
mov rax, r10
movabs rcx, 0x13cce94ac26bffac
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14031d030]
mov rcx, r11
movabs rax, 0xec3316b53d940053
xor rcx, rax
movabs rax, 0xe0b56d7816025701
add rdx, rax
add rdx, rcx
movabs rax, 0x58945234d473e4c4
xor rdx, rax
mov qword [rsp + 0x150], rdx
movabs rcx, 0xf33a52a8d93d1c83
add rcx, qword [rsp + 0x148]
movabs rax, 0x41d5366252fc6b41
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80ce0eb9ac
add rcx, rax
movabs rax, 0xf8f8cda5d4f888bb
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654cb759e1cb9
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179b76836c583
xor rcx, rax
movabs rax, 0x5f627de06f178c76
sub rcx, rax
movabs rax, 0xfa3b3cd8f5089d07
xor rcx, rax
movabs rax, 0xb483ce519177e3a8
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94aa364f2c6
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b55c9b0d39
xor r11, rax
movabs rax, 0xe0b56d58b0306b9b
add rcx, rax
add rcx, r11
movabs rax, 0xfc109b46a7b01c16
xor rcx, rax
mov qword [rsp + 0x148], rcx
and rdx, rcx
cmp qword [rsp + 0x70], rdx
sete al
mov qword [rsp + 0x150], r14
mov qword [rsp + 0x148], r14
test al, al
je 0x1400fda64
mov dword [rsp + 0x110], r14d
mov dword [rsp + 0x110], 0x343df58
mov eax, dword [rsp + 0x110]
add eax, 0xe47ec1b7
xor eax, 0x570c7683
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x62130b43
xor eax, 0x8989dcf3
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xae5680f9
add eax, ecx
xor eax, 0x1b5fe515
sub eax, 0x251626bf
xor eax, 0xcee77060
mov r9d, dword [0x14031d030]
xor r9d, 0x1c6e06a5
sub r9d, eax
mov eax, dword [0x14031d038]
xor eax, 0xe391f95a
sub r9d, eax
sub r9d, ecx
add r9d, 0x26dcfd07
xor r9d, 0x1599d302
mov qword [rsp + 0x38], r9
mov dword [rsp + 0x110], r9d
mov dword [rsp + 0x110], r14d
mov esi, dword [rsp + 0x6c]
jmp 0x1401011b8
movabs rax, 0xfa49b6d2ada4d92d
mov qword [rsp + 0x38], rax
movabs rcx, 0x7283a9a474e34136
mov r10, rcx
mov qword [rsp + 0x48], r14
movabs rbx, 0xc10afea0327b667a
mov rdi, qword [0x14031d070]
movabs rax, 0x6fe4b42761ec82b8
imul rdi, rax
not rdi
mov rax, qword [0x14031d060]
movabs rdx, 0x3ef5015fd5a8f304
xor rax, rdx
and rdi, rax
ror rdi, 0xb
shr rdi, 8
mov qword [rsp + 0x50], rdi
mov r11, qword [0x14031d068]
movabs rax, 0x50d0881095fee688
imul r11, rax
add r11, rcx
movabs rax, 0x3fd05bb00000000
xor r11, rax
shr r11, 0x1f
not r11
movabs r8, 0x8d7c565b8b1cbeca
lea rcx, [r11 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x9d
and ecx, 0x8000003f
jge 0x1400fdb40
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, r11
ror rdx, cl
not rdx
mov rax, rdx
movabs rcx, 0xa2b81eee37ef720c
imul rax, rcx
mov qword [rsp + 0x30], rax
add r8, rax
mov r9, r11
imul r9, rdi
sub r9, r8
movabs rax, 0xfa49b6d2ada4d92d
xor r9, rax
movzx edi, r8b
mov ecx, edi
xor ecx, 2
and ecx, 0xf
jge 0x1400fdb90
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r9, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r9, rax
movabs rax, 0xd181723291b1a88
imul rdx, rax
movabs rax, 0x261869fa599f889c
add rdx, rax
xor r9, rdx
mov rdx, rbx
xor r9, rbx
mov rax, r9
not rax
and eax, 2
je 0x1400fdebe
sub rax, 1
je 0x1400fddb5
sub rax, 1
je 0x1400fdce2
cmp rax, 1
jne 0x1400fdf42
mov rdi, r8
imul rdi, r11
movabs rax, 0x702bddf78cadb082
add rax, r9
xor rdi, rax
ror rdi, 0x32
shr rdi, 0xc
not rdi
mov qword [rsp + 0x38], rdi
mov rdx, qword [0x14031d088]
movabs rcx, 0xffff7ca8db5de28a
add rdx, rcx
movabs rax, 0x72012cdc1b5a7cc4
xor rdx, rax
movzx eax, dil
movzx ecx, r9b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0x835824683bd0e75
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
mov rdx, r10
imul rcx, rdx
mov eax, 0xad992361
sub rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs r10, 0x19c195614e5ca1d3
sub r10, rdi
shr r10, cl
mov rcx, qword [rsp + 0x30]
movabs rax, 0x8d7431d32bff6b1e
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [r13 + rcx*8]
imul rax, r9
mov rdi, qword [rsp + 0x50]
sub rax, rdi
xor r10, rax
jmp 0x1400fdf47
mov r11, r9
movabs rcx, 0x555555e5527f21a1
xor r11, rcx
movabs rcx, 0xffedf9129072fded
imul r11, rcx
mov rcx, qword [rsp + 0x30]
movabs rdx, 0x8175746f137d
imul rcx, rdx
movabs rdx, 0x8c1c4dc00dd0c878
add r11, rdx
add r11, rcx
mov rcx, r11
movabs rax, 0xd883284180aff6c1
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0x72af771
lea ecx, [r9 - 0x1d]
and cl, sil
rol r8, cl
movabs rax, 0x8201001840000000
imul r8, rax
mov r10, r8
ror r10, 0x11
not r10
movabs rax, 0x193486534f4374e6
imul r10, rax
sub r10, r8
add r10, r11
shl r10, 2
mov rdi, qword [rsp + 0x50]
mov cl, dil
and cl, sil
ror r10, cl
movabs rdx, 0x7283a9a474e34136
imul r10, rdx
jmp 0x1400fdf47
movabs rax, 0xfdb421d2da075a04
imul r9, rax
movabs rax, 0xd79435e50d79435f
mul r9
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r9b
sub cl, dl
movabs rbx, 0x5b6492d525b26d2
shl rbx, cl
movabs rax, 0xc10afea0327b667a
xor rbx, rax
and edi, 0x8000003f
jge 0x1400fde0a
sub edi, r15d
or edi, 0xffffffc0
add edi, r15d
mov cl, dil
rol rbx, cl
movabs rcx, 0x8d7c565b8b1cbeca
add rcx, r9
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
mov rdx, r10
imul rax, rdx
xor rbx, rax
movabs rax, 0x38580ebb578c
or rbx, rax
mov r10, qword [0x14031d070]
movabs rax, 0xfa49b6d2ada4d92d
imul r10, rax
sub r10, r8
mov rdi, qword [rsp + 0x50]
mov rax, rdi
sub rax, rbx
xor r10, rax
movabs rax, 0x385839595fb35781
xor r10, rax
mov rax, r9
imul rax, r8
imul rax, r10
mov rdx, r11
sub rdx, rax
movabs rax, 0x78958946f1ee465
sub rdx, rax
xor rdx, rdi
movzx eax, r11b
imul ecx, eax, 0xe4
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x48], rdx
jmp 0x1400fdf47
mov rbx, r9
imul rbx, qword [0x14031d080]
and rbx, qword [0x14031d060]
xor rbx, rdx
ror rbx, 0x3a
imul rbx, r8
mov rax, qword [rsp + 0x50]
not rax
imul rax, r11
movabs rdx, 0x8327582182420660
imul rax, rdx
mov qword [rsp + 0x48], rax
imul rdx, qword [0x14031d060], 0xffffffffe7d3957e
mov rdi, qword [0x14031d068]
sub rdx, rdi
not al
movzx ecx, al
movzx eax, dil
xor ecx, eax
and ecx, 0x8000003f
jge 0x1400fdf2b
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdx, cl
movabs rdi, 0x8d7c565b8b1cbeca
add rdi, rdx
add rdi, qword [rsp + 0x30]
jmp 0x1400fdf47
mov rdi, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x38]
movabs rax, 0xfaa28472090cad
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor rbx, qword [rsp + 0x48]
imul rbx, qword [r13 + rcx*8]
not r8
imul r8, r9
imul r8, rdi
imul r8, r10
movabs rcx, 0xa12817875ba4671
xor rcx, r11
not rcx
xor rcx, r8
sub rcx, rbx
call fcn.1400c8f6c
mov qword [0x140321f48], rax
mov ebx, r14d
mov dword [rsp + 0x58], ebx
mov dword [rsp + 0x6c], 0xc4da3962
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
movups xmm0, xmmword [rcx + 0x58]
movd eax, xmm0
sub ax, 8
test ebx, ebx
je 0x1400fe029
psrldq xmm0, 8
movq r9, xmm0
movzx eax, ax
shr rax, 1
lea r11, [r9 + rax*2]
mov r10d, 0x19e83b42
jmp 0x1400fe01b
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov eax, r10d
xor eax, edx
mov r10d, r8d
imul r10d, eax
add r9, 2
cmp r9, r11
jne 0x1400fdff5
cmp r10d, ebx
jne 0x1400fe0c6
mov r11, qword [rcx + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov rax, qword [rax + r11 + 0x88]
mov edi, eax
add rdi, r11
shr rax, 0x20
cmp rdi, r11
je 0x1400fe0c6
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x1400fe0c6
mov r10d, dword [rdi + 0x20]
dec r8d
mov dword [rsp + 0x60], r8d
mov r9d, r8d
mov qword [rsp + 0x38], r9
lea rdx, [r11 + r8*4]
mov r10d, dword [rdx + r10]
add r10, r11
mov ebx, 0x19e83b42
mov dl, byte [r10]
add r10, r15
test dl, dl
je 0x1400fe0b3
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, 0x4764996c
mov edx, ebx
xor edx, r8d
mov ebx, r9d
imul ebx, edx
mov dl, byte [r10]
add r10, r15
test dl, dl
jne 0x1400fe07e
mov r8d, dword [rsp + 0x60]
mov r9, qword [rsp + 0x38]
cmp ebx, dword [rsp + 0x6c]
je 0x1400fe0ce
test r8d, r8d
mov r10d, dword [rdi + 0x20]
jne 0x1400fe054
mov ebx, dword [rsp + 0x58]
mov rcx, qword [rcx]
jmp 0x1400fdfc9
mov edx, dword [rdi + 0x1c]
add rdx, r11
mov ecx, dword [rdi + 0x24]
add rcx, r11
movzx ecx, word [rcx + r9*2]
mov r9d, dword [rdx + rcx*4]
add r9, r11
cmp r9, rdi
jbe 0x1400fe17e
lea rcx, [rax + rdi]
cmp r9, rcx
jae 0x1400fe17e
mov eax, 0x19e83b42
mov ebx, eax
mov dword [rsp + 0x58], eax
mov edx, eax
mov dword [rsp + 0x6c], eax
mov al, byte [r9]
cmp al, 0x2e
je 0x1400fe139
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, ebx
mov ebx, eax
imul ebx, ecx
add r9, r15
mov al, byte [r9]
cmp al, 0x2e
jne 0x1400fe114
mov dword [rsp + 0x58], ebx
add r9, r15
mov al, byte [r9]
test al, al
je 0x1400fe168
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, edx
mov edx, eax
imul edx, ecx
add r9, r15
mov al, byte [r9]
test al, al
jne 0x1400fe143
mov dword [rsp + 0x6c], edx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
jmp 0x1400fe0c6
mov dword [rsp + 0x114], r14d
mov dword [rsp + 0x114], 0xc82f7214
mov eax, dword [rsp + 0x114]
add eax, 0xec8a79af
xor eax, 0xf047e8f
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x4a2b2e6b
xor eax, 0xa15df61b
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x7f6a98c0
add eax, ecx
xor eax, 0x3232873e
sub eax, 0x28a6b69
xor eax, 0xb215406
lea edx, [rcx - 0x494e5bf9]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xc3b2283a
sub edx, eax
mov eax, dword [0x14031d030]
xor eax, 0x3c4dd7c5
add eax, 0x5d70ce3f
add edx, eax
xor edx, 0xe953aaa2
mov dword [rsp + 0x114], edx
mov dword [rsp + 0x118], r14d
mov dword [rsp + 0x118], 0xcf61f3b0
mov eax, dword [rsp + 0x118]
add eax, 0xd3383e37
xor eax, 0xd38c653c
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x1e20c847
xor eax, 0x9b157a81
sub eax, dword [0x14031d048]
mov r8, qword [0x14031d040]
add eax, 0x5c9b879
add eax, r8d
xor eax, 0x2f145313
sub eax, 0x30c2e8b1
xor eax, 0xf38b3c54
mov ecx, dword [0x14031d030]
xor ecx, 0x1cb320b3
sub ecx, eax
mov eax, dword [0x14031d038]
xor eax, 0xe34cdf4c
sub ecx, eax
sub ecx, r8d
add ecx, 0x50b1f712
xor ecx, 0xfccda224
mov dword [rsp + 0x118], ecx
call r9
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x118], r14d
mov dword [rsp + 0x114], r14d
mov qword [rsp + 0x158], r14
movabs rax, 0x73da29cd2e256bda
mov qword [rsp + 0x158], rax
mov eax, dword [rsp + 0xe0]
or eax, 0x40
mov dword [rsp + 0xe0], eax
mov qword [rsp + 0x160], r14
movabs rcx, 0xebc6c203a6032834
mov qword [rsp + 0x160], rcx
bts eax, 7
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
movabs rcx, 0xf33a52b8eb88f803
add rcx, qword [rsp + 0x160]
movabs rax, 0x1d553662530c7d8d
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f622829e7
sub rcx, rax
movabs rax, 0xf8f8cd9582637dcd
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654b5a4c82445
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179a513583f25
xor rcx, rax
movabs rax, 0x5f627dc4232f7648
sub rcx, rax
movabs rax, 0x1e3b3cd0eb621ce8
xor rcx, rax
movabs rdx, 0x3483ce41efac1b28
add rdx, rcx
add rdx, rdi
not rdx
mov r10, qword [0x14031d038]
mov rax, r10
movabs rcx, 0x13cce94ae3ae2234
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14031d030]
mov rcx, r11
movabs rax, 0xec3316b51c51ddcb
xor rcx, rax
movabs rax, 0xe0b56d993966c989
add rdx, rax
add rdx, rcx
movabs rax, 0x4be6618a6110033c
xor rdx, rax
mov qword [rsp + 0x160], rdx
movabs rcx, 0xf33a52b0ecf25a83
add rcx, qword [rsp + 0x158]
movabs rax, 0x7fd5366253047ef6
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80b5d399f2
add rcx, rax
movabs rax, 0xf8f8cd9da0f475c3
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654c07edd9710
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179ae31bc0acb
xor rcx, rax
movabs rax, 0x5f627dc602df1a2e
sub rcx, rax
movabs rax, 0xa3b3cd4eaed605d
xor rcx, rax
movabs rax, 0xb483ce49b64c9a5a
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ac3b3c7be
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b53c4c3841
xor r11, rax
movabs rax, 0xe0b56d795f123113
add rcx, rax
add rcx, r11
movabs rax, 0x66406050d8bf473e
xor rcx, rax
mov qword [rsp + 0x158], rcx
and rdx, rcx
cmp qword [rsp + 0x38], rdx
je 0x1400fe717
mov qword [rsp + 0x168], r14
movabs rax, 0xcdd65507d9a241fc
mov qword [rsp + 0x168], rax
mov eax, dword [rsp + 0x6c]
bts eax, 8
mov dword [rsp + 0xe0], eax
mov qword [rsp + 0x170], r14
movabs rcx, 0x84d1e8e168fefcd5
mov qword [rsp + 0x170], rcx
bts eax, 9
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
movabs rcx, 0xf33a52b0eba25b83
add rcx, qword [rsp + 0x168]
movabs rax, 0x80d5366253047da6
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80b5d789ef
add rcx, rax
movabs rax, 0xf8f8cd9da249b4bf
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x87d654c080a5adb5
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179ae333b49a7
xor rcx, rax
movabs rax, 0x5f627dc60325d9b2
sub rcx, rax
movabs rax, 0x23b3cd4eb956a5d
xor rcx, rax
movabs rdx, 0xb483ce49b7936961
add rdx, rcx
add rdx, rdi
not rdx
mov r10, qword [0x14031d038]
mov rax, r10
movabs rcx, 0x13cce94ac3ae87c2
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14031d030]
mov rcx, r11
movabs rax, 0xec3316b53c51783d
xor rcx, rax
movabs rax, 0xe0b56d7959cef497
add rdx, rax
add rdx, rcx
movabs rax, 0x596a1cbedc9b493a
xor rdx, rax
mov qword [rsp + 0x168], rdx
movabs rcx, 0xcc5ad48edb21d3a
add rcx, qword [rsp + 0x170]
movabs rax, 0x428b4fedad9c7fb6
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x4ed45970edd15aaa
add rcx, rax
movabs rax, 0x707459b4031b402
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xd829ab4729d94a41
add rcx, rax
add rcx, rdi
movabs rax, 0xa56e8658d0e150b4
xor rcx, rax
movabs rax, 0x2b02fde7e2ba486c
sub rcx, rax
movabs rax, 0xe7c4c32e15cd7904
xor rcx, rax
movabs rax, 0x95ab432bdd9215f4
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0xec3316b523b6c6c8
xor r10, rax
sub rcx, r10
movabs rax, 0x13cce94adc493937
xor r11, rax
movabs rax, 0x1f4a914782163a76
add rcx, rax
add rcx, r11
movabs rax, 0x3081f5a0ed8f3cf8
xor rcx, rax
mov qword [rsp + 0x170], rcx
and rdx, rcx
cmp qword [rsp + 0x38], rdx
mov cl, r14b
jne 0x1400fe71a
mov cl, r15b
mov eax, dword [rsp + 0x6c]
bt eax, 9
jae 0x1400fe73b
btr eax, 9
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
mov qword [rsp + 0x170], r14
bt eax, 8
jae 0x1400fe758
btr eax, 8
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
mov qword [rsp + 0x168], r14
test al, al
jns 0x1400fe773
btr eax, 7
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
mov qword [rsp + 0x160], r14
test al, 0x40
je 0x1400fe78d
and eax, 0xffffffbf
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
mov qword [rsp + 0x158], r14
test cl, cl
je 0x1400fe8b0
mov qword [rsp + 0x178], r14
movabs rax, 0xa93e99d1278d2be4
mov qword [rsp + 0x178], rax
movabs rcx, 0xf33a52b0ee79c083
add rcx, qword [rsp + 0x178]
movabs rax, 0xe5d536625304807e
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80b5cf03c0
add rcx, rax
movabs rax, 0xf8f8cd9d9f66f22b
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654c07cca4c1b
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0x5a9179ae2ffd9a73
xor rcx, rax
movabs rax, 0x5f627dc601ff6306
sub rcx, rax
movabs rax, 0xda3b3cd4ea29a122
xor rcx, rax
movabs rax, 0xb483ce49b4cfe824
add rax, rcx
add rdx, rax
not rdx
mov rax, qword [0x14031d038]
movabs rcx, 0x13cce94ac3b9e556
xor rax, rcx
sub rdx, rax
mov rcx, qword [0x14031d030]
movabs rax, 0xec3316b53c461aa9
xor rcx, rax
movabs r9, 0xe0b56d796535a62b
add r9, rdx
add r9, rcx
movabs rax, 0x868f3a9ef48721c6
xor r9, rax
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x178], r9
mov qword [rsp + 0x178], r14
jmp 0x1400fda5b
mov dword [rsp + 0x98], r14d
mov dword [rsp + 0x98], 0x68d29b4f
mov eax, dword [rsp + 0x98]
add eax, 0xecd9da37
xor eax, 0x6f8c7ede
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x1dd3e373
xor eax, 0x810d5811
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xe2fed937
add eax, ecx
xor eax, 0x11d7fd23
sub eax, 0x22f4d841
xor eax, 0x6b9a147
mov edx, dword [0x14031d030]
xor edx, 0x1c4c9a43
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xe3b365bc
sub edx, eax
sub edx, ecx
sub edx, 0x2fb2e142
xor edx, 0x46f6b834
mov dword [rsp + 0x60], edx
mov dword [rsp + 0x98], edx
mov dword [rsp + 0x98], r14d
mov dword [rsp + 0x430], 0x238
xor edx, edx
mov r8d, 0x234
lea rcx, [rsp + 0x434]
call fcn.14029dcc0
movabs rax, 0xe48c9d1afcbe9b70
mov qword [rsp + 0x48], rax
movabs rdi, 0xd30e935b561f9af1
mov qword [rsp + 0x50], r14
movabs r10, 0xa000637dbe5e812
mov rbx, qword [0x14031d070]
movabs rax, 0xa8defc1188bebf34
imul rbx, rax
not rbx
mov rax, qword [0x14031d060]
movabs rcx, 0xf5fff9c83c707516
xor rax, rcx
and rbx, rax
ror rbx, 0xa
shr rbx, 8
mov qword [rsp + 0x30], rbx
mov r11, qword [0x14031d080]
movabs rax, 0xca21f2b31ea84f8
imul r11, rax
movabs r8, 0x2cf16ca4a9e0650f
sub r11, r8
movabs rax, 0x6f3d73ba00000000
xor r11, rax
shr r11, 0x1f
not r11
lea rcx, [r11 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x5b
and ecx, 0x8000003f
jge 0x1400fea3f
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r11
ror rax, cl
not rax
mov rdx, rax
movabs rcx, 0x55d9e3e1bf64aa48
imul rdx, rcx
mov qword [rsp + 0x58], rdx
add r8, rdx
mov r9, r11
imul r9, rbx
sub r9, r8
movabs rcx, 0xe48c9d1afcbe9b70
xor r9, rcx
movzx ebx, r8b
mov ecx, ebx
xor ecx, 4
and ecx, 0xf
jge 0x1400fea8f
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r9, cl
movabs rcx, 0xd25732a48aeb9dc8
imul rax, rcx
movabs rcx, 0x2441d2a92fdb291f
add rax, rcx
xor r9, rax
mov rax, r8
sub rax, qword [0x14031d078]
xor r9, rax
mov rcx, r10
xor r9, rcx
mov rax, r9
and rax, r15
je 0x1400fee62
sub rax, 1
je 0x1400fed59
sub rax, 1
je 0x1400fec8f
cmp rax, 1
jne 0x1400febd5
mov rbx, r8
imul rbx, r11
movabs rax, 0xb2d99a330b783145
add rax, r9
xor rbx, rax
ror rbx, 0x30
shr rbx, 0xc
not rbx
mov qword [rsp + 0x48], rbx
mov rdx, qword [0x14031d088]
movabs rcx, 0x83575b646350
add rdx, rcx
movabs rax, 0x2c73e9dcb99f26c5
xor rdx, rax
movzx eax, bl
movzx ecx, r9b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db903848fb3
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
mov rax, rdi
imul rcx, rax
mov eax, 0xd25f5d59
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0x2210c7ce434e13be
sub rdi, rbx
shr rdi, cl
mov rcx, qword [rsp + 0x58]
movabs rax, 0x2cf9912ccabb92a5
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [r13 + rcx*8]
imul rax, r9
sub rax, qword [rsp + 0x30]
xor rdi, rax
mov rbx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
movabs rax, 0xff055d7bf2308d6b
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r10, rbx
imul r10, qword [r13 + rcx*8]
not r8
imul r8, r9
imul r8, qword [rsp + 0x30]
imul r8, rdi
movabs rcx, 0xf5ed7e87f583c7b7
xor rcx, r11
not rcx
xor rcx, r8
sub rcx, r10
call fcn.1400c8f90
mov qword [0x140321f90], rax
mov ebx, r14d
mov dword [rsp + 0x58], ebx
mov dword [rsp + 0x6c], 0x7e10e4be
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
movups xmm0, xmmword [rcx + 0x58]
movd eax, xmm0
sub ax, 8
test ebx, ebx
je 0x1400fef28
psrldq xmm0, 8
movq r9, xmm0
movzx eax, ax
shr rax, 1
lea r11, [r9 + rax*2]
mov r10d, 0x7644411a
jmp 0x1400fef1a
mov r11, r9
movabs rcx, 0xaaaaaa1ad246a067
xor r11, rcx
movabs rcx, 0x1206ed104b7c2b
imul r11, rcx
movabs rcx, 0xffff7e8af45692bb
imul rdx, rcx
movabs rcx, 0x9f3e16df652b74a7
add r11, rcx
add r11, rdx
mov rcx, r11
movabs rax, 0x277cd7be00967707
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xffffffff871376b7
lea ecx, [r9 - 0x1b]
and cl, sil
rol r8, cl
movabs rax, 0x20682c80e0000000
imul r8, rax
mov rcx, r8
ror rcx, 0xa
not rcx
movabs rax, 0x9b2de6b33debd480
imul rcx, rax
mov rax, r11
sub rax, r8
lea rdi, [rcx + rax*4]
mov cl, byte [rsp + 0x30]
and cl, sil
ror rdi, cl
movabs rax, 0xd30e935b561f9af1
imul rdi, rax
jmp 0x1400febd5
movabs rax, 0xd0930d17519c22d7
imul r9, rax
movabs rax, 0xd79435e50d79435f
mul r9
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r9b
sub cl, dl
movabs r10, 0x1b7362e50341648f
shl r10, cl
movabs rax, 0xa000637dbe5e812
xor r10, rax
and ebx, 0x8000003f
jge 0x1400fedae
sub ebx, r15d
or ebx, 0xffffffc0
add ebx, r15d
mov cl, bl
rol r10, cl
movabs rcx, 0x2cf16ca4a9e0650f
add rcx, r9
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0x135b561f9af1
imul rax, rcx
xor r10, rax
movabs rax, 0xffffc7a78e82d64a
or r10, rax
mov rdi, qword [0x14031d070]
movabs rax, 0xe48c9d1afcbe9b70
imul rdi, rax
sub rdi, r8
mov rax, qword [rsp + 0x30]
sub rax, r10
xor rdi, rax
movabs rax, 0xc7a7c6a6df8ad647
xor rdi, rax
mov rax, r9
imul rax, r8
imul rax, rdi
mov rbx, r11
sub rbx, rax
movabs rax, 0x789589410d89a5d
add rbx, rax
xor rbx, qword [rsp + 0x30]
movzx eax, r11b
imul ecx, eax, 0xe2
and cl, sil
rol rbx, cl
not rbx
jmp 0x1400febda
mov r10, r9
imul r10, qword [0x14031d080]
and r10, qword [0x14031d080]
xor r10, rcx
ror r10, 0x12
imul r10, r8
mov rbx, qword [rsp + 0x30]
not rbx
imul rbx, r11
movabs rax, 0x7cd8a7de027b87a6
imul rbx, rax
imul rax, qword [0x14031d060], 0xffffffffe7959d04
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x50], rax
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1400feed0
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x50]
ror rax, cl
movabs rcx, 0x2cf16ca4a9e0650f
add rax, rcx
add rax, qword [rsp + 0x58]
mov qword [rsp + 0x30], rax
jmp 0x1400febda
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov eax, r10d
xor eax, edx
mov r10d, r8d
imul r10d, eax
add r9, 2
cmp r9, r11
jne 0x1400feef4
cmp r10d, ebx
jne 0x1400fefc5
mov r11, qword [rcx + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov rax, qword [rax + r11 + 0x88]
mov edi, eax
add rdi, r11
shr rax, 0x20
cmp rdi, r11
je 0x1400fefc5
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x1400fefc5
mov r10d, dword [rdi + 0x20]
dec r8d
mov dword [rsp + 0x30], r8d
mov r9d, r8d
mov qword [rsp + 0x48], r9
lea rdx, [r11 + r8*4]
mov r10d, dword [rdx + r10]
add r10, r11
mov ebx, 0x7644411a
mov dl, byte [r10]
add r10, r15
test dl, dl
je 0x1400fefb2
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, 0x4764996c
mov edx, ebx
xor edx, r8d
mov ebx, r9d
imul ebx, edx
mov dl, byte [r10]
add r10, r15
test dl, dl
jne 0x1400fef7d
mov r8d, dword [rsp + 0x30]
mov r9, qword [rsp + 0x48]
cmp ebx, dword [rsp + 0x6c]
je 0x1400fefcd
test r8d, r8d
mov r10d, dword [rdi + 0x20]
jne 0x1400fef53
mov ebx, dword [rsp + 0x58]
mov rcx, qword [rcx]
jmp 0x1400fec5c
mov edx, dword [rdi + 0x1c]
add rdx, r11
mov ecx, dword [rdi + 0x24]
add rcx, r11
movzx ecx, word [rcx + r9*2]
mov r8d, dword [rdx + rcx*4]
add r8, r11
cmp r8, rdi
jbe 0x1400ff07d
lea rcx, [rax + rdi]
cmp r8, rcx
jae 0x1400ff07d
mov eax, 0x7644411a
mov ebx, eax
mov dword [rsp + 0x58], eax
mov edx, eax
mov dword [rsp + 0x6c], eax
mov al, byte [r8]
cmp al, 0x2e
je 0x1400ff038
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, ebx
mov ebx, eax
imul ebx, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x1400ff013
mov dword [rsp + 0x58], ebx
add r8, r15
mov al, byte [r8]
test al, al
je 0x1400ff067
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, edx
mov edx, eax
imul edx, ecx
add r8, r15
mov al, byte [r8]
test al, al
jne 0x1400ff042
mov dword [rsp + 0x6c], edx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
jmp 0x1400fefc5
lea rdx, [rsp + 0x430]
mov rcx, qword [rsp + 0x38]
call r8
test eax, eax
je 0x140100471
mov r11d, r14d
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x58], 0x124732ea
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
mov r12d, 8
movups xmm0, xmmword [rcx + 0x58]
movd eax, xmm0
sub ax, r12w
test r11d, r11d
je 0x1400ff116
psrldq xmm0, 8
movq r8, xmm0
movzx eax, ax
shr rax, 1
lea r10, [r8 + rax*2]
mov r9d, 0x54d3293c
jmp 0x1400ff108
movsx edx, byte [r8]
mov eax, edx
imul eax, edx
add eax, 0x31
xor eax, 0x4764996c
xor edx, r9d
mov r9d, eax
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x1400ff0e9
cmp r9d, r11d
jne 0x1400ff25e
mov r10, qword [rcx + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov rax, qword [rax + r10 + 0x88]
mov ebx, eax
add rbx, r10
shr rax, 0x20
cmp rbx, r10
je 0x1400ff25e
mov edi, dword [rbx + 0x18]
test edi, edi
je 0x1400ff25e
mov edx, dword [rbx + 0x20]
dec edi
mov r8d, edi
lea rdx, [rdx + rdi*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov r11d, 0x54d3293c
mov dl, byte [r9]
add r9, r15
test dl, dl
je 0x1400ff191
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, 0x4764996c
xor r8d, r11d
mov r11d, edx
imul r11d, r8d
mov dl, byte [r9]
add r9, r15
test dl, dl
jne 0x1400ff166
mov r8d, edi
cmp r11d, dword [rsp + 0x58]
je 0x1400ff1a9
test edi, edi
mov edx, dword [rbx + 0x20]
jne 0x1400ff146
mov r11d, dword [rsp + 0x30]
jmp 0x1400ff25e
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r8*2]
mov r8d, dword [rdx + rcx*4]
add r8, r10
cmp r8, rbx
jbe 0x1400ff266
lea rcx, [rax + rbx]
cmp r8, rcx
jae 0x1400ff266
mov eax, 0x54d3293c
mov r11d, eax
mov dword [rsp + 0x30], eax
mov r9d, eax
mov dword [rsp + 0x58], eax
mov al, byte [r8]
cmp al, 0x2e
je 0x1400ff21a
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, r11d
mov r11d, eax
imul r11d, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x1400ff1f1
mov dword [rsp + 0x30], r11d
add r8, r15
mov al, byte [r8]
test al, al
je 0x1400ff24d
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, r9d
mov r9d, eax
imul r9d, ecx
add r8, r15
mov al, byte [r8]
test al, al
jne 0x1400ff224
mov dword [rsp + 0x58], r9d
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
mov rcx, qword [rcx]
jmp 0x1400ff0bc
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x45c]
call r8
test eax, eax
movabs r12, 0xaaaaaaaaaaaaaaab
jne 0x140100282
mov qword [rsp + 0x180], r14
movabs rax, 0x63efef780eefefa1
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x188], r14
movabs rax, 0x8a90a91e99f8d0b7
mov qword [rsp + 0x188], rax
movabs rcx, 0xf33a52b41bcfd483
add rcx, qword [rsp + 0x180]
movabs rax, 0xf9d536625307add4
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80ac470184
add rcx, rax
movabs rax, 0xf8f8cd9a655b85db
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654bc2cbff3f5
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0x5a9179aa90476ba3
xor rcx, rax
movabs rax, 0x5f627dc7457ba596
sub rcx, rax
movabs rax, 0x3a3b3cd353652c71
xor rcx, rax
movabs rax, 0xb483ce469db72eb0
add rax, rcx
add rdx, rax
not rdx
mov rax, qword [0x14031d038]
movabs rcx, 0x13cce94ad06f3da6
xor rax, rcx
sub rdx, rax
mov rcx, qword [0x14031d030]
movabs rax, 0xec3316b52f90c259
xor rcx, rax
movabs rax, 0xe0b56d8607458efb
add rax, rdx
add rax, rcx
movabs rcx, 0x5f665238eac43ab6
xor rax, rcx
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x180], rax
mov eax, dword [rsp + 0x438]
mov qword [0x140322190], rax
xor eax, eax
mov byte [rsp + 0x7a], al
movabs rax, 0xb4ee12b3d6d4c591
mov qword [rsp + 0x50], rax
movabs rbx, 0x9cbed40e91cb06fd
mov qword [rsp + 0x30], r14
movabs r11, 0x4228ba07c2304645
mov rdi, qword [0x14031d070]
movabs rax, 0xb0fcb17e336a8bce
imul rdi, rax
not rdi
mov rax, qword [0x14031d060]
movabs rcx, 0xbdd745f824a4cd01
xor rax, rcx
and rdi, rax
ror rdi, 0x3a
shr rdi, 8
mov r10, qword [0x14031d080]
movabs rax, 0x25102b4a82666828
imul r10, rax
movabs r8, 0x63412bf16e34f903
sub r10, r8
movabs rax, 0xa15c11e4ffffffff
xor r10, rax
shr r10, 0x1f
not r10
lea rcx, [r10 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x67
and ecx, 0x8000003f
jge 0x1400ff495
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, r10
ror rdx, cl
not rdx
mov rax, rdx
movabs rcx, 0x7296fd4568de2154
imul rax, rcx
mov qword [rsp + 0x58], rax
lea r9, [rax + r8]
mov r8, r10
imul r8, rdi
sub r8, r9
movabs rax, 0xb4ee12b3d6d4c591
xor r8, rax
mov cl, r9b
xor cl, 0xf8
and cl, 0xf
rol r8, cl
mov rax, r9
sub rax, qword [0x14031d078]
xor r8, rax
movabs rax, 0x8baf49aad9eae804
imul rdx, rax
movabs rax, 0x405b6a9aaf6ed609
sub rdx, rax
xor r8, rdx
mov rcx, r11
xor r8, rcx
mov rax, r8
and rax, r15
je 0x1400ff7e1
sub rax, 1
je 0x1400ff6ea
sub rax, 1
je 0x1400ff61c
cmp rax, 1
jne 0x1400ff860
mov rcx, r9
imul rcx, r10
movabs rax, 0x7a15c37bf4c89b05
add rax, r8
xor rcx, rax
shr rcx, 0xc
not rcx
mov qword [rsp + 0x50], rcx
movabs rdx, 0x83571c690674
add rdx, qword [0x14031d088]
movabs rax, 0x63c3ae893946dff5
xor rdx, rax
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db94489ea8f
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
mov rax, rbx
imul rcx, rax
mov eax, 0x95523865
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0xd111959d356f80fa
sub rbx, qword [rsp + 0x50]
shr rbx, cl
mov rcx, qword [rsp + 0x58]
movabs rax, 0x63495079d60b41ad
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, rdi
xor rbx, rax
jmp 0x1400ff860
mov r10, r8
movabs rcx, 0xaaaaaa1a954bc55b
xor r10, rcx
movabs rcx, 0x1206ed57461917
imul r10, rcx
mov rcx, qword [rsp + 0x58]
movabs rdx, 0xffff7e8ab35bf787
imul rcx, rdx
movabs rdx, 0x6be5c2110a8477ba
add r10, rdx
add r10, rcx
mov rcx, r10
movabs rax, 0x277cd7be479b123b
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r10
not r9
imul r9, qword [r13 + rcx*8]
xor r9, 0xffffffffc01e138b
lea ecx, [r8 + 0x19]
and cl, sil
rol r9, cl
movabs rax, 0x420654480000000
imul r9, rax
mov rcx, r9
ror rcx, 0x17
not rcx
movabs rax, 0x9b2de6b221de4070
imul rcx, rax
mov rax, r10
sub rax, r9
lea rbx, [rcx + rax*4]
mov cl, dil
and cl, sil
ror rbx, cl
movabs rax, 0x9cbed40e91cb06fd
imul rbx, rax
jmp 0x1400ff860
movabs rax, 0xe339df0edfbb8b89
imul r8, rax
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
movabs r11, 0x4b11ed4c292b3a6e
shl r11, cl
movabs rax, 0x4228ba07c2304645
xor r11, rax
mov cl, r9b
and cl, sil
rol r11, cl
movabs rcx, 0x63412bf16e34f903
add rcx, r8
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0x140e91cb06fd
imul rax, rcx
xor r11, rax
movabs rax, 0xffffc7a7c98fb376
or r11, rax
mov rbx, qword [0x14031d070]
movabs rax, 0xb4ee12b3d6d4c591
imul rbx, rax
sub rbx, r9
mov rax, rdi
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a69887b37b
xor rbx, rax
mov rax, r8
imul rax, r9
imul rax, rbx
mov rdx, r10
sub rdx, rax
movabs rax, 0x789589457d5ff61
add rdx, rax
xor rdx, rdi
movzx eax, r10b
imul ecx, eax, 0x1e
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x30], rdx
jmp 0x1400ff860
mov r11, qword [0x14031d080]
imul r11, r8
and r11, qword [0x14031d088]
xor r11, rcx
ror r11, 5
imul r11, r9
mov rax, rdi
not rax
imul rax, r10
movabs rcx, 0x7cd8a7de4576e29a
imul rax, rcx
mov qword [rsp + 0x30], rax
imul rdi, qword [0x14031d060], 0xffffffffe6948b44
mov rdx, qword [0x14031d068]
sub rdi, rdx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1400ff84b
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
movabs rax, 0x63412bf16e34f903
add rdi, rax
add rdi, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
movabs rax, 0xff055d7bb53de857
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x30]
imul r11, qword [r13 + rcx*8]
not r9
imul r9, r8
imul r9, rdi
imul r9, rbx
movabs rcx, 0xf5ed7e87b28ea28b
xor rcx, r10
not rcx
xor rcx, r9
sub rcx, r11
call fcn.1400c8fd8
mov qword [0x140321f68], rax
mov qword [rsp + 0x190], r14
movabs rax, 0xaa067e1d47562c06
mov qword [rsp + 0x190], rax
movabs rcx, 0xcc5ad48c699f7ba
add rcx, qword [rsp + 0x190]
movabs rax, 0x1d0b4fedad9c589e
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x312ba68f11b95ce5
sub rcx, rax
movabs rax, 0x707459b67e63a18
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x1829ab475eea9128
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0xa56e8658fd78db7a
xor rcx, rax
movabs rax, 0x2b02fde7fc1bc2d6
sub rcx, rax
movabs rax, 0x13c4c32e295ac485
xor rcx, rax
movabs rax, 0x15ab432c0398926e
add rax, rcx
add rdx, rax
not rdx
mov rax, qword [0x14031d038]
movabs rcx, 0xec3316b5231a6632
xor rax, rcx
sub rdx, rax
mov rcx, qword [0x14031d030]
movabs rax, 0x13cce94adce599cd
xor rcx, rax
movabs r8, 0x1f4a9146e5570460
add r8, rdx
add r8, rcx
movabs rax, 0xfa2b93ec45f1b80a
xor r8, rax
mov qword [rsp + 0x190], r8
mov dword [rsp + 0x9c], r14d
mov dword [rsp + 0x9c], 0xe69b356c
mov eax, dword [rsp + 0x9c]
add eax, 0xd699612f
xor eax, 0xf684689d
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x3616a4de
xor eax, 0xb7a6d2fd
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x5d335d82
add eax, ecx
xor eax, 0x4b398730
sub eax, 0x10dbec23
xor eax, 0xda1a8fcf
lea edx, [rcx + 0x4c0924db]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xc35a63d8
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x3ca59c27
add ecx, 0x594af5d
add ecx, edx
xor ecx, 0xd1d4d5e8
mov dword [rsp + 0x9c], ecx
shr r8, cl
mov qword [rsp + 0x198], r8
mov dword [rsp + 0x9c], r14d
mov qword [rsp + 0x190], r14
mov r11d, r14d
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x58], 0xba6209ee
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
mov r12d, 8
movups xmm0, xmmword [rcx + 0x58]
movd eax, xmm0
sub ax, r12w
test r11d, r11d
je 0x1400ffafc
psrldq xmm0, 8
movq r8, xmm0
movzx eax, ax
shr rax, 1
lea r10, [r8 + rax*2]
mov r9d, 0xaf7ed126
jmp 0x1400ffaee
movsx edx, byte [r8]
mov eax, edx
imul eax, edx
add eax, 0x31
xor eax, 0x4764996c
xor edx, r9d
mov r9d, eax
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x1400ffacf
cmp r9d, r11d
jne 0x1400ffc41
mov r10, qword [rcx + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov rax, qword [rax + r10 + 0x88]
mov ebx, eax
add rbx, r10
shr rax, 0x20
cmp rbx, r10
je 0x1400ffc41
mov edi, dword [rbx + 0x18]
test edi, edi
je 0x1400ffc41
mov r9d, dword [rbx + 0x20]
dec edi
mov r8d, edi
lea rdx, [r10 + rdi*4]
mov r9d, dword [rdx + r9]
add r9, r10
mov r11d, 0xaf7ed126
mov dl, byte [r9]
add r9, r15
test dl, dl
je 0x1400ffb78
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, 0x4764996c
xor r8d, r11d
mov r11d, edx
imul r11d, r8d
mov dl, byte [r9]
add r9, r15
test dl, dl
jne 0x1400ffb4d
mov r8d, edi
cmp r11d, dword [rsp + 0x58]
je 0x1400ffb91
test edi, edi
mov r9d, dword [rbx + 0x20]
jne 0x1400ffb2d
mov r11d, dword [rsp + 0x30]
jmp 0x1400ffc41
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r8*2]
mov r8d, dword [rdx + rcx*4]
add r8, r10
cmp r8, rbx
jbe 0x1400ffc49
lea rcx, [rax + rbx]
cmp r8, rcx
jae 0x1400ffc49
mov eax, 0xaf7ed126
mov r11d, eax
mov dword [rsp + 0x30], eax
mov edx, eax
mov dword [rsp + 0x58], eax
mov al, byte [r8]
cmp al, 0x2e
je 0x1400ffc01
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, r11d
mov r11d, eax
imul r11d, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x1400ffbd8
mov dword [rsp + 0x30], r11d
add r8, r15
mov al, byte [r8]
test al, al
je 0x1400ffc30
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, edx
mov edx, eax
imul edx, ecx
add r8, r15
mov al, byte [r8]
test al, al
jne 0x1400ffc0b
mov dword [rsp + 0x58], edx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
mov rcx, qword [rcx]
jmp 0x1400ffaa2
lea rdx, [rsp + 0x198]
lea rcx, [0x1400c8d50]
call r8
movabs rcx, 0xb6aeb28f9e84c128
mov qword [rsp + 0x50], rcx
movabs rdx, 0x254f58de5aebeb8d
mov rdi, rdx
mov qword [rsp + 0x30], r14
movabs r11, 0x46859365d9c097f9
mov rbx, qword [0x14031d070]
movabs rax, 0x85065f1df0ba6de6
imul rbx, rax
not rbx
mov rax, qword [0x14031d060]
movabs r8, 0xb97a6c9a5eb8fedd
xor rax, r8
and rbx, rax
ror rbx, 0x2a
shr rbx, 8
mov r9, qword [0x14031d060]
movabs rax, 0x39020151bea1ef68
imul r9, rax
add r9, rdx
movabs rax, 0xd0b994f00000000
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xdab0a721a5141473
lea rcx, [r9 + r8]
movabs r12, 0xaaaaaaaaaaaaaaab
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x87
and ecx, 0x8000003f
jge 0x1400ffd3c
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, r9
ror rdx, cl
not rdx
mov rax, rdx
movabs rcx, 0xa80f8b1529228004
imul rax, rcx
mov qword [rsp + 0x58], rax
add r8, rax
mov r10, r9
imul r10, rbx
sub r10, r8
movabs rax, 0xb6aeb28f9e84c128
xor r10, rax
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
mov rax, r8
mov rcx, qword [0x14031d078]
sub rax, rcx
xor r10, rax
movabs rax, 0x8f474e8f3f302e34
imul rdx, rax
movabs rax, 0x266e3395719a2ba9
sub rdx, rax
xor r10, rdx
mov rdx, r11
xor r10, rdx
mov rax, r10
and rax, r15
je 0x140100090
sub rax, 1
je 0x1400fff96
sub rax, 1
je 0x1400ffec9
cmp rax, 1
jne 0x14010010b
mov rcx, r8
imul rcx, r9
movabs rax, 0xa0533fe72750e735
add rax, r10
xor rcx, rax
ror rcx, 0x10
shr rcx, 0xc
not rcx
mov qword [rsp + 0x50], rcx
movabs rdx, 0x83573b09fc94
add rdx, qword [0x14031d088]
movabs rax, 0xda322259d506c865
xor rdx, rax
movzx eax, r10b
movzx ecx, cl
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db963e9106f
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
mov rax, rdi
imul rcx, rax
mov eax, 0xb232c285
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0xa776ac16eef1532a
sub rdi, qword [rsp + 0x50]
shr rdi, cl
mov rcx, qword [rsp + 0x58]
movabs rax, 0xdab8cba9e5cac6bd
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, rbx
xor rdi, rax
jmp 0x14010010b
mov r9, r10
movabs rcx, 0xaaaaaa1ab22b3fbb
xor r9, rcx
movabs rcx, 0x1206ed7026e3f7
imul r9, rcx
mov rcx, qword [rsp + 0x58]
movabs rdx, 0xffff7e8a943b0d67
imul rcx, rdx
movabs rdx, 0xfebbca197a50806e
add r9, rdx
add r9, rcx
mov rcx, r9
movabs rax, 0x277cd7be60fbe8db
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xffffffffe77ee96b
lea ecx, [r10 - 7]
and cl, sil
rol r8, cl
movabs rax, 0xc2a65c280000000
imul r8, rax
mov rcx, r8
ror rcx, 0xe
not rcx
movabs rax, 0x9b2de6b2bc5dabf0
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdi, [rcx + rax*4]
mov cl, bl
and cl, sil
ror rdi, cl
movabs rax, 0x254f58de5aebeb8d
imul rdi, rax
jmp 0x14010010b
movabs rax, 0xbbc2bb17d646c391
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs r11, 0x49514d70617b3ed7
shl r11, cl
movabs rax, 0x46859365d9c097f9
xor r11, rax
mov cl, r8b
and cl, sil
rol r11, cl
movabs rcx, 0xdab0a721a5141473
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0x18de5aebeb8d
imul rax, rcx
xor r11, rax
movabs rax, 0xffffc7a7eeef4996
or r11, rax
mov rdi, qword [0x14031d070]
movabs rax, 0xb6aeb28f9e84c128
imul rdi, rax
sub rdi, r8
mov rax, rbx
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a6bfe7499b
xor rdi, rax
mov rax, r10
imul rax, r8
imul rax, rdi
mov rdx, r9
sub rdx, rax
movabs rax, 0x789589470b50581
add rdx, rax
xor rdx, rbx
movzx eax, r9b
imul ecx, eax, 0xfe
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x30], rdx
jmp 0x14010010b
mov r11, r10
imul r11, qword [0x14031d080]
and r11, rcx
xor r11, rdx
ror r11, 0x39
imul r11, r8
mov rax, rbx
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de6216187a
imul rax, rcx
mov qword [rsp + 0x30], rax
imul rbx, qword [0x14031d060], 0xffffffff87786924
mov rdx, qword [0x14031d068]
sub rbx, rdx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1401000f6
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rbx, cl
movabs rax, 0xdab0a721a5141473
add rbx, rax
add rbx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
movabs rax, 0xff055d7b925d12b7
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x30]
imul r11, qword [r13 + rcx*8]
not r8
imul r8, r10
imul r8, rbx
imul r8, rdi
movabs rcx, 0xf5ed7e8795ee586b
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400c9260
mov qword [0x140321f30], rax
mov r8, qword [rsp + 0x198]
movabs rcx, 0xf33a52b4da739903
add rcx, qword [rsp + 0x188]
movabs rax, 0xbe55366253086c78
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f55f4e9ca
sub rcx, rax
movabs rax, 0xf8f8cd99a3bd3249
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x47d654bb29f8a6ba
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0x5a9179a9b6d49f81
xor rcx, rax
movabs rax, 0x5f627dc71fb4c114
sub rcx, rax
movabs rax, 0x163b3cd2f40d5513
xor rcx, rax
movabs rax, 0x3483ce45e449e48f
add rax, rcx
add rdx, rax
not rdx
mov rax, qword [0x14031d038]
movabs rcx, 0x13cce94ad369ccb8
xor rax, rcx
sub rdx, rax
mov rcx, qword [0x14031d030]
movabs rax, 0xec3316b52c963347
xor rcx, rax
movabs rax, 0xe0b56d8904cd380d
add rdx, rax
add rdx, rcx
movabs rax, 0xd88a392449f06f08
xor rdx, rax
mov qword [rsp + 0x188], rdx
and rdx, qword [rsp + 0x48]
mov qword [rsp + 0x188], r14
mov qword [rsp + 0x180], r14
cmp r8, rdx
jne 0x14010077e
mov ebx, r14d
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x58], 0x65adc4e
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
mov r13d, 8
movups xmm0, xmmword [rcx + 0x58]
movd eax, xmm0
sub ax, r13w
test ebx, ebx
je 0x140100308
psrldq xmm0, 8
movq r9, xmm0
movzx eax, ax
shr rax, 1
lea r11, [r9 + rax*2]
mov r10d, 0x1fb2981e
jmp 0x1401002fa
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov eax, r10d
xor eax, edx
mov r10d, r8d
imul r10d, eax
add r9, 2
cmp r9, r11
jne 0x1401002d4
cmp r10d, ebx
jne 0x14010038d
mov r10, qword [rcx + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov rax, qword [rax + r10 + 0x88]
mov ebx, eax
add rbx, r10
shr rax, 0x20
cmp rbx, r10
je 0x140100389
mov edi, dword [rbx + 0x18]
test edi, edi
je 0x140100389
mov edx, dword [rbx + 0x20]
dec edi
mov r8d, edi
lea rdx, [rdx + rdi*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov r11d, 0x1fb2981e
mov dl, byte [r9]
add r9, r15
test dl, dl
je 0x14010037b
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, 0x4764996c
xor r8d, r11d
mov r11d, edx
imul r11d, r8d
mov dl, byte [r9]
add r9, r15
test dl, dl
jne 0x140100350
mov r8d, edi
cmp r11d, dword [rsp + 0x58]
je 0x140100395
test edi, edi
mov edx, dword [rbx + 0x20]
jne 0x140100330
mov ebx, dword [rsp + 0x30]
mov rcx, qword [rcx]
jmp 0x1401002a8
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r8*2]
mov r8d, dword [rdx + rcx*4]
add r8, r10
cmp r8, rbx
jbe 0x14010044a
lea rcx, [rax + rbx]
cmp r8, rcx
jae 0x14010044a
mov eax, 0x1fb2981e
mov ebx, eax
mov dword [rsp + 0x30], eax
mov r9d, eax
mov dword [rsp + 0x58], eax
mov al, byte [r8]
cmp al, 0x2e
je 0x140100401
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, ebx
mov ebx, eax
imul ebx, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x1401003dc
mov dword [rsp + 0x30], ebx
add r8, r15
mov al, byte [r8]
test al, al
je 0x140100434
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, r9d
mov r9d, eax
imul r9d, ecx
add r8, r15
mov al, byte [r8]
test al, al
jne 0x14010040b
mov dword [rsp + 0x58], r9d
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
jmp 0x14010038d
lea rdx, [rsp + 0x430]
mov rcx, qword [rsp + 0x38]
call r8
test eax, eax
lea r13, [0x14031d060]
jne 0x1400ff095
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x60], eax
movabs rdx, 0x2719c9600de1df62
mov qword [rsp + 0x48], rdx
movabs r11, 0xd37351dc65ec36e3
mov qword [rsp + 0x50], r11
mov r8, qword [0x14031d070]
movabs rax, 0xcbfbfe6000000000
imul r8, rax
movabs rax, 0x517b22f000000000
xor r8, rax
mov qword [rsp + 0x70], r8
mov rcx, r8
imul rcx, r11
mov qword [rsp + 0x30], rcx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r8
and r9, r11
imul r9, qword [r13 + rcx*8]
movabs rax, 0xe617e13dd9af12d8
imul r9, rax
shr r9, 3
movabs rax, 0x67bf96997b2456ff
xor r9, rax
mov rbx, r8
movabs rax, 0xffffff57d17bc303
imul rbx, rax
sub rbx, 0x787778d4
xor rbx, r9
xor rbx, qword [0x14031d060]
mov rax, r9
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bd8c87c22
imul rax, rcx
not rax
and rbx, rax
ror rbx, 0x30
shr rbx, 8
movabs r10, 0x2c8cae239a13c91d
lea rcx, [r8 + r10]
xor rcx, 0xffffffffe646772f
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r11, qword [r13 + rcx*8]
movabs rax, 0xaa9aa1e8eb5859c8
imul r11, rax
sub r11, r10
mov rax, r9
movabs rcx, 0xacbadab632feff98
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rdi, r11
xor rdi, r8
lea rcx, [r11 + r10]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x33
and ecx, 0x8000003f
jge 0x1401005e6
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
not rdi
imul rdi, r9
imul rdx, rdi, 0xffffffff8788872c
mov qword [rsp + 0x58], rdx
lea r8, [rdx + r10]
mov r10, r11
imul r10, rbx
sub r10, r8
movabs rax, 0x2719c9600de1df62
xor r10, rax
mov cl, r8b
xor cl, 0xfc
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
movabs rax, 0x78e6cb2cf3232404
imul rdi, rax
movabs rax, 0x5340396c5c4c8d49
sub rdi, rax
xor r10, rdi
xor r10, r9
mov rdi, qword [rsp + 0x70]
xor r10, rdi
mov rax, r10
and eax, 3
je 0x1401009c4
sub rax, 1
je 0x14010087f
sub rax, 1
je 0x14010078a
cmp rax, 1
jne 0x140100a6b
mov rcx, r8
imul rcx, r11
movabs rax, 0xf877c5600c446457
add rax, r10
xor rcx, rax
ror rcx, 8
shr rcx, 0xc
xor rcx, rdi
not rcx
mov qword [rsp + 0x48], rcx
movabs rdx, 0x83573a397228
add rdx, qword [0x14031d088]
movabs rax, 0x2c0e2b5beb319bbf
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db962d99edb
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rdx, 0xd37351dc65ec36e3
imul rcx, rdx
mov eax, 0xb3024c31
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rax, 0x1d11847bc0bfa4f4
sub rax, qword [rsp + 0x48]
shr rax, cl
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x58]
movabs rax, 0x2c94d2abdb9a061b
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, rbx
xor qword [rsp + 0x50], rax
jmp 0x140100a6b
mov eax, dword [rsp + 0x438]
jmp 0x14010046d
mov rcx, r10
movabs rax, 0xaaaaaa1ab31bb10f
xor rcx, rax
movabs rax, 0x1206ed71166d43
imul rcx, rax
mov rax, r9
movabs r8, 0xfff17ca864798773
xor rax, r8
sub rcx, rax
movabs rax, 0xffff7e8a950b83d3
imul rdx, rax
movabs r11, 0xebce104438831dba
add r11, rcx
add r11, rdx
mov rcx, r11
movabs rax, 0x277cd7be61cb666f
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xffffffffe64e67df
lea ecx, [r10 + 0xd]
and cl, sil
rol r8, cl
mov rax, qword [rsp + 0x30]
movabs rcx, 0xffc7c63bf0b69291
xor rax, rcx
movabs rcx, 0x7c7a7dc68f496d6e
and rax, rcx
imul r8, rax
mov rcx, r8
ror rcx, 0x30
not rcx
movabs rax, 0x9b2de6b2b89f9120
imul rcx, rax
mov rax, r11
sub rax, r8
lea rax, [rcx + rax*4]
mov cl, bl
and cl, sil
ror rax, cl
movabs rdx, 0xd37351dc65ec36e3
imul rax, rdx
mov qword [rsp + 0x50], rax
jmp 0x140100a6b
movabs rax, 0x527f9d7431102b67
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
mov rax, rdi
movabs rdx, 0x2c8cae239a13c91c
imul rax, rdx
movabs rdx, 0x2719c9600de1df62
xor rax, rdx
not rax
shl rax, cl
xor r9, rax
mov cl, r8b
and cl, sil
rol r9, cl
movabs rcx, 0x2c8cae239a13c91d
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0x11dc65ec36e3
imul rax, rcx
xor r9, rax
movabs rax, 0xffffc7a7efdfc722
or r9, rax
mov rcx, qword [0x14031d070]
movabs rax, 0x2719c9600de1df62
imul rcx, rax
sub rcx, r8
mov rax, rbx
sub rax, r9
xor rcx, rax
movabs rax, 0xc7a7c6a6bed7c72f
xor rcx, rax
mov qword [rsp + 0x50], rcx
movabs rax, 0xcccccccccccccccd
mul rdi
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rdi
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, qword [rsp + 0x50]
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r8
imul rdx, qword [rsp + 0x50]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, rdi
mov rdi, rax
movabs rax, 0x789589471858b35
add rdi, rax
xor rdi, rbx
mov al, r11b
shl al, 2
lea ecx, [rax + r11]
add cl, cl
and cl, sil
rol rdi, cl
not rdi
jmp 0x140100a6b
mov rax, r12
mul r9
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r9
sub rcx, rax
mov rax, r10
imul rax, qword [0x14031d080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r9
and r9b, sil
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r8
not rbx
imul rbx, r11
movabs rax, 0x7cd8a7de632696ce
imul rbx, rax
mov rax, r9
imul rax, rdi
mov rdi, rbx
xor rdi, rax
imul rbx, qword [0x14031d060], 0xffffffff8788872c
mov rdx, qword [0x14031d068]
sub rbx, rdx
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140100a56
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rbx, cl
movabs rax, 0x2c8cae239a13c91d
add rbx, rax
add rbx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
movabs rax, 0xff055d7b936d9c03
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r9, rdi
imul r9, qword [r13 + rcx*8]
not r8
imul r8, r10
imul r8, rbx
imul r8, qword [rsp + 0x50]
movabs rcx, 0xf5ed7e8794ded6df
xor rcx, r11
not rcx
xor rcx, r8
sub rcx, r9
call fcn.1400c9284
mov qword [0x140321f30], rax
mov ebx, r14d
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x58], 0xc7556c96
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
movups xmm0, xmmword [rcx + 0x58]
movd eax, xmm0
sub ax, 8
test ebx, ebx
je 0x140100b4d
psrldq xmm0, 8
movq r9, xmm0
movzx eax, ax
shr rax, 1
lea r11, [r9 + rax*2]
mov r10d, 0xa49116c2
jmp 0x140100b3f
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov eax, r10d
xor eax, edx
mov r10d, r8d
imul r10d, eax
add r9, 2
cmp r9, r11
jne 0x140100b19
cmp r10d, ebx
jne 0x140100bea
mov r11, qword [rcx + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov rax, qword [rax + r11 + 0x88]
mov edi, eax
add rdi, r11
shr rax, 0x20
cmp rdi, r11
je 0x140100bea
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x140100bea
mov r10d, dword [rdi + 0x20]
dec r8d
mov dword [rsp + 0x6c], r8d
mov r9d, r8d
mov qword [rsp + 0x48], r9
lea rdx, [r11 + r8*4]
mov r10d, dword [rdx + r10]
add r10, r11
mov ebx, 0xa49116c2
mov dl, byte [r10]
add r10, r15
test dl, dl
je 0x140100bd7
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, 0x4764996c
mov edx, ebx
xor edx, r8d
mov ebx, r9d
imul ebx, edx
mov dl, byte [r10]
add r10, r15
test dl, dl
jne 0x140100ba2
mov r8d, dword [rsp + 0x6c]
mov r9, qword [rsp + 0x48]
cmp ebx, dword [rsp + 0x58]
je 0x140100bf2
test r8d, r8d
mov r10d, dword [rdi + 0x20]
jne 0x140100b78
mov ebx, dword [rsp + 0x30]
mov rcx, qword [rcx]
jmp 0x140100aed
mov edx, dword [rdi + 0x1c]
add rdx, r11
mov ecx, dword [rdi + 0x24]
add rcx, r11
movzx ecx, word [rcx + r9*2]
mov r8d, dword [rdx + rcx*4]
add r8, r11
cmp r8, rdi
jbe 0x140100ca2
lea rcx, [rax + rdi]
cmp r8, rcx
jae 0x140100ca2
mov eax, 0xa49116c2
mov ebx, eax
mov dword [rsp + 0x30], eax
mov edx, eax
mov dword [rsp + 0x58], eax
mov al, byte [r8]
cmp al, 0x2e
je 0x140100c5d
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, ebx
mov ebx, eax
imul ebx, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x140100c38
mov dword [rsp + 0x30], ebx
add r8, r15
mov al, byte [r8]
test al, al
je 0x140100c8c
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, edx
mov edx, eax
imul edx, ecx
add r8, r15
mov al, byte [r8]
test al, al
jne 0x140100c67
mov dword [rsp + 0x58], edx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
jmp 0x140100bea
mov rcx, qword [rsp + 0x38]
call r8
movabs rcx, 0x67aa69baab336ec1
mov qword [rsp + 0x38], rcx
movabs rdi, 0xcc81317aab48d8ba
mov qword [rsp + 0x48], r14
movabs r11, 0x3793c1f6f9d756af
mov rbx, qword [0x14031d070]
movabs rax, 0x87daa670f883129a
imul rbx, rax
not rbx
mov rax, qword [0x14031d060]
movabs rcx, 0xc86c3e090e9d9d5f
xor rax, rcx
and rbx, rax
ror rbx, 0xd
shr rbx, 8
mov r9, qword [0x14031d088]
movabs rax, 0x3be62ab32980c060
imul r9, rax
movabs r8, 0x337ece8554b72746
sub r9, r8
movabs rax, 0xf76a6ac5ffffffff
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x97
and ecx, 0x8000003f
jge 0x140100d7e
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
mov rdx, rax
movabs rcx, 0xa7f055dae3340910
imul rdx, rcx
mov qword [rsp + 0x50], rdx
add r8, rdx
mov r10, r9
imul r10, rbx
sub r10, r8
movabs rcx, 0x67aa69baab336ec1
xor r10, rcx
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
movabs rcx, 0xb5fb1b0d37f415a0
imul rax, rcx
movabs rcx, 0x72742b8b1c1a6724
sub rax, rcx
xor r10, rax
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
mov rcx, r11
xor r10, rcx
mov rax, r10
and eax, 2
je 0x1401010ca
sub rax, 1
je 0x140100fd0
sub rax, 1
je 0x140100f08
cmp rax, 1
jne 0x140101145
mov rcx, r8
imul rcx, r9
movabs rax, 0x6d258b7700db46aa
add rax, r10
xor rcx, rax
ror rcx, 0x34
shr rcx, 0xc
not rcx
mov qword [rsp + 0x38], rcx
movabs rdx, 0x83572bed3384
add rdx, qword [0x14031d088]
movabs rax, 0x33fc4bfd34413442
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9730ddf7f
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
mov rax, rdi
imul rcx, rax
mov eax, 0xa2d60d95
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0xfc9024467f3923f5
sub rdi, qword [rsp + 0x38]
shr rdi, cl
mov rcx, qword [rsp + 0x50]
movabs rax, 0x3386f30da509a4a0
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, rbx
xor rdi, rax
jmp 0x140101145
mov r9, r10
movabs rcx, 0xaaaaaa1aa2cff0ab
xor r9, rcx
movabs rcx, 0x1206ed60c22ce7
imul r9, rcx
movabs rcx, 0xffff7e8a84dfc277
imul rdx, rcx
movabs rcx, 0x8eaca6e073457f89
add r9, rcx
add r9, rdx
mov rcx, r9
movabs rax, 0x277cd7be701f27cb
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xfffffffff79a267b
lea ecx, [r10 - 0x17]
and cl, sil
rol r8, cl
movabs rax, 0x2818100680000000
imul r8, rax
mov rcx, r8
ror rcx, 0x37
not rcx
movabs rax, 0x9b2de6b2ffce97b0
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdi, [rcx + rax*4]
mov cl, bl
and cl, sil
ror rdi, cl
movabs rax, 0xcc81317aab48d8ba
imul rdi, rax
jmp 0x140101145
movabs rax, 0x969e6874a4a1d33c
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs r11, 0x9855964554cc913e
shl r11, cl
movabs rax, 0x3793c1f6f9d756af
xor r11, rax
mov cl, r8b
and cl, sil
rol r11, cl
movabs rcx, 0x337ece8554b72746
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0xfffff17aab48d8ba
imul rax, rcx
xor r11, rax
movabs rax, 0xffffc7a7fe0b8686
or r11, rax
mov rdi, qword [0x14031d070]
movabs rax, 0x67aa69baab336ec1
imul rdi, rax
sub rdi, r8
mov rax, rbx
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a6af03868b
xor rdi, rax
mov rax, r10
imul rax, r8
imul rax, rdi
mov rdx, r9
sub rdx, rax
movabs rax, 0x78958946051ca91
add rdx, rax
xor rdx, rbx
movzx eax, r9b
imul ecx, eax, 0xee
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x48], rdx
jmp 0x140101145
mov r11, r10
imul r11, qword [0x14031d080]
mov rdx, qword [0x14031d068]
and r11, rdx
xor r11, rcx
ror r11, 0x2f
imul r11, r8
mov rax, rbx
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de72f2d76a
imul rax, rcx
mov qword [rsp + 0x48], rax
imul rbx, qword [0x14031d060], 0xfffffffff74acbf0
sub rbx, rdx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140101130
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rbx, cl
movabs rax, 0x337ece8554b72746
add rbx, rax
add rbx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x38]
movabs rax, 0xff055d7b82b9dda7
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x48]
imul r11, qword [r13 + rcx*8]
not r8
imul r8, r10
imul r8, rbx
imul r8, rdi
movabs rcx, 0xf5ed7e87850a977b
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400c96e0
mov qword [0x140321f68], rax
mov r9d, dword [rsp + 0x60]
mov qword [rsp + 0x38], r9
mov esi, dword [rsp + 0xe0]
mov qword [rsp + 0x1a0], r14
movabs rax, 0x17a5ad7e9aef1a5b
mov qword [rsp + 0x1a0], rax
or esi, 2
mov dword [rsp + 0xe0], esi
mov qword [rsp + 0x1a8], r14
movabs rax, 0x5547e62ad6c39e9f
mov qword [rsp + 0x1a8], rax
or esi, 4
mov dword [rsp + 0x6c], esi
mov dword [rsp + 0xe0], esi
movabs rcx, 0xf33a52ab25dd1b03
add rcx, qword [rsp + 0x1a8]
movabs rax, 0x4055366252feb7e1
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f38d72650
sub rcx, rax
movabs rax, 0xf8f8cda37f260a41
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x47d654c8569aeec3
add rcx, rax
mov r10, qword [0x14031d040]
add rcx, r10
movabs rax, 0x5a9179b4c8d04739
xor rcx, rax
movabs rax, 0x5f627dc9d3400d0c
sub rcx, rax
movabs rax, 0x63b3cd7cea638c7
xor rcx, rax
movabs rdx, 0x3483ce4f54f0451d
add rdx, rcx
add rdx, r10
not rdx
movabs rcx, 0x13cce94aac9772c0
mov rax, qword [0x14031d038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b553688d3f
mov rcx, qword [0x14031d030]
xor rcx, rax
movabs r8, 0xe0b56d624be0e595
add r8, rdx
add r8, rcx
movabs rax, 0x9f6763eac178fd40
xor r8, rax
mov qword [rsp + 0x1a8], r8
movabs rcx, 0xf33a52b02fde9583
add rcx, qword [rsp + 0x1a0]
movabs rax, 0xbad536625303c1e3
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80b80ad541
add rcx, rax
movabs rax, 0xf8f8cd9e60fc89d7
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x87d654c17f85ecfa
add rcx, rax
add rcx, r10
movabs rax, 0x5a9179af0966977f
xor rcx, rax
movabs rax, 0x5f627dc68728b7da
sub rcx, rax
movabs rax, 0x323b3cd5497d2b7b
xor rcx, rax
movabs rdx, 0xb483ce4a6e34d4f7
add rdx, rcx
add rdx, r10
not rdx
movabs rcx, 0x13cce94ac0bf78aa
mov rax, qword [0x14031d038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b53f408755
mov rcx, qword [0x14031d030]
xor rcx, rax
movabs rax, 0xe0b56d7667cecdff
add rdx, rax
add rdx, rcx
movabs rax, 0xd7cc1c38f8b4b672
xor rdx, rax
mov qword [rsp + 0x1a0], rdx
and r8, rdx
mov eax, r9d
cmp rax, r8
jne 0x140105f56
xor eax, eax
mov byte [rsp + 0x7b], al
lea rdx, [rsp + 0x3dc]
lea rcx, [rsp + 0x7b]
call fcn.1400e37d8
mov r12, rax
mov r13, r14
xor edx, edx
mov rax, r13
movabs rcx, 0x13cce94adba99340
div rcx
lea esi, [rdx + 0x38]
ror si, 8
movzx edi, si
shr di, 0xa
movzx eax, si
shl ax, 6
or di, ax
movzx ebx, di
ror bx, 8
movzx r8d, si
shr r8w, 0xd
movzx eax, si
shl ax, 3
or r8w, ax
movzx r10d, si
shr r10w, 0xb
movzx eax, si
shl ax, 5
or r10w, ax
movzx edx, si
shr dx, 0xc
movzx eax, si
shl ax, 4
or dx, ax
movzx r11d, si
not r11w
movzx ecx, si
ror cx, 1
movzx r9d, word [r12 + r13*2]
sub r9w, di
mov eax, 0x6afe
add r9w, ax
mov eax, 0x9204
sub ax, di
xor r9w, ax
sub r9w, word [0x14031d050]
sub r9w, word [0x14031d058]
add r9w, bx
add r9w, si
sub r9w, cx
mov eax, 0x6fc1
add r9w, ax
lea eax, [rsi + rdi]
mov ecx, 0x2d07
add ax, cx
xor r9w, ax
sub r9w, r8w
sub r9w, word [0x14031d048]
sub r9w, si
add r9w, r10w
add r9w, di
mov rcx, qword [0x14031d040]
add r9w, cx
movzx eax, si
ror ax, 3
sub r9w, ax
sub r9w, 0x50
movzx eax, dx
sub ax, r8w
add ax, di
add ax, si
xor r9w, ax
movzx eax, si
sub ax, dx
xor ax, si
sub r9w, ax
sub r9w, r10w
add r9w, si
mov eax, 0x4230
add r9w, ax
movzx eax, si
ror ax, 7
mov edx, 0x4050
sub r10w, dx
add ax, r10w
xor r9w, ax
mov edx, 0x9d7
add edx, esi
add dx, dx
sub dx, r9w
mov eax, 0x7100
add eax, esi
mov r8d, 0x2440
xor ax, r8w
sub dx, ax
movzx eax, r11w
xor ax, word [0x14031d038]
sub dx, ax
movzx eax, si
xor ax, word [0x14031d030]
add dx, ax
sub dx, di
sub dx, bx
sub dx, cx
movzx eax, si
ror ax, 8
sub dx, ax
movzx eax, r11w
movzx ecx, si
imul ecx, eax
xor dx, cx
mov word [r12 + r13*2], dx
add r13, r15
cmp r13, 0x29
jb 0x140101408
mov qword [rsp + 0x328], r12
mov qword [rsp + 0x330], 0x52
mov eax, dword [rsp + 0x6c]
or eax, 8
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x48], rax
movabs rsi, 0xa63e3f33b814b236
mov qword [rsp + 0x50], rsi
movabs rdi, 0x719c5d1849c2a23b
mov qword [rsp + 0x70], rdi
mov r8, qword [0x14031d070]
movabs rax, 0xe9d04f8f8773e720
imul r8, rax
movabs rax, 0xed8a9dce50daa5f0
xor r8, rax
mov qword [rsp + 0x30], r8
mov rcx, r8
imul rcx, rdi
mov qword [rsp + 0x60], rcx
movabs r12, 0xaaaaaaaaaaaaaaab
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r8
and r9, rdi
lea r13, [0x14031d060]
imul r9, qword [r13 + rcx*8]
movabs rax, 0xe29783ae219ad068
imul r9, rax
shr r9, 3
movabs rax, 0x21338b3cb0c92e41
xor r9, rax
mov r10, r8
movabs rax, 0xffffff57f161db73
imul r10, rax
sub r10, 0x18ab3024
xor r10, r9
xor r10, qword [0x14031d060]
mov rax, r9
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bf8d26452
imul rax, rcx
not rax
and r10, rax
ror r10, 0x18
shr r10, 8
movabs r11, 0x8e63a2e7b63d5dc5
lea rcx, [r8 + r11]
xor rcx, 0xffffffffc65c6f5f
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rbx, qword [r13 + rcx*8]
movabs rax, 0xf6afc619e1eac28
imul rbx, rax
add rbx, rdi
mov rax, r9
movabs rcx, 0x3a7413e3e1dcf9c8
imul rax, rcx
xor rbx, rax
shr rbx, 0x1f
not rbx
mov rdi, rbx
xor rdi, r8
lea rcx, [rbx + r11]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, bl
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x43
and ecx, 0x8000003f
jge 0x140101773
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
not rdi
imul rdi, r9
imul rdx, rdi, 0xffffffffe754cfdc
mov qword [rsp + 0x58], rdx
add r11, rdx
mov r8, rbx
imul r8, r10
sub r8, r11
xor r8, rsi
mov cl, r11b
xor cl, 0xfc
and cl, 0xf
rol r8, cl
mov rax, r11
sub rax, qword [0x14031d078]
xor r8, rax
movabs rax, 0x3e6ad6893ccd1fb4
imul rdi, rax
movabs rax, 0x2185dd8fee3ab999
sub rdi, rax
xor r8, rdi
xor r8, r9
mov rdi, qword [rsp + 0x30]
xor r8, rdi
mov rax, r8
and eax, 3
je 0x140101b34
sub rax, 1
je 0x1401019f9
sub rax, 1
mov sil, 0x3f
je 0x140101903
cmp rax, 1
jne 0x140101bde
mov rcx, r11
imul rcx, rbx
movabs rax, 0x6d97d01604aab87f
add rax, r8
xor rcx, rax
ror rcx, 0x20
shr rcx, 0xc
xor rcx, rdi
not rcx
mov qword [rsp + 0x50], rcx
movabs rdx, 0x83571a236a58
add rdx, qword [0x14031d088]
movabs rax, 0x8ee1279fe7051717
xor rdx, rax
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db942c386ab
sub rax, rbx
mov rbx, rdx
xor rbx, rax
mov rcx, rbx
movabs rdx, 0x719c5d1849c2a23b
imul rcx, rdx
mov eax, 0x93185441
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rax, 0x2e73ae57f959ab3c
sub rax, qword [rsp + 0x50]
shr rax, cl
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x58]
movabs rax, 0x8e6bc77017d98253
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, r10
xor qword [rsp + 0x70], rax
jmp 0x140101bde
mov rcx, r8
movabs rax, 0xaaaaaa1a9301a97f
xor rcx, rax
movabs rax, 0x1206ed510c7533
imul rcx, rax
mov rax, r9
movabs r11, 0xfff17ca844639f03
xor rax, r11
sub rcx, rax
movabs rax, 0xffff7e8ab5119ba3
imul rdx, rax
movabs rbx, 0xb5c582fc68ff9712
add rbx, rcx
add rbx, rdx
mov rcx, rbx
movabs rax, 0x277cd7be41d17e1f
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r11, rbx
not r11
imul r11, qword [r13 + rcx*8]
xor r11, 0xffffffffc6547faf
lea ecx, [r8 - 3]
and cl, sil
rol r11, cl
mov rax, qword [rsp + 0x60]
movabs rcx, 0x878698020000000
xor rax, rcx
movabs rcx, 0x7c7a7dc6af53751e
and rax, rcx
imul r11, rax
mov rcx, r11
ror rcx, 0x14
not rcx
movabs rax, 0x9b2de6b238f7f0e0
imul rcx, rax
mov rax, rbx
sub rax, r11
lea rax, [rcx + rax*4]
mov cl, r10b
and cl, sil
ror rax, cl
movabs rdx, 0x719c5d1849c2a23b
imul rax, rdx
mov qword [rsp + 0x70], rax
jmp 0x140101bde
movabs rax, 0x3efc204132b2a043
imul r8, rax
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
mov rax, rdi
movabs rdx, 0x8e63a2e7b63d5dc4
imul rax, rdx
xor rax, rsi
not rax
shl rax, cl
xor r9, rax
mov cl, r11b
mov sil, 0x3f
and cl, sil
rol r9, cl
movabs rcx, 0x8e63a2e7b63d5dc5
add rcx, r8
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0x1d1849c2a23b
imul rax, rcx
xor r9, rax
movabs rax, 0xffffc7a7cfc5df52
or r9, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xa63e3f33b814b236
imul rcx, rax
sub rcx, r11
mov rax, r10
sub rax, r9
xor rcx, rax
movabs rax, 0xc7a7c6a69ecddf5f
xor rcx, rax
mov qword [rsp + 0x70], rcx
movabs rax, 0xcccccccccccccccd
mul rdi
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rdi
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, qword [rsp + 0x70]
div rcx
mov rcx, rdx
mov rdx, r8
imul rdx, r11
imul rdx, qword [rsp + 0x70]
shr rdx, cl
mov rax, rbx
sub rax, rdx
sub rax, rdi
mov rdi, rax
movabs rax, 0x7895894519f9345
add rdi, rax
xor rdi, r10
movzx eax, bl
imul ecx, eax, 0xfa
and cl, sil
rol rdi, cl
not rdi
jmp 0x140101bde
mov rax, r12
mul r9
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r9
sub rcx, rax
mov rax, r8
imul rax, qword [0x14031d080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r9
mov sil, 0x3f
and r9b, sil
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r11
not r10
imul r10, rbx
movabs rax, 0x7cd8a7de433c8ebe
imul r10, rax
mov rax, r9
imul rax, rdi
mov rdi, r10
xor rdi, rax
imul r10, qword [0x14031d060], 0xffffffffe754cfdc
mov rdx, qword [0x14031d068]
sub r10, rdx
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140101bc9
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror r10, cl
movabs rax, 0x8e63a2e7b63d5dc5
add r10, rax
add r10, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
movabs rax, 0xff055d7bb3778473
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r9, rdi
imul r9, qword [r13 + rcx*8]
not r11
imul r11, r8
imul r11, r10
imul r11, qword [rsp + 0x70]
movabs rcx, 0xf5ed7e87b4c4ceaf
xor rcx, rbx
not rcx
xor rcx, r11
sub rcx, r9
call fcn.1400c90d4
mov qword [0x140321f60], rax
movabs rax, 0xfd54ec6a18af1f15
mov qword [rsp + 0x50], rax
movabs r10, 0xb1a41ced6fc82213
mov rdi, r10
mov r8, qword [0x14031d078]
movabs rax, 0x27a88188f0000000
imul r8, rax
movabs rax, 0xcc47f11710000000
xor r8, rax
mov qword [rsp + 0x70], r8
mov rcx, r8
imul rcx, r10
mov qword [rsp + 0x30], rcx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r8
and r9, r10
imul r9, qword [r13 + rcx*8]
movabs rax, 0xa42fa30e3271091a
imul r9, rax
shr r9, 3
movabs rax, 0x5bc46bd93dec8e26
xor r9, rax
mov rbx, r8
movabs rax, 0xffffff57d013605d
imul rbx, rax
sub rbx, 0x387124ce
xor rbx, r9
xor rbx, qword [0x14031d060]
mov rax, r9
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bd9a0df7c
imul rax, rcx
not rax
and rbx, rax
ror rbx, 0x1e
shr rbx, 8
mov qword [rsp + 0x60], rbx
movabs rcx, 0x4e5be3129037dded
add rcx, r8
xor rcx, 0xffffffffe72ed471
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, qword [r13 + rcx*8]
movabs rax, 0x872fb9e808874b98
imul r10, rax
movabs rcx, 0x4e5be3129037dded
sub r10, rcx
mov rax, r9
movabs rdx, 0xe113b389ea20623c
imul rax, rdx
xor r10, rax
shr r10, 0x1f
not r10
mov qword [rsp + 0x58], r10
mov r11, r10
xor r11, r8
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x6d
mov eax, 0x8000003f
and ecx, eax
jge 0x140101dc6
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror r11, cl
not r11
imul r11, r9
imul rdx, r11, 0xffffffffc78edb32
mov qword [rsp + 0x40], rdx
movabs r10, 0x4e5be3129037dded
add r10, rdx
mov r8, qword [rsp + 0x58]
imul r8, rbx
sub r8, r10
movabs rcx, 0xfd54ec6a18af1f15
xor r8, rcx
movzx ebx, r10b
mov ecx, ebx
xor ecx, 2
and ecx, 0xf
and ecx, eax
jge 0x140101e1b
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r8, cl
mov rax, r10
sub rax, qword [0x14031d078]
xor r8, rax
movabs rax, 0x449d366cb5c6e8b6
imul r11, rax
movabs rax, 0x20d596d043c6f297
add r11, rax
xor r8, r11
xor r8, r9
mov r11, qword [rsp + 0x70]
xor r8, r11
mov rax, r8
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x1401021c9
sub rax, 1
je 0x14010207d
sub rax, 1
je 0x140101f7d
mov rbx, r11
cmp rax, 1
jne 0x140102277
mov rcx, r10
imul rcx, qword [rsp + 0x58]
movabs rax, 0x845c6e632a94519
add rax, r8
xor rcx, rax
ror rcx, 0x26
shr rcx, 0xc
xor rcx, rbx
not rcx
mov qword [rsp + 0x50], rcx
movabs r11, 0x83573b51d17a
add r11, qword [0x14031d088]
movabs rax, 0x4ed9666ae07d2c11
xor r11, rax
movzx eax, cl
movzx ecx, r8b
imul ecx, eax
and cl, sil
ror r11, cl
shl r11, 0xf
movabs rax, 0xf7ca7db963b13d85
sub rax, qword [rsp + 0x58]
xor r11, rax
mov qword [rsp + 0x58], r11
mov rcx, r11
mov rdx, rdi
imul rcx, rdx
mov eax, 0xb26aef6f
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0x2369f6d0566ff1fc
sub rdi, qword [rsp + 0x50]
shr rdi, cl
mov rcx, qword [rsp + 0x40]
movabs rax, 0x4e64079ad1267d91
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
mov r11, qword [rsp + 0x60]
sub rax, r11
xor rdi, rax
jmp 0x14010227c
mov rcx, r8
movabs rax, 0xaaaaaa1ab2731251
xor rcx, rax
movabs rax, 0x1206ed707ece1d
imul rcx, rax
mov rax, r9
movabs r10, 0xfff17ca86511242d
xor rax, r10
sub rcx, rax
movabs rax, 0xffff7e8a9463208d
imul rdx, rax
movabs r11, 0x8ff73b74d58cfc16
add r11, rcx
add r11, rdx
mov qword [rsp + 0x58], r11
mov rcx, r11
movabs rax, 0x277cd7be60a3c531
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r11
not r10
imul r10, qword [r13 + rcx*8]
xor r10, 0xffffffffe726c481
lea ecx, [r8 + 0x13]
and cl, sil
rol r10, cl
mov rax, qword [rsp + 0x30]
movabs rcx, 0x3c6a1c0400000000
xor rax, rcx
movabs rcx, 0x7c7a7dc68e21ce30
and rax, rcx
imul r10, rax
mov rcx, r10
ror rcx, 0x19
not rcx
movabs rax, 0x9b2de6b2bd3d1c58
imul rcx, rax
mov rax, r11
sub rax, r10
lea rdi, [rcx + rax*4]
mov r11, qword [rsp + 0x60]
mov cl, r11b
and cl, sil
ror rdi, cl
movabs rdx, 0xb1a41ced6fc82213
imul rdi, rdx
mov rbx, qword [rsp + 0x70]
jmp 0x14010227c
movabs rax, 0x8aa0350548e6ea3f
imul r8, rax
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
mov rax, r11
movabs rdx, 0x4e5be3129037ddec
imul rax, rdx
movabs r11, 0xfd54ec6a18af1f15
xor rax, r11
not rax
shl rax, cl
xor r9, rax
and ebx, 0x8000003f
jge 0x1401020df
sub ebx, r15d
or ebx, 0xffffffc0
add ebx, r15d
mov cl, bl
rol r9, cl
movabs rcx, 0x4e5be3129037dded
add rcx, r8
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0x1ced6fc82213
imul rax, rcx
xor r9, rax
movabs rax, 0xffffc7a7eeb7647c
or r9, rax
mov rdi, qword [0x14031d070]
imul rdi, r11
sub rdi, r10
mov r11, qword [rsp + 0x60]
mov rax, r11
sub rax, r9
xor rdi, rax
movabs rax, 0xc7a7c6a6bfbf6471
xor rdi, rax
movabs rax, 0xcccccccccccccccd
mov rbx, qword [rsp + 0x70]
mul rbx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rbx
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, rdi
div rcx
mov rcx, rdx
mov rdx, r8
imul rdx, r10
imul rdx, rdi
shr rdx, cl
mov rcx, qword [rsp + 0x58]
mov rax, rcx
sub rax, rdx
sub rax, rbx
mov rbx, rax
movabs rax, 0x789589470ed286b
add rbx, rax
xor rbx, r11
mov al, cl
shl al, 2
add cl, al
shl cl, 2
and cl, sil
rol rbx, cl
not rbx
jmp 0x14010227c
mov rax, r12
mul r9
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r9
sub rcx, rax
mov rax, r8
imul rax, qword [0x14031d080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r9
and r9b, sil
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r10
mov rbx, qword [rsp + 0x60]
not rbx
imul rbx, qword [rsp + 0x58]
movabs rax, 0x7cd8a7de624e3590
imul rbx, rax
mov rax, r9
imul rax, qword [rsp + 0x70]
xor rbx, rax
imul r11, qword [0x14031d060], 0xffffffffc78edb32
mov rdx, qword [0x14031d068]
sub r11, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140102260
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror r11, cl
movabs rax, 0x4e5be3129037dded
add r11, rax
add r11, qword [rsp + 0x40]
jmp 0x14010227c
mov r11, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
movabs rax, 0xff055d7b92053f5d
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r9, rbx
imul r9, qword [r13 + rcx*8]
not r10
imul r10, r8
imul r10, r11
imul r10, rdi
movabs rcx, 0xf5ed7e8795b67581
xor rcx, qword [rsp + 0x58]
not rcx
xor rcx, r10
sub rcx, r9
call fcn.1400c9704
mov qword [0x140321f90], rax
mov qword [rsp + 0x1b8], r14
movabs rax, 0x57eb3c8e65ec7a4c
mov qword [rsp + 0x1b8], rax
mov qword [rsp + 0x1c0], r14
movabs rax, 0xdb22e1cbfd686f1
mov qword [rsp + 0x1c0], rax
movabs rcx, 0xf33a52b09b005603
add rcx, qword [rsp + 0x1c0]
movabs rax, 0x7b55366253042d04
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f49369001
sub rcx, rax
movabs rax, 0xf8f8cd9df42e4255
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654c0ee199c2c
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179ae8f3417ed
xor rcx, rax
movabs rax, 0x5f627dc63893c340
sub rcx, rax
movabs rax, 0x2e3b3cd513e8f22d
xor rcx, rax
movabs rdx, 0x3483ce4a060100ba
add rdx, rcx
add rdx, rdi
not rdx
mov r10, qword [0x14031d038]
mov rax, r10
movabs rcx, 0x13cce94ac26bffac
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14031d030]
mov rcx, r11
movabs rax, 0xec3316b53d940053
xor rcx, rax
movabs rax, 0xe0b56d7816025701
add rdx, rax
add rdx, rcx
movabs rax, 0x58945234d473e4c4
xor rdx, rax
mov qword [rsp + 0x1c0], rdx
movabs rcx, 0xf33a52a8d93d1c83
add rcx, qword [rsp + 0x1b8]
movabs rax, 0x41d5366252fc6b41
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80ce0eb9ac
add rcx, rax
movabs rax, 0xf8f8cda5d4f888bb
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654cb759e1cb9
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179b76836c583
xor rcx, rax
movabs rax, 0x5f627de06f178c76
sub rcx, rax
movabs rax, 0xfa3b3cd8f5089d07
xor rcx, rax
movabs rax, 0xb483ce519177e3a8
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94aa364f2c6
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b55c9b0d39
xor r11, rax
movabs rax, 0xe0b56d58b0306b9b
add rcx, rax
add rcx, r11
movabs rax, 0xfc109b46a7b01c16
xor rcx, rax
mov qword [rsp + 0x1b8], rcx
and rdx, rcx
cmp qword [rsp + 0x48], rdx
sete al
mov qword [rsp + 0x1c0], r14
mov qword [rsp + 0x1b8], r14
test al, al
je 0x1401025a6
mov dword [rsp + 0xa0], r14d
mov dword [rsp + 0xa0], 0x343df58
mov eax, dword [rsp + 0xa0]
add eax, 0xe47ec1b7
xor eax, 0x570c7683
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x62130b43
xor eax, 0x8989dcf3
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xae5680f9
add eax, ecx
xor eax, 0x1b5fe515
sub eax, 0x251626bf
xor eax, 0xcee77060
mov edx, dword [0x14031d030]
xor edx, 0x1c6e06a5
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xe391f95a
sub edx, eax
sub edx, ecx
add edx, 0x26dcfd07
xor edx, 0x1599d302
mov dword [rsp + 0xa0], edx
mov dword [rsp + 0xa0], r14d
mov dword [rsp + 0x38], edx
mov esi, dword [rsp + 0x6c]
jmp 0x140105d2a
movabs rdi, 0xfa49b6d2ada4d92d
mov qword [rsp + 0x40], rdi
movabs rcx, 0x7283a9a474e34136
mov r10, rcx
mov qword [rsp + 0x50], r14
movabs rbx, 0xc10afea0327b667a
mov r9, qword [0x14031d070]
movabs rax, 0x6fe4b42761ec82b8
imul r9, rax
not r9
mov rax, qword [0x14031d060]
movabs rdx, 0x3ef5015fd5a8f304
xor rax, rdx
and r9, rax
ror r9, 0xb
shr r9, 8
mov qword [rsp + 0x70], r9
mov r11, qword [0x14031d068]
movabs rax, 0x50d0881095fee688
imul r11, rax
add r11, rcx
movabs rax, 0x3fd05bb00000000
xor r11, rax
shr r11, 0x1f
not r11
movabs r8, 0x8d7c565b8b1cbeca
lea rcx, [r11 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x9d
and ecx, 0x8000003f
jge 0x140102682
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r11
ror rax, cl
not rax
mov rdx, rax
movabs rcx, 0xa2b81eee37ef720c
imul rdx, rcx
mov qword [rsp + 0x30], rdx
add r8, rdx
imul r9, r11
sub r9, r8
xor r9, rdi
movzx edi, r8b
mov ecx, edi
xor ecx, 2
and ecx, 0xf
jge 0x1401026c5
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r9, cl
movabs rcx, 0xd181723291b1a88
imul rax, rcx
movabs rcx, 0x261869fa599f889c
add rax, rcx
xor r9, rax
mov rax, r8
sub rax, qword [0x14031d078]
xor r9, rax
mov rax, rbx
xor r9, rax
mov rax, r9
not rax
and eax, 2
je 0x1401029ee
sub rax, 1
je 0x1401028e5
sub rax, 1
je 0x140102817
cmp rax, 1
jne 0x140102a7c
mov rdi, r8
imul rdi, r11
movabs rax, 0x702bddf78cadb082
add rax, r9
xor rdi, rax
ror rdi, 0x32
shr rdi, 0xc
not rdi
mov qword [rsp + 0x40], rdi
mov rdx, qword [0x14031d088]
movabs rcx, 0xffff7ca8db5de28a
add rdx, rcx
movabs rax, 0x72012cdc1b5a7cc4
xor rdx, rax
movzx eax, dil
movzx ecx, r9b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0x835824683bd0e75
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
mov rdx, r10
imul rcx, rdx
mov eax, 0xad992361
sub rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs r10, 0x19c195614e5ca1d3
sub r10, rdi
shr r10, cl
mov rcx, qword [rsp + 0x30]
movabs rax, 0x8d7431d32bff6b1e
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [r13 + rcx*8]
imul rax, r9
mov rdi, qword [rsp + 0x70]
sub rax, rdi
xor r10, rax
jmp 0x140102a81
mov r11, r9
movabs rcx, 0x555555e5527f21a1
xor r11, rcx
movabs rcx, 0xffedf9129072fded
imul r11, rcx
movabs rcx, 0x8175746f137d
imul rdx, rcx
movabs rcx, 0x8c1c4dc00dd0c878
add r11, rcx
add r11, rdx
mov rcx, r11
movabs rax, 0xd883284180aff6c1
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0x72af771
lea ecx, [r9 - 0x1d]
and cl, sil
rol r8, cl
movabs rax, 0x8201001840000000
imul r8, rax
mov r10, r8
ror r10, 0x11
not r10
movabs rax, 0x193486534f4374e6
imul r10, rax
sub r10, r8
add r10, r11
shl r10, 2
mov rdi, qword [rsp + 0x70]
mov cl, dil
and cl, sil
ror r10, cl
movabs rdx, 0x7283a9a474e34136
imul r10, rdx
jmp 0x140102a81
movabs rax, 0xfdb421d2da075a04
imul r9, rax
movabs rax, 0xd79435e50d79435f
mul r9
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r9b
sub cl, dl
movabs rbx, 0x5b6492d525b26d2
shl rbx, cl
movabs rax, 0xc10afea0327b667a
xor rbx, rax
and edi, 0x8000003f
jge 0x14010293a
sub edi, r15d
or edi, 0xffffffc0
add edi, r15d
mov cl, dil
rol rbx, cl
movabs rcx, 0x8d7c565b8b1cbeca
add rcx, r9
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
mov rdx, r10
imul rax, rdx
xor rbx, rax
movabs rax, 0x38580ebb578c
or rbx, rax
mov r10, qword [0x14031d070]
movabs rax, 0xfa49b6d2ada4d92d
imul r10, rax
sub r10, r8
mov rdi, qword [rsp + 0x70]
mov rax, rdi
sub rax, rbx
xor r10, rax
movabs rax, 0x385839595fb35781
xor r10, rax
mov rax, r10
imul rax, r9
imul rax, r8
mov rdx, r11
sub rdx, rax
movabs rax, 0x78958946f1ee465
sub rdx, rax
xor rdx, rdi
movzx eax, r11b
imul ecx, eax, 0xe4
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x50], rdx
jmp 0x140102a81
mov rbx, r9
imul rbx, qword [0x14031d080]
and rbx, qword [0x14031d060]
movabs rax, 0xc10afea0327b667a
xor rbx, rax
ror rbx, 0x3a
imul rbx, r8
mov rax, qword [rsp + 0x70]
not rax
imul rax, r11
movabs rdx, 0x8327582182420660
imul rax, rdx
mov qword [rsp + 0x50], rax
imul rdx, qword [0x14031d060], 0xffffffffe7d3957e
mov rdi, qword [0x14031d068]
sub rdx, rdi
not al
movzx ecx, al
movzx eax, dil
xor ecx, eax
and ecx, 0x8000003f
jge 0x140102a65
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdx, cl
movabs rdi, 0x8d7c565b8b1cbeca
add rdi, rdx
add rdi, qword [rsp + 0x30]
jmp 0x140102a81
mov rdi, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x40]
movabs rax, 0xfaa28472090cad
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor rbx, qword [rsp + 0x50]
imul rbx, qword [r13 + rcx*8]
not r8
imul r8, rdi
imul r8, r10
imul r8, r9
movabs rcx, 0xa12817875ba4671
xor rcx, r11
not rcx
xor rcx, r8
sub rcx, rbx
call fcn.1400c8f6c
mov qword [0x140321f48], rax
mov ebx, r14d
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x60], 0xc4da3962
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
movups xmm0, xmmword [rcx + 0x58]
movd eax, xmm0
sub ax, 8
test ebx, ebx
je 0x140102b63
psrldq xmm0, 8
movq r9, xmm0
movzx eax, ax
shr rax, 1
lea r11, [r9 + rax*2]
mov r10d, 0x19e83b42
jmp 0x140102b55
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov eax, r10d
xor eax, edx
mov r10d, r8d
imul r10d, eax
add r9, 2
cmp r9, r11
jne 0x140102b2f
cmp r10d, ebx
jne 0x140102bfe
mov r11, qword [rcx + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov rax, qword [rax + r11 + 0x88]
mov edi, eax
add rdi, r11
shr rax, 0x20
cmp rdi, r11
je 0x140102bfe
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x140102bfe
mov edx, dword [rdi + 0x20]
dec r8d
mov dword [rsp + 0x58], r8d
mov r9d, r8d
mov qword [rsp + 0x40], r9
lea rdx, [rdx + r8*4]
mov r10d, dword [rdx + r11]
add r10, r11
mov ebx, 0x19e83b42
mov dl, byte [r10]
add r10, r15
test dl, dl
je 0x140102bec
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, 0x4764996c
mov edx, ebx
xor edx, r8d
mov ebx, r9d
imul ebx, edx
mov dl, byte [r10]
add r10, r15
test dl, dl
jne 0x140102bb7
mov r8d, dword [rsp + 0x58]
mov r9, qword [rsp + 0x40]
cmp ebx, dword [rsp + 0x60]
je 0x140102c06
test r8d, r8d
mov edx, dword [rdi + 0x20]
jne 0x140102b8d
mov ebx, dword [rsp + 0x30]
mov rcx, qword [rcx]
jmp 0x140102b03
mov edx, dword [rdi + 0x1c]
add rdx, r11
mov ecx, dword [rdi + 0x24]
add rcx, r11
movzx ecx, word [rcx + r9*2]
mov r9d, dword [rdx + rcx*4]
add r9, r11
cmp r9, rdi
jbe 0x140102cbb
lea rcx, [rax + rdi]
cmp r9, rcx
jae 0x140102cbb
mov eax, 0x19e83b42
mov ebx, eax
mov dword [rsp + 0x30], eax
mov r10d, eax
mov dword [rsp + 0x60], eax
mov al, byte [r9]
cmp al, 0x2e
je 0x140102c72
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, ebx
mov ebx, eax
imul ebx, ecx
add r9, r15
mov al, byte [r9]
cmp al, 0x2e
jne 0x140102c4d
mov dword [rsp + 0x30], ebx
add r9, r15
mov al, byte [r9]
test al, al
je 0x140102ca5
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, r10d
mov r10d, eax
imul r10d, ecx
add r9, r15
mov al, byte [r9]
test al, al
jne 0x140102c7c
mov dword [rsp + 0x60], r10d
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
jmp 0x140102bfe
mov dword [rsp + 0xa4], r14d
mov dword [rsp + 0xa4], 0xc82f7214
mov eax, dword [rsp + 0xa4]
add eax, 0xec8a79af
xor eax, 0xf047e8f
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x4a2b2e6b
xor eax, 0xa15df61b
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x7f6a98c0
add eax, ecx
xor eax, 0x3232873e
sub eax, 0x28a6b69
xor eax, 0xb215406
lea edx, [rcx - 0x494e5bf9]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xc3b2283a
sub edx, eax
mov eax, dword [0x14031d030]
xor eax, 0x3c4dd7c5
add eax, 0x5d70ce3f
add edx, eax
xor edx, 0xe953aaa2
mov dword [rsp + 0xa4], edx
mov dword [rsp + 0xa8], r14d
mov dword [rsp + 0xa8], 0xcf61f3b0
mov eax, dword [rsp + 0xa8]
add eax, 0xd3383e37
xor eax, 0xd38c653c
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x1e20c847
xor eax, 0x9b157a81
sub eax, dword [0x14031d048]
mov r8, qword [0x14031d040]
add eax, 0x5c9b879
add eax, r8d
xor eax, 0x2f145313
sub eax, 0x30c2e8b1
xor eax, 0xf38b3c54
mov ecx, dword [0x14031d030]
xor ecx, 0x1cb320b3
sub ecx, eax
mov eax, dword [0x14031d038]
xor eax, 0xe34cdf4c
sub ecx, eax
sub ecx, r8d
add ecx, 0x50b1f712
xor ecx, 0xfccda224
mov dword [rsp + 0xa8], ecx
call r9
mov qword [rsp + 0x40], rax
mov dword [rsp + 0xa8], r14d
mov dword [rsp + 0xa4], r14d
mov qword [rsp + 0x1c8], r14
movabs rax, 0x73da29cd2e256bda
mov qword [rsp + 0x1c8], rax
mov eax, dword [rsp + 0xe0]
bts eax, 0xc
mov dword [rsp + 0xe0], eax
mov qword [rsp + 0x1d0], r14
movabs rcx, 0xebc6c203a6032834
mov qword [rsp + 0x1d0], rcx
bts eax, 0xd
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
movabs rcx, 0xf33a52b8eb88f803
add rcx, qword [rsp + 0x1d0]
movabs rax, 0x1d553662530c7d8d
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f622829e7
sub rcx, rax
movabs rax, 0xf8f8cd9582637dcd
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654b5a4c82445
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179a513583f25
xor rcx, rax
movabs rax, 0x5f627dc4232f7648
sub rcx, rax
movabs rax, 0x1e3b3cd0eb621ce8
xor rcx, rax
movabs rdx, 0x3483ce41efac1b28
add rdx, rcx
add rdx, rdi
not rdx
mov r10, qword [0x14031d038]
mov rax, r10
movabs rcx, 0x13cce94ae3ae2234
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14031d030]
mov rcx, r11
movabs rax, 0xec3316b51c51ddcb
xor rcx, rax
movabs rax, 0xe0b56d993966c989
add rdx, rax
add rdx, rcx
movabs rax, 0x4be6618a6110033c
xor rdx, rax
mov qword [rsp + 0x1d0], rdx
movabs rcx, 0xf33a52b0ecf25a83
add rcx, qword [rsp + 0x1c8]
movabs rax, 0x7fd5366253047ef6
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80b5d399f2
add rcx, rax
movabs rax, 0xf8f8cd9da0f475c3
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654c07edd9710
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179ae31bc0acb
xor rcx, rax
movabs rax, 0x5f627dc602df1a2e
sub rcx, rax
movabs rax, 0xa3b3cd4eaed605d
xor rcx, rax
movabs rax, 0xb483ce49b64c9a5a
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ac3b3c7be
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b53c4c3841
xor r11, rax
movabs rax, 0xe0b56d795f123113
add rcx, rax
add rcx, r11
movabs rax, 0x66406050d8bf473e
xor rcx, rax
mov qword [rsp + 0x1c8], rcx
and rdx, rcx
cmp qword [rsp + 0x40], rdx
je 0x140103255
mov qword [rsp + 0x1d8], r14
movabs rax, 0xcdd65507d9a241fc
mov qword [rsp + 0x1d8], rax
mov eax, dword [rsp + 0x6c]
bts eax, 0xe
mov dword [rsp + 0xe0], eax
mov qword [rsp + 0x1e0], r14
movabs rcx, 0x84d1e8e168fefcd5
mov qword [rsp + 0x1e0], rcx
bts eax, 0xf
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
movabs rcx, 0xf33a52b0eba25b83
add rcx, qword [rsp + 0x1d8]
movabs rax, 0x80d5366253047da6
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80b5d789ef
add rcx, rax
movabs rax, 0xf8f8cd9da249b4bf
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x87d654c080a5adb5
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179ae333b49a7
xor rcx, rax
movabs rax, 0x5f627dc60325d9b2
sub rcx, rax
movabs rax, 0x23b3cd4eb956a5d
xor rcx, rax
movabs rdx, 0xb483ce49b7936961
add rdx, rcx
add rdx, rdi
not rdx
mov r10, qword [0x14031d038]
mov rax, r10
movabs rcx, 0x13cce94ac3ae87c2
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14031d030]
mov rcx, r11
movabs rax, 0xec3316b53c51783d
xor rcx, rax
movabs rax, 0xe0b56d7959cef497
add rdx, rax
add rdx, rcx
movabs rax, 0x596a1cbedc9b493a
xor rdx, rax
mov qword [rsp + 0x1d8], rdx
movabs rcx, 0xcc5ad48edb21d3a
add rcx, qword [rsp + 0x1e0]
movabs rax, 0x428b4fedad9c7fb6
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x4ed45970edd15aaa
add rcx, rax
movabs rax, 0x707459b4031b402
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xd829ab4729d94a41
add rcx, rax
add rcx, rdi
movabs rax, 0xa56e8658d0e150b4
xor rcx, rax
movabs rax, 0x2b02fde7e2ba486c
sub rcx, rax
movabs rax, 0xe7c4c32e15cd7904
xor rcx, rax
movabs rax, 0x95ab432bdd9215f4
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0xec3316b523b6c6c8
xor r10, rax
sub rcx, r10
movabs rax, 0x13cce94adc493937
xor r11, rax
movabs rax, 0x1f4a914782163a76
add rcx, rax
add rcx, r11
movabs rax, 0x3081f5a0ed8f3cf8
xor rcx, rax
mov qword [rsp + 0x1e0], rcx
and rcx, rdx
cmp qword [rsp + 0x40], rcx
mov cl, r14b
jne 0x140103258
mov cl, r15b
mov eax, dword [rsp + 0x6c]
bt eax, 0xf
jae 0x140103279
btr eax, 0xf
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
mov qword [rsp + 0x1e0], r14
bt eax, 0xe
jae 0x140103296
btr eax, 0xe
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
mov qword [rsp + 0x1d8], r14
bt eax, 0xd
jae 0x1401032b3
btr eax, 0xd
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
mov qword [rsp + 0x1d0], r14
bt eax, 0xc
jae 0x1401032d0
btr eax, 0xc
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0xe0], eax
mov qword [rsp + 0x1c8], r14
test cl, cl
je 0x1401033ee
mov qword [rsp + 0x1e8], r14
movabs rax, 0xa93e99d1278d2be4
mov qword [rsp + 0x1e8], rax
movabs rcx, 0xf33a52b0ee79c083
add rcx, qword [rsp + 0x1e8]
movabs rax, 0xe5d536625304807e
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80b5cf03c0
add rcx, rax
movabs rax, 0xf8f8cd9d9f66f22b
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654c07cca4c1b
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0x5a9179ae2ffd9a73
xor rcx, rax
movabs rax, 0x5f627dc601ff6306
sub rcx, rax
movabs rax, 0xda3b3cd4ea29a122
xor rcx, rax
movabs rax, 0xb483ce49b4cfe824
add rax, rcx
add rdx, rax
not rdx
mov rax, qword [0x14031d038]
movabs rcx, 0x13cce94ac3b9e556
xor rax, rcx
sub rdx, rax
mov rcx, qword [0x14031d030]
movabs rax, 0xec3316b53c461aa9
xor rcx, rax
movabs rax, 0xe0b56d796535a62b
add rdx, rax
add rdx, rcx
movabs rax, 0x868f3a9ef48721c6
xor rdx, rax
mov qword [rsp + 0x1e8], rdx
mov qword [rsp + 0x1e8], r14
jmp 0x140102599
mov dword [rsp + 0xac], r14d
mov dword [rsp + 0xac], 0x68d29b4f
mov eax, dword [rsp + 0xac]
add eax, 0xecd9da37
xor eax, 0x6f8c7ede
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x1dd3e373
xor eax, 0x810d5811
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xe2fed937
add eax, ecx
xor eax, 0x11d7fd23
sub eax, 0x22f4d841
xor eax, 0x6b9a147
mov edx, dword [0x14031d030]
xor edx, 0x1c4c9a43
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xe3b365bc
sub edx, eax
sub edx, ecx
sub edx, 0x2fb2e142
xor edx, 0x46f6b834
mov dword [rsp + 0x30], edx
mov dword [rsp + 0xac], edx
mov dword [rsp + 0xac], r14d
mov dword [rsp + 0x670], 0x238
xor edx, edx
mov r8d, 0x234
lea rcx, [rsp + 0x674]
call fcn.14029dcc0
movabs rax, 0xe48c9d1afcbe9b70
mov qword [rsp + 0x50], rax
movabs rdi, 0xd30e935b561f9af1
mov qword [rsp + 0x70], r14
movabs r10, 0xa000637dbe5e812
mov rbx, qword [0x14031d070]
movabs rax, 0xa8defc1188bebf34
imul rbx, rax
not rbx
mov rax, qword [0x14031d060]
movabs rcx, 0xf5fff9c83c707516
xor rax, rcx
and rbx, rax
ror rbx, 0xa
shr rbx, 8
mov qword [rsp + 0x60], rbx
mov r11, qword [0x14031d080]
movabs rax, 0xca21f2b31ea84f8
imul r11, rax
movabs r8, 0x2cf16ca4a9e0650f
sub r11, r8
movabs rax, 0x6f3d73ba00000000
xor r11, rax
shr r11, 0x1f
not r11
lea rcx, [r11 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x5b
and ecx, 0x8000003f
jge 0x14010357d
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r11
ror rax, cl
not rax
mov rdx, rax
movabs rcx, 0x55d9e3e1bf64aa48
imul rdx, rcx
mov qword [rsp + 0x58], rdx
add r8, rdx
mov r9, r11
imul r9, rbx
sub r9, r8
movabs rcx, 0xe48c9d1afcbe9b70
xor r9, rcx
movzx ebx, r8b
mov ecx, ebx
xor ecx, 4
and ecx, 0xf
jge 0x1401035cd
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r9, cl
movabs rcx, 0xd25732a48aeb9dc8
imul rax, rcx
movabs rcx, 0x2441d2a92fdb291f
add rax, rcx
xor r9, rax
mov rax, r8
sub rax, qword [0x14031d078]
xor r9, rax
mov rcx, r10
xor r9, rcx
mov rax, r9
and rax, r15
je 0x1401039a2
sub rax, 1
je 0x140103899
sub rax, 1
je 0x1401037cf
cmp rax, 1
jne 0x140103713
mov rbx, r8
imul rbx, r11
movabs rax, 0xb2d99a330b783145
add rax, r9
xor rbx, rax
ror rbx, 0x30
shr rbx, 0xc
not rbx
mov qword [rsp + 0x50], rbx
mov rdx, qword [0x14031d088]
movabs rcx, 0x83575b646350
add rdx, rcx
movabs rax, 0x2c73e9dcb99f26c5
xor rdx, rax
movzx eax, bl
movzx ecx, r9b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db903848fb3
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
mov rax, rdi
imul rcx, rax
mov eax, 0xd25f5d59
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0x2210c7ce434e13be
sub rdi, rbx
shr rdi, cl
mov rcx, qword [rsp + 0x58]
movabs rax, 0x2cf9912ccabb92a5
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [r13 + rcx*8]
imul rax, r9
sub rax, qword [rsp + 0x60]
xor rdi, rax
mov rbx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x50]
movabs rax, 0xff055d7bf2308d6b
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r10, rbx
imul r10, qword [r13 + rcx*8]
not r8
imul r8, r9
imul r8, qword [rsp + 0x60]
imul r8, rdi
movabs rcx, 0xf5ed7e87f583c7b7
xor rcx, r11
not rcx
xor rcx, r8
sub rcx, r10
call fcn.1400c8f90
mov qword [0x140321f90], rax
mov r11d, r14d
mov dword [rsp + 0x60], r14d
mov dword [rsp + 0x58], 0x7e10e4be
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
movups xmm0, xmmword [rcx + 0x58]
movd eax, xmm0
sub ax, 8
test r11d, r11d
je 0x140103a61
psrldq xmm0, 8
movq r8, xmm0
movzx eax, ax
shr rax, 1
lea r10, [r8 + rax*2]
mov r9d, 0x7644411a
jmp 0x140103a53
mov r11, r9
movabs rcx, 0xaaaaaa1ad246a067
xor r11, rcx
movabs rcx, 0x1206ed104b7c2b
imul r11, rcx
movabs rcx, 0xffff7e8af45692bb
imul rdx, rcx
movabs rcx, 0x9f3e16df652b74a7
add r11, rcx
add r11, rdx
mov rcx, r11
movabs rax, 0x277cd7be00967707
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xffffffff871376b7
lea ecx, [r9 - 0x1b]
and cl, sil
rol r8, cl
movabs rax, 0x20682c80e0000000
imul r8, rax
mov rcx, r8
ror rcx, 0xa
not rcx
movabs rax, 0x9b2de6b33debd480
imul rcx, rax
mov rax, r11
sub rax, r8
lea rdi, [rcx + rax*4]
mov cl, byte [rsp + 0x60]
and cl, sil
ror rdi, cl
movabs rax, 0xd30e935b561f9af1
imul rdi, rax
jmp 0x140103713
movabs rax, 0xd0930d17519c22d7
imul r9, rax
movabs rax, 0xd79435e50d79435f
mul r9
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r9b
sub cl, dl
movabs r10, 0x1b7362e50341648f
shl r10, cl
movabs rax, 0xa000637dbe5e812
xor r10, rax
and ebx, 0x8000003f
jge 0x1401038ee
sub ebx, r15d
or ebx, 0xffffffc0
add ebx, r15d
mov cl, bl
rol r10, cl
movabs rcx, 0x2cf16ca4a9e0650f
add rcx, r9
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0x135b561f9af1
imul rax, rcx
xor r10, rax
movabs rax, 0xffffc7a78e82d64a
or r10, rax
mov rdi, qword [0x14031d070]
movabs rax, 0xe48c9d1afcbe9b70
imul rdi, rax
sub rdi, r8
mov rax, qword [rsp + 0x60]
sub rax, r10
xor rdi, rax
movabs rax, 0xc7a7c6a6df8ad647
xor rdi, rax
mov rax, r9
imul rax, r8
imul rax, rdi
mov rbx, r11
sub rbx, rax
movabs rax, 0x789589410d89a5d
add rbx, rax
xor rbx, qword [rsp + 0x60]
movzx eax, r11b
imul ecx, eax, 0xe2
and cl, sil
rol rbx, cl
not rbx
jmp 0x140103718
mov r10, r9
imul r10, qword [0x14031d080]
and r10, qword [0x14031d080]
xor r10, rcx
ror r10, 0x12
imul r10, r8
mov rbx, qword [rsp + 0x60]
not rbx
imul rbx, r11
movabs rax, 0x7cd8a7de027b87a6
imul rbx, rax
imul rax, qword [0x14031d060], 0xffffffffe7959d04
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x70], rax
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140103a10
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x70]
ror rax, cl
movabs rcx, 0x2cf16ca4a9e0650f
add rax, rcx
add rax, qword [rsp + 0x58]
mov qword [rsp + 0x60], rax
jmp 0x140103718
movsx edx, byte [r8]
mov eax, edx
imul eax, edx
add eax, 0x31
xor eax, 0x4764996c
xor edx, r9d
mov r9d, eax
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x140103a34
cmp r9d, r11d
jne 0x140103ae7
mov r10, qword [rcx + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov rax, qword [rax + r10 + 0x88]
mov ebx, eax
add rbx, r10
shr rax, 0x20
cmp rbx, r10
je 0x140103ae7
mov edi, dword [rbx + 0x18]
test edi, edi
je 0x140103ae7
mov edx, dword [rbx + 0x20]
dec edi
mov r8d, edi
lea rdx, [rdx + rdi*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov r11d, 0x7644411a
mov dl, byte [r9]
add r9, r15
test dl, dl
je 0x140103ad4
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, 0x4764996c
xor r8d, r11d
mov r11d, edx
imul r11d, r8d
mov dl, byte [r9]
add r9, r15
test dl, dl
jne 0x140103aa9
mov r8d, edi
cmp r11d, dword [rsp + 0x58]
je 0x140103aef
test edi, edi
mov edx, dword [rbx + 0x20]
jne 0x140103a89
mov r11d, dword [rsp + 0x60]
mov rcx, qword [rcx]
jmp 0x14010379b
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r8*2]
mov r8d, dword [rdx + rcx*4]
add r8, r10
cmp r8, rbx
jbe 0x140103ba9
lea rcx, [rax + rbx]
cmp r8, rcx
jae 0x140103ba9
mov eax, 0x7644411a
mov r11d, eax
mov dword [rsp + 0x60], eax
mov r9d, eax
mov dword [rsp + 0x58], eax
mov al, byte [r8]
cmp al, 0x2e
je 0x140103b60
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, r11d
mov r11d, eax
imul r11d, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x140103b37
mov dword [rsp + 0x60], r11d
add r8, r15
mov al, byte [r8]
test al, al
je 0x140103b93
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, r9d
mov r9d, eax
imul r9d, ecx
add r8, r15
mov al, byte [r8]
test al, al
jne 0x140103b6a
mov dword [rsp + 0x58], r9d
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
jmp 0x140103ae7
lea rdx, [rsp + 0x670]
mov rcx, qword [rsp + 0x40]
call r8
test eax, eax
je 0x140104fdc
mov r11d, r14d
mov dword [rsp + 0x60], r14d
mov dword [rsp + 0x58], 0x124732ea
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
mov r12d, 8
movups xmm0, xmmword [rcx + 0x58]
movd eax, xmm0
sub ax, r12w
test r11d, r11d
je 0x140103c42
psrldq xmm0, 8
movq r8, xmm0
movzx eax, ax
shr rax, 1
lea r10, [r8 + rax*2]
mov r9d, 0x54d3293c
jmp 0x140103c34
movsx edx, byte [r8]
mov eax, edx
imul eax, edx
add eax, 0x31
xor eax, 0x4764996c
xor edx, r9d
mov r9d, eax
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x140103c15
cmp r9d, r11d
jne 0x140103d8a
mov r10, qword [rcx + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov rax, qword [rax + r10 + 0x88]
mov ebx, eax
add rbx, r10
shr rax, 0x20
cmp rbx, r10
je 0x140103d8a
mov edi, dword [rbx + 0x18]
test edi, edi
je 0x140103d8a
mov edx, dword [rbx + 0x20]
dec edi
mov r8d, edi
lea rdx, [rdx + rdi*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov r11d, 0x54d3293c
mov dl, byte [r9]
add r9, r15
test dl, dl
je 0x140103cbd
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, 0x4764996c
xor r8d, r11d
mov r11d, edx
imul r11d, r8d
mov dl, byte [r9]
add r9, r15
test dl, dl
jne 0x140103c92
mov r8d, edi
cmp r11d, dword [rsp + 0x58]
je 0x140103cd5
test edi, edi
mov edx, dword [rbx + 0x20]
jne 0x140103c72
mov r11d, dword [rsp + 0x60]
jmp 0x140103d8a
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r8*2]
mov r8d, dword [rdx + rcx*4]
add r8, r10
cmp r8, rbx
jbe 0x140103d92
lea rcx, [rax + rbx]
cmp r8, rcx
jae 0x140103d92
mov eax, 0x54d3293c
mov r11d, eax
mov dword [rsp + 0x60], eax
mov r9d, eax
mov dword [rsp + 0x58], eax
mov al, byte [r8]
cmp al, 0x2e
je 0x140103d46
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, r11d
mov r11d, eax
imul r11d, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x140103d1d
mov dword [rsp + 0x60], r11d
add r8, r15
mov al, byte [r8]
test al, al
je 0x140103d79
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, r9d
mov r9d, eax
imul r9d, ecx
add r8, r15
mov al, byte [r8]
test al, al
jne 0x140103d50
mov dword [rsp + 0x58], r9d
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
mov rcx, qword [rcx]
jmp 0x140103be8
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x69c]
call r8
test eax, eax
movabs r12, 0xaaaaaaaaaaaaaaab
jne 0x140104dc9
mov qword [rsp + 0x1f0], r14
movabs rax, 0x63efef780eefefa1
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], r14
movabs rax, 0x8a90a91e99f8d0b7
mov qword [rsp + 0x1f8], rax
movabs rcx, 0xf33a52b41bcfd483
add rcx, qword [rsp + 0x1f0]
movabs rax, 0xf9d536625307add4
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80ac470184
add rcx, rax
movabs rax, 0xf8f8cd9a655b85db
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654bc2cbff3f5
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0x5a9179aa90476ba3
xor rcx, rax
movabs rax, 0x5f627dc7457ba596
sub rcx, rax
movabs rax, 0x3a3b3cd353652c71
xor rcx, rax
movabs rax, 0xb483ce469db72eb0
add rax, rcx
add rdx, rax
not rdx
mov rax, qword [0x14031d038]
movabs rcx, 0x13cce94ad06f3da6
xor rax, rcx
sub rdx, rax
mov rcx, qword [0x14031d030]
movabs rax, 0xec3316b52f90c259
xor rcx, rax
movabs rax, 0xe0b56d8607458efb
add rax, rdx
add rax, rcx
movabs rcx, 0x5f665238eac43ab6
xor rax, rcx
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x1f0], rax
mov eax, dword [rsp + 0x678]
mov qword [0x140322190], rax
xor eax, eax
mov byte [rsp + 0x7c], al
movabs rax, 0xb4ee12b3d6d4c591
mov qword [rsp + 0x70], rax
movabs rbx, 0x9cbed40e91cb06fd
mov qword [rsp + 0x60], r14
movabs r11, 0x4228ba07c2304645
mov rdi, qword [0x14031d070]
movabs rax, 0xb0fcb17e336a8bce
imul rdi, rax
not rdi
mov rax, qword [0x14031d060]
movabs rcx, 0xbdd745f824a4cd01
xor rax, rcx
and rdi, rax
ror rdi, 0x3a
shr rdi, 8
mov r10, qword [0x14031d080]
movabs rax, 0x25102b4a82666828
imul r10, rax
movabs r8, 0x63412bf16e34f903
sub r10, r8
movabs rax, 0xa15c11e4ffffffff
xor r10, rax
shr r10, 0x1f
not r10
lea rcx, [r10 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x67
and ecx, 0x8000003f
jge 0x140103fc1
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r10
ror rax, cl
not rax
mov rdx, rax
movabs rcx, 0x7296fd4568de2154
imul rdx, rcx
mov qword [rsp + 0x58], rdx
lea r9, [rdx + r8]
mov r8, r10
imul r8, rdi
sub r8, r9
movabs rcx, 0xb4ee12b3d6d4c591
xor r8, rcx
mov cl, r9b
xor cl, 0xf8
and cl, 0xf
rol r8, cl
movabs rcx, 0x8baf49aad9eae804
imul rax, rcx
movabs rcx, 0x405b6a9aaf6ed609
sub rax, rcx
xor r8, rax
mov rax, r9
sub rax, qword [0x14031d078]
xor r8, rax
mov rcx, r11
xor r8, rcx
mov rax, r8
and rax, r15
je 0x140104308
sub rax, 1
je 0x140104211
sub rax, 1
je 0x140104148
cmp rax, 1
jne 0x140104387
mov rcx, r9
imul rcx, r10
movabs rax, 0x7a15c37bf4c89b05
add rax, r8
xor rcx, rax
shr rcx, 0xc
not rcx
mov qword [rsp + 0x70], rcx
movabs rdx, 0x83571c690674
add rdx, qword [0x14031d088]
movabs rax, 0x63c3ae893946dff5
xor rdx, rax
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db94489ea8f
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
mov rax, rbx
imul rcx, rax
mov eax, 0x95523865
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0xd111959d356f80fa
sub rbx, qword [rsp + 0x70]
shr rbx, cl
mov rcx, qword [rsp + 0x58]
movabs rax, 0x63495079d60b41ad
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, rdi
xor rbx, rax
jmp 0x140104387
mov r10, r8
movabs rcx, 0xaaaaaa1a954bc55b
xor r10, rcx
movabs rcx, 0x1206ed57461917
imul r10, rcx
movabs rcx, 0xffff7e8ab35bf787
imul rdx, rcx
movabs rcx, 0x6be5c2110a8477ba
add r10, rcx
add r10, rdx
mov rcx, r10
movabs rax, 0x277cd7be479b123b
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r10
not r9
imul r9, qword [r13 + rcx*8]
xor r9, 0xffffffffc01e138b
lea ecx, [r8 + 0x19]
and cl, sil
rol r9, cl
movabs rax, 0x420654480000000
imul r9, rax
mov rcx, r9
ror rcx, 0x17
not rcx
movabs rax, 0x9b2de6b221de4070
imul rcx, rax
mov rax, r10
sub rax, r9
lea rbx, [rcx + rax*4]
mov cl, dil
and cl, sil
ror rbx, cl
movabs rax, 0x9cbed40e91cb06fd
imul rbx, rax
jmp 0x140104387
movabs rax, 0xe339df0edfbb8b89
imul r8, rax
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
movabs r11, 0x4b11ed4c292b3a6e
shl r11, cl
movabs rax, 0x4228ba07c2304645
xor r11, rax
mov cl, r9b
and cl, sil
rol r11, cl
movabs rcx, 0x63412bf16e34f903
add rcx, r8
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0x140e91cb06fd
imul rax, rcx
xor r11, rax
movabs rax, 0xffffc7a7c98fb376
or r11, rax
mov rbx, qword [0x14031d070]
movabs rax, 0xb4ee12b3d6d4c591
imul rbx, rax
sub rbx, r9
mov rax, rdi
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a69887b37b
xor rbx, rax
mov rax, r8
imul rax, r9
imul rax, rbx
mov rdx, r10
sub rdx, rax
movabs rax, 0x789589457d5ff61
add rdx, rax
xor rdx, rdi
movzx eax, r10b
imul ecx, eax, 0x1e
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x60], rdx
jmp 0x140104387
mov r11, r8
imul r11, qword [0x14031d080]
and r11, qword [0x14031d088]
xor r11, rcx
ror r11, 5
imul r11, r9
mov rax, rdi
not rax
imul rax, r10
movabs rcx, 0x7cd8a7de4576e29a
imul rax, rcx
mov qword [rsp + 0x60], rax
imul rdi, qword [0x14031d060], 0xffffffffe6948b44
mov rdx, qword [0x14031d068]
sub rdi, rdx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140104372
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
movabs rax, 0x63412bf16e34f903
add rdi, rax
add rdi, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x70]
movabs rax, 0xff055d7bb53de857
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x60]
imul r11, qword [r13 + rcx*8]
not r9
imul r9, r8
imul r9, rdi
imul r9, rbx
movabs rcx, 0xf5ed7e87b28ea28b
xor rcx, r10
not rcx
xor rcx, r9
sub rcx, r11
call fcn.1400c8fd8
mov qword [0x140321f68], rax
mov qword [rsp + 0x200], r14
movabs rax, 0xaa067e1d47562c06
mov qword [rsp + 0x200], rax
movabs rcx, 0xcc5ad48c699f7ba
add rcx, qword [rsp + 0x200]
movabs rax, 0x1d0b4fedad9c589e
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x312ba68f11b95ce5
sub rcx, rax
movabs rax, 0x707459b67e63a18
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x1829ab475eea9128
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0xa56e8658fd78db7a
xor rcx, rax
movabs rax, 0x2b02fde7fc1bc2d6
sub rcx, rax
movabs rax, 0x13c4c32e295ac485
xor rcx, rax
movabs rax, 0x15ab432c0398926e
add rax, rcx
add rdx, rax
not rdx
mov rax, qword [0x14031d038]
movabs rcx, 0xec3316b5231a6632
xor rax, rcx
sub rdx, rax
mov rcx, qword [0x14031d030]
movabs rax, 0x13cce94adce599cd
xor rcx, rax
movabs r8, 0x1f4a9146e5570460
add r8, rdx
add r8, rcx
movabs rax, 0xfa2b93ec45f1b80a
xor r8, rax
mov qword [rsp + 0x200], r8
mov dword [rsp + 0xb0], r14d
mov dword [rsp + 0xb0], 0xe69b356c
mov eax, dword [rsp + 0xb0]
add eax, 0xd699612f
xor eax, 0xf684689d
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x3616a4de
xor eax, 0xb7a6d2fd
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x5d335d82
add eax, ecx
xor eax, 0x4b398730
sub eax, 0x10dbec23
xor eax, 0xda1a8fcf
lea edx, [rcx + 0x4c0924db]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xc35a63d8
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x3ca59c27
add ecx, 0x594af5d
add ecx, edx
xor ecx, 0xd1d4d5e8
mov dword [rsp + 0xb0], ecx
shr r8, cl
mov qword [rsp + 0x208], r8
mov dword [rsp + 0xb0], r14d
mov qword [rsp + 0x200], r14
mov ebx, r14d
mov dword [rsp + 0x60], ebx
mov dword [rsp + 0x58], 0xba6209ee
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
mov r12d, 8
movups xmm0, xmmword [rcx + 0x58]
movd eax, xmm0
sub ax, r12w
test ebx, ebx
je 0x140104628
psrldq xmm0, 8
movq r9, xmm0
movzx eax, ax
shr rax, 1
lea r11, [r9 + rax*2]
mov r10d, 0xaf7ed126
jmp 0x14010461a
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov eax, r10d
xor eax, edx
mov r10d, r8d
imul r10d, eax
add r9, 2
cmp r9, r11
jne 0x1401045f4
cmp r10d, ebx
jne 0x14010477d
mov r11, qword [rcx + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov rax, qword [rax + r11 + 0x88]
mov edi, eax
add rdi, r11
shr rax, 0x20
cmp rdi, r11
je 0x14010477d
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x14010477d
mov r10d, dword [rdi + 0x20]
dec r8d
mov dword [rsp + 0x6c], r8d
mov r9d, r8d
mov qword [rsp + 0x70], r9
lea rdx, [r11 + r8*4]
mov r10d, dword [rdx + r10]
add r10, r11
mov ebx, 0xaf7ed126
mov dl, byte [r10]
add r10, r15
test dl, dl
je 0x1401046ba
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, 0x4764996c
mov edx, ebx
xor edx, r8d
mov ebx, r9d
imul ebx, edx
mov dl, byte [r10]
add r10, r15
test dl, dl
jne 0x140104685
mov r8d, dword [rsp + 0x6c]
mov r9, qword [rsp + 0x70]
cmp ebx, dword [rsp + 0x58]
je 0x1401046d2
test r8d, r8d
mov r10d, dword [rdi + 0x20]
jne 0x14010465b
mov ebx, dword [rsp + 0x60]
jmp 0x14010477d
mov edx, dword [rdi + 0x1c]
add rdx, r11
mov ecx, dword [rdi + 0x24]
add rcx, r11
movzx ecx, word [rcx + r9*2]
mov r8d, dword [rdx + rcx*4]
add r8, r11
cmp r8, rdi
jbe 0x140104785
lea rcx, [rax + rdi]
cmp r8, rcx
jae 0x140104785
mov eax, 0xaf7ed126
mov ebx, eax
mov dword [rsp + 0x60], eax
mov edx, eax
mov dword [rsp + 0x58], eax
mov al, byte [r8]
cmp al, 0x2e
je 0x14010473d
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, ebx
mov ebx, eax
imul ebx, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x140104718
add r8, r15
mov al, byte [r8]
test al, al
je 0x14010476c
mov rcx, qword [rcx]
jmp 0x1401045c8
lea rdx, [rsp + 0x208]
lea rcx, [0x1400c8d50]
call r8
movabs rcx, 0xb6aeb28f9e84c128
mov qword [rsp + 0x70], rcx
movabs rdx, 0x254f58de5aebeb8d
mov rdi, rdx
mov qword [rsp + 0x60], r14
movabs r11, 0x46859365d9c097f9
mov rbx, qword [0x14031d070]
movabs rax, 0x85065f1df0ba6de6
imul rbx, rax
not rbx
mov rax, qword [0x14031d060]
movabs r8, 0xb97a6c9a5eb8fedd
xor rax, r8
and rbx, rax
ror rbx, 0x2a
shr rbx, 8
mov r9, qword [0x14031d060]
movabs rax, 0x39020151bea1ef68
imul r9, rax
add r9, rdx
movabs rax, 0xd0b994f00000000
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xdab0a721a5141473
lea rcx, [r9 + r8]
movabs r12, 0xaaaaaaaaaaaaaaab
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x87
and ecx, 0x8000003f
jge 0x140104878
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
mov rdx, rax
movabs rcx, 0xa80f8b1529228004
imul rdx, rcx
mov qword [rsp + 0x58], rdx
add r8, rdx
mov r10, r9
imul r10, rbx
sub r10, r8
movabs rcx, 0xb6aeb28f9e84c128
xor r10, rcx
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
movabs rcx, 0x8f474e8f3f302e34
imul rax, rcx
movabs rcx, 0x266e3395719a2ba9
sub rax, rcx
xor r10, rax
mov rax, r8
mov rcx, qword [0x14031d078]
sub rax, rcx
xor r10, rax
mov rax, r11
xor r10, rax
mov rax, r10
and rax, r15
je 0x140104bca
sub rax, 1
je 0x140104acd
mov r11, r10
imul r11, qword [0x14031d080]
and r11, rcx
movabs rax, 0x46859365d9c097f9
xor r11, rax
ror r11, 0x39
imul r11, r8
mov rax, rbx
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de6216187a
imul rax, rcx
mov qword [rsp + 0x60], rax
imul rbx, qword [0x14031d060], 0xffffffff87786924
mov rdx, qword [0x14031d068]
sub rbx, rdx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140104c3a
mov ebx, r14d
mov dword [rsp + 0x60], ebx
mov dword [rsp + 0x58], 0x65adc4e
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
mov r13d, 8
movups xmm0, xmmword [rcx + 0x58]
movd eax, xmm0
sub ax, r13w
test ebx, ebx
je 0x140104e4f
psrldq xmm0, 8
movq r9, xmm0
movzx eax, ax
shr rax, 1
lea r11, [r9 + rax*2]
mov r10d, 0x1fb2981e
jmp 0x140104e41
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov eax, r10d
xor eax, edx
mov r10d, r8d
imul r10d, eax
add r9, 2
cmp r9, r11
jne 0x140104e1b
cmp r10d, ebx
jne 0x140104fad
mov r11, qword [rcx + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov rax, qword [rax + r11 + 0x88]
mov edi, eax
add rdi, r11
shr rax, 0x20
cmp rdi, r11
je 0x140104fad
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x140104fad
mov edx, dword [rdi + 0x20]
dec r8d
mov dword [rsp + 0x6c], r8d
mov r9d, r8d
mov qword [rsp + 0x50], r9
lea rdx, [rdx + r8*4]
mov r10d, dword [rdx + r11]
add r10, r11
mov ebx, 0x1fb2981e
mov dl, byte [r10]
add r10, r15
test dl, dl
je 0x140104ee0
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, 0x4764996c
mov edx, ebx
xor edx, r8d
mov ebx, r9d
imul ebx, edx
mov dl, byte [r10]
add r10, r15
test dl, dl
jne 0x140104eab
mov r8d, dword [rsp + 0x6c]
mov r9, qword [rsp + 0x50]
cmp ebx, dword [rsp + 0x58]
je 0x140104ef7
test r8d, r8d
mov edx, dword [rdi + 0x20]
jne 0x140104e81
mov ebx, dword [rsp + 0x60]
jmp 0x140104fad
mov edx, dword [rdi + 0x1c]
add rdx, r11
mov ecx, dword [rdi + 0x24]
add rcx, r11
movzx ecx, word [rcx + r9*2]
mov r8d, dword [rdx + rcx*4]
add r8, r11
cmp r8, rdi
jbe 0x140104fb5
lea rcx, [rax + rdi]
cmp r8, rcx
jae 0x140104fb5
mov eax, 0x1fb2981e
mov ebx, eax
mov dword [rsp + 0x60], eax
mov r10d, eax
mov dword [rsp + 0x58], eax
mov al, byte [r8]
cmp al, 0x2e
je 0x140104f66
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, 0x4764996c
mov eax, ebx
xor eax, ecx
mov ebx, edx
imul ebx, eax
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x140104f3e
mov dword [rsp + 0x60], ebx
add r8, r15
mov al, byte [r8]
test al, al
je 0x140104f9c
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, 0x4764996c
mov eax, r10d
xor eax, ecx
mov r10d, edx
imul r10d, eax
add r8, r15
mov al, byte [r8]
test al, al
jne 0x140104f70
mov dword [rsp + 0x58], r10d
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
mov rcx, qword [rcx]
jmp 0x140104def
lea rdx, [rsp + 0x670]
mov rcx, qword [rsp + 0x40]
call r8
test eax, eax
lea r13, [0x14031d060]
jne 0x140103bc1
mov eax, dword [rsp + 0x30]
mov dword [rsp + 0x30], eax
movabs rax, 0x2719c9600de1df62
mov qword [rsp + 0x48], rax
movabs r11, 0xd37351dc65ec36e3
mov qword [rsp + 0x50], r11
mov r8, qword [0x14031d070]
movabs rax, 0xcbfbfe6000000000
imul r8, rax
movabs rax, 0x517b22f000000000
xor r8, rax
mov qword [rsp + 0x70], r8
mov rcx, r8
imul rcx, r11
mov qword [rsp + 0x60], rcx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r8
and r9, r11
imul r9, qword [r13 + rcx*8]
movabs rax, 0xe617e13dd9af12d8
imul r9, rax
shr r9, 3
movabs rax, 0x67bf96997b2456ff
xor r9, rax
mov rbx, r8
movabs rax, 0xffffff57d17bc303
imul rbx, rax
sub rbx, 0x787778d4
xor rbx, r9
xor rbx, qword [0x14031d060]
mov rax, r9
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bd8c87c22
imul rax, rcx
not rax
and rbx, rax
ror rbx, 0x30
shr rbx, 8
movabs r10, 0x2c8cae239a13c91d
lea rcx, [r8 + r10]
xor rcx, 0xffffffffe646772f
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r11, qword [r13 + rcx*8]
movabs rax, 0xaa9aa1e8eb5859c8
imul r11, rax
sub r11, r10
mov rax, r9
movabs rcx, 0xacbadab632feff98
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rdi, r11
xor rdi, r8
lea rcx, [r11 + r10]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x33
and ecx, 0x8000003f
jge 0x140105151
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
not rdi
imul rdi, r9
imul rdx, rdi, 0xffffffff8788872c
mov qword [rsp + 0x58], rdx
lea r8, [rdx + r10]
mov r10, r11
imul r10, rbx
sub r10, r8
movabs rax, 0x2719c9600de1df62
xor r10, rax
mov cl, r8b
xor cl, 0xfc
and cl, 0xf
rol r10, cl
movabs rax, 0x78e6cb2cf3232404
imul rdi, rax
movabs rax, 0x5340396c5c4c8d49
sub rdi, rax
xor r10, rdi
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
xor r10, r9
mov rdi, qword [rsp + 0x70]
xor r10, rdi
mov rax, r10
and eax, 3
je 0x14010552f
sub rax, 1
je 0x1401053ea
sub rax, 1
je 0x1401052f5
cmp rax, 1
jne 0x1401055d6
mov rcx, r8
imul rcx, r11
movabs rax, 0xf877c5600c446457
add rax, r10
xor rcx, rax
ror rcx, 8
shr rcx, 0xc
xor rcx, rdi
not rcx
mov qword [rsp + 0x48], rcx
movabs rdx, 0x83573a397228
add rdx, qword [0x14031d088]
movabs rax, 0x2c0e2b5beb319bbf
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db962d99edb
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rdx, 0xd37351dc65ec36e3
imul rcx, rdx
mov eax, 0xb3024c31
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rax, 0x1d11847bc0bfa4f4
sub rax, qword [rsp + 0x48]
shr rax, cl
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x58]
movabs rax, 0x2c94d2abdb9a061b
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, rbx
xor qword [rsp + 0x50], rax
jmp 0x1401055d6
mov rcx, r10
movabs rax, 0xaaaaaa1ab31bb10f
xor rcx, rax
movabs rax, 0x1206ed71166d43
imul rcx, rax
mov rax, r9
movabs r8, 0xfff17ca864798773
xor rax, r8
sub rcx, rax
movabs rax, 0xffff7e8a950b83d3
imul rdx, rax
movabs r11, 0xebce104438831dba
add r11, rcx
add r11, rdx
mov rcx, r11
movabs rax, 0x277cd7be61cb666f
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xffffffffe64e67df
lea ecx, [r10 + 0xd]
and cl, sil
rol r8, cl
mov rax, qword [rsp + 0x60]
movabs rcx, 0xffc7c63bf0b69291
xor rax, rcx
movabs rcx, 0x7c7a7dc68f496d6e
and rax, rcx
imul r8, rax
mov rcx, r8
ror rcx, 0x30
not rcx
movabs rax, 0x9b2de6b2b89f9120
imul rcx, rax
mov rax, r11
sub rax, r8
lea rax, [rcx + rax*4]
mov cl, bl
and cl, sil
ror rax, cl
movabs rdx, 0xd37351dc65ec36e3
imul rax, rdx
mov qword [rsp + 0x50], rax
jmp 0x1401055d6
movabs rax, 0x527f9d7431102b67
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
mov rax, rdi
movabs rdx, 0x2c8cae239a13c91c
imul rax, rdx
movabs rdx, 0x2719c9600de1df62
xor rax, rdx
not rax
shl rax, cl
xor r9, rax
mov cl, r8b
and cl, sil
rol r9, cl
movabs rcx, 0x2c8cae239a13c91d
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0x11dc65ec36e3
imul rax, rcx
xor r9, rax
movabs rax, 0xffffc7a7efdfc722
or r9, rax
mov rcx, qword [0x14031d070]
movabs rax, 0x2719c9600de1df62
imul rcx, rax
sub rcx, r8
mov rax, rbx
sub rax, r9
xor rcx, rax
movabs rax, 0xc7a7c6a6bed7c72f
xor rcx, rax
mov qword [rsp + 0x50], rcx
movabs rax, 0xcccccccccccccccd
mul rdi
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rdi
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, qword [rsp + 0x50]
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r8
imul rdx, qword [rsp + 0x50]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, rdi
mov rdi, rax
movabs rax, 0x789589471858b35
add rdi, rax
xor rdi, rbx
mov al, r11b
shl al, 2
lea ecx, [rax + r11]
add cl, cl
and cl, sil
rol rdi, cl
not rdi
jmp 0x1401055d6
mov rax, r12
mul r9
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r9
sub rcx, rax
mov rax, r10
imul rax, qword [0x14031d080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r9
and r9b, sil
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r8
not rbx
imul rbx, r11
movabs rax, 0x7cd8a7de632696ce
imul rbx, rax
mov rax, r9
imul rax, rdi
mov rdi, rbx
xor rdi, rax
imul rbx, qword [0x14031d060], 0xffffffff8788872c
mov rdx, qword [0x14031d068]
sub rbx, rdx
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1401055c1
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rbx, cl
movabs rax, 0x2c8cae239a13c91d
add rbx, rax
add rbx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
movabs rax, 0xff055d7b936d9c03
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r9, rdi
imul r9, qword [r13 + rcx*8]
not r8
imul r8, r10
imul r8, rbx
imul r8, qword [rsp + 0x50]
movabs rcx, 0xf5ed7e8794ded6df
xor rcx, r11
not rcx
xor rcx, r8
sub rcx, r9
call fcn.1400c9284
mov qword [0x140321f30], rax
mov r11d, r14d
mov dword [rsp + 0x60], r14d
mov dword [rsp + 0x58], 0xc7556c96
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
movups xmm0, xmmword [rcx + 0x58]
movd eax, xmm0
sub ax, 8
test r11d, r11d
je 0x1401056b3
psrldq xmm0, 8
movq r8, xmm0
movzx eax, ax
shr rax, 1
lea r10, [r8 + rax*2]
mov r9d, 0xa49116c2
jmp 0x1401056a5
movsx edx, byte [r8]
mov eax, edx
imul eax, edx
add eax, 0x31
xor eax, 0x4764996c
xor edx, r9d
mov r9d, eax
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x140105686
cmp r9d, r11d
jne 0x14010574f
mov r11, qword [rcx + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov rax, qword [rax + r11 + 0x88]
mov edi, eax
add rdi, r11
shr rax, 0x20
cmp rdi, r11
je 0x14010574a
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x14010574a
mov edx, dword [rdi + 0x20]
dec r8d
mov dword [rsp + 0x6c], r8d
mov r9d, r8d
mov qword [rsp + 0x48], r9
lea rdx, [rdx + r8*4]
mov r10d, dword [rdx + r11]
add r10, r11
mov ebx, 0xa49116c2
mov dl, byte [r10]
add r10, r15
test dl, dl
je 0x14010573c
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, 0x4764996c
mov edx, ebx
xor edx, r8d
mov ebx, r9d
imul ebx, edx
mov dl, byte [r10]
add r10, r15
test dl, dl
jne 0x140105707
mov r8d, dword [rsp + 0x6c]
mov r9, qword [rsp + 0x48]
cmp ebx, dword [rsp + 0x58]
je 0x140105757
test r8d, r8d
mov edx, dword [rdi + 0x20]
jne 0x1401056dd
mov r11d, dword [rsp + 0x60]
mov rcx, qword [rcx]
jmp 0x140105659
mov edx, dword [rdi + 0x1c]
add rdx, r11
mov ecx, dword [rdi + 0x24]
add rcx, r11
movzx ecx, word [rcx + r9*2]
mov r8d, dword [rdx + rcx*4]
add r8, r11
cmp r8, rdi
jbe 0x140105811
lea rcx, [rax + rdi]
cmp r8, rcx
jae 0x140105811
mov eax, 0xa49116c2
mov r11d, eax
mov dword [rsp + 0x60], eax
mov r10d, eax
mov dword [rsp + 0x58], eax
mov al, byte [r8]
cmp al, 0x2e
je 0x1401057c8
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, r11d
mov r11d, eax
imul r11d, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x14010579f
mov dword [rsp + 0x60], r11d
add r8, r15
mov al, byte [r8]
test al, al
je 0x1401057fb
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, r10d
mov r10d, eax
imul r10d, ecx
add r8, r15
mov al, byte [r8]
test al, al
jne 0x1401057d2
mov dword [rsp + 0x58], r10d
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
jmp 0x14010574f
mov rcx, qword [rsp + 0x40]
call r8
movabs rcx, 0x67aa69baab336ec1
mov qword [rsp + 0x40], rcx
movabs rdi, 0xcc81317aab48d8ba
mov qword [rsp + 0x48], r14
movabs r11, 0x3793c1f6f9d756af
mov rbx, qword [0x14031d070]
movabs rax, 0x87daa670f883129a
imul rbx, rax
not rbx
mov rax, qword [0x14031d060]
movabs rcx, 0xc86c3e090e9d9d5f
xor rax, rcx
and rbx, rax
ror rbx, 0xd
shr rbx, 8
mov r9, qword [0x14031d088]
movabs rax, 0x3be62ab32980c060
imul r9, rax
movabs r8, 0x337ece8554b72746
sub r9, r8
movabs rax, 0xf76a6ac5ffffffff
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x97
and ecx, 0x8000003f
jge 0x1401058ed
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, r9
ror rdx, cl
not rdx
mov rax, rdx
movabs rcx, 0xa7f055dae3340910
imul rax, rcx
mov qword [rsp + 0x50], rax
add r8, rax
mov r10, r9
imul r10, rbx
sub r10, r8
movabs rax, 0x67aa69baab336ec1
xor r10, rax
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
movabs rax, 0xb5fb1b0d37f415a0
imul rdx, rax
movabs rax, 0x72742b8b1c1a6724
sub rdx, rax
xor r10, rdx
mov rcx, r11
xor r10, rcx
mov rax, r10
and eax, 2
je 0x140105c3e
sub rax, 1
je 0x140105b44
sub rax, 1
je 0x140105a77
cmp rax, 1
jne 0x140105cb9
mov rcx, r8
imul rcx, r9
movabs rax, 0x6d258b7700db46aa
add rax, r10
xor rcx, rax
ror rcx, 0x34
shr rcx, 0xc
not rcx
mov qword [rsp + 0x40], rcx
movabs rdx, 0x83572bed3384
add rdx, qword [0x14031d088]
movabs rax, 0x33fc4bfd34413442
xor rdx, rax
movzx eax, r10b
movzx ecx, cl
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9730ddf7f
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
mov rax, rdi
imul rcx, rax
mov eax, 0xa2d60d95
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0xfc9024467f3923f5
sub rdi, qword [rsp + 0x40]
shr rdi, cl
mov rcx, qword [rsp + 0x50]
movabs rax, 0x3386f30da509a4a0
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, rbx
xor rdi, rax
jmp 0x140105cb9
mov r9, r10
movabs rcx, 0xaaaaaa1aa2cff0ab
xor r9, rcx
movabs rcx, 0x1206ed60c22ce7
imul r9, rcx
mov rcx, qword [rsp + 0x50]
movabs rdx, 0xffff7e8a84dfc277
imul rcx, rdx
movabs rdx, 0x8eaca6e073457f89
add r9, rdx
add r9, rcx
mov rcx, r9
movabs rax, 0x277cd7be701f27cb
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xfffffffff79a267b
lea ecx, [r10 - 0x17]
and cl, sil
rol r8, cl
movabs rax, 0x2818100680000000
imul r8, rax
mov rcx, r8
ror rcx, 0x37
not rcx
movabs rax, 0x9b2de6b2ffce97b0
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdi, [rcx + rax*4]
mov cl, bl
and cl, sil
ror rdi, cl
movabs rax, 0xcc81317aab48d8ba
imul rdi, rax
jmp 0x140105cb9
movabs rax, 0x969e6874a4a1d33c
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs r11, 0x9855964554cc913e
shl r11, cl
movabs rax, 0x3793c1f6f9d756af
xor r11, rax
mov cl, r8b
and cl, sil
rol r11, cl
movabs rcx, 0x337ece8554b72746
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0xfffff17aab48d8ba
imul rax, rcx
xor r11, rax
movabs rax, 0xffffc7a7fe0b8686
or r11, rax
mov rdi, qword [0x14031d070]
movabs rax, 0x67aa69baab336ec1
imul rdi, rax
sub rdi, r8
mov rax, rbx
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a6af03868b
xor rdi, rax
mov rax, r10
imul rax, r8
imul rax, rdi
mov rdx, r9
sub rdx, rax
movabs rax, 0x78958946051ca91
add rdx, rax
xor rdx, rbx
movzx eax, r9b
imul ecx, eax, 0xee
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x48], rdx
jmp 0x140105cb9
mov r11, r10
imul r11, qword [0x14031d080]
mov rdx, qword [0x14031d068]
and r11, rdx
xor r11, rcx
ror r11, 0x2f
imul r11, r8
mov rax, rbx
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de72f2d76a
imul rax, rcx
mov qword [rsp + 0x48], rax
imul rbx, qword [0x14031d060], 0xfffffffff74acbf0
sub rbx, rdx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140105ca4
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rbx, cl
movabs rax, 0x337ece8554b72746
add rbx, rax
add rbx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x40]
movabs rax, 0xff055d7b82b9dda7
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x48]
imul r11, qword [r13 + rcx*8]
not r8
imul r8, r10
imul r8, rbx
imul r8, rdi
movabs rcx, 0xf5ed7e87850a977b
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400c96e0
mov qword [0x140321f68], rax
mov eax, dword [rsp + 0x30]
mov dword [rsp + 0x38], eax
mov esi, dword [rsp + 0xe0]
mov qword [rsp + 0x210], r14
movabs rax, 0xa67b37683ada10c8
mov qword [rsp + 0x210], rax
or esi, 0x10
mov dword [rsp + 0xe0], esi
mov qword [rsp + 0x218], r14
movabs rax, 0x432231bb28d75caf
mov qword [rsp + 0x218], rax
or esi, 0x20
mov dword [rsp + 0x6c], esi
mov dword [rsp + 0xe0], esi
movabs rcx, 0xf33a52b525a6c403
add rcx, qword [rsp + 0x210]
movabs rax, 0xe95536625308b7ab
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f56d6834b
sub rcx, rax
movabs rax, 0xf8f8cd99575d3a9d
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654bac3e4b1db
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179a9610e4275
xor rcx, rax
movabs rax, 0x5f627dc70b5ec4f8
sub rcx, rax
movabs rax, 0xbe3b3cd2ce7165fa
xor rcx, rax
movabs rdx, 0x3483ce459b251fbc
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ad4969964
mov r10, qword [0x14031d038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b52b69669b
mov r11, qword [0x14031d030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d8a33087039
add rdx, rax
add rdx, rcx
movabs rax, 0xe2009a3f6e50b78c
xor rdx, rax
mov qword [rsp + 0x210], rdx
movabs rcx, 0xf33a52b4bf11cf83
add rcx, qword [rsp + 0x218]
movabs rax, 0xf4d5366253085116
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80aa5d3b93
add rcx, rax
movabs rax, 0xf8f8cd99bf8c82ef
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x87d654bb4f23e3bf
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a9d6102957
xor rcx, rax
movabs rax, 0x5f627dc74f1efb02
sub rcx, rax
movabs rax, 0x623b3cd301bf14e1
xor rcx, rax
movabs rax, 0xb483ce45feec018d
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ad2fc4592
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b52d03ba6d
xor r11, rax
movabs rax, 0xe0b56d8896d882e7
add rcx, rax
add rcx, r11
movabs rax, 0x81243f909aabb32a
xor rcx, rax
mov qword [rsp + 0x218], rcx
and rcx, rdx
mov eax, dword [rsp + 0x38]
cmp rax, rcx
jne 0x140105f56
mov dl, r15b
jmp 0x140105f59
mov dl, r14b
test sil, 0x20
je 0x140105f75
and esi, 0xffffffdf
mov dword [rsp + 0x6c], esi
mov dword [rsp + 0xe0], esi
mov qword [rsp + 0x218], r14
test sil, 0x10
je 0x140105f91
and esi, 0xffffffef
mov dword [rsp + 0x6c], esi
mov dword [rsp + 0xe0], esi
mov qword [rsp + 0x210], r14
test sil, 8
je 0x140105fda
and esi, 0xfffffff7
mov dword [rsp + 0x6c], esi
mov dword [rsp + 0xe0], esi
mov rcx, qword [rsp + 0x328]
test rcx, rcx
je 0x140105fda
mov rax, r14
cmp qword [rsp + 0x330], r14
jbe 0x140105fda
mov byte [rcx + rax], r14b
add rax, r15
cmp rax, qword [rsp + 0x330]
jae 0x140105fda
mov rcx, qword [rsp + 0x328]
jmp 0x140105fbf
test sil, 4
je 0x140105ff6
and esi, 0xfffffffb
mov dword [rsp + 0x6c], esi
mov dword [rsp + 0xe0], esi
mov qword [rsp + 0x1a8], r14
test sil, 2
je 0x140106012
and esi, 0xfffffffd
mov dword [rsp + 0x6c], esi
mov dword [rsp + 0xe0], esi
mov qword [rsp + 0x1a0], r14
test r15b, sil
je 0x14010605a
and esi, 0xfffffffe
mov dword [rsp + 0x6c], esi
mov dword [rsp + 0xe0], esi
mov rcx, qword [rsp + 0x318]
test rcx, rcx
je 0x14010605a
mov rax, r14
cmp qword [rsp + 0x320], r14
jbe 0x14010605a
mov byte [rcx + rax], r14b
add rax, r15
cmp rax, qword [rsp + 0x320]
jae 0x14010605a
mov rcx, qword [rsp + 0x318]
jmp 0x14010603f
test dl, dl
je 0x140107a30
movabs rax, 0xfe6c3f85cbeda659
mov qword [rsp + 0x40], rax
movabs rdi, 0xfb0bc2a4fc8954b7
mov qword [rsp + 0x38], r14
movabs rax, 0xeda2f396ecbc0c24
movabs r11, 0xd64903390ce0a41
mov rbx, qword [0x14031d070]
imul rbx, rax
not rbx
movabs rdx, 0xf29b6fcc66f54a37
mov rax, qword [0x14031d060]
xor rax, rdx
and rbx, rax
ror rbx, 0x22
shr rbx, 8
movabs rax, 0x1ffe859f5f03bb8
mov r9, qword [0x14031d070]
imul r9, rax
movabs r8, 0x4f43d5b0376ab49
sub r9, r8
movabs rax, 0xaf64b4d9ffffffff
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x35
and ecx, 0x8000003f
jge 0x140106133
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
movabs rcx, 0x88a1af0e1483f9f6
mov rsi, rax
imul rsi, rcx
mov qword [rsp + 0x48], rsi
add r8, rsi
mov r10, r9
imul r10, rbx
sub r10, r8
movabs rcx, 0xfe6c3f85cbeda659
xor r10, rcx
mov cl, r8b
xor cl, 0xfa
and cl, 0xf
rol r10, cl
movabs rcx, 0x5b4a3412e50266da
imul rax, rcx
movabs rcx, 0x30cd7113f019652f
add rax, rcx
xor r10, rax
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
mov rcx, r11
xor r10, rcx
mov rax, r10
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14010648b
sub rax, 1
je 0x14010638c
sub rax, 1
je 0x1401062c1
mov sil, 0x3f
cmp rax, 1
jne 0x140106506
mov rcx, r8
imul rcx, r9
movabs rax, 0xfeda1bdb4154226d
add rax, r10
xor rcx, rax
ror rcx, 0x1a
shr rcx, 0xc
not rcx
mov qword [rsp + 0x40], rcx
movabs rdx, 0x8357194cd522
add rdx, qword [0x14031d088]
movabs rax, 0x476b82351215eed
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db941ac39dd
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
mov rax, rdi
imul rcx, rax
mov eax, 0x9077eb37
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0xc7a3bea6bb1fca20
sub rdi, qword [rsp + 0x40]
shr rdi, cl
movabs rcx, 0x4fc61e3666a4745
add rcx, qword [rsp + 0x48]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, rbx
xor rdi, rax
jmp 0x140106506
movabs rcx, 0xaaaaaa1a906e1609
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed5263ca45
imul r9, rcx
movabs rcx, 0xffff7e8ab67e24d5
imul rsi, rcx
movabs rcx, 0x780c0ada47cc25e
add r9, rcx
add r9, rsi
movabs rax, 0x277cd7be42bec169
mov rcx, r9
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xffffffffc53bc0d9
lea ecx, [r10 + 0xb]
mov sil, 0x3f
and cl, sil
rol r8, cl
movabs rax, 0x4402490480000000
imul r8, rax
mov rcx, r8
ror rcx, 0xd
not rcx
movabs rax, 0x9b2de6b235490d38
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdi, [rcx + rax*4]
mov cl, bl
and cl, sil
ror rdi, cl
movabs rax, 0xfb0bc2a4fc8954b7
imul rdi, rax
jmp 0x140106506
movabs rax, 0xbef3c159daf9709d
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs r11, 0x193c07a341259a6
shl r11, cl
movabs rax, 0xd64903390ce0a41
xor r11, rax
mov cl, r8b
mov sil, 0x3f
and cl, sil
rol r11, cl
movabs rcx, 0x4f43d5b0376ab49
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x2a4fc8954b7
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7ccaa6024
or r11, rax
mov rdi, qword [0x14031d070]
movabs rax, 0xfe6c3f85cbeda659
imul rdi, rax
sub rdi, r8
mov rax, rbx
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a69da26029
xor rdi, rax
mov rax, r10
imul rax, r8
imul rax, rdi
mov rdx, r9
sub rdx, rax
movabs rax, 0x789589452f02c33
add rdx, rax
xor rdx, rbx
mov al, r9b
add al, al
lea ecx, [rax + r9]
shl cl, 2
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x38], rdx
jmp 0x140106506
mov r11, r10
imul r11, qword [0x14031d080]
mov rdx, qword [0x14031d068]
and r11, rdx
xor r11, rcx
ror r11, 1
imul r11, r8
mov rax, rbx
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de405331c8
imul rax, rcx
mov qword [rsp + 0x38], rax
imul rbx, qword [0x14031d060], 0xfffffffff63b4076
sub rbx, rdx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1401064f0
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rbx, cl
movabs rax, 0x4f43d5b0376ab49
add rbx, rax
add rbx, rsi
mov sil, 0x3f
movabs rax, 0xff055d7bb0183b05
mov rcx, qword [rsp + 0x40]
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x38]
imul r11, qword [r13 + rcx*8]
not r8
imul r8, r10
imul r8, rbx
imul r8, rdi
movabs rcx, 0xf5ed7e87b7ab71d9
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400c90b0
mov qword [0x140321f60], rax
cmp byte [rsp + 0x68], r14b
jne 0x140106584
xor eax, eax
mov byte [rsp + 0x7d], al
lea rcx, [rsp + 0x7d]
call fcn.1400e3870
mov byte [rsp + 0x68], r15b
mov dword [rsp + 0xb4], r14d
mov dword [rsp + 0xb4], 0x2d883fb7
mov eax, dword [rsp + 0xb4]
add eax, 0x4aec2932
xor eax, 0xbe86dcf0
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x2eb9ac86
xor eax, 0x3982bfda
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x84cff02
add eax, ecx
xor eax, 0x7e8b1b0d
add eax, 0x370f60be
xor eax, 0x5fdd8938
lea edx, [rcx - 0x171b5fb0]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xcd2baef8
sub edx, eax
mov eax, dword [0x14031d030]
xor eax, 0x32d45107
add eax, 0xc0711287
add eax, edx
xor eax, 0xc3ee40c8
mov dword [rsp + 0x30], eax
mov dword [rsp + 0xb4], eax
mov dword [rsp + 0xb8], r14d
mov dword [rsp + 0xb8], 0x9236c84d
mov eax, dword [rsp + 0xb8]
add eax, 0x4c219fa7
xor eax, 0x34fbde26
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x3049f3dd
xor eax, 0x6448738b
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x3528ecb6
add eax, ecx
xor eax, 0x92a1fef
sub eax, 0x14185bc3
xor eax, 0x2b9ac451
lea edx, [rcx + 0x1ab7a019]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xa13084d2
sub edx, eax
mov eax, dword [0x14031d030]
xor eax, 0x5ecf7b2d
add eax, 0x794e0a35
add eax, edx
xor eax, 0x27263eea
mov dword [rsp + 0x60], eax
mov dword [rsp + 0xb8], eax
movabs rax, 0xf867a0bb8ec7c852
mov qword [rsp + 0x40], rax
movabs rbx, 0x960e3c287b214b45
mov qword [rsp + 0x38], r14
movabs r11, 0x7613df1af9a1eb4b
mov rdi, qword [0x14031d070]
movabs rax, 0x83eaeb07e5759950
imul rdi, rax
not rdi
mov rax, qword [0x14031d060]
movabs rcx, 0x89ec20e5068fb9c9
xor rax, rcx
and rdi, rax
ror rdi, 4
shr rdi, 8
mov r9, qword [0x14031d080]
movabs rax, 0x6fa03160609c2260
imul r9, rax
movabs r8, 0x69f1c3d784deb4bb
sub r9, r8
movabs rax, 0xb97c560d7fffffff
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xe1
and ecx, 0x8000003f
jge 0x140106784
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
mov rdx, rax
movabs rcx, 0x4f6d28d59e118216
imul rdx, rcx
mov qword [rsp + 0x48], rdx
lea r10, [rdx + r8]
mov r8, r9
imul r8, rdi
sub r8, r10
movabs rcx, 0xf867a0bb8ec7c852
xor r8, rcx
mov cl, r10b
xor cl, 0xfe
and cl, 0xf
rol r8, cl
movabs rcx, 0x184bdc1512aa81ee
imul rax, rcx
movabs rcx, 0x6874e038cbeb8099
sub rax, rcx
xor r8, rax
mov rax, r10
sub rax, qword [0x14031d078]
xor r8, rax
mov rcx, r11
xor r8, rcx
mov rax, r8
and rax, r15
xor rax, 2
je 0x140106ad8
sub rax, 1
je 0x1401069dc
sub rax, 1
je 0x140106913
cmp rax, 1
jne 0x140106b57
mov rcx, r10
imul rcx, r9
movabs rax, 0x5e17ba478d4fe4ab
add rax, r8
xor rcx, rax
ror rcx, 0x3e
shr rcx, 0xc
not rcx
mov qword [rsp + 0x40], rcx
movabs rdx, 0x8357245f27f6
add rdx, qword [0x14031d088]
movabs rax, 0x697346afeb9ab3cb
xor rdx, rax
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97cbfcb09
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
mov rax, rbx
imul rcx, rax
mov eax, 0xad6419e3
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0x350631d81cb7804e
sub rbx, qword [rsp + 0x40]
shr rbx, cl
mov rcx, qword [rsp + 0x48]
movabs rax, 0x69f9e85fe4bf1deb
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, rdi
xor rbx, rax
jmp 0x140106b57
mov r9, r8
movabs rcx, 0xaaaaaa1aad7de4dd
xor r9, rcx
movabs rcx, 0x1206ed6f703891
imul r9, rcx
movabs rcx, 0xffff7e8a8b6dd601
imul rdx, rcx
movabs rcx, 0xe9f3bd843441a2d2
add r9, rcx
add r9, rdx
mov rcx, r9
movabs rax, 0x277cd7be7fad33bd
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r9
not r10
imul r10, qword [r13 + rcx*8]
xor r10, 0xfffffffff828320d
lea ecx, [r8 + 0x1f]
and cl, sil
rol r10, cl
movabs rax, 0xc2204c480000000
imul r10, rax
mov rcx, r10
ror rcx, 0x12
not rcx
movabs rax, 0x9b2de6b2c106c668
imul rcx, rax
mov rax, r9
sub rax, r10
lea rbx, [rcx + rax*4]
mov cl, dil
and cl, sil
ror rbx, cl
movabs rax, 0x960e3c287b214b45
imul rbx, rax
jmp 0x140106b57
movabs rax, 0x7a82751b20af287d
imul r8, rax
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
movabs r11, 0x7985f44713837ad
shl r11, cl
movabs rax, 0x7613df1af9a1eb4b
xor r11, rax
mov cl, r10b
and cl, sil
rol r11, cl
movabs rcx, 0x69f1c3d784deb4bb
add rcx, r8
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0xfffffc287b214b45
imul rax, rcx
xor r11, rax
movabs rax, 0xffffc7a7f1b992f0
or r11, rax
mov rbx, qword [0x14031d070]
movabs rax, 0xf867a0bb8ec7c852
imul rbx, rax
sub rbx, r10
mov rax, rdi
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a6a0b192fd
xor rbx, rax
mov rax, r8
imul rax, r10
imul rax, rbx
mov rdx, r9
sub rdx, rax
movabs rax, 0x78958946fe3dee7
add rdx, rax
xor rdx, rdi
mov al, r9b
add al, al
lea ecx, [rax + r9]
shl cl, 3
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x38], rdx
jmp 0x140106b57
mov r11, r8
imul r11, qword [0x14031d080]
and r11, qword [0x14031d088]
xor r11, rcx
ror r11, 0xb
imul r11, r10
mov rax, rdi
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de7d40c31c
imul rax, rcx
mov qword [rsp + 0x38], rax
imul rdi, qword [0x14031d060], 0xffffffffff2e5282
mov rdx, qword [0x14031d068]
sub rdi, rdx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140106b42
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
movabs rcx, 0x69f1c3d784deb4bb
add rdi, rcx
add rdi, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x40]
movabs rax, 0xff055d7b8d0bc9d1
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x38]
imul r11, qword [r13 + rcx*8]
not r10
imul r10, r8
imul r10, rdi
imul r10, rbx
movabs rcx, 0xf5ed7e878ab8830d
xor rcx, r9
not rcx
xor rcx, r10
sub rcx, r11
call fcn.1400b3f48
mov qword [0x140321f68], rax
mov dword [rsp + 0xbc], r14d
mov dword [rsp + 0xbc], 0xd64cc167
mov eax, dword [rsp + 0xbc]
add eax, 0xbe811835
xor eax, 0xad8a5085
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x245eedb9
xor eax, 0xb81f7d1b
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xd8e85490
add eax, ecx
xor eax, 0x8eb53a6d
add eax, 0x28c2c045
xor eax, 0x2df7750e
mov edx, dword [0x14031d030]
xor edx, 0x2505fd4b
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xdafa02b4
sub edx, eax
sub edx, ecx
sub edx, 0x10e55907
xor edx, 0x4d6eaebc
mov dword [rsp + 0xbc], edx
movsxd rax, edx
mov qword [rsp + 0x40], rax
mov dword [rsp + 0xbc], r14d
xor eax, eax
mov byte [rsp + 0x7e], al
lea rcx, [rsp + 0x7e]
call fcn.1400b5a94
mov qword [rsp + 0x220], r14
movabs rax, 0x58bfaf8484466085
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], r14
movabs rax, 0xfb5c19617ffa060
mov qword [rsp + 0x228], rax
movabs rcx, 0xf33a52b605fbba83
add rcx, qword [rsp + 0x228]
movabs rax, 0xdfd5366253099800
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80a6887dd2
add rcx, rax
movabs rax, 0xf8f8cd987386f043
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654b993615d40
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179a8612d594b
xor rcx, rax
movabs rax, 0x5f627dc6cd88f7ae
sub rcx, rax
movabs rax, 0xa3b3cd25e3fe812
xor rcx, rax
movabs rdx, 0xb483ce44c0f27bfa
add rdx, rcx
add rdx, rdi
not rdx
mov r10, qword [0x14031d038]
mov rax, r10
movabs rcx, 0x13cce94ad817ed3e
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14031d030]
mov rcx, r11
movabs rax, 0xec3316b527e812c1
xor rcx, rax
movabs rax, 0xe0b56d8db7db9693
add rdx, rax
add rdx, rcx
movabs rax, 0x6b4ab0480ae837be
xor rdx, rax
mov qword [rsp + 0x228], rdx
movabs rcx, 0xf33a52b6bc713703
add rcx, qword [rsp + 0x220]
movabs rax, 0x5c553662530a4e75
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f5b9ae2a4
sub rcx, rax
movabs rax, 0xf8f8cd97ba379dd1
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x47d654b89bb4e2c1
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a7910f5749
xor rcx, rax
movabs rax, 0x5f627dc6d7bd6e1c
sub rcx, rax
movabs rax, 0x263b3cd202ff7626
xor rcx, rax
movabs rax, 0x3483ce440f7a35e1
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94adaf1c330
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b5250e3ccf
xor r11, rax
movabs rax, 0xe0b56d90744ba685
add rcx, rax
add rcx, r11
movabs rax, 0x53603a364fdc13d0
xor rcx, rax
mov qword [rsp + 0x220], rcx
mov r9d, dword [rsp + 0x60]
and rcx, rdx
cmp r9, rcx
jne 0x140106f9a
mov qword [rsp + 0x230], r14
movabs rax, 0x61f2433f722307ee
mov qword [rsp + 0x230], rax
mov r8d, dword [rsp + 0x6c]
bts r8d, 0xa
mov dword [rsp + 0xe0], r8d
movabs rcx, 0xf33a52b6d96bd803
add rcx, qword [rsp + 0x230]
movabs rax, 0xfd553662530a6b70
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f5bf1d287
sub rcx, rax
movabs rax, 0xf8f8cd979cc9124d
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654b8745ead35
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0x5a9179a7700177a5
xor rcx, rax
movabs rax, 0x5f627dc6d6ff34c8
sub rcx, rax
movabs rax, 0x1e3b3cd1f4813dd1
xor rcx, rax
movabs rax, 0x3483ce43f34a6f48
add rax, rcx
add rdx, rax
not rdx
mov rax, qword [0x14031d038]
movabs rcx, 0x13cce94adb65adb4
xor rax, rcx
sub rdx, rax
mov rcx, qword [0x14031d030]
movabs rax, 0xec3316b5249a524b
xor rcx, rax
movabs rax, 0xe0b56d90e8e9cd09
add rax, rdx
add rax, rcx
movabs rcx, 0xb451e310a6b58bbc
xor rax, rcx
mov qword [rsp + 0x230], rax
jmp 0x140107040
mov dword [rsp + 0xc0], r14d
mov dword [rsp + 0xc0], 0x86ac36e6
mov r8d, dword [rsp + 0x6c]
bts r8d, 0xb
mov dword [rsp + 0xe0], r8d
mov eax, dword [rsp + 0xc0]
add eax, 0x9de9bbb5
xor eax, 0x510a2fee
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x5b3f4c31
xor eax, 0xd939370d
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xc525caa0
add eax, ecx
xor eax, 0xb3e1dfef
add eax, 0x221250f3
xor eax, 0x22442809
mov edx, dword [0x14031d030]
xor edx, 0x25885abd
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xda77a542
sub edx, eax
sub edx, ecx
sub edx, 0x3378a9f2
xor edx, 0xaf7e35ba
mov dword [rsp + 0xc0], edx
movsxd rax, edx
imul rax, r9
mov qword [rsp + 0x238], rax
bt r8d, 0xb
jae 0x140107064
btr r8d, 0xb
mov dword [rsp + 0xe0], r8d
mov dword [rsp + 0xc0], r14d
bt r8d, 0xa
jae 0x140107080
btr r8d, 0xa
mov dword [rsp + 0xe0], r8d
mov qword [rsp + 0x230], r14
mov qword [rsp + 0x228], r14
mov qword [rsp + 0x220], r14
mov dword [rsp + 0xc4], r14d
mov dword [rsp + 0xc4], 0xa3c6b51
mov qword [rsp + 0x240], r14
movabs rax, 0xa9cb031f5b3e6c08
mov qword [rsp + 0x240], rax
mov qword [rsp + 0x248], r14
movabs rax, 0x4e727c1849318cec
mov qword [rsp + 0x248], rax
movabs rcx, 0xf33a52b6a5f99d83
add rcx, qword [rsp + 0x248]
movabs rax, 0xc2d53662530a37fe
xor rcx, rax
mov r11, qword [0x14031d050]
sub rcx, r11
mov r10, qword [0x14031d058]
sub rcx, r10
movabs rax, 0x7120fb80a4a88429
add rcx, rax
movabs rax, 0xf8f8cd97d10915b7
xor rcx, rax
mov r9, qword [0x14031d048]
sub rcx, r9
movabs rax, 0x87d654b8ba343b9e
add rcx, rax
mov rbx, qword [0x14031d040]
add rcx, rbx
movabs rax, 0x5a9179a7aaafc25f
xor rcx, rax
movabs rax, 0x5f627dc6dd09863a
sub rcx, rax
movabs rax, 0xf23b3cd20e3bf6a3
xor rcx, rax
movabs rdx, 0xb483ce4425548a2f
add rdx, rcx
add rdx, rbx
not rdx
mov r8, qword [0x14031d038]
mov rax, r8
movabs rcx, 0x13cce94ada97e4ca
xor rax, rcx
sub rdx, rax
mov rdi, qword [0x14031d030]
mov rcx, rdi
movabs rax, 0xec3316b525681b35
xor rcx, rax
movabs rax, 0xe0b56d901a53219f
add rax, rdx
add rax, rcx
movabs rcx, 0xb55412256aa3abd2
xor rax, rcx
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x248], rax
movabs rcx, 0xf33a52b6d967ba03
add rcx, qword [rsp + 0x240]
movabs rax, 0xdf553662530a6b6c
xor rcx, rax
sub rcx, r11
sub rcx, r10
movabs rax, 0xedf047f5bf1c62d
sub rcx, rax
movabs rax, 0xf8f8cd979ccd40c5
xor rcx, rax
sub rcx, r9
movabs rax, 0xc7d654b8746443ee
add rcx, rax
add rcx, rbx
movabs rax, 0x5a9179a7700629dd
xor rcx, rax
movabs rax, 0x5f627dc6d70007d0
sub rcx, rax
movabs rax, 0xe3b3cd1f4834cf2
xor rcx, rax
movabs rdx, 0x3483ce43f34e7076
add rdx, rcx
add rdx, rbx
not rdx
mov rax, r8
movabs rcx, 0x13cce94adb659d3c
xor rax, rcx
sub rdx, rax
mov rcx, rdi
movabs rax, 0xec3316b5249a62c3
xor rcx, rax
movabs rax, 0xe0b56d90e8d94491
add rax, rdx
add rax, rcx
movabs rcx, 0xe195f4ab0aafbcb4
xor rax, rcx
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x240], rax
mov eax, dword [rsp + 0xc4]
add eax, 0xda677d35
xor eax, 0x128a6c6c
sub eax, r11d
sub eax, r10d
add eax, 0x240b3a8a
xor eax, 0x9bc97e87
sub eax, r9d
add eax, 0x33091677
add eax, ebx
xor eax, 0x6ee26f39
add eax, 0x2843e311
xor eax, 0xf803635b
xor edi, 0x249663b7
sub edi, eax
xor r8d, 0xdb699c48
sub edi, r8d
sub edi, ebx
add edi, 0x7a46ac4b
xor edi, 0x621e8f78
mov dword [rsp + 0xc4], edi
mov eax, dword [0x140322180]
test eax, eax
jne 0x140107323
mov rdx, r14
jmp 0x140107351
mov dword [rsp + 0x348], eax
lea rax, [rsp + 0x338]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x238]
mov ecx, dword [rsp + 0x30]
call fcn.140275ce0
mov rdx, rax
movsxd rax, edi
mov rcx, r14
cmp rdx, rax
setb cl
mov rdx, qword [rsp + 0x40]
and rdx, qword [rsp + 0x38]
mov rax, r14
cmp rcx, rdx
sete al
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x248], r14
mov qword [rsp + 0x240], r14
mov dword [rsp + 0xc4], r14d
movabs rax, 0xf2648d4800707f82
mov qword [rsp + 0x38], rax
movabs r9, 0x5bf26744427beda1
mov qword [rsp + 0x48], r9
mov r8, qword [0x14031d080]
movabs rax, 0xac20000000000000
imul r8, rax
movabs rax, 0xff10000000000000
xor r8, rax
mov qword [rsp + 0x50], r8
mov rcx, r8
imul rcx, r9
mov qword [rsp + 0x70], rcx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r8
and r10, r9
imul r10, qword [r13 + rcx*8]
movabs rax, 0x2a79bea58adc219c
imul r10, rax
shr r10, 3
movabs rax, 0xa1d1cd137e3f124e
xor r10, rax
mov rbx, r8
movabs rax, 0xffffff57c83c9edd
imul rbx, rax
sub rbx, 0x7cc5bb2
xor rbx, r10
xor rbx, qword [0x14031d060]
mov rax, r10
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bc18f21fc
imul rax, rcx
not rax
and rbx, rax
ror rbx, 0x2c
shr rbx, 8
movabs rcx, 0xa40d98bbbd84125f
add rcx, r8
xor rcx, 0xffffffffff012af1
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r11, qword [r13 + rcx*8]
movabs rax, 0x3122d6ce92638168
imul r11, rax
add r11, r9
mov rax, r10
movabs rcx, 0x67439894d1062b08
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rdi, r11
xor rdi, r8
movabs r8, 0xa40d98bbbd84125f
lea rcx, [r11 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xed
mov eax, 0x8000003f
and ecx, eax
jge 0x14010750f
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
not rdi
imul rdi, r10
imul rdx, rdi, 0xfffffffff833a44e
mov qword [rsp + 0x60], rdx
lea r9, [rdx + r8]
mov r8, r11
imul r8, rbx
sub r8, r9
movabs rcx, 0xf2648d4800707f82
xor r8, rcx
movzx ecx, r9b
mov dword [rsp + 0x30], ecx
xor ecx, 2
and ecx, 0xf
and ecx, eax
jge 0x14010755b
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r8, cl
mov rax, r9
sub rax, qword [0x14031d078]
xor r8, rax
movabs rax, 0xbe8890a6f5108b0e
imul rdi, rax
movabs rax, 0x294a11f2c6b680bf
add rdi, rax
xor r8, rdi
xor r8, r10
mov rdi, qword [rsp + 0x50]
xor r8, rdi
mov rax, r8
and rax, r15
xor rax, 2
je 0x1401078ff
sub rax, 1
je 0x1401077a9
sub rax, 1
je 0x1401076b6
cmp rax, 1
jne 0x1401079a6
mov rcx, r9
imul rcx, r11
movabs rax, 0xdb08fa9080d35c03
add rax, r8
xor rcx, rax
ror rcx, 0x16
shr rcx, 0xc
xor rcx, rdi
not rcx
mov qword [rsp + 0x38], rcx
movabs rdx, 0x8357237e2ffa
add rdx, qword [0x14031d088]
movabs rax, 0xa48f1dc3d5e11d23
xor rdx, rax
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97b9ec305
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rdx, 0x5bf26744427beda1
imul rcx, rdx
mov eax, 0xaa4511ef
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rsi, 0xa31a22607c4b0632
sub rsi, qword [rsp + 0x38]
shr rsi, cl
mov rcx, qword [rsp + 0x60]
movabs rax, 0xa415bd4416457383
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, rbx
xor rsi, rax
jmp 0x1401079ab
mov rcx, r8
movabs rax, 0xaaaaaa1aaa5cecd1
xor rcx, rax
movabs rax, 0x1206ed6851309d
imul rcx, rax
mov rax, r10
movabs r9, 0xfff17ca87d3edaad
xor rax, r9
sub rcx, rax
movabs rax, 0xffff7e8a8c4cde0d
imul rdx, rax
movabs r11, 0x3a6134e31c242ee0
add r11, rcx
add r11, rdx
mov rcx, r11
movabs rax, 0x277cd7be788c3bb1
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
imul r9, qword [r13 + rcx*8]
xor r9, 0xffffffffff093a01
lea ecx, [r8 + 0x13]
and cl, sil
rol r9, cl
mov rax, qword [rsp + 0x70]
movabs rcx, 0xfff5f23fe9f1cf4f
xor rax, rcx
movabs rcx, 0x7c7a7dc6960e30b0
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0xe
not rcx
movabs rax, 0x9b2de6b2dd82e658
imul rcx, rax
mov rax, r11
sub rax, r9
lea rax, [rcx + rax*4]
mov cl, bl
and cl, sil
mov rsi, rax
ror rsi, cl
movabs rdx, 0x5bf26744427beda1
imul rsi, rdx
jmp 0x1401079ab
movabs rax, 0x9f445a1d9012408f
imul r8, rax
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
mov rax, rdi
movabs rdx, 0xa40d98bbbd84125e
imul rax, rdx
movabs rdx, 0xf2648d4800707f82
xor rax, rdx
not rax
shl rax, cl
xor r10, rax
mov eax, dword [rsp + 0x30]
and eax, 0x8000003f
jge 0x14010780e
sub eax, r15d
or eax, 0xffffffc0
add eax, r15d
mov cl, al
rol r10, cl
movabs rcx, 0xa40d98bbbd84125f
add rcx, r8
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0xffffe744427beda1
imul rax, rcx
xor r10, rax
movabs rax, 0xffffc7a7f6989afc
or r10, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xf2648d4800707f82
imul rcx, rax
sub rcx, r9
mov rax, rbx
sub rax, r10
xor rcx, rax
movabs rax, 0xc7a7c6a6a7909af1
xor rcx, rax
mov qword [rsp + 0x48], rcx
movabs rax, 0xcccccccccccccccd
mul rdi
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rdi
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, qword [rsp + 0x48]
div rcx
mov rcx, rdx
mov rdx, r8
imul rdx, r9
imul rdx, qword [rsp + 0x48]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, rdi
mov rdi, rax
movabs rax, 0x789589468c2d6eb
add rdi, rax
xor rdi, rbx
mov al, r11b
shl al, 2
lea ecx, [rax + r11]
shl cl, 2
and cl, sil
rol rdi, cl
not rdi
jmp 0x1401079a6
mov rax, r12
mul r10
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r10
sub rcx, rax
mov rax, r8
imul rax, qword [0x14031d080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r10
and r10b, sil
mov cl, r10b
mov r10, rdx
ror r10, cl
imul r10, r9
not rbx
imul rbx, r11
movabs rax, 0x7cd8a7de7a61cb10
imul rbx, rax
mov rax, r10
imul rax, rdi
mov rdi, rbx
xor rdi, rax
imul rbx, qword [0x14031d060], 0xfffffffff833a44e
mov rdx, qword [0x14031d068]
sub rbx, rdx
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140107991
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rbx, cl
movabs rax, 0xa40d98bbbd84125f
add rbx, rax
add rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x38]
movabs rax, 0xff055d7b8a2ac1dd
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r10, rdi
imul r10, qword [r13 + rcx*8]
not r9
imul r9, r8
imul r9, rsi
imul r9, rbx
movabs rcx, 0xf5ed7e878d998b01
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r10
call fcn.1400b3ffc
mov qword [0x140321f70], rax
mov rax, qword [rsp + 0x40]
mov dword [rsp + 0xb8], r14d
mov dword [rsp + 0xb4], r14d
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0x6c], eax
jmp 0x1400fc88b
mov rax, qword [rsp + 0x8f8]
mov rax, qword [rax]
mov r14, qword [rax + 0x10]
and qword [rsp + 0x250], 0
movabs rax, 0xca268a02ef0ecce8
mov qword [rsp + 0x250], rax
and qword [rsp + 0x258], 0
movabs rax, 0x22ed1ecedc46ed08
mov qword [rsp + 0x258], rax
movabs rcx, 0xf33a52b071325983
add rcx, qword [rsp + 0x258]
movabs rax, 0x7ed5366253040336
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80b746d9f5
add rcx, rax
movabs rax, 0xf8f8cd9e1ea376c7
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x87d654c126d8b86c
add rcx, rax
mov rsi, qword [0x14031d040]
add rcx, rsi
movabs rax, 0x5a9179aebee30bef
xor rcx, rax
movabs rax, 0x5f627dc657c819ea
sub rcx, rax
movabs rax, 0x123b3cd528d13edd
xor rcx, rax
movabs rdx, 0xb483ce4a2eaa5b53
add rdx, rcx
add rdx, rsi
not rdx
movabs rcx, 0x13cce94ac1c4c7ba
mov r10, qword [0x14031d038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b53e3b3845
mov r11, qword [0x14031d030]
mov rcx, r11
xor rcx, rax
movabs rdi, 0xe0b56d776e252d0f
add rdi, rdx
add rdi, rcx
movabs rax, 0x33c4bec459988522
xor rdi, rax
mov qword [rsp + 0x258], rdi
movabs rcx, 0xf33a52b4476d5e03
add rcx, qword [rsp + 0x250]
movabs rax, 0x835536625307d971
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f543bd719
sub rcx, rax
movabs rax, 0xf8f8cd9a390f8635
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654bbf18b9bd0
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179aa5e87bacd
xor rcx, rax
movabs rax, 0x5f627dc785a6bce0
sub rcx, rax
movabs rax, 0xee3b3cd33d950ac5
xor rcx, rax
movabs rax, 0x3483ce46734af3f2
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad11db3cc
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b52ee24c33
xor r11, rax
movabs rbx, 0xe0b56d86b6a832a1
add rbx, rcx
add rbx, r11
movabs rax, 0x75cc49bfdc6361a4
xor rbx, rax
mov qword [rsp + 0x250], rbx
mov edx, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x8f8]
call r14
and rbx, rdi
xor esi, esi
mov qword [rsp + 0x258], rsi
mov qword [rsp + 0x250], rsi
cmp rax, rbx
jne 0x140107d08
mov dword [rsp + 0xc8], esi
mov dword [rsp + 0xc8], 0x7084207e
mov eax, dword [rsp + 0xc8]
add eax, 0x80d23737
xor eax, 0xcc8c12d6
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x1f17fa5c
xor eax, 0xeec5199d
sub eax, dword [0x14031d048]
mov rdx, qword [0x14031d040]
add eax, 0xf5a336fa
add eax, edx
xor eax, 0x8d10b30f
sub eax, 0x2f47b1f5
xor eax, 0x54c0d304
mov ecx, dword [0x14031d030]
xor ecx, 0x1dfcb8cf
sub ecx, eax
mov eax, dword [0x14031d038]
xor eax, 0xe2034730
sub ecx, eax
sub ecx, edx
lea eax, [rcx - 0x4a94b95a]
xor eax, 0x9f110fd0
mov dword [rsp + 0xc8], eax
mov dword [rsp + 0xc8], esi
jmp 0x1400fbd4c
mov rcx, qword [rsp + 0x8f8]
call fcn.1400838fc
movabs r14, 0x65bd7a9f00f60b6a
mov qword [rsp + 0x40], r14
movabs rbx, 0xe7a345a19d5993af
mov rdi, rsi
movabs rax, 0xd0fc24977ebeb282
movabs r11, 0x85c3b05322f1dc9b
mov rcx, qword [0x14031d070]
imul rcx, rax
not rcx
movabs r8, 0x7a3c4face6fed7cb
mov rax, qword [0x14031d060]
xor rax, r8
and rcx, rax
ror rcx, 0x38
shr rcx, 8
mov qword [rsp + 0x38], rcx
movabs rax, 0x7bfe4bc497fab620
mov r9, qword [0x14031d070]
imul r9, rax
movabs r8, 0x185cba5e62a66c51
sub r9, r8
movabs rax, 0x4d1aff8880000000
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xb7
and ecx, 0x8000003f
jge 0x140107dec
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, r9
ror rdx, cl
not rdx
movabs rcx, 0xe6908f2e9249970
mov rax, rdx
imul rax, rcx
mov qword [rsp + 0x48], rax
add r8, rax
mov r10, r9
imul r10, qword [rsp + 0x38]
sub r10, r8
xor r10, r14
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
movabs rax, 0x7f0ec9306c103390
imul rdx, rax
movabs rax, 0x77d9169aaae071a1
sub rdx, rax
xor r10, rdx
xor r10, r11
mov rax, r10
and eax, 3
je 0x140108129
sub rax, 1
mov r14b, 0x3f
je 0x140108034
sub rax, 1
je 0x140107f69
cmp rax, 1
jne 0x1401081b2
mov rcx, r8
imul rcx, r9
movabs rax, 0x88aea3c19e7301b7
add rax, r10
xor rcx, rax
shr rcx, 0xc
not rcx
mov qword [rsp + 0x40], rcx
movabs rdx, 0x835729315ca4
add rdx, qword [0x14031d088]
movabs rax, 0x18de3f26008c1077
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db971d1b05f
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rbx
mov eax, 0xa00a62b5
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0xb4fd3ded94827bd8
sub rbx, qword [rsp + 0x40]
shr rbx, cl
movabs rax, 0x1864dee6b5347ecb
mov rcx, qword [rsp + 0x48]
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x38]
xor rbx, rax
jmp 0x1401081b2
movabs rcx, 0xaaaaaa1aa0139f8b
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed621e43c7
imul r9, rcx
movabs rdx, 0xffff7e8a8603ad57
mov rcx, qword [rsp + 0x48]
imul rcx, rdx
movabs rdx, 0xb8b5569cd937c472
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be72c348eb
mov rcx, r9
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xfffffffff546495b
lea ecx, [r10 + 9]
and cl, r14b
rol r8, cl
movabs rax, 0x1c603c8280000000
imul r8, rax
mov rcx, r8
ror rcx, 0x3c
not rcx
movabs rax, 0x9b2de6b2f4bf2b30
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x38]
and cl, r14b
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
jmp 0x1401081b2
movabs rax, 0xd9b640924e534939
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0x9a428560ff09f495
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r8b
and cl, r14b
rol r11, cl
movabs rcx, 0x185cba5e62a66c51
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x5a19d5993af
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7fcd7e9a6
or r11, rax
mov rbx, qword [0x14031d070]
movabs rax, 0x65bd7a9f00f60b6a
imul rbx, rax
sub rbx, r8
mov rax, qword [rsp + 0x38]
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a6addfe9ab
xor rbx, rax
mov rax, r10
imul rax, r8
imul rax, rbx
mov rdi, r9
sub rdi, rax
movabs rax, 0x7895894628da5b1
add rdi, rax
xor rdi, qword [rsp + 0x38]
movzx eax, r9b
imul ecx, eax, 0xe
and cl, r14b
rol rdi, cl
not rdi
jmp 0x1401081b2
mov rcx, r10
imul rcx, qword [0x14031d080]
mov rdx, qword [0x14031d068]
and rcx, rdx
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x1b
imul r11, r8
mov rdi, qword [rsp + 0x38]
not rdi
imul rdi, r9
movabs rax, 0x7cd8a7de702eb84a
imul rdi, rax
imul r14, qword [0x14031d060], 0xffffffffc40f0b50
sub r14, rdx
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140108195
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror r14, cl
movabs rax, 0x185cba5e62a66c51
add rax, r14
add rax, qword [rsp + 0x48]
mov qword [rsp + 0x38], rax
mov r14b, 0x3f
movabs rax, 0xff055d7b8065b287
mov rcx, qword [rsp + 0x40]
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, rdi
imul r11, qword [r13 + rcx*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x38]
imul r8, rbx
movabs rcx, 0xf5ed7e8787d6f85b
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400c9650
mov qword [0x140321f78], rax
movabs rdi, 0xf16f7afb308053fb
movabs rbx, 0x1a6a6ebbc268734
mov qword [rsp + 0x40], rsi
movabs rax, 0x8f49af7aa2296f10
movabs r11, 0xaa1946a19d7ea1ea
mov rcx, qword [0x14031d070]
imul rcx, rax
not rcx
movabs rdx, 0x55e6b95e544aa4f4
mov rax, qword [0x14031d060]
xor rax, rdx
and rcx, rax
ror rcx, 0x2d
shr rcx, 8
mov qword [rsp + 0x38], rcx
movabs rax, 0x834bfdb2b79275b0
mov r9, qword [0x14031d088]
imul r9, rax
add r9, rbx
movabs rax, 0x7d8948fa80000000
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xfe59591443d978cc
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x79
and ecx, 0x8000003f
jge 0x1401082e5
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
mov qword [rsp + 0x48], rax
movabs rcx, 0xd5537f38b888b6c
imul rax, rcx
mov qword [rsp + 0x50], rax
add r8, rax
mov r10, r9
imul r10, qword [rsp + 0x38]
sub r10, r8
xor r10, rdi
movzx ecx, r8b
mov dword [rsp + 0x30], ecx
xor ecx, 6
and ecx, 0xf
jge 0x140108331
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r10, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
movabs rcx, 0x4337ccd95b4a45f0
mov rax, qword [rsp + 0x48]
imul rax, rcx
movabs rcx, 0x5033ba2735281d70
add rax, rcx
xor r10, rax
xor r10, r11
mov eax, 2
dec rax
sub rax, 1
je 0x140108469
cmp rax, 1
jne 0x140108530
mov rdi, r8
imul rdi, r9
movabs rax, 0x3db126c47132ee2c
add rax, r10
xor rdi, rax
ror rdi, 0x16
shr rdi, 0xc
not rdi
movabs rcx, 0x83572c490a6e
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0xfedbdc6c248b5222
xor rdx, rax
movzx eax, dil
movzx ecx, r10b
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db974a9e691
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rbx
mov eax, 0xa572347b
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0xd49e67c5bea5fea5
sub rbx, rdi
shr rbx, cl
movabs rax, 0xfe617d9c9bcfbd84
mov rcx, qword [rsp + 0x50]
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x38]
xor rbx, rax
jmp 0x140108530
movabs rcx, 0xaaaaaa1aa56bc945
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed67661509
imul r9, rcx
movabs rdx, 0xffff7e8a837bfb99
mov rcx, qword [rsp + 0x50]
imul rcx, rdx
movabs rdx, 0x972cc868c871d2b2
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be77bb1e25
mov rcx, r9
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xfffffffff03e1f95
lea ecx, [r10 + 7]
and cl, r14b
rol r8, cl
movabs rax, 0x186a758080000000
imul r8, rax
mov rcx, r8
ror rcx, 0x23
not rcx
movabs rax, 0x9b2de6b2e15e7008
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov rcx, qword [rsp + 0x38]
and cl, r14b
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
movabs rax, 0xff055d7b851de449
xor rdi, rax
mov rax, r12
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rdi, rax
xor r11, qword [rsp + 0x40]
imul r11, qword [r13 + rdi*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x38]
imul r8, rbx
movabs rcx, 0xf5ed7e8782aeae95
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400c8f48
mov qword [0x140321f40], rax
movabs rax, 0xf4525f0a08e72af6
mov qword [rsp + 0x40], rax
movabs r9, 0x3ff7d8f8aa3049c1
mov qword [rsp + 0x38], r9
movabs rax, 0xba78976000000000
mov rbx, qword [0x14031d070]
imul rbx, rax
movabs rax, 0x68c33c5000000000
xor rbx, rax
mov rcx, rbx
imul rcx, r9
mov qword [rsp + 0x48], rcx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, rbx
and r8, r9
imul r8, qword [r13 + rcx*8]
movabs rax, 0xa008db4a1f049abc
imul r8, rax
shr r8, 3
movabs rax, 0x80d6b4197d938efc
xor r8, rax
movabs rax, 0xffffff57c2e042e9
mov rdi, rbx
imul rdi, rax
sub rdi, 0xa6c8946
xor rdi, r8
xor rdi, qword [0x14031d060]
mov rax, r8
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bcb53fdc8
imul rax, rcx
not rax
and rdi, rax
ror rdi, 0x38
shr rdi, 8
movabs r10, 0xc008270755cfb63f
lea rcx, [rbx + r10]
xor rcx, 0xfffffffff5ddf6c5
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x908b252a1a23b9d0
mov r11, qword [r13 + rcx*8]
imul r11, rax
add r11, r9
movabs rcx, 0x52277d282e9e25d8
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rax, r11
xor rax, rbx
mov qword [rsp + 0x50], rax
lea rcx, [r11 + r10]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xd9
and ecx, 0x8000003f
jge 0x140108707
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, qword [rsp + 0x50]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0xfffffffff59376ba
mov qword [rsp + 0x50], rax
lea r9, [rax + r10]
mov r10, r11
imul r10, rdi
sub r10, r9
movabs rax, 0xf4525f0a08e72af6
xor r10, rax
movzx ecx, r9b
mov dword [rsp + 0x30], ecx
xor ecx, 6
and ecx, 0xf
jge 0x140108756
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r10, cl
mov rax, r9
sub rax, qword [0x14031d078]
xor r10, rax
movabs rax, 0x9f8fe9acf7e78c3a
imul rdx, rax
movabs rax, 0x4693effee605c7f
add rdx, rax
xor r10, rdx
xor r10, r8
xor r10, rbx
mov rax, r10
and rax, r15
xor rax, 2
je 0x140108afb
sub rax, 1
je 0x1401089ab
sub rax, 1
je 0x1401088b0
cmp rax, 1
jne 0x140108ba1
mov rcx, r9
imul rcx, r11
movabs rax, 0xb21c028f28cf8357
add rax, r10
xor rcx, rax
ror rcx, 2
shr rcx, 0xc
xor rcx, rbx
not rcx
mov qword [rsp + 0x40], rcx
movabs rdx, 0x835729a2f3ce
add rdx, qword [0x14031d088]
movabs rax, 0xc08aa27f37766577
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db971421f31
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0x3ff7d8f8aa3049c1
imul rcx, rax
mov eax, 0xa099cddb
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rax, 0xe60e9e616778312a
sub rax, qword [rsp + 0x40]
shr rax, cl
mov qword [rsp + 0x38], rax
movabs rcx, 0xc0104b8fa7ed7357
add rcx, qword [rsp + 0x50]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, rdi
xor qword [rsp + 0x38], rax
jmp 0x140108ba1
movabs rax, 0xaaaaaa1aa08030e5
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed628deca9
imul rcx, rax
movabs rdx, 0xfff17ca877e20699
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a86900239
mov rdx, qword [rsp + 0x50]
imul rdx, rax
movabs r11, 0x64957c09beac1440
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be7250e785
mov rcx, r11
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
imul r9, qword [r13 + rcx*8]
xor r9, 0xfffffffff5d5e635
lea ecx, [r10 - 0x19]
and cl, r14b
rol r9, cl
movabs rcx, 0x3c62188000000000
mov rax, qword [rsp + 0x48]
xor rax, rcx
movabs rcx, 0x7c7a7dc69cd2ec84
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0xe
not rcx
movabs rax, 0x9b2de6b2f6f19688
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, dil
and cl, r14b
ror rdx, cl
movabs rax, 0x3ff7d8f8aa3049c1
imul rdx, rax
mov qword [rsp + 0x38], rdx
jmp 0x140108ba1
movabs rax, 0x85679861f811455f
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0xc008270755cfb63e
mov rax, rbx
imul rax, rdx
movabs rdx, 0xf4525f0a08e72af6
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov eax, dword [rsp + 0x30]
and eax, 0x8000003f
jge 0x140108a10
sub eax, r15d
or eax, 0xffffffc0
add eax, r15d
mov cl, al
rol r8, cl
movabs rcx, 0xc008270755cfb63f
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x18f8aa3049c1
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7fc4446c8
or r8, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xf4525f0a08e72af6
imul rcx, rax
sub rcx, r9
mov rax, rdi
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a6ad4c46c5
xor rcx, rax
mov qword [rsp + 0x38], rcx
movabs rax, 0xcccccccccccccccd
mul rbx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rbx
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, qword [rsp + 0x38]
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r9
imul rdx, qword [rsp + 0x38]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, rbx
movabs rbx, 0x7895894621e0adf
add rbx, rax
xor rbx, rdi
movzx eax, r11b
imul ecx, eax, 0xe0
and cl, r14b
rol rbx, cl
not rbx
jmp 0x140108ba1
mov rax, r12
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r8
sub rcx, rax
mov rax, r10
imul rax, qword [0x14031d080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r8
and r8b, r14b
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r9
not rdi
imul rdi, r11
movabs rax, 0x7cd8a7de70bd1724
imul rdi, rax
mov rax, r8
imul rax, rbx
mov rbx, rdi
xor rbx, rax
imul rdi, qword [0x14031d060], 0xfffffffff59376ba
mov rdx, qword [0x14031d068]
sub rdi, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140108b8c
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
movabs rax, 0xc008270755cfb63f
add rdi, rax
add rdi, qword [rsp + 0x50]
movabs rax, 0xff055d7b80f61de9
mov rcx, qword [rsp + 0x40]
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r8, rbx
imul r8, qword [r13 + rcx*8]
not r9
imul r9, r10
imul r9, rdi
imul r9, qword [rsp + 0x38]
movabs rcx, 0xf5ed7e8787455735
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r8
call fcn.1400c8ffc
mov qword [0x140321f70], rax
movabs rdi, 0x3604e28e013f9cf3
movabs rbx, 0xfa8e9c24bfff3fc2
mov qword [rsp + 0x40], rsi
movabs rax, 0x24890d2cb068375a
movabs r11, 0x5a785538fb89ee2f
mov rcx, qword [0x14031d070]
imul rcx, rax
not rcx
movabs rdx, 0xa587aac70a832f1b
mov rax, qword [0x14031d060]
xor rax, rdx
and rcx, rax
ror rcx, 0x35
shr rcx, 8
mov qword [rsp + 0x38], rcx
movabs rax, 0x7152d847567bedc8
mov r9, qword [0x14031d088]
imul r9, rax
movabs r8, 0x57163db4000c03e
sub r9, r8
movabs rax, 0x6e70092600000000
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xd7
and ecx, 0x8000003f
jge 0x140108cd7
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
movabs rcx, 0x162e03a4a16bd08c
mov rdx, rax
imul rdx, rcx
mov qword [rsp + 0x48], rdx
add r8, rdx
mov r10, r9
imul r10, qword [rsp + 0x38]
sub r10, r8
xor r10, rdi
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
movabs rcx, 0x631725290b7a7e18
imul rax, rcx
movabs rcx, 0x48b53e33905d0f04
sub rax, rcx
xor r10, rax
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
xor r10, r11
mov rax, r10
and eax, 2
je 0x140109001
sub rax, 1
je 0x140108f18
sub rax, 1
je 0x140108e52
cmp rax, 1
jne 0x140109093
mov rdi, r8
imul rdi, r9
movabs rax, 0x4b85caf4720c57f2
add rax, r10
xor rdi, rax
ror rdi, 0xc
shr rdi, 0xc
not rdi
movabs rcx, 0xffff7ca8d5bc3fc4
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0xfa0c195cdea7df7a
xor rdx, rax
movzx eax, dil
movzx ecx, r10b
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0x83582468d5cd33f
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rbx
mov eax, 0xa378fe2b
sub rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0xfd690c2b6f4633ed
sub rbx, rdi
shr rbx, cl
movabs rax, 0x5693f52ee043158
mov rcx, qword [rsp + 0x48]
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x38]
xor rbx, rax
jmp 0x140109093
movabs rcx, 0x555555e55c9efceb
mov r9, r10
xor r9, rcx
movabs rcx, 0xffedf9129e9320a7
imul r9, rcx
movabs rcx, 0x81757a8ece37
imul rdx, rcx
movabs rcx, 0x909582ff9358dad1
add r9, rcx
add r9, rdx
movabs rax, 0xd88328418e4e2b8b
mov rcx, r9
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0x9cb2a3b
lea ecx, [r10 - 0x17]
and cl, r14b
rol r8, cl
movabs rax, 0x380002100000000
imul r8, rax
mov rdx, r8
ror rdx, 5
not rdx
movabs rax, 0x1934865341a2a9ac
imul rdx, rax
sub rdx, r8
add rdx, r9
shl rdx, 2
mov cl, byte [rsp + 0x38]
and cl, r14b
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
jmp 0x140109093
movabs rax, 0x6d65bd173073e8fc
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0xc9fb1d71fec0630c
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r8b
and cl, r14b
rol r11, cl
movabs rcx, 0x57163db4000c03e
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
imul rax, rbx
xor r11, rax
movabs rax, 0x3858005a8ac6
or r11, rax
mov rbx, qword [0x14031d070]
imul rbx, rdi
sub rbx, r8
mov rax, qword [rsp + 0x38]
sub rax, r11
xor rbx, rax
movabs rax, 0x3858395951528acb
xor rbx, rax
mov rax, r10
imul rax, r8
imul rax, rbx
mov rdx, r9
sub rdx, rax
movabs rax, 0x789589461ff392f
sub rdx, rax
xor rdx, qword [rsp + 0x38]
movzx eax, r9b
imul ecx, eax, 0xee
and cl, r14b
rol rdx, cl
not rdx
mov qword [rsp + 0x40], rdx
jmp 0x140109093
mov rcx, r10
imul rcx, qword [0x14031d080]
mov rdx, qword [0x14031d068]
and rcx, rdx
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x2f
imul r11, r8
mov rax, qword [rsp + 0x38]
not rax
imul rax, r9
movabs rcx, 0x832758218ca3db2a
imul rax, rcx
mov qword [rsp + 0x40], rax
imul rcx, qword [0x14031d060], 0xfffffffff10ac134
sub rcx, rdx
mov qword [rsp + 0x38], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140109074
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x38]
ror rax, cl
movabs rcx, 0x57163db4000c03e
add rax, rcx
add rax, qword [rsp + 0x48]
mov qword [rsp + 0x38], rax
movabs rax, 0xfaa2847ce8d1e7
xor rdi, rax
mov rax, r12
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rdi, rax
xor r11, qword [rsp + 0x40]
imul r11, qword [r13 + rdi*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x38]
imul r8, rbx
movabs rcx, 0xa1281787b5b9b3b
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400c9068
mov qword [0x140321f38], rax
xor eax, eax
mov byte [rsp + 0x7f], al
lea rcx, [rsp + 0x7f]
call fcn.1400e4514
mov qword [rsp + 0x260], rsi
movabs rax, 0xc22923a348821049
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x268], rsi
movabs rax, 0x70b6fdeaad8a7393
mov qword [rsp + 0x268], rax
movabs rcx, 0xcc5ad4b63b0503a
add rcx, qword [rsp + 0x268]
movabs rax, 0x758b4fedad9ef5b4
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x4ed45970e66f6011
add rcx, rax
movabs rax, 0x7074598c05b8836
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x5829ab43d2aebc06
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0xa56e8656024b5e88
xor rcx, rax
movabs rax, 0x2b02fde65ec30498
sub rcx, rax
movabs rax, 0x4fc4c32cdabaaf92
xor rcx, rax
movabs rdx, 0x95ab432978cdd659
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0xec3316b52d8ebf94
mov r10, qword [0x14031d038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0x13cce94ad271406b
mov r11, qword [0x14031d030]
mov rcx, r11
xor rcx, rax
movabs rax, 0x1f4a914fc426ffc2
add rdx, rax
add rdx, rcx
movabs rax, 0xe1f1130fb2e312dc
xor rdx, rax
mov qword [rsp + 0x268], rdx
movabs rcx, 0xf33a52b176d51283
add rcx, qword [rsp + 0x260]
movabs rax, 0x37d53662530508d9
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80b435f1ca
add rcx, rax
movabs rax, 0xf8f8cd9d14ea32e3
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654bfc3b2564c
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179ad947570eb
xor rcx, rax
movabs rax, 0x5f627dc6224e36ce
sub rcx, rax
movabs rax, 0x4a3b3cd4a5f7b547
xor rcx, rax
movabs rax, 0xb483ce49302f1562
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ac5db529e
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b53a24ad61
xor r11, rax
movabs rax, 0xe0b56d7b890663f3
add rcx, rax
add rcx, r11
movabs rax, 0x94486e4f992713de
xor rcx, rax
mov qword [rsp + 0x260], rcx
and rcx, rdx
movzx eax, byte [rsp + 0x68]
mov qword [rsp + 0x268], rsi
mov qword [rsp + 0x260], rsi
cmp rax, rcx
je 0x14010b5e7
movabs rax, 0x827c000000000000
mov r8, qword [0x14031d080]
imul r8, rax
movabs rax, 0x328f000000000000
xor r8, rax
mov qword [rsp + 0x40], r8
movabs rbx, 0x41134d31673e4cb4
mov rcx, r8
imul rcx, rbx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r8
and r10, rbx
imul r10, qword [r13 + rcx*8]
movabs rax, 0x99bb438edb52fc44
imul r10, rax
shr r10, 3
movabs rax, 0xe00104423d322c9f
xor r10, rax
movabs rax, 0xffffff57d69343a3
mov r9, r8
imul r9, rax
sub r9, 0x7631ac74
xor r9, r10
xor r9, qword [0x14031d060]
mov rax, r10
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bdf20fc82
imul rax, rcx
not rax
and r9, rax
ror r9, 7
shr r9, 8
movabs rcx, 0xbeecb2ce98c1b34c
add rcx, r8
xor rcx, 0xffffffffe1aef78f
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xd95aa3c1f38aec88
mov r11, qword [r13 + rcx*8]
imul r11, rax
add r11, rbx
movabs rcx, 0xe5a4ce3c92ca09f0
mov rax, r10
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rdi, r11
xor rdi, r8
movabs r8, 0xbeecb2ce98c1b34c
lea rcx, [r11 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x93
and ecx, 0x8000003f
jge 0x14010948e
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
not rdi
imul rdi, r10
imul rax, rdi, 0xffffffff89ce538c
mov qword [rsp + 0x38], rax
add r8, rax
mov rbx, r11
imul rbx, r9
sub rbx, r8
movabs rax, 0x27745a32144ed27b
xor rbx, rax
mov cl, r8b
xor cl, 0xfc
and cl, 0xf
rol rbx, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor rbx, rax
movabs rax, 0xff5859f7b5c84e70
imul rdi, rax
movabs rax, 0xba72a35e9d4a170
add rdi, rax
xor rbx, rdi
xor rbx, r10
xor rbx, qword [rsp + 0x40]
mov rax, r12
mul r10
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, r10
sub rdx, rax
mov rax, rbx
imul rax, qword [0x14031d080]
mov rdi, qword [r13 + rdx*8]
and rdi, rax
xor rdi, r10
and r10b, r14b
mov cl, r10b
ror rdi, cl
imul rdi, r8
not r9
imul r9, r11
movabs rax, 0x7cd8a7de64ce166e
imul r9, rax
mov rax, rdi
imul rax, qword [rsp + 0x40]
xor r9, rax
imul r8, qword [0x14031d060], 0xffffffff89ce538c
mov rdx, qword [0x14031d068]
sub r8, rdx
mov al, r9b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010958b
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror r8, cl
add r8, qword [rsp + 0x38]
movabs rax, 0x41134d31673e4cb4
imul r8, rax
movabs rax, 0xba72a35e9d4a170
add r8, rax
movabs rax, 0x41134d31673e4cb3
sub rax, qword [rsp + 0x38]
imul r8, rax
imul r8, rbx
movabs rcx, 0xf5ed7e879336567f
xor rcx, r11
not rcx
xor rcx, r8
xor rdi, r9
imul rdi, qword [0x14031d080]
sub rcx, rdi
call fcn.1400c91ac
mov qword [0x140321f30], rax
xor eax, eax
mov byte [rsp + 0x80], al
lea rcx, [rsp + 0x80]
call fcn.1400ef744
movabs rax, 0xf4432c971c4c8401
mov qword [rsp + 0x40], rax
movabs rbx, 0x354da79f4d64cecf
mov r11, rsi
movabs rdi, 0x4f2f4e6e057e6170
movabs rax, 0xd209bef625027780
mov r10, qword [0x14031d070]
imul r10, rax
not r10
movabs rdx, 0xb0d0b191ef0a114a
mov rax, qword [0x14031d060]
xor rax, rdx
and r10, rax
ror r10, 0x36
shr r10, 8
mov qword [rsp + 0x38], r10
movabs rax, 0xd936fa1b1cc3b4d0
mov r9, qword [0x14031d060]
imul r9, rax
add r9, rbx
movabs rax, 0x287966e700000000
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xcab25860b29b3131
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x59
and ecx, 0x8000003f
jge 0x1401096dc
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, r9
ror rdx, cl
not rdx
movabs rcx, 0xb869883910031360
mov rax, rdx
imul rax, rcx
mov qword [rsp + 0x48], rax
add r8, rax
imul r10, r9
sub r10, r8
movabs rax, 0xf4432c971c4c8401
xor r10, rax
movzx ecx, r8b
mov dword [rsp + 0x30], ecx
xor ecx, 6
and ecx, 0xf
jge 0x14010972b
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r10, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
movabs rax, 0x107ae7addd93eaa0
imul rdx, rax
movabs rax, 0x21093cc34136349f
add rdx, rax
xor r10, rdx
xor r10, rdi
mov rax, r10
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x140109a46
sub rax, 1
je 0x14010993e
sub rax, 1
je 0x140109873
cmp rax, 1
jne 0x140109ada
mov rcx, r8
imul rcx, r9
movabs rax, 0x4ea2206479a56319
add rax, r10
xor rcx, rax
ror rcx, 0xe
shr rcx, 0xc
not rcx
mov qword [rsp + 0x40], rcx
movabs rdx, 0x8357291ab94e
add rdx, qword [0x14031d088]
movabs rax, 0xca30dd18d09aa8f9
xor rdx, rax
movzx eax, r10b
movzx ecx, cl
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db971fa55b1
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rbx
mov eax, 0xa021875b
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0x3aab5f71a8099948
sub rbx, qword [rsp + 0x40]
shr rbx, cl
movabs rax, 0xcaba7ce9054128c9
mov rcx, qword [rsp + 0x48]
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x38]
xor rbx, rax
jmp 0x140109ada
movabs rcx, 0xaaaaaa1aa0387a65
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed6235a629
imul r9, rcx
movabs rdx, 0xffff7e8a862848b9
mov rcx, qword [rsp + 0x48]
imul rcx, rdx
movabs rdx, 0xd825224a21a86fb9
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be72e8ad05
mov rcx, r9
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xfffffffff56dacb5
lea ecx, [r10 - 0x19]
and cl, r14b
rol r8, cl
movabs rax, 0x1c726d4680000000
imul r8, rax
mov rcx, r8
ror rcx, 0x39
not rcx
movabs rax, 0x9b2de6b2f410bc88
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x38]
and cl, r14b
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
jmp 0x140109ada
movabs rax, 0x660a1e0fb4868489
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0xbbcd368e3b37bfe
shl rdx, cl
mov rax, rdi
mov rdi, rdx
xor rdi, rax
mov eax, dword [rsp + 0x30]
and eax, 0x8000003f
jge 0x140109992
sub eax, r15d
or eax, 0xffffffc0
add eax, r15d
mov cl, al
rol rdi, cl
movabs rcx, 0xcab25860b29b3131
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffe79f4d64cecf
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor rdi, rax
movabs rax, 0xffffc7a7fcfc0c48
or rdi, rax
mov rbx, qword [0x14031d070]
movabs rax, 0xf4432c971c4c8401
imul rbx, rax
sub rbx, r8
mov rax, qword [rsp + 0x38]
sub rax, rdi
xor rbx, rax
movabs rax, 0xc7a7c6a6adf40c45
xor rbx, rax
mov rax, r8
imul rax, r10
imul rax, rbx
mov r11, r9
sub r11, rax
movabs rax, 0x789589462a6405f
add r11, rax
xor r11, qword [rsp + 0x38]
movzx eax, r9b
imul ecx, eax, 0xe0
and cl, r14b
rol r11, cl
not r11
jmp 0x140109ada
mov rcx, r10
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d060]
mov rax, rdi
mov rdi, rcx
xor rdi, rax
ror rdi, 0x30
imul rdi, r8
mov r11, qword [rsp + 0x38]
not r11
imul r11, r9
movabs rax, 0x7cd8a7de70055da4
imul r11, rax
imul rax, qword [0x14031d060], 0xffffffffea74703a
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x38], rax
mov al, r11b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140109abb
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x38]
ror rax, cl
movabs rcx, 0xcab25860b29b3131
add rax, rcx
add rax, qword [rsp + 0x48]
mov qword [rsp + 0x38], rax
movabs rax, 0xff055d7b804e5769
mov rcx, qword [rsp + 0x40]
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, rdi
imul r11, qword [r13 + rcx*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x38]
imul r8, rbx
movabs rcx, 0xf5ed7e8787fd1db5
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400c92a8
mov qword [0x140321f60], rax
movabs rax, 0x498c167a9644ac00
mov r8, qword [0x14031d060]
imul r8, rax
movabs rax, 0x6ed8a9dcd22c684b
xor r8, rax
mov qword [rsp + 0x40], r8
movabs rbx, 0x7ffead26bf5c4400
mov rcx, r8
imul rcx, rbx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r8
and r10, rbx
imul r10, qword [r13 + rcx*8]
movabs rax, 0x51669a423a3c8f7c
imul r10, rax
shr r10, 3
movabs rax, 0x7dbeb5420a2bd9b7
xor r10, rax
movabs rax, 0xffffff57c6401967
mov r9, r8
imul r9, rax
sub r9, 0x1b74b44c
xor r9, r10
xor r9, qword [0x14031d060]
mov rax, r10
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bcff3a646
imul rax, rcx
not rax
and r9, rax
ror r9, 0x37
shr r9, 8
movabs rcx, 0x800152d940a3bc00
add rcx, r8
xor rcx, 0xfffffffff17dad4b
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x165874888ee190c8
mov r11, qword [r13 + rcx*8]
imul r11, rax
add r11, rbx
movabs rcx, 0x263059ea5912b000
mov rax, r10
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rdi, r11
xor rdi, r8
movabs r8, 0x800152d940a3bc00
lea rcx, [r11 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x57
and ecx, 0x8000003f
jge 0x140109ca1
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
not rdi
imul rdi, r10
imul rax, rdi, 0xffffffffe48b4bb4
mov qword [rsp + 0x38], rax
add r8, rax
mov rbx, r11
imul rbx, r9
sub rbx, r8
movabs rax, 0x34d25abd6d2d7c7b
xor rbx, rax
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol rbx, cl
movabs rax, 0x62e7e8f780cbd000
imul rdi, rax
movabs rax, 0x256feb8f2100000
sub rdi, rax
xor rbx, rdi
mov rax, r8
sub rax, qword [0x14031d078]
xor rbx, rax
xor rbx, r10
xor rbx, qword [rsp + 0x40]
mov rax, r12
mul r10
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, r10
sub rdx, rax
mov rax, rbx
imul rax, qword [0x14031d080]
mov rdi, qword [r13 + rdx*8]
and rdi, rax
xor rdi, r10
and r10b, r14b
mov cl, r10b
ror rdi, cl
imul rdi, r8
not r9
imul r9, r11
movabs rax, 0x7cd8a7de741d4caa
imul r9, rax
mov rax, rdi
imul rax, qword [rsp + 0x40]
xor r9, rax
mov r10, qword [0x14031d060]
imul r8, r10, 0xffffffffe48b4bb4
mov rdx, qword [0x14031d068]
sub r8, rdx
mov al, r9b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140109da1
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror r8, cl
add r8, qword [rsp + 0x38]
movabs rax, 0x7ffead26bf5c4400
imul r8, rax
movabs rax, 0x256feb8f2100000
sub r8, rax
movabs rax, 0x7ffead26bf5c43ff
sub rax, qword [rsp + 0x38]
imul r8, rax
imul r8, rbx
movabs rcx, 0xf5ed7e8783e50cbb
xor rcx, r11
not rcx
xor rcx, r8
xor rdi, r9
imul rdi, r10
sub rcx, rdi
call fcn.1400c9218
mov qword [0x140321f90], rax
mov ebx, esi
mov edi, 0xa94f6432
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, 8
test ebx, ebx
je 0x140109e76
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x81f26902
jmp 0x140109e68
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x140109e48
cmp r9d, ebx
jne 0x140109f31
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov r11d, ecx
add r11, r10
shr rcx, 0x20
cmp r11, r10
je 0x140109f31
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x140109f31
mov r9d, dword [r11 + 0x20]
dec r8d
mov dword [rsp + 0x30], r8d
mov edx, r8d
mov qword [rsp + 0x40], rdx
lea rdx, [r9 + r8*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov edx, 0x81f26902
mov r8b, byte [r9]
mov byte [rsp + 0x68], r8b
add r9, r15
test r8b, r8b
mov r8d, dword [rsp + 0x30]
je 0x140109f20
mov r10d, edx
mov dl, byte [rsp + 0x68]
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, 0x4764996c
xor r8d, r10d
mov r10d, edx
imul r10d, r8d
mov dl, byte [r9]
add r9, r15
test dl, dl
jne 0x140109ee6
mov dword [rsp + 0x60], r10d
mov r10, qword [rax + 0x30]
mov edx, dword [rsp + 0x60]
mov r8d, dword [rsp + 0x30]
cmp edx, edi
je 0x140109f39
test r8d, r8d
mov r9d, dword [r11 + 0x20]
jne 0x140109eaa
mov rax, qword [rax]
jmp 0x140109e1c
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov eax, dword [r11 + 0x24]
add rax, r10
mov r8, qword [rsp + 0x40]
movzx eax, word [rax + r8*2]
mov r9d, dword [rdx + rax*4]
add r9, r10
cmp r9, r11
jbe 0x140109fc9
lea rax, [r11 + rcx]
cmp r9, rax
jae 0x140109fc9
mov ebx, 0x81f26902
mov edi, ebx
jmp 0x140109f89
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, ebx
mov ebx, eax
imul ebx, ecx
add r9, r15
mov al, byte [r9]
cmp al, 0x2e
jne 0x140109f6f
jmp 0x140109fa9
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, edi
mov edi, eax
imul edi, ecx
add r9, r15
mov al, byte [r9]
test al, al
jne 0x140109f92
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x140109f31
mov dword [rsp + 0xcc], esi
mov dword [rsp + 0xcc], 0x72dda3a0
mov eax, dword [rsp + 0xcc]
add eax, 0x47ac1f33
xor eax, 0xb487d9b0
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x2bc36ca4
xor eax, 0x38cfca01
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xb1366c93
add eax, ecx
xor eax, 0x5e402673
add eax, 0x7aa9fe68
xor eax, 0x3175a837
lea edx, [rcx - 0xcf215f7]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xd11eaed0
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x2ee1512f
add ecx, 0xb7a5ea63
add ecx, edx
xor ecx, 0x1ec1e830
mov dword [rsp + 0xcc], ecx
mov dword [rsp + 0xd0], esi
mov dword [rsp + 0xd0], 0x65046351
mov eax, dword [rsp + 0xd0]
add eax, 0x6b0a
xor eax, 0x5ed513
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x592ebc33
xor eax, 0x248df260
sub eax, dword [0x14031d048]
mov rdx, qword [0x14031d040]
add eax, 0xdb2dc18f
add eax, edx
xor eax, 0xd2f3c558
add eax, 0x6914078e
xor eax, 0xf693a734
lea r8d, [rdx + 0x1b9952d4]
add r8d, eax
not r8d
mov eax, dword [0x14031d038]
xor eax, 0x2d0c3a9a
sub r8d, eax
mov ebx, dword [0x14031d030]
xor ebx, 0xd2f3c565
add ebx, 0x34e2ee09
add ebx, r8d
xor ebx, 0x2319a0c2
mov dword [rsp + 0xd0], ebx
call r9
movsx ecx, ax
and ecx, ebx
mov dword [rsp + 0xd0], esi
mov dword [rsp + 0xcc], esi
jne 0x14010b5d1
mov dword [rsp + 0xd4], esi
mov dword [rsp + 0xd4], 0x2803c649
mov eax, dword [rsp + 0xd4]
add eax, 0x7a2ccb3
xor eax, 0x620799a7
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x537c7764
xor eax, 0x79d941cb
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xc823140f
add eax, ecx
xor eax, 0xa74ac88d
sub eax, 0x54588f1a
xor eax, 0xe57c51c1
lea edx, [rcx - 0x4ea904b8]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xd01e8986
sub edx, eax
mov eax, dword [0x14031d030]
xor eax, 0x2fe17679
add eax, 0xb680c398
add eax, edx
xor eax, 0xea98c456
mov dword [rsp + 0x30], eax
mov dword [rsp + 0xd4], eax
mov dword [rsp + 0xd8], esi
mov dword [rsp + 0xd8], 0xa465f267
mov eax, dword [rsp + 0xd8]
add eax, 0x837be630
xor eax, 0x7b851580
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x340ffd4f
xor eax, 0x810c3e8
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xf285e1f7
add eax, ecx
xor eax, 0x8607277b
sub eax, 0x1152d117
xor eax, 0x5ba3e63b
lea edx, [rcx - 0x5c1f2e83]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xc60dedec
sub edx, eax
mov eax, dword [0x14031d030]
xor eax, 0x39f21213
add eax, 0xbbd24574
add eax, edx
xor eax, 0x22db4084
mov dword [rsp + 0x60], eax
mov dword [rsp + 0xd8], eax
movabs rax, 0xf867a0bb8ec7c852
mov qword [rsp + 0x40], rax
movabs rbx, 0x960e3c287b214b45
mov rdi, rsi
movabs r11, 0x7613df1af9a1eb4b
mov rcx, qword [0x14031d070]
movabs rax, 0x83eaeb07e5759950
imul rcx, rax
not rcx
mov rax, qword [0x14031d060]
movabs rdx, 0x89ec20e5068fb9c9
xor rax, rdx
and rcx, rax
ror rcx, 4
shr rcx, 8
mov qword [rsp + 0x38], rcx
mov r9, qword [0x14031d080]
movabs rax, 0x6fa03160609c2260
imul r9, rax
movabs r8, 0x69f1c3d784deb4bb
sub r9, r8
movabs rax, 0xb97c560d7fffffff
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xe1
and ecx, 0x8000003f
jge 0x14010a313
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, r9
ror rdx, cl
not rdx
mov rax, rdx
movabs rcx, 0x4f6d28d59e118216
imul rax, rcx
mov qword [rsp + 0x48], rax
add r8, rax
mov r10, r9
imul r10, qword [rsp + 0x38]
sub r10, r8
movabs rax, 0xf867a0bb8ec7c852
xor r10, rax
mov cl, r8b
xor cl, 0xfe
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
movabs rax, 0x184bdc1512aa81ee
imul rdx, rax
movabs rax, 0x6874e038cbeb8099
sub rdx, rax
xor r10, rdx
mov rcx, r11
xor r10, rcx
mov rax, r10
and rax, r15
xor rax, 2
je 0x14010a672
sub rax, 1
je 0x14010a574
sub rax, 1
je 0x14010a4a5
cmp rax, 1
jne 0x14010a700
mov rcx, r8
imul rcx, r9
movabs rax, 0x5e17ba478d4fe4ab
add rax, r10
xor rcx, rax
ror rcx, 0x3e
shr rcx, 0xc
not rcx
mov qword [rsp + 0x40], rcx
movabs rdx, 0x8357245f27f6
add rdx, qword [0x14031d088]
movabs rax, 0x697346afeb9ab3cb
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97cbfcb09
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
mov rax, rbx
imul rcx, rax
mov eax, 0xad6419e3
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0x350631d81cb7804e
sub rbx, qword [rsp + 0x40]
shr rbx, cl
mov rcx, qword [rsp + 0x48]
movabs rax, 0x69f9e85fe4bf1deb
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x38]
xor rbx, rax
jmp 0x14010a700
mov r9, r10
movabs rcx, 0xaaaaaa1aad7de4dd
xor r9, rcx
movabs rcx, 0x1206ed6f703891
imul r9, rcx
mov rcx, qword [rsp + 0x48]
movabs rdx, 0xffff7e8a8b6dd601
imul rcx, rdx
movabs rdx, 0xe9f3bd843441a2d2
add r9, rdx
add r9, rcx
mov rcx, r9
movabs rax, 0x277cd7be7fad33bd
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xfffffffff828320d
lea ecx, [r10 + 0x1f]
and cl, r14b
rol r8, cl
movabs rax, 0xc2204c480000000
imul r8, rax
mov rcx, r8
ror rcx, 0x12
not rcx
movabs rax, 0x9b2de6b2c106c668
imul rcx, rax
mov rax, r9
sub rax, r8
lea rbx, [rcx + rax*4]
mov cl, byte [rsp + 0x38]
and cl, r14b
ror rbx, cl
movabs rax, 0x960e3c287b214b45
imul rbx, rax
jmp 0x14010a700
movabs rax, 0x7a82751b20af287d
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs r11, 0x7985f44713837ad
shl r11, cl
movabs rax, 0x7613df1af9a1eb4b
xor r11, rax
mov cl, r8b
and cl, r14b
rol r11, cl
movabs rcx, 0x69f1c3d784deb4bb
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0xfffffc287b214b45
imul rax, rcx
xor r11, rax
movabs rax, 0xffffc7a7f1b992f0
or r11, rax
mov rbx, qword [0x14031d070]
movabs rax, 0xf867a0bb8ec7c852
imul rbx, rax
sub rbx, r8
mov rax, qword [rsp + 0x38]
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a6a0b192fd
xor rbx, rax
mov rax, r10
imul rax, r8
imul rax, rbx
mov rdi, r9
sub rdi, rax
movabs rax, 0x78958946fe3dee7
add rdi, rax
xor rdi, qword [rsp + 0x38]
mov al, r9b
add al, al
lea ecx, [rax + r9]
shl cl, 3
and cl, r14b
rol rdi, cl
not rdi
jmp 0x14010a700
mov r11, r10
imul r11, qword [0x14031d080]
and r11, qword [0x14031d088]
xor r11, rcx
ror r11, 0xb
imul r11, r8
mov rdi, qword [rsp + 0x38]
not rdi
imul rdi, r9
movabs rax, 0x7cd8a7de7d40c31c
imul rdi, rax
imul rax, qword [0x14031d060], 0xffffffffff2e5282
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x38], rax
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010a6e1
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x38]
ror rax, cl
movabs rcx, 0x69f1c3d784deb4bb
add rax, rcx
add rax, qword [rsp + 0x48]
mov qword [rsp + 0x38], rax
mov rcx, qword [rsp + 0x40]
movabs rax, 0xff055d7b8d0bc9d1
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, rdi
imul r11, qword [r13 + rcx*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x38]
imul r8, rbx
movabs rcx, 0xf5ed7e878ab8830d
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400b3f48
mov qword [0x140321f68], rax
mov dword [rsp + 0xdc], esi
mov dword [rsp + 0xdc], 0xd64cc167
mov eax, dword [rsp + 0xdc]
add eax, 0xbe811835
xor eax, 0xad8a5085
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x245eedb9
xor eax, 0xb81f7d1b
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xd8e85490
add eax, ecx
xor eax, 0x8eb53a6d
add eax, 0x28c2c045
xor eax, 0x2df7750e
mov edx, dword [0x14031d030]
xor edx, 0x2505fd4b
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xdafa02b4
sub edx, eax
sub edx, ecx
sub edx, 0x10e55907
xor edx, 0x4d6eaebc
mov dword [rsp + 0xdc], edx
movsxd rax, edx
mov qword [rsp + 0x40], rax
mov dword [rsp + 0xdc], esi
xor eax, eax
mov byte [rsp + 0x81], al
lea rcx, [rsp + 0x81]
call fcn.1400b5a94
mov qword [rsp + 0x270], rsi
movabs rax, 0x58bfaf8484466085
mov qword [rsp + 0x270], rax
mov qword [rsp + 0x278], rsi
movabs rax, 0xfb5c19617ffa060
mov qword [rsp + 0x278], rax
movabs rcx, 0xf33a52b605fbba83
add rcx, qword [rsp + 0x278]
movabs rax, 0xdfd5366253099800
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80a6887dd2
add rcx, rax
movabs rax, 0xf8f8cd987386f043
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654b993615d40
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179a8612d594b
xor rcx, rax
movabs rax, 0x5f627dc6cd88f7ae
sub rcx, rax
movabs rax, 0xa3b3cd25e3fe812
xor rcx, rax
movabs rdx, 0xb483ce44c0f27bfa
add rdx, rcx
add rdx, rdi
not rdx
mov r10, qword [0x14031d038]
mov rax, r10
movabs rcx, 0x13cce94ad817ed3e
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14031d030]
mov rcx, r11
movabs rax, 0xec3316b527e812c1
xor rcx, rax
movabs rax, 0xe0b56d8db7db9693
add rdx, rax
add rdx, rcx
movabs rax, 0x6b4ab0480ae837be
xor rdx, rax
mov qword [rsp + 0x278], rdx
movabs rcx, 0xf33a52b6bc713703
add rcx, qword [rsp + 0x270]
movabs rax, 0x5c553662530a4e75
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f5b9ae2a4
sub rcx, rax
movabs rax, 0xf8f8cd97ba379dd1
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x47d654b89bb4e2c1
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a7910f5749
xor rcx, rax
movabs rax, 0x5f627dc6d7bd6e1c
sub rcx, rax
movabs rax, 0x263b3cd202ff7626
xor rcx, rax
movabs rax, 0x3483ce440f7a35e1
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94adaf1c330
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b5250e3ccf
xor r11, rax
movabs rax, 0xe0b56d90744ba685
add rcx, rax
add rcx, r11
movabs rax, 0x53603a364fdc13d0
xor rcx, rax
mov qword [rsp + 0x270], rcx
mov r9d, dword [rsp + 0x60]
and rcx, rdx
cmp r9, rcx
jne 0x14010ab4a
mov qword [rsp + 0x280], rsi
movabs rax, 0x61f2433f722307ee
mov qword [rsp + 0x280], rax
mov r8d, dword [rsp + 0xe0]
bts r8d, 0x10
mov dword [rsp + 0xe0], r8d
movabs rcx, 0xf33a52b6d96bd803
add rcx, qword [rsp + 0x280]
movabs rax, 0xfd553662530a6b70
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f5bf1d287
sub rcx, rax
movabs rax, 0xf8f8cd979cc9124d
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654b8745ead35
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0x5a9179a7700177a5
xor rcx, rax
movabs rax, 0x5f627dc6d6ff34c8
sub rcx, rax
movabs rax, 0x1e3b3cd1f4813dd1
xor rcx, rax
movabs rax, 0x3483ce43f34a6f48
add rax, rcx
add rdx, rax
not rdx
mov rax, qword [0x14031d038]
movabs rcx, 0x13cce94adb65adb4
xor rax, rcx
sub rdx, rax
mov rcx, qword [0x14031d030]
movabs rax, 0xec3316b5249a524b
xor rcx, rax
movabs rax, 0xe0b56d90e8e9cd09
add rax, rdx
add rax, rcx
movabs rcx, 0xb451e310a6b58bbc
xor rax, rcx
mov qword [rsp + 0x280], rax
jmp 0x14010abf2
mov dword [rsp + 0xfc], esi
mov dword [rsp + 0xfc], 0x86ac36e6
mov r8d, dword [rsp + 0xe0]
bts r8d, 0x11
mov dword [rsp + 0xe0], r8d
mov eax, dword [rsp + 0xfc]
add eax, 0x9de9bbb5
xor eax, 0x510a2fee
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x5b3f4c31
xor eax, 0xd939370d
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xc525caa0
add eax, ecx
xor eax, 0xb3e1dfef
add eax, 0x221250f3
xor eax, 0x22442809
mov edx, dword [0x14031d030]
xor edx, 0x25885abd
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xda77a542
sub edx, eax
sub edx, ecx
sub edx, 0x3378a9f2
xor edx, 0xaf7e35ba
mov dword [rsp + 0xfc], edx
movsxd rax, edx
imul rax, r9
mov qword [rsp + 0x288], rax
bt r8d, 0x11
jae 0x14010ac15
btr r8d, 0x11
mov dword [rsp + 0xe0], r8d
mov dword [rsp + 0xfc], esi
bt r8d, 0x10
jae 0x14010ac31
btr r8d, 0x10
mov dword [rsp + 0xe0], r8d
mov qword [rsp + 0x280], rsi
mov qword [rsp + 0x278], rsi
mov qword [rsp + 0x270], rsi
mov dword [rsp + 0xe4], esi
mov dword [rsp + 0xe4], 0xa3c6b51
mov qword [rsp + 0x290], rsi
movabs rax, 0xa9cb031f5b3e6c08
mov qword [rsp + 0x290], rax
mov qword [rsp + 0x298], rsi
movabs rax, 0x4e727c1849318cec
mov qword [rsp + 0x298], rax
movabs rcx, 0xf33a52b6a5f99d83
add rcx, qword [rsp + 0x298]
movabs rax, 0xc2d53662530a37fe
xor rcx, rax
mov r11, qword [0x14031d050]
sub rcx, r11
mov r10, qword [0x14031d058]
sub rcx, r10
movabs rax, 0x7120fb80a4a88429
add rcx, rax
movabs rax, 0xf8f8cd97d10915b7
xor rcx, rax
mov r9, qword [0x14031d048]
sub rcx, r9
movabs rax, 0x87d654b8ba343b9e
add rcx, rax
mov rbx, qword [0x14031d040]
add rcx, rbx
movabs rax, 0x5a9179a7aaafc25f
xor rcx, rax
movabs rax, 0x5f627dc6dd09863a
sub rcx, rax
movabs rax, 0xf23b3cd20e3bf6a3
xor rcx, rax
movabs rdx, 0xb483ce4425548a2f
add rdx, rcx
add rdx, rbx
not rdx
mov r8, qword [0x14031d038]
mov rax, r8
movabs rcx, 0x13cce94ada97e4ca
xor rax, rcx
sub rdx, rax
mov rdi, qword [0x14031d030]
mov rcx, rdi
movabs rax, 0xec3316b525681b35
xor rcx, rax
movabs rax, 0xe0b56d901a53219f
add rax, rdx
add rax, rcx
movabs rcx, 0xb55412256aa3abd2
xor rax, rcx
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x298], rax
movabs rcx, 0xf33a52b6d967ba03
add rcx, qword [rsp + 0x290]
movabs rax, 0xdf553662530a6b6c
xor rcx, rax
sub rcx, r11
sub rcx, r10
movabs rax, 0xedf047f5bf1c62d
sub rcx, rax
movabs rax, 0xf8f8cd979ccd40c5
xor rcx, rax
sub rcx, r9
movabs rax, 0xc7d654b8746443ee
add rcx, rax
add rcx, rbx
movabs rax, 0x5a9179a7700629dd
xor rcx, rax
movabs rax, 0x5f627dc6d70007d0
sub rcx, rax
movabs rax, 0xe3b3cd1f4834cf2
xor rcx, rax
movabs rdx, 0x3483ce43f34e7076
add rdx, rcx
add rdx, rbx
not rdx
mov rax, r8
movabs rcx, 0x13cce94adb659d3c
xor rax, rcx
sub rdx, rax
mov rcx, rdi
movabs rax, 0xec3316b5249a62c3
xor rcx, rax
movabs rax, 0xe0b56d90e8d94491
add rax, rdx
add rax, rcx
movabs rcx, 0xe195f4ab0aafbcb4
xor rax, rcx
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x290], rax
mov eax, dword [rsp + 0xe4]
add eax, 0xda677d35
xor eax, 0x128a6c6c
sub eax, r11d
sub eax, r10d
add eax, 0x240b3a8a
xor eax, 0x9bc97e87
sub eax, r9d
add eax, 0x33091677
add eax, ebx
xor eax, 0x6ee26f39
add eax, 0x2843e311
xor eax, 0xf803635b
xor edi, 0x249663b7
sub edi, eax
xor r8d, 0xdb699c48
sub edi, r8d
sub edi, ebx
add edi, 0x7a46ac4b
xor edi, 0x621e8f78
mov dword [rsp + 0xe4], edi
mov eax, dword [0x140322180]
test eax, eax
jne 0x14010aed3
mov rdx, rsi
jmp 0x14010af01
mov dword [rsp + 0x360], eax
lea rax, [rsp + 0x350]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x288]
mov ecx, dword [rsp + 0x30]
call fcn.140275ce0
mov rdx, rax
movsxd rax, edi
mov rcx, rsi
cmp rdx, rax
setb cl
mov rdx, qword [rsp + 0x40]
and rdx, qword [rsp + 0x38]
mov rax, rsi
cmp rcx, rdx
sete al
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x298], rsi
mov qword [rsp + 0x290], rsi
mov dword [rsp + 0xe4], esi
movabs rax, 0xf2648d4800707f82
mov qword [rsp + 0x38], rax
movabs r9, 0x5bf26744427beda1
mov qword [rsp + 0x48], r9
mov rbx, qword [0x14031d080]
movabs rax, 0xac20000000000000
imul rbx, rax
movabs rax, 0xff10000000000000
xor rbx, rax
mov rcx, rbx
imul rcx, r9
mov qword [rsp + 0x50], rcx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, rbx
and r8, r9
imul r8, qword [r13 + rcx*8]
movabs rax, 0x2a79bea58adc219c
imul r8, rax
shr r8, 3
movabs rax, 0xa1d1cd137e3f124e
xor r8, rax
mov rdi, rbx
movabs rax, 0xffffff57c83c9edd
imul rdi, rax
sub rdi, 0x7cc5bb2
xor rdi, r8
xor rdi, qword [0x14031d060]
mov rax, r8
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bc18f21fc
imul rax, rcx
not rax
and rdi, rax
ror rdi, 0x2c
shr rdi, 8
movabs r11, 0xa40d98bbbd84125f
lea rcx, [rbx + r11]
xor rcx, 0xffffffffff012af1
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, qword [r13 + rcx*8]
movabs rax, 0x3122d6ce92638168
imul r10, rax
add r10, r9
mov rax, r8
movabs rcx, 0x67439894d1062b08
imul rax, rcx
xor r10, rax
shr r10, 0x1f
not r10
mov rax, r10
xor rax, rbx
mov qword [rsp + 0x70], rax
lea rcx, [r10 + r11]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xed
and ecx, 0x8000003f
jge 0x14010b0b4
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, qword [rsp + 0x70]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0xfffffffff833a44e
mov qword [rsp + 0x70], rax
lea r9, [rax + r11]
mov r11, r10
imul r11, rdi
sub r11, r9
movabs rax, 0xf2648d4800707f82
xor r11, rax
movzx ecx, r9b
mov dword [rsp + 0x30], ecx
xor ecx, 2
and ecx, 0xf
jge 0x14010b103
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r11, cl
mov rax, r9
sub rax, qword [0x14031d078]
xor r11, rax
movabs rax, 0xbe8890a6f5108b0e
imul rdx, rax
movabs rax, 0x294a11f2c6b680bf
add rdx, rax
xor r11, rdx
xor r11, r8
xor r11, rbx
mov rax, r11
and rax, r15
xor rax, 2
je 0x14010b4b1
sub rax, 1
je 0x14010b35b
sub rax, 1
je 0x14010b260
cmp rax, 1
jne 0x14010b557
mov rcx, r9
imul rcx, r10
movabs rax, 0xdb08fa9080d35c03
add rax, r11
xor rcx, rax
ror rcx, 0x16
shr rcx, 0xc
xor rcx, rbx
not rcx
mov qword [rsp + 0x38], rcx
movabs rdx, 0x8357237e2ffa
add rdx, qword [0x14031d088]
movabs rax, 0xa48f1dc3d5e11d23
xor rdx, rax
movzx eax, cl
movzx ecx, r11b
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97b9ec305
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
movabs rdx, 0x5bf26744427beda1
imul rcx, rdx
mov eax, 0xaa4511ef
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rax, 0xa31a22607c4b0632
sub rax, qword [rsp + 0x38]
shr rax, cl
mov qword [rsp + 0x48], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0xa415bd4416457383
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r11
imul rax, qword [r13 + rcx*8]
imul rax, r11
sub rax, rdi
xor qword [rsp + 0x48], rax
jmp 0x14010b557
mov rcx, r11
movabs rax, 0xaaaaaa1aaa5cecd1
xor rcx, rax
movabs rax, 0x1206ed6851309d
imul rcx, rax
mov rax, r8
movabs rdx, 0xfff17ca87d3edaad
xor rax, rdx
sub rcx, rax
mov rdx, qword [rsp + 0x70]
movabs rax, 0xffff7e8a8c4cde0d
imul rdx, rax
movabs r10, 0x3a6134e31c242ee0
add r10, rcx
add r10, rdx
mov rcx, r10
movabs rax, 0x277cd7be788c3bb1
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r10
not r9
imul r9, qword [r13 + rcx*8]
xor r9, 0xffffffffff093a01
lea ecx, [r11 + 0x13]
and cl, r14b
rol r9, cl
mov rax, qword [rsp + 0x50]
movabs rcx, 0xfff5f23fe9f1cf4f
xor rax, rcx
movabs rcx, 0x7c7a7dc6960e30b0
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0xe
not rcx
movabs rax, 0x9b2de6b2dd82e658
imul rcx, rax
mov rax, r10
sub rax, r9
lea rax, [rcx + rax*4]
mov cl, dil
and cl, r14b
ror rax, cl
movabs rdx, 0x5bf26744427beda1
imul rax, rdx
mov qword [rsp + 0x48], rax
jmp 0x14010b557
movabs rax, 0x9f445a1d9012408f
imul r11, rax
movabs rax, 0xd79435e50d79435f
mul r11
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r11b
sub cl, dl
mov rax, rbx
movabs rdx, 0xa40d98bbbd84125e
imul rax, rdx
movabs rdx, 0xf2648d4800707f82
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov eax, dword [rsp + 0x30]
and eax, 0x8000003f
jge 0x14010b3c0
sub eax, r15d
or eax, 0xffffffc0
add eax, r15d
mov cl, al
rol r8, cl
movabs rcx, 0xa40d98bbbd84125f
add rcx, r11
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0xffffe744427beda1
imul rax, rcx
xor r8, rax
movabs rax, 0xffffc7a7f6989afc
or r8, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xf2648d4800707f82
imul rcx, rax
sub rcx, r9
mov rax, rdi
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a6a7909af1
xor rcx, rax
mov qword [rsp + 0x48], rcx
movabs rax, 0xcccccccccccccccd
mul rbx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rbx
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, qword [rsp + 0x48]
div rcx
mov rcx, rdx
mov rdx, r11
imul rdx, r9
imul rdx, qword [rsp + 0x48]
shr rdx, cl
mov rax, r10
sub rax, rdx
sub rax, rbx
mov rbx, rax
movabs rax, 0x789589468c2d6eb
add rbx, rax
xor rbx, rdi
mov al, r10b
shl al, 2
lea ecx, [rax + r10]
shl cl, 2
and cl, r14b
rol rbx, cl
not rbx
jmp 0x14010b557
mov rax, r12
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r8
sub rcx, rax
mov rax, r11
imul rax, qword [0x14031d080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r8
and r8b, r14b
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r9
not rdi
imul rdi, r10
movabs rax, 0x7cd8a7de7a61cb10
imul rdi, rax
mov rax, r8
imul rax, rbx
mov rbx, rdi
xor rbx, rax
imul rdi, qword [0x14031d060], 0xfffffffff833a44e
mov rdx, qword [0x14031d068]
sub rdi, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010b542
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
movabs rax, 0xa40d98bbbd84125f
add rdi, rax
add rdi, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x38]
movabs rax, 0xff055d7b8a2ac1dd
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r8, rbx
imul r8, qword [r13 + rcx*8]
not r9
imul r9, r11
imul r9, qword [rsp + 0x48]
imul r9, rdi
movabs rcx, 0xf5ed7e878d998b01
xor rcx, r10
not rcx
xor rcx, r9
sub rcx, r8
call fcn.1400b3ffc
mov qword [0x140321f70], rax
mov rax, qword [rsp + 0x40]
mov dword [rsp + 0xd8], esi
mov dword [rsp + 0xd4], esi
jmp 0x140109e04
xor eax, eax
mov byte [rsp + 0x82], al
lea rcx, [rsp + 0x82]
call fcn.1400f0210
xor eax, eax
mov byte [rsp + 0x83], al
lea rcx, [rsp + 0x83]
call fcn.1400f0eb8
mov qword [rsp + 0x2a0], rsi
movabs rax, 0xbdc72a3f1b573d0c
mov qword [rsp + 0x2a0], rax
mov rax, qword [rsp + 0x2a0]
add rax, 0x6b03
movabs rcx, 0x90553662530969ad
xor rax, rcx
sub rax, qword [0x14031d050]
sub rax, qword [0x14031d058]
movabs rcx, 0xedf047f58ec8adb
sub rax, rcx
movabs rcx, 0xec33204e7a3b8987
xor rax, rcx
sub rax, qword [0x14031d048]
movabs rcx, 0x16468673daca7794
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0xec3316b528a15c7f
xor rcx, rax
movabs rax, 0x13cce94a413e614a
sub rcx, rax
movabs rax, 0xffd8662d613f0266
xor rcx, rax
movabs rax, 0x27be20fac5a98a63
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94ad75ea37a
mov rax, qword [0x14031d038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b528a15c85
mov rcx, qword [0x14031d030]
xor rcx, rax
movabs rax, 0x13cc22b59f37164f
add rdx, rax
add rdx, rcx
movabs rax, 0xc8486699c6a4c662
xor rdx, rax
mov qword [rsp + 0x2a0], rdx
mov rcx, qword [rsp + 0x8f8]
call fcn.14008ccf4
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x2a0], rsi
mov qword [rsp + 0x2a8], rsi
movabs rax, 0xa99239e6805208fe
mov qword [rsp + 0x2a8], rax
mov qword [rsp + 0x2b0], rsi
movabs rax, 0x4cc56314d5f35256
mov qword [rsp + 0x2b0], rax
movabs rcx, 0xf33a52b5b007b903
add rcx, qword [rsp + 0x2b0]
movabs rax, 0xde5536625309420c
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f5875a62a
sub rcx, rax
movabs rax, 0xf8f8cd98cad2c1c9
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x47d654ba080e154a
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179a8c337ab01
xor rcx, rax
movabs rax, 0x5f627dc7251a8894
sub rcx, rax
movabs rax, 0x163b3cd2893c9872
xor rcx, rax
movabs rdx, 0x3483ce45148cd16f
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ad6c01d38
mov r10, qword [0x14031d038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5293fe2c7
mov r11, qword [0x14031d030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d8c5e73c08d
add rdx, rax
add rdx, rcx
movabs rax, 0x7a8c814fb1ea2688
xor rdx, rax
mov qword [rsp + 0x2b0], rdx
movabs rcx, 0xcc5ad4ba2e0f4ba
add rcx, qword [rsp + 0x2a8]
movabs rax, 0x1a0b4fedad9f34e5
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x312ba68f1a4e31dc
sub rcx, rax
movabs rax, 0x7074598802e2124
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x9829ab437ce834ba
add rcx, rax
add rcx, rdi
movabs rax, 0xa56e8655ba37e2e6
xor rcx, rax
movabs rax, 0x2b02fde63253d8aa
sub rcx, rax
movabs rax, 0x2bc4c32cbb2063cd
xor rcx, rax
movabs rax, 0x15ab43293b578659
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0xec3316b52e8b8226
xor r10, rax
sub rcx, r10
movabs rax, 0x13cce94ad1747dd9
xor r11, rax
movabs rax, 0x1f4a9150c1e45c54
add rcx, rax
add rcx, r11
movabs rax, 0x548de8c29205e036
xor rcx, rax
mov qword [rsp + 0x2a8], rcx
and rcx, rdx
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x2b0], rsi
mov qword [rsp + 0x2a8], rsi
cmp rax, rcx
jne 0x14010b952
xor eax, eax
mov byte [rsp + 0x84], al
lea rcx, [rsp + 0x84]
call fcn.1400f1b60
movabs rax, 0xe42210b8e3bafb27
mov qword [rsp + 0x40], rax
movabs rbx, 0x9fbc1b61c8d4331d
mov rdi, rsi
movabs rax, 0xb303c8916aab3c88
movabs r11, 0x3451940e45c0bbfc
mov rcx, qword [0x14031d070]
imul rcx, rax
not rcx
movabs r8, 0xcbae6bf1aeba9744
mov rax, qword [0x14031d060]
xor rax, r8
and rcx, rax
ror rcx, 0x32
shr rcx, 8
mov qword [rsp + 0x38], rcx
movabs rax, 0xf6ac293ffefcbaf0
mov r8, qword [0x14031d060]
imul r8, rax
movabs r9, 0x6043e49e372bcce3
sub r8, r9
movabs rax, 0x2c3a310e00000000
xor r8, rax
shr r8, 0x1f
not r8
lea rcx, [r8 + r9]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r8b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xcf
and ecx, 0x8000003f
jge 0x14010ba29
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r8
ror rax, cl
not rax
mov qword [rsp + 0x48], rax
movabs rcx, 0x3294cad2cee6d20
imul rax, rcx
mov qword [rsp + 0x50], rax
add r9, rax
mov r10, r8
mov rdx, qword [rsp + 0x38]
imul r10, rdx
sub r10, r9
movabs rax, 0xe42210b8e3bafb27
xor r10, rax
movzx ecx, r9b
mov dword [rsp + 0x30], ecx
and ecx, 0xf
jge 0x14010ba7f
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r10, cl
mov rax, r9
sub rax, qword [0x14031d078]
xor r10, rax
movabs rcx, 0x8fd16364f53fbca0
mov rax, qword [rsp + 0x48]
imul rax, rcx
movabs rcx, 0x5644e643fdc36eb7
add rax, rcx
xor r10, rax
xor r10, r11
mov rax, r10
and rax, r15
je 0x14010bd9b
sub rax, 1
je 0x14010bc93
sub rax, 1
je 0x14010bbc8
cmp rax, 1
jne 0x14010be2d
mov rcx, r9
imul rcx, r8
movabs rax, 0xec5ec8afb23aaf1d
add rax, r10
xor rcx, rax
ror rcx, 8
shr rcx, 0xc
not rcx
mov qword [rsp + 0x40], rcx
movabs rdx, 0x835734fafcdc
add rdx, qword [0x14031d088]
movabs rax, 0x60c161e648ca10bd
xor rdx, rax
movzx eax, r10b
movzx ecx, cl
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db96c1a1027
sub rax, r8
mov r8, rdx
xor r8, rax
mov rcx, r8
imul rcx, rbx
mov eax, 0xbdc1c2cd
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0x14bc18c2d9d45f7a
sub rbx, qword [rsp + 0x40]
shr rbx, cl
movabs rax, 0x604c092686717ee5
mov rcx, qword [rsp + 0x50]
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x38]
xor rbx, rax
jmp 0x14010be2d
movabs rcx, 0xaaaaaa1abdd83ff3
mov r8, r10
xor r8, rcx
movabs rcx, 0x1206ed7fd5e3bf
imul r8, rcx
movabs rdx, 0xffff7e8a9bc80d2f
mov rcx, qword [rsp + 0x50]
imul rcx, rdx
movabs rdx, 0x3a05636149177f69
add r8, rdx
add r8, rcx
movabs rax, 0x277cd7be6f08e893
mov rcx, r8
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r8
not r9
imul r9, qword [r13 + rcx*8]
xor r9, 0xffffffffe88de923
lea ecx, [r10 - 0xf]
and cl, r14b
rol r9, cl
movabs rax, 0x6008208200000000
imul r9, rax
mov rcx, r9
ror rcx, 9
not rcx
movabs rax, 0x9b2de6b28391aad0
imul rcx, rax
mov rax, r8
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x38]
and cl, r14b
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
jmp 0x14010be2d
movabs rax, 0x8a8998f27ed05999
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0x1bddef471c4504d8
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0x30]
and eax, 0x8000003f
jge 0x14010bce7
sub eax, r15d
or eax, 0xffffffc0
add eax, r15d
mov cl, al
rol r11, cl
movabs rcx, 0x6043e49e372bcce3
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x1b61c8d4331d
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7e11c49de
or r11, rax
mov rbx, qword [0x14031d070]
movabs rax, 0xe42210b8e3bafb27
imul rbx, rax
sub rbx, r9
mov rax, qword [rsp + 0x38]
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a6b01449d3
xor rbx, rax
mov rax, r10
imul rax, r9
imul rax, rbx
mov rdi, r8
sub rdi, rax
movabs rax, 0x78958947f4605c9
add rdi, rax
xor rdi, qword [rsp + 0x38]
movzx eax, r8b
imul ecx, eax, 0xf6
and cl, r14b
rol rdi, cl
not rdi
jmp 0x14010be2d
mov rcx, r10
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d070]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x3c
imul r11, r9
mov rdi, rdx
not rdi
imul rdi, r8
movabs rax, 0x7cd8a7de6de51832
imul rdi, rax
imul rax, qword [0x14031d060], 0xffffffffeb7a2cb8
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x38], rax
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010be0e
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x38]
ror rax, cl
movabs rcx, 0x6043e49e372bcce3
add rax, rcx
add rax, qword [rsp + 0x50]
mov qword [rsp + 0x38], rax
movabs rax, 0xff055d7b9dae12ff
mov rcx, qword [rsp + 0x40]
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, rdi
imul r11, qword [r13 + rcx*8]
not r9
imul r9, r10
imul r9, qword [rsp + 0x38]
imul r9, rbx
movabs rcx, 0xf5ed7e879a1d5823
xor rcx, r8
not rcx
xor rcx, r9
sub rcx, r11
call fcn.1400c9188
mov qword [0x140321f70], rax
mov qword [rsp + 0x2b8], rsi
movabs rax, 0x48ed39f2efd4c057
mov qword [rsp + 0x2b8], rax
mov rax, qword [rsp + 0x2b8]
add rax, 0x6b03
movabs rcx, 0x90553662530d5ff4
xor rax, rcx
sub rax, qword [0x14031d050]
sub rax, qword [0x14031d058]
movabs rcx, 0xedf047f64cf5d7d
sub rax, rcx
movabs rcx, 0xec33204e6a6270af
xor rax, rcx
sub rax, qword [0x14031d048]
movabs rcx, 0x16468673ec9eb387
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0xec3316b518c843a7
xor rcx, rax
movabs rax, 0x13cce94a51177a22
sub rcx, rax
movabs rax, 0xffd8662d611f5034
xor rcx, rax
movabs rax, 0x27be20fae16575dd
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94ae737bc52
mov rax, qword [0x14031d038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b518c843ad
mov rcx, qword [0x14031d030]
xor rcx, rax
movabs rax, 0x13cc22b58ece6f27
add rdx, rax
add rdx, rcx
movabs rax, 0xaba7514ea703b96a
xor rdx, rax
mov qword [rsp + 0x2b8], rdx
mov rcx, qword [rsp + 0x8f8]
call fcn.140098204
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x2b8], rsi
mov qword [rsp + 0x2c0], rsi
movabs rax, 0x3585083889a72af0
mov qword [rsp + 0x2c0], rax
mov qword [rsp + 0x2c8], rsi
movabs rax, 0x6a292669325555ec
mov qword [rsp + 0x2c8], rax
movabs rcx, 0xf33a52b594380b03
add rcx, qword [rsp + 0x2c8]
movabs rax, 0x305536625309263c
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f58223720
sub rcx, rax
movabs rax, 0xf8f8cd98e711ae81
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x47d654ba2dce7dfb
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179a8e2f08d79
xor rcx, rax
movabs rax, 0x5f627dc71d26f54c
sub rcx, rax
movabs rax, 0x863b3cd297254def
xor rcx, rax
movabs rdx, 0x3483ce452f99d1ad
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ad650de80
mov r10, qword [0x14031d038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b529af217f
mov r11, qword [0x14031d030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d8bef07c9d5
add rdx, rax
add rdx, rcx
movabs rax, 0x8102272b584ce180
xor rdx, rax
mov qword [rsp + 0x2c8], rdx
movabs rcx, 0xf33a52b10e2de683
add rcx, qword [rsp + 0x2c0]
movabs rax, 0xbd536625304a032
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80b56fe74e
add rcx, rax
movabs rax, 0xf8f8cd9d7f33fb93
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654c051c14286
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179ae0bd41f1b
xor rcx, rax
movabs rax, 0x5f627dc5eb9798de
sub rcx, rax
movabs rax, 0xaa3b3cd4da4e9081
xor rcx, rax
movabs rax, 0xb483ce4995f9af2e
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ac438b5ee
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b53bc74a11
xor r11, rax
movabs rax, 0xe0b56d79e4874ec3
add rcx, rax
add rcx, r11
movabs rax, 0x6287c9f8b25ce0ce
xor rcx, rax
mov qword [rsp + 0x2c0], rcx
and rcx, rdx
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x2c8], rsi
mov qword [rsp + 0x2c0], rsi
cmp rax, rcx
jne 0x14010c1e4
xor eax, eax
mov byte [rsp + 0x85], al
lea rcx, [rsp + 0x85]
call fcn.1400c9804
movabs rdi, 0x65cf14a4e6b17e39
movabs rbx, 0x87529bcb034b376
mov qword [rsp + 0x40], rsi
movabs rax, 0x722ff4ad8a88941e
movabs r11, 0x39ad87a988d6fb4d
mov rcx, qword [0x14031d070]
imul rcx, rax
not rcx
movabs rdx, 0xc65278564b3637cd
mov rax, qword [0x14031d060]
xor rax, rdx
and rcx, rax
ror rcx, 0x11
shr rcx, 8
mov qword [rsp + 0x38], rcx
movabs rax, 0x6ccbd4be61f1fd00
mov r9, qword [0x14031d078]
imul r9, rax
add r9, rbx
movabs rax, 0xd251ea7dffffffff
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xf78ad6434fcb4c8a
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x87
and ecx, 0x8000003f
jge 0x14010c2b8
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, r9
ror rdx, cl
not rdx
movabs rcx, 0x6d9b700a461f0280
mov rax, rdx
imul rax, rcx
mov qword [rsp + 0x48], rax
add r8, rax
mov r10, r9
imul r10, qword [rsp + 0x38]
sub r10, r8
xor r10, rdi
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
movabs rax, 0xa1f4b9c8830aa700
imul rdx, rax
movabs rax, 0x6df81d145a41c59c
add rdx, rax
xor r10, rdx
xor r10, r11
mov rax, r10
and eax, 2
je 0x14010c5f1
sub rax, 1
je 0x14010c4fe
sub rax, 1
je 0x14010c433
cmp rax, 1
jne 0x14010c687
mov rdi, r9
imul rdi, r8
movabs rax, 0x130b5f5ebe0f06a6
add rax, r10
xor rdi, rax
ror rdi, 0x28
shr rdi, 0xc
not rdi
movabs rcx, 0x8357286b2794
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0xf708533b2cbb4b9e
xor rdx, rax
movzx eax, dil
movzx ecx, r10b
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9708bcb6f
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rbx
mov eax, 0xa1501985
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0xe5613088284f5de9
sub rbx, rdi
shr rbx, cl
movabs rax, 0xf792facba39fb5d4
mov rcx, qword [rsp + 0x48]
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x38]
xor rbx, rax
jmp 0x14010c687
movabs rcx, 0xaaaaaa1aa149e4bb
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed634438f7
imul r9, rcx
movabs rdx, 0xffff7e8a8759d667
mov rcx, qword [rsp + 0x48]
imul rcx, rdx
movabs rdx, 0xa4cf1ebff71dd463
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be739933db
mov rcx, r9
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xfffffffff41c326b
lea ecx, [r10 - 7]
and cl, r14b
rol r8, cl
movabs rax, 0x6028500080000000
imul r8, rax
mov rcx, r8
ror rcx, 0x1f
not rcx
movabs rax, 0x9b2de6b2f1d6c7f0
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x38]
and cl, r14b
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
jmp 0x14010c687
movabs rax, 0xfc9328d48e969704
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0x9a30eb5b194e81c6
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r8b
and cl, r14b
rol r11, cl
movabs rcx, 0xf78ad6434fcb4c8a
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffe9bcb034b376
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7fd8d9296
or r11, rax
mov rbx, qword [0x14031d070]
imul rbx, rdi
sub rbx, r8
mov rax, qword [rsp + 0x38]
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a6ac85929b
xor rbx, rax
mov rax, r10
imul rax, r8
imul rax, rbx
mov rdx, r9
sub rdx, rax
movabs rax, 0x789589463d7de81
add rdx, rax
xor rdx, qword [rsp + 0x38]
movzx eax, r9b
imul ecx, eax, 0xfe
and cl, r14b
rol rdx, cl
not rdx
mov qword [rsp + 0x40], rdx
jmp 0x14010c687
mov rcx, r10
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d078]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0xd
imul r11, r8
mov rax, qword [rsp + 0x38]
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de7174c37a
imul rax, rcx
mov qword [rsp + 0x40], rax
imul rcx, qword [0x14031d060], 0xffffffffc3e0cc80
mov rdx, qword [0x14031d068]
sub rcx, rdx
mov qword [rsp + 0x38], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010c668
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x38]
ror rax, cl
movabs rcx, 0xf78ad6434fcb4c8a
add rax, rcx
add rax, qword [rsp + 0x48]
mov qword [rsp + 0x38], rax
movabs rax, 0xff055d7b813fc9b7
xor rdi, rax
mov rax, r12
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rdi, rax
xor r11, qword [rsp + 0x40]
imul r11, qword [r13 + rdi*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x38]
imul r8, rbx
movabs rcx, 0xf5ed7e87868c836b
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400c8e94
mov qword [0x140321f58], rax
xor eax, eax
mov byte [rsp + 0x86], al
lea rcx, [rsp + 0x86]
call fcn.1400ca3d4
movabs rax, 0x29c549eedd640000
mov rdi, qword [0x14031d060]
imul rdi, rax
movabs rax, 0xa9dcc8b4b4c30000
xor rdi, rax
movabs r8, 0xeb24d8ff5faf420c
mov rcx, rdi
imul rcx, r8
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, rdi
and r9, r8
imul r9, qword [r13 + rcx*8]
movabs rax, 0x93028bb68abdda94
imul r9, rax
shr r9, 3
movabs rax, 0x42e721fc09b95b76
xor r9, rax
movabs rax, 0xffffff57dcd8c5ef
mov r8, rdi
imul r8, rax
sub r8, 0x342a13e4
xor r8, r9
xor r8, qword [0x14031d060]
mov rax, r9
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bd56b7ace
imul rax, rcx
not rax
and r8, rax
ror r8, 0x33
shr r8, 8
movabs r11, 0x14db2700a050bdf4
lea rcx, [rdi + r11]
xor rcx, 0xffffffffebe571c3
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xf44bdff407be0138
mov r10, qword [r13 + rcx*8]
imul r10, rax
sub r10, r11
movabs rcx, 0x977ca71527bb7590
mov rax, r9
imul rax, rcx
xor r10, rax
shr r10, 0x1f
not r10
mov rbx, r10
xor rbx, rdi
lea rcx, [r10 + r11]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xdf
mov edx, 0x8000003f
and ecx, edx
jge 0x14010c857
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rbx, cl
not rbx
imul rbx, r9
imul rax, rbx, 0xffffffffcbd5ec1c
mov qword [rsp + 0x40], rax
add rax, r11
mov r11, r8
imul r11, r10
sub r11, rax
movabs rcx, 0xf5929144ee1819f3
xor r11, rcx
movzx ecx, al
and ecx, 0xf
and ecx, edx
jge 0x14010c89a
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r11, cl
movabs rcx, 0x5dbe7c49800a4950
imul rbx, rcx
movabs rcx, 0x1dbd5ee845723090
sub rbx, rcx
xor r11, rbx
sub rax, qword [0x14031d078]
xor r11, rax
xor r11, rdi
xor r11, r9
mov rax, r12
mul r9
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, r9
sub rdx, rax
mov rax, r11
imul rax, qword [0x14031d080]
mov rbx, qword [r13 + rdx*8]
and rbx, rax
xor rbx, r9
and r9b, r14b
mov cl, r9b
ror rbx, cl
mov rax, qword [rsp + 0x40]
movabs rdx, 0x14db2700a050bdf4
add rax, rdx
imul rbx, rax
not r8
imul r8, r10
movabs rax, 0x7cd8a7de6e859022
imul r8, rax
imul rdi, rbx
xor r8, rdi
imul r9, qword [0x14031d060], 0xffffffffcbd5ec1c
mov rdx, qword [0x14031d068]
sub r9, rdx
mov al, r8b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010c966
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror r9, cl
add r9, qword [rsp + 0x40]
movabs rax, 0xeb24d8ff5faf420c
imul r9, rax
movabs rax, 0x1dbd5ee845723090
sub r9, rax
movabs rax, 0xeb24d8ff5faf420b
sub rax, qword [rsp + 0x40]
imul r9, rax
imul r9, r11
movabs rcx, 0xf5ed7e87997dd033
xor rcx, r10
not rcx
xor rcx, r9
xor r8, rbx
imul r8, qword [0x14031d080]
sub rcx, r8
call fcn.1400c8e70
mov qword [0x140321f90], rax
mov dword [rsp + 0xe8], esi
mov dword [rsp + 0xe8], 0x3e9b3059
mov eax, dword [rsp + 0xe8]
add eax, 0x11153589
xor eax, 0xcadda319
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x2a673161
xor eax, 0x18410f51
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x3e5046c2
add eax, ecx
xor eax, 0x848448f9
sub eax, 0x15551f62
xor eax, 0x9a12d1c3
lea edx, [rcx - 0x7dd94caf]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0x2844532a
sub edx, eax
mov eax, dword [0x14031d030]
xor eax, 0xd7bbacd5
add eax, 0x142df094
add eax, edx
xor eax, 0x6e6769f2
mov dword [rsp + 0x30], eax
mov dword [rsp + 0xe8], eax
mov dword [rsp + 0xe8], esi
xor eax, eax
mov byte [rsp + 0x87], al
lea rcx, [rsp + 0x87]
call fcn.1400d5604
xor eax, eax
mov byte [rsp + 0x88], al
lea rcx, [rsp + 0x88]
call fcn.1400d62b8
nop
jmp 0x14010cb02
movabs rax, 0xf1592db73bceb790
mov qword [rsp + 0x40], rax
movabs r9, 0x6762f1395f0a768b
mov qword [rsp + 0x38], r9
movabs rax, 0xa0b3000000000000
mov rbx, qword [0x14031d080]
imul rbx, rax
movabs rax, 0x102d00000000000
xor rbx, rax
mov rcx, rbx
imul rcx, r9
mov qword [rsp + 0x48], rcx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, rbx
and r8, r9
imul r8, qword [r13 + rcx*8]
movabs rax, 0x7c167d8a891f6560
imul r8, rax
shr r8, 3
movabs rax, 0xddfa38f27dc04d79
xor r8, rax
movabs rax, 0xffffff57fe2c6101
mov rdi, rbx
imul rdi, rax
sub rdi, 0xd6de27a
xor rdi, r8
xor rdi, qword [0x14031d060]
mov rax, r8
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bf79fde20
imul rax, rcx
not rax
and rdi, rax
ror rdi, 0x1a
shr rdi, 8
movabs r10, 0x989d0ec6a0f58975
lea rcx, [rbx + r10]
xor rcx, 0xffffffffc911d52d
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x605112ca1c3d9440
mov r11, qword [r13 + rcx*8]
imul r11, rax
add r11, r9
movabs rcx, 0x3f370d4175e82cc0
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rax, r11
xor rax, rbx
mov qword [rsp + 0x50], rax
lea rcx, [r11 + r10]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x31
and ecx, 0x8000003f
jge 0x14010cc77
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, qword [rsp + 0x50]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0xfffffffff2921d86
mov qword [rsp + 0x50], rax
lea r9, [rax + r10]
mov r10, r11
imul r10, rdi
sub r10, r9
movabs rax, 0xf1592db73bceb790
xor r10, rax
mov cl, r9b
xor cl, 0xfe
and cl, 0xf
rol r10, cl
mov rax, r9
sub rax, qword [0x14031d078]
xor r10, rax
movabs rax, 0xc2a36547f02dcbc2
imul rdx, rax
movabs rax, 0x3a70bbb15c3f9087
add rdx, rax
xor r10, rdx
xor r10, r8
xor r10, rbx
mov rax, r10
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14010d043
sub rax, 1
je 0x14010cf07
sub rax, 1
je 0x14010ce10
cmp rax, 1
jne 0x14010d0e9
mov rcx, r11
imul rcx, r9
movabs rax, 0xe740f0fad8569475
add rax, r10
xor rcx, rax
ror rcx, 0x22
shr rcx, 0xc
xor rcx, rbx
not rcx
mov qword [rsp + 0x40], rcx
movabs rdx, 0x8357156ed026
add rdx, qword [0x14031d088]
movabs rax, 0x981f8bbefe8079d5
xor rdx, rax
movzx eax, r10b
movzx ecx, cl
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db94d8e3cd9
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0x6762f1395f0a768b
imul rcx, rax
mov eax, 0x9c55ee33
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rax, 0x7b154b2f26f16f54
sub rax, qword [rsp + 0x40]
shr rax, cl
mov qword [rsp + 0x38], rax
movabs rcx, 0x98a5334f0fc72875
add rcx, qword [rsp + 0x50]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, rdi
xor qword [rsp + 0x38], rax
jmp 0x14010d0e9
movabs rax, 0xaaaaaa1a9c4c130d
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed5e41cf41
imul rcx, rax
movabs rdx, 0xfff17ca84b2e2571
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8aba5c21d1
mov rdx, qword [rsp + 0x50]
imul rdx, rax
movabs r11, 0x8c0316a231956f56
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be4e9cc46d
mov rcx, r11
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
imul r9, qword [r13 + rcx*8]
xor r9, 0xffffffffc919c5dd
lea ecx, [r10 + 0xf]
and cl, r14b
rol r9, cl
movabs rcx, 0x18022904a0000000
mov rax, qword [rsp + 0x48]
xor rax, rcx
movabs rcx, 0x7c7a7dc6a01ecf6c
and rax, rcx
imul r9, rax
mov rcx, r11
sub rcx, r9
mov rax, r9
not rax
movabs rdx, 0x9b2de6b205c11928
imul rax, rdx
lea rdx, [rax + rcx*4]
mov cl, dil
and cl, r14b
ror rdx, cl
movabs rax, 0x6762f1395f0a768b
imul rdx, rax
mov qword [rsp + 0x38], rdx
jmp 0x14010d0e9
movabs rax, 0xa9e79314c11213eb
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0x989d0ec6a0f58974
mov rax, rbx
imul rax, rdx
movabs rdx, 0xf1592db73bceb790
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov cl, r9b
and cl, r14b
rol r8, cl
movabs rcx, 0x989d0ec6a0f58975
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffff1395f0a768b
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7c0886520
or r8, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xf1592db73bceb790
imul rcx, rax
sub rcx, r9
mov rax, rdi
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a69180652d
xor rcx, rax
mov qword [rsp + 0x38], rcx
movabs rax, 0xcccccccccccccccd
mul rbx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rbx
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, qword [rsp + 0x38]
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r9
imul rdx, qword [rsp + 0x38]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, rbx
movabs rbx, 0x78958945ed22937
add rbx, rax
xor rbx, rdi
mov cl, r11b
shl cl, 3
and cl, r14b
rol rbx, cl
not rbx
jmp 0x14010d0e9
mov rax, r12
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r8
sub rcx, rax
mov rax, r10
imul rax, qword [0x14031d080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r8
and r8b, r14b
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r9
not rdi
imul rdi, r11
movabs rax, 0x7cd8a7de4c7134cc
imul rdi, rax
mov rax, r8
imul rax, rbx
mov rbx, rdi
xor rbx, rax
imul rdi, qword [0x14031d060], 0xfffffffff2921d86
mov rdx, qword [0x14031d068]
sub rdi, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010d0d4
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
movabs rax, 0x989d0ec6a0f58975
add rdi, rax
add rdi, qword [rsp + 0x50]
movabs rax, 0xff055d7bbc3a3e01
mov rcx, qword [rsp + 0x40]
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r8, rbx
imul r8, qword [r13 + rcx*8]
not r9
imul r9, r10
imul r9, rdi
imul r9, qword [rsp + 0x38]
movabs rcx, 0xf5ed7e87bb8974dd
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r8
call fcn.1400c974c
mov qword [0x140321f60], rax
movabs rax, 0xf850e182e66fc714
mov qword [rsp + 0x40], rax
movabs r9, 0x2a02234b94b7c73f
mov qword [rsp + 0x38], r9
movabs rax, 0xc000000000000000
mov r10, qword [0x14031d080]
imul r10, rax
movabs rax, 0xd000000000000000
xor r10, rax
mov rcx, r10
imul rcx, r9
mov qword [rsp + 0x48], rcx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r10
and r8, r9
imul r8, qword [r13 + rcx*8]
movabs rax, 0x90eb90889122c28
imul r8, rax
movabs rax, 0x5eeda2cce1dd7cf8
xor r8, rax
shr r8, 3
movabs rax, 0xffffff57d79e4fd1
mov rdi, r10
imul rdi, rax
sub rdi, 0x1345fe7e
xor rdi, r8
xor rdi, qword [0x14031d060]
mov rax, r8
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bde2df0f0
imul rax, rcx
not rax
and rdi, rax
ror rdi, 0x3e
shr rdi, 8
movabs rbx, 0xd5fddcb46b4838c1
lea rcx, [r10 + rbx]
xor rcx, 0xffffffffe0a3fbfd
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xded03034a1a35060
mov r11, qword [r13 + rcx*8]
imul r11, rax
add r11, r9
movabs rcx, 0xf87aa0c9e23a27b0
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rax, r11
xor rax, r10
mov qword [rsp + 0x50], rax
lea rcx, [r11 + rbx]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xe1
and ecx, 0x8000003f
jge 0x14010d2c3
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, qword [rsp + 0x50]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0xffffffffecba0182
mov qword [rsp + 0x50], rax
lea r9, [rax + rbx]
mov rbx, rdi
imul rbx, r11
sub rbx, r9
movabs rax, 0xf850e182e66fc714
xor rbx, rax
mov cl, r9b
xor cl, 0xfe
and cl, 0xf
rol rbx, cl
mov rax, r9
sub rax, qword [0x14031d078]
xor rbx, rax
movabs rax, 0x1484e9ec14e06cfe
imul rdx, rax
movabs rax, 0x7c7504c6b0dafe7f
add rdx, rax
xor rbx, rdx
xor rbx, r10
xor rbx, r8
mov rax, rbx
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14010d696
sub rax, 1
je 0x14010d555
sub rax, 1
je 0x14010d45b
cmp rax, 1
jne 0x14010d73d
mov rcx, r9
imul rcx, r11
movabs rax, 0xc1a72c6a2a2d6691
add rax, rbx
xor rcx, rax
ror rcx, 6
shr rcx, 0xc
xor rcx, r10
not rcx
mov qword [rsp + 0x40], rcx
movabs rdx, 0x83573cdcfef6
add rdx, qword [0x14031d088]
movabs rax, 0xd57f59cc1c8fe6b1
xor rdx, rax
movzx eax, cl
movzx ecx, bl
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9643c1209
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0x2a02234b94b7c73f
imul rcx, rax
mov eax, 0xb5e7c0e3
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rax, 0xc2fffe56ae640248
sub rax, qword [rsp + 0x40]
shr rax, cl
mov qword [rsp + 0x38], rax
movabs rcx, 0xd606013cb2abe8f1
add rcx, qword [rsp + 0x50]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, rbx
imul rax, qword [r13 + rcx*8]
imul rax, rbx
sub rax, rdi
xor qword [rsp + 0x38], rax
jmp 0x14010d73d
movabs rax, 0xaaaaaa1ab5fe3ddd
mov rcx, rbx
xor rcx, rax
movabs rax, 0x1206ed77f3e191
imul rcx, rax
movabs rdx, 0xfff17ca8629c0ba1
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a93ee0f01
mov rdx, qword [rsp + 0x50]
imul rdx, rax
movabs r11, 0xa75eb94dd0f796c2
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be672eeabd
mov rcx, r11
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
imul r9, qword [r13 + rcx*8]
xor r9, 0xffffffffe0abeb0d
lea ecx, [rbx + 0x1f]
and cl, r14b
rol r9, cl
movabs rcx, 0x2032050400000000
mov rax, qword [rsp + 0x48]
xor rax, rcx
movabs rcx, 0x7c7a7dc689ace1bc
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0x14
not rcx
movabs rax, 0x9b2de6b2a309a268
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, dil
and cl, r14b
ror rdx, cl
movabs rax, 0x2a02234b94b7c73f
imul rdx, rax
mov qword [rsp + 0x38], rdx
jmp 0x14010d73d
movabs rax, 0x7d6d4a97d716c121
imul rbx, rax
movabs rax, 0xd79435e50d79435f
mul rbx
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, bl
sub cl, dl
movabs rdx, 0xd5fddcb46b4838c0
mov rax, r10
imul rax, rdx
movabs rdx, 0xf850e182e66fc714
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov cl, r9b
and cl, r14b
rol r8, cl
movabs rcx, 0xd5fddcb46b4838c1
add rcx, rbx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffe34b94b7c73f
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7e93a4bf0
or r8, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xf850e182e66fc714
imul rcx, rax
sub rcx, r9
mov rax, rdi
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a6b8324bfd
xor rcx, rax
mov qword [rsp + 0x38], rcx
movabs rax, 0xcccccccccccccccd
mul r10
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, r10
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, qword [rsp + 0x38]
div rcx
mov rcx, rdx
mov rdx, r9
imul rdx, rbx
imul rdx, qword [rsp + 0x38]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, r10
movabs r10, 0x7895894776007e7
add r10, rax
xor r10, rdi
mov al, r11b
add al, al
lea ecx, [rax + r11]
shl cl, 3
and cl, r14b
rol r10, cl
not r10
jmp 0x14010d73d
mov rax, r12
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r8
sub rcx, rax
mov rax, rbx
imul rax, qword [0x14031d080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r8
and r8b, r14b
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r9
not rdi
imul rdi, r11
movabs rax, 0x7cd8a7de65c31a1c
imul rdi, rax
mov rax, r10
imul rax, r8
mov r10, rdi
xor r10, rax
imul rdi, qword [0x14031d060], 0xffffffffecba0182
mov rdx, qword [0x14031d068]
sub rdi, rdx
mov al, r10b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010d728
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
movabs rax, 0xd5fddcb46b4838c1
add rdi, rax
add rdi, qword [rsp + 0x50]
movabs rax, 0xff055d7b958810d1
mov rcx, qword [rsp + 0x40]
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r10, r8
imul r10, qword [r13 + rcx*8]
not r9
imul r9, rbx
imul r9, rdi
imul r9, qword [rsp + 0x38]
movabs rcx, 0xf5ed7e87923b5a0d
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r10
call fcn.1400c8e4c
mov qword [0x140321f90], rax
mov qword [rsp + 0x2d8], rsi
movabs rax, 0x5802a9dc34099c91
mov qword [rsp + 0x2d8], rax
mov qword [rsp + 0x2e0], rsi
movabs rax, 0xf4270ff8bd6a108e
mov qword [rsp + 0x2e0], rax
movabs rcx, 0xf33a52a9bd3dba83
add rcx, qword [rsp + 0x2e0]
movabs rax, 0xdfd5366252fd4f42
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80cb62b7d2
add rcx, rax
movabs rax, 0xf8f8cda4ed67e843
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654ca401f4640
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179b66426114b
xor rcx, rax
movabs rax, 0x5f627ddfc3875fae
sub rcx, rax
movabs rax, 0xa3b3cd883012e02
xor rcx, rax
movabs rdx, 0xb483ce50b3b349fa
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94aa6f4f53e
mov r10, qword [0x14031d038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5590b0ac1
mov r11, qword [0x14031d030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d5c4382de93
add rdx, rax
add rdx, rcx
movabs rax, 0x477da6c87eb4fbe
xor rdx, rax
mov qword [rsp + 0x2e0], rdx
movabs rcx, 0xf33a52bbb521d803
add rcx, qword [rsp + 0x2d8]
movabs rax, 0xfd553662530f4726
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f6a84f487
sub rcx, rax
movabs rax, 0xf8f8cd92ada43a4d
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654b1dc212035
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a1e565dfa5
xor rcx, rax
movabs rax, 0x5f627dc36d7c3cc8
sub rcx, rax
movabs rax, 0x1e3b3ccf867f6021
xor rcx, rax
movabs rax, 0x3483ce3f39966948
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94aeed485b4
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b5112b7a4b
xor r11, rax
movabs rax, 0xe0b56da4cb32e509
add rcx, rax
add rcx, r11
movabs rax, 0x5044499ca936f3bc
xor rcx, rax
mov qword [rsp + 0x2d8], rcx
and rcx, rdx
mov eax, dword [rsp + 0x30]
mov qword [rsp + 0x2e0], rsi
mov qword [rsp + 0x2d8], rsi
cmp rax, rcx
jne 0x1400fbd4c
movabs rax, 0xd63a745eabaf64c4
mov qword [rsp + 0x40], rax
movabs rbx, 0x42c00e775995eb91
mov r11, rsi
movabs rdi, 0xc61738acd2467e4f
movabs rax, 0xe26bbb03d9a3869e
mov r10, qword [0x14031d070]
imul r10, rax
not r10
movabs rdx, 0x39e8c7533a006cbf
mov rax, qword [0x14031d060]
xor rax, rdx
and r10, rax
ror r10, 0x22
shr r10, 8
mov qword [rsp + 0x38], r10
movabs rax, 0xdc2902072174aa0
mov r9, qword [0x14031d070]
imul r9, rax
add r9, rbx
movabs rax, 0xdee8bf2cffffffff
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xbd3ff188a66a146f
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x13
and ecx, 0x8000003f
jge 0x14010da96
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
movabs rdx, 0xa34c2c3d3891f810
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x48], rcx
add r8, rcx
imul r10, r9
sub r10, r8
movabs rdx, 0xd63a745eabaf64c4
xor r10, rdx
mov cl, r8b
xor cl, 0xfc
and cl, 0xf
rol r10, cl
movabs rcx, 0xe6791d3dfab43110
imul rax, rcx
movabs rcx, 0x14018d9b1e7277df
add rax, rcx
xor r10, rax
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
xor r10, rdi
mov rax, r10
and rax, r15
je 0x14010dddc
sub rax, 1
je 0x14010dce4
sub rax, 1
je 0x14010dc19
cmp rax, 1
jne 0x14010de6c
mov rcx, r8
imul rcx, r9
movabs rax, 0x5b4dad443410e42d
add rax, r10
xor rcx, rax
ror rcx, 0x18
shr rcx, 0xc
not rcx
mov qword [rsp + 0x40], rcx
movabs rdx, 0x83572e295808
add rdx, qword [0x14031d088]
movabs rax, 0xbdbd74f0c3586ced
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db976c9b4fb
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rbx
mov eax, 0xa7126611
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0x79be239a8212649e
sub rbx, qword [rsp + 0x40]
shr rbx, cl
movabs rax, 0xbd481610fc002b4d
mov rcx, qword [rsp + 0x48]
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x38]
xor rbx, rax
jmp 0x14010de6c
movabs rcx, 0xaaaaaa1aa70b9b2f
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed65064763
imul r9, rcx
movabs rdx, 0xffff7e8a811ba9f3
mov rcx, qword [rsp + 0x48]
imul rcx, rdx
movabs rdx, 0xcc525c69f3cf8334
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be75db4c4f
mov rcx, r9
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xfffffffff25e4dff
lea ecx, [r10 - 0x13]
and cl, r14b
rol r8, cl
movabs rax, 0x280a114600000000
imul r8, rax
mov rcx, r8
ror rcx, 0x36
not rcx
movabs rax, 0x9b2de6b2e8df39a0
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x38]
and cl, r14b
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
jmp 0x14010de6c
movabs rax, 0x8603757a47a35e7
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0x29c58ba154509b3b
shl rdx, cl
mov rax, rdi
mov rdi, rdx
xor rdi, rax
mov cl, r8b
and cl, r14b
rol rdi, cl
movabs rcx, 0xbd3ff188a66a146f
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xe775995eb91
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor rdi, rax
movabs rax, 0xffffc7a7fbcfed02
or rdi, rax
mov rbx, qword [0x14031d070]
movabs rax, 0xd63a745eabaf64c4
imul rbx, rax
sub rbx, r8
mov rax, qword [rsp + 0x38]
sub rax, rdi
xor rbx, rax
movabs rax, 0xc7a7c6a6aac7ed0f
xor rbx, rax
mov rax, r8
imul rax, r10
imul rax, rbx
mov r11, r9
sub r11, rax
movabs rax, 0x78958946595a115
add r11, rax
xor r11, qword [rsp + 0x38]
movzx eax, r9b
imul ecx, eax, 0xea
and cl, r14b
rol r11, cl
not r11
jmp 0x14010de6c
mov rcx, r10
imul rcx, qword [0x14031d080]
mov rdx, qword [0x14031d068]
and rcx, rdx
mov rax, rdi
mov rdi, rcx
xor rdi, rax
ror rdi, 0xf
imul rdi, r8
mov r11, qword [rsp + 0x38]
not r11
imul r11, r9
movabs rax, 0x7cd8a7de7736bcee
imul r11, rax
imul rax, qword [0x14031d060], 0xffffffffe84612f0
sub rax, rdx
mov qword [rsp + 0x38], rax
mov al, r11b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010de4d
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x38]
ror rax, cl
movabs rcx, 0xbd3ff188a66a146f
add rax, rcx
add rax, qword [rsp + 0x48]
mov qword [rsp + 0x38], rax
movabs rax, 0xff055d7b877db623
mov rcx, qword [rsp + 0x40]
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, rdi
imul r11, qword [r13 + rcx*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x38]
imul r8, rbx
movabs rcx, 0xf5ed7e8780cefcff
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1400c911c
mov qword [0x140321f50], rax
xor eax, eax
mov byte [rsp + 0x8e0], al
lea rcx, [rsp + 0x8e0]
call fcn.1400d642c
movabs rax, 0xf1439eb3df17146c
mov qword [rsp + 0x40], rax
movabs rdi, 0x6aa1175e6633f6df
movabs rax, 0xe921400000000000
mov r10, qword [0x14031d080]
imul r10, rax
movabs rax, 0x7bbb900000000000
xor r10, rax
mov rcx, r10
imul rcx, rdi
mov qword [rsp + 0x38], rcx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r10
and r8, rdi
imul r8, qword [r13 + rcx*8]
movabs rax, 0x2a06a04369574c78
imul r8, rax
shr r8, 3
movabs rax, 0xd6db61bda288ee4f
xor r8, rax
movabs rax, 0xa83a7bca95
mov r11, r10
imul r11, rax
sub r11, 0x33c8cec6
xor r11, r8
xor r11, qword [0x14031d060]
mov rax, r8
imul rax, qword [0x14031d070]
movabs rcx, 0x46216d7433c875b4
imul rax, rcx
not rax
and r11, rax
ror r11, 0x1a
shr r11, 8
mov qword [rsp + 0x48], r11
movabs r9, 0x955ee8a199cc0921
lea rcx, [r10 + r9]
xor rcx, 0xd467eb9
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xf9c619d6624eaba8
mov rbx, qword [r13 + rcx*8]
imul rbx, rax
add rbx, rdi
movabs rcx, 0xe96fb9ce70fa4850
mov rax, r8
imul rax, rcx
xor rbx, rax
shr rbx, 0x1f
not rbx
mov rax, rbx
xor rax, r10
mov qword [rsp + 0x50], rax
lea rcx, [rbx + r9]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, bl
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xa5
and ecx, 0x8000003f
jge 0x14010e05b
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, qword [rsp + 0x50]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0xffffffffcc37313a
mov qword [rsp + 0x50], rax
add r9, rax
imul r11, rbx
sub r11, r9
movabs rax, 0xf1439eb3df17146c
xor r11, rax
mov cl, r9b
xor cl, 0xfa
and cl, 0xf
rol r11, cl
mov rax, r9
sub rax, qword [0x14031d078]
xor r11, rax
movabs rax, 0xd67dc3f7d7ef9d86
imul rdx, rax
movabs rax, 0x422f2ef60114a9bf
add rdx, rax
xor r11, rdx
xor r11, r10
xor r11, r8
mov rax, r11
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14010e407
sub rax, 1
je 0x14010e2d7
sub rax, 1
je 0x14010e1e4
cmp rax, 1
jne 0x14010e4c2
mov rcx, r9
imul rcx, rbx
movabs rax, 0xce4f5520d457a435
add rax, r11
xor rcx, rax
ror rcx, 0x22
shr rcx, 0xc
xor rcx, r10
not rcx
mov qword [rsp + 0x40], rcx
movabs rdx, 0xffff7ca8d1397bb2
add rdx, qword [0x14031d088]
movabs rax, 0x6a23922603ee5215
xor rdx, rax
movzx eax, r11b
movzx ecx, cl
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0x835824689d9974d
sub rax, rbx
mov rbx, rdx
xor rbx, rax
mov rcx, rbx
imul rcx, rdi
mov eax, 0xa7fdba59
sub rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0x1b00dcfeaaea8f68
sub rdi, qword [rsp + 0x40]
shr rdi, cl
movabs rax, 0x9556c41944523e8d
mov rcx, qword [rsp + 0x50]
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r11
imul rax, qword [r13 + rcx*8]
imul rax, r11
sub rax, qword [rsp + 0x48]
xor rdi, rax
jmp 0x14010e4c2
movabs rax, 0x555555e5581bb899
mov rcx, r11
xor rcx, rax
movabs rax, 0xffedf9129a1664d5
imul rcx, rax
movabs rdx, 0xe83578f798ee5
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0x81757e0b8a45
mov rdx, qword [rsp + 0x50]
imul rdx, rax
movabs rbx, 0xf7a27439160ca2a
add rbx, rcx
add rbx, rdx
movabs rax, 0xd88328418acb6ff9
mov rcx, rbx
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, rbx
not r9
imul r9, qword [r13 + rcx*8]
xor r9, 0xd4e6e49
lea ecx, [r11 + 0x1b]
and cl, r14b
rol r9, cl
movabs rcx, 0x83858239644964f8
mov rax, qword [rsp + 0x38]
and rax, rcx
movabs rcx, 0x8005003060000000
xor rax, rcx
imul r9, rax
mov rdx, r9
ror rdx, 0x28
not rdx
movabs rax, 0x193486534527edde
imul rdx, rax
sub rdx, r9
add rdx, rbx
shl rdx, 2
mov cl, byte [rsp + 0x48]
and cl, r14b
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x14010e4c2
movabs rax, 0xd6f3dc6e123a0b1
imul r11, rax
movabs rax, 0xd79435e50d79435f
mul r11
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r11b
sub cl, dl
movabs rdx, 0x955ee8a199cc0920
mov rax, r10
imul rax, rdx
movabs rdx, 0xf1439eb3df17146c
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov cl, r9b
and cl, r14b
rol r8, cl
movabs rcx, 0x955ee8a199cc0921
add rcx, r11
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
imul rax, rdi
xor r8, rax
movabs rax, 0x385804dfceb4
or r8, rax
mov rdi, qword [0x14031d070]
movabs rax, 0xf1439eb3df17146c
imul rdi, rax
sub rdi, r9
mov rax, qword [rsp + 0x48]
sub rax, r8
xor rdi, rax
movabs rax, 0x3858395955d7ceb9
xor rdi, rax
movabs rax, 0xcccccccccccccccd
mul r10
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, r10
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, rdi
div rcx
mov rcx, rdx
mov rdx, r9
imul rdx, r11
imul rdx, rdi
shr rdx, cl
mov rax, rbx
sub rax, rdx
sub rax, r10
movabs rcx, 0x7895894657a7d5d
mov r10, rax
sub r10, rcx
xor r10, qword [rsp + 0x48]
movzx eax, bl
imul ecx, eax, 0x1c
and cl, r14b
rol r10, cl
not r10
jmp 0x14010e4c2
mov rax, r12
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r8
sub rcx, rax
mov rax, r11
imul rax, qword [0x14031d080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r8
and r8b, r14b
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r9
mov rcx, qword [rsp + 0x48]
not rcx
imul rcx, rbx
movabs rax, 0x8327582188269f58
imul rcx, rax
mov rax, r10
imul rax, r8
mov r10, rcx
xor r10, rax
imul rax, qword [0x14031d060], 0xffffffffcc37313a
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x38], rax
mov al, r10b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010e4a3
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x38]
ror rax, cl
movabs rcx, 0x955ee8a199cc0921
add rax, rcx
add rax, qword [rsp + 0x50]
mov qword [rsp + 0x48], rax
movabs rax, 0xfaa284786d9595
mov rcx, qword [rsp + 0x40]
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r10, r8
imul r10, qword [r13 + rcx*8]
not r9
imul r9, r11
imul r9, qword [rsp + 0x48]
imul r9, rdi
movabs rcx, 0xa1281787fdedf49
xor rcx, rbx
not rcx
xor rcx, r9
sub rcx, r10
call fcn.1400c91d0
mov qword [0x140321f80], rax
movabs rax, 0xfa5c37d8a899f0ae
mov qword [rsp + 0x40], rax
movabs r9, 0xc414b5ce635e8025
mov qword [rsp + 0x38], r9
movabs rax, 0xea4893b007ac9260
mov rbx, qword [0x14031d080]
imul rbx, rax
movabs rax, 0xed8a9dcce91f3e10
xor rbx, rax
mov rcx, rbx
imul rcx, r9
mov qword [rsp + 0x48], rcx
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, rbx
and r8, r9
imul r8, qword [r13 + rcx*8]
movabs rax, 0xd4bb569ee6f8d964
imul r8, rax
shr r8, 3
movabs rax, 0xe05b70ac09961114
xor r8, rax
movabs rax, 0xffffff57dafd82cd
mov rdi, rbx
imul rdi, rax
sub rdi, 0x126e4e62
xor rdi, r8
xor rdi, qword [0x14031d060]
mov rax, r8
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bd34e3dec
imul rax, rcx
not rax
and rdi, rax
ror rdi, 0x38
shr rdi, 8
movabs r9, 0x3beb4a319ca17fdb
lea rcx, [rbx + r9]
xor rcx, 0xffffffffedc036e1
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x473914ccdf4d4848
mov r11, qword [r13 + rcx*8]
imul r11, rax
sub r11, r9
movabs rcx, 0x7a9224ec01eb2498
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rax, r11
xor rax, rbx
mov qword [rsp + 0x50], rax
lea rcx, [r11 + r9]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xfd
and ecx, 0x8000003f
jge 0x14010e69c
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, qword [rsp + 0x50]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0xffffffffed91b19e
mov qword [rsp + 0x50], rax
add r9, rax
mov r10, r11
imul r10, rdi
sub r10, r9
movabs rax, 0xfa5c37d8a899f0ae
xor r10, rax
movzx ecx, r9b
mov dword [rsp + 0x30], ecx
xor ecx, 2
and ecx, 0xf
jge 0x14010e6ea
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r10, cl
mov rax, r9
sub rax, qword [0x14031d078]
xor r10, rax
movabs rax, 0xff022d1980e1abd6
imul rdx, rax
movabs rax, 0x61a4c78af9510559
sub rdx, rax
xor r10, rdx
xor r10, r8
xor r10, rbx
mov rax, r10
and rax, r15
xor rax, 2
je 0x14010ea8b
sub rax, 1
je 0x14010e93f
sub rax, 1
je 0x14010e844
cmp rax, 1
jne 0x14010eb31
mov rcx, r11
imul rcx, r9
movabs rax, 0x1449fb4116f7d65f
add rax, r10
xor rcx, rax
ror rcx, 2
shr rcx, 0xc
xor rcx, rbx
not rcx
mov qword [rsp + 0x40], rcx
movabs rdx, 0x835731bf33ea
add rdx, qword [0x14031d088]
movabs rax, 0x3b69cf49e6056cb7
xor rdx, rax
movzx eax, r10b
movzx ecx, cl
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9695fdf15
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0xc414b5ce635e8025
imul rcx, rax
mov eax, 0xb8840dff
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rax, 0xe69019c2dde54946
sub rax, qword [rsp + 0x40]
shr rax, cl
mov qword [rsp + 0x38], rax
movabs rcx, 0x3bf36eb9e6a1fd0f
add rcx, qword [rsp + 0x50]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, rdi
xor qword [rsp + 0x38], rax
jmp 0x14010eb31
movabs rax, 0xaaaaaa1ab89df0c1
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed7a902c8d
imul rcx, rax
movabs rdx, 0xfff17ca86fffc6bd
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a9e8dc21d
mov rdx, qword [rsp + 0x50]
imul rdx, rax
movabs r11, 0x126c6555c33ec
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be6a4d27a1
mov rcx, r11
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
imul r9, qword [r13 + rcx*8]
xor r9, 0xffffffffedc82611
lea ecx, [r10 + 3]
and cl, r14b
rol r9, cl
movabs rcx, 0xebedc3fb7b30d35f
mov rax, qword [rsp + 0x48]
xor rax, rcx
movabs rcx, 0x7c7a7dc684cf2ca0
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0x32
not rcx
movabs rax, 0x9b2de6b296869618
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, dil
and cl, r14b
ror rdx, cl
movabs rax, 0xc414b5ce635e8025
imul rdx, rax
mov qword [rsp + 0x38], rdx
jmp 0x14010eb31
movabs rax, 0x6e32dbd9ba350e6d
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0x3beb4a319ca17fda
mov rax, rbx
imul rax, rdx
movabs rdx, 0xfa5c37d8a899f0ae
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov eax, dword [rsp + 0x30]
and eax, 0x8000003f
jge 0x14010e9a4
sub eax, r15d
or eax, 0xffffffc0
add eax, r15d
mov cl, al
rol r8, cl
movabs rcx, 0x3beb4a319ca17fdb
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffff5ce635e8025
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7e45986ec
or r8, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xfa5c37d8a899f0ae
imul rcx, rax
sub rcx, r9
mov rax, rdi
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a6b55186e1
xor rcx, rax
mov qword [rsp + 0x38], rcx
movabs rax, 0xcccccccccccccccd
mul rbx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rbx
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, qword [rsp + 0x38]
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r9
imul rdx, qword [rsp + 0x38]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, rbx
movabs rbx, 0x78958947a03cafb
add rbx, rax
xor rbx, rdi
mov cl, r11b
shl cl, 2
and cl, r14b
rol rbx, cl
not rbx
jmp 0x14010eb31
mov rax, r12
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r8
sub rcx, rax
mov rax, r10
imul rax, qword [0x14031d080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r8
and r8b, r14b
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r9
not rdi
imul rdi, r11
movabs rax, 0x7cd8a7de68a0d700
imul rdi, rax
mov rax, r8
imul rax, rbx
mov rbx, rdi
xor rbx, rax
imul rdi, qword [0x14031d060], 0xffffffffed91b19e
mov rdx, qword [0x14031d068]
sub rdi, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010eb1c
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdi, cl
movabs rax, 0x3beb4a319ca17fdb
add rdi, rax
add rdi, qword [rsp + 0x50]
movabs rax, 0xff055d7b98ebddcd
mov rcx, qword [rsp + 0x40]
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r8, rbx
imul r8, qword [r13 + rcx*8]
not r9
imul r9, r10
imul r9, rdi
imul r9, qword [rsp + 0x38]
movabs rcx, 0xf5ed7e879f589711
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r8
call fcn.1400c94a0
mov qword [0x140321f48], rax
mov dword [rsp + 0xec], esi
mov dword [rsp + 0xec], 0xca427cf3
mov eax, dword [rsp + 0xec]
add eax, 0x65d8f1b4
xor eax, 0x8708f7dd
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x579719d3
xor eax, 0x162a4436
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x6cc094d5
add eax, ecx
xor eax, 0x17d50658
sub eax, 0x3640ff06
xor eax, 0xe564d90
lea edx, [rcx + 0x5cb4514a]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xd597621a
sub edx, eax
mov eax, dword [0x14031d030]
xor eax, 0x2a689de5
add eax, 0x34d1f031
add eax, edx
xor eax, 0x624b342
mov dword [rsp + 0x30], eax
mov dword [rsp + 0xec], eax
mov dword [rsp + 0xf0], esi
mov dword [rsp + 0xf0], 0xd942709a
mov eax, dword [rsp + 0xf0]
add eax, 0x63193f32
xor eax, 0xd486f51d
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x2e712544
xor eax, 0x20f4f582
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xe77bcba5
add eax, ecx
xor eax, 0x62f7adf5
add eax, 0x40d5fbe6
xor eax, 0xa3c63ccf
lea edx, [rcx - 0x2e9f3a16]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xcd8c6350
sub edx, eax
mov eax, dword [0x14031d030]
xor eax, 0x32739caf
add eax, 0x21c626df
add eax, edx
xor eax, 0x4c6ca3b0
mov dword [rsp + 0x60], eax
mov dword [rsp + 0xf0], eax
mov r11, rsi
mov rbx, qword [0x14031d070]
movabs rax, 0x83eaeb07e5759950
imul rbx, rax
not rbx
mov rax, qword [0x14031d060]
movabs rcx, 0x89ec20e5068fb9c9
xor rax, rcx
and rbx, rax
ror rbx, 4
shr rbx, 8
mov r9, qword [0x14031d080]
movabs rax, 0x6fa03160609c2260
imul r9, rax
movabs r8, 0x69f1c3d784deb4bb
sub r9, r8
movabs rax, 0xb97c560d7fffffff
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xe1
and ecx, 0x8000003f
jge 0x14010ed6c
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, r9
ror rdx, cl
not rdx
mov rdi, rdx
movabs rax, 0x4f6d28d59e118216
imul rdi, rax
add r8, rdi
mov r10, r9
imul r10, rbx
sub r10, r8
movabs rax, 0xf867a0bb8ec7c852
xor r10, rax
mov cl, r8b
xor cl, 0xfe
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
movabs rax, 0x184bdc1512aa81ee
imul rdx, rax
movabs rax, 0x6874e038cbeb8099
sub rdx, rax
xor r10, rdx
movabs rdx, 0x7613df1af9a1eb4b
xor r10, rdx
mov rax, r10
and rax, r15
xor rax, 2
je 0x14010f0ed
sub rax, 1
je 0x14010efeb
sub rax, 1
je 0x14010ef11
cmp rax, 1
jne 0x14010f174
mov rcx, r9
imul rcx, r8
movabs rax, 0x5e17ba478d4fe4ab
add rax, r10
xor rcx, rax
ror rcx, 0x3e
shr rcx, 0xc
not rcx
mov qword [rsp + 0x128], rcx
movabs rdx, 0x8357245f27f6
add rdx, qword [0x14031d088]
movabs rax, 0x697346afeb9ab3cb
xor rdx, rax
movzx eax, r10b
movzx ecx, cl
imul ecx, eax
and cl, r14b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97cbfcb09
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
movabs rax, 0x960e3c287b214b45
imul rcx, rax
mov eax, 0xad6419e3
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rax, 0x350631d81cb7804e
sub rax, qword [rsp + 0x128]
shr rax, cl
mov qword [rsp + 0x130], rax
movabs rcx, 0x69f9e85fe4bf1deb
add rcx, rdi
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, rbx
xor qword [rsp + 0x130], rax
jmp 0x14010efdc
mov r9, r10
movabs rcx, 0xaaaaaa1aad7de4dd
xor r9, rcx
movabs rcx, 0x1206ed6f703891
imul r9, rcx
movabs rcx, 0xffff7e8a8b6dd601
imul rdi, rcx
movabs rcx, 0xe9f3bd843441a2d2
add r9, rcx
add r9, rdi
mov rcx, r9
movabs rax, 0x277cd7be7fad33bd
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xfffffffff828320d
lea ecx, [r10 + 0x1f]
and cl, r14b
rol r8, cl
movabs rax, 0xc2204c480000000
imul r8, rax
mov rcx, r8
ror rcx, 0x12
not rcx
movabs rax, 0x9b2de6b2c106c668
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, bl
and cl, r14b
ror rdx, cl
movabs rax, 0x960e3c287b214b45
imul rdx, rax
mov qword [rsp + 0x130], rdx
movabs rdi, 0x7613df1af9a1eb4b
jmp 0x14010f177
movabs rax, 0x7a82751b20af287d
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdi, 0x7985f44713837ad
shl rdi, cl
movabs rax, 0x7613df1af9a1eb4b
xor rdi, rax
mov cl, r8b
and cl, r14b
rol rdi, cl
movabs rcx, 0x69f1c3d784deb4bb
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
movabs rcx, 0xfffffc287b214b45
imul rax, rcx
xor rdi, rax
movabs rax, 0xffffc7a7f1b992f0
or rdi, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xf867a0bb8ec7c852
imul rcx, rax
sub rcx, r8
mov rax, rbx
sub rax, rdi
xor rcx, rax
movabs rax, 0xc7a7c6a6a0b192fd
xor rcx, rax
mov qword [rsp + 0x130], rcx
mov rax, r10
imul rax, r8
imul rax, rcx
mov r11, r9
sub r11, rax
movabs rax, 0x78958946fe3dee7
add r11, rax
xor r11, rbx
mov al, r9b
add al, al
lea ecx, [rax + r9]
shl cl, 3
and cl, r14b
rol r11, cl
not r11
jmp 0x14010f177
mov rcx, r10
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d088]
xor rcx, rdx
ror rcx, 0xb
imul rcx, r8
mov qword [rsp + 0x40], rcx
mov r11, rbx
not r11
imul r11, r9
movabs rax, 0x7cd8a7de7d40c31c
imul r11, rax
imul rbx, qword [0x14031d060], 0xffffffffff2e5282
mov rdx, qword [0x14031d068]
sub rbx, rdx
mov al, r11b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010f15a
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rbx, cl
movabs rcx, 0x69f1c3d784deb4bb
add rbx, rcx
add rbx, rdi
mov rdi, qword [rsp + 0x40]
jmp 0x14010f177
mov rdi, rdx
mov rcx, qword [rsp + 0x128]
movabs rax, 0xff055d7b8d0bc9d1
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor rdi, r11
imul rdi, qword [r13 + rcx*8]
not r8
imul r8, r10
imul r8, rbx
imul r8, qword [rsp + 0x130]
movabs rcx, 0xf5ed7e878ab8830d
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, rdi
call fcn.1400b3f48
mov qword [0x140321f68], rax
mov dword [rsp + 0xf4], esi
mov dword [rsp + 0xf4], 0xd64cc167
mov eax, dword [rsp + 0xf4]
add eax, 0xbe811835
xor eax, 0xad8a5085
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x245eedb9
xor eax, 0xb81f7d1b
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xd8e85490
add eax, ecx
xor eax, 0x8eb53a6d
add eax, 0x28c2c045
xor eax, 0x2df7750e
mov edx, dword [0x14031d030]
xor edx, 0x2505fd4b
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xdafa02b4
sub edx, eax
sub edx, ecx
sub edx, 0x10e55907
xor edx, 0x4d6eaebc
mov dword [rsp + 0xf4], edx
movsxd rax, edx
mov qword [rsp + 0x40], rax
mov dword [rsp + 0xf4], esi
xor eax, eax
mov byte [rsp + 0x89], al
lea rcx, [rsp + 0x89]
call fcn.1400b5a94
mov qword [rsp + 0x2e8], rsi
movabs rax, 0x58bfaf8484466085
mov qword [rsp + 0x2e8], rax
mov qword [rsp + 0x2f0], rsi
movabs rax, 0xfb5c19617ffa060
mov qword [rsp + 0x2f0], rax
movabs rcx, 0xf33a52b605fbba83
add rcx, qword [rsp + 0x2f0]
movabs rax, 0xdfd5366253099800
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0x7120fb80a6887dd2
add rcx, rax
movabs rax, 0xf8f8cd987386f043
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654b993615d40
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179a8612d594b
xor rcx, rax
movabs rax, 0x5f627dc6cd88f7ae
sub rcx, rax
movabs rax, 0xa3b3cd25e3fe812
xor rcx, rax
movabs rdx, 0xb483ce44c0f27bfa
add rdx, rcx
add rdx, rdi
not rdx
mov r10, qword [0x14031d038]
mov rax, r10
movabs rcx, 0x13cce94ad817ed3e
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14031d030]
mov rcx, r11
movabs rax, 0xec3316b527e812c1
xor rcx, rax
movabs rax, 0xe0b56d8db7db9693
add rdx, rax
add rdx, rcx
movabs rax, 0x6b4ab0480ae837be
xor rdx, rax
mov qword [rsp + 0x2f0], rdx
movabs rcx, 0xf33a52b6bc713703
add rcx, qword [rsp + 0x2e8]
movabs rax, 0x5c553662530a4e75
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f5b9ae2a4
sub rcx, rax
movabs rax, 0xf8f8cd97ba379dd1
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x47d654b89bb4e2c1
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a7910f5749
xor rcx, rax
movabs rax, 0x5f627dc6d7bd6e1c
sub rcx, rax
movabs rax, 0x263b3cd202ff7626
xor rcx, rax
movabs rax, 0x3483ce440f7a35e1
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94adaf1c330
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b5250e3ccf
xor r11, rax
movabs rax, 0xe0b56d90744ba685
add rcx, rax
add rcx, r11
movabs rax, 0x53603a364fdc13d0
xor rcx, rax
mov qword [rsp + 0x2e8], rcx
mov r9d, dword [rsp + 0x60]
and rcx, rdx
cmp r9, rcx
jne 0x14010f5c7
mov qword [rsp + 0x2f8], rsi
movabs rax, 0x61f2433f722307ee
mov qword [rsp + 0x2f8], rax
mov r8d, dword [rsp + 0xe0]
bts r8d, 0x12
mov dword [rsp + 0xe0], r8d
movabs rcx, 0xf33a52b6d96bd803
add rcx, qword [rsp + 0x2f8]
movabs rax, 0xfd553662530a6b70
xor rcx, rax
sub rcx, qword [0x14031d050]
sub rcx, qword [0x14031d058]
movabs rax, 0xedf047f5bf1d287
sub rcx, rax
movabs rax, 0xf8f8cd979cc9124d
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654b8745ead35
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0x5a9179a7700177a5
xor rcx, rax
movabs rax, 0x5f627dc6d6ff34c8
sub rcx, rax
movabs rax, 0x1e3b3cd1f4813dd1
xor rcx, rax
movabs rax, 0x3483ce43f34a6f48
add rax, rcx
add rdx, rax
not rdx
mov rax, qword [0x14031d038]
movabs rcx, 0x13cce94adb65adb4
xor rax, rcx
sub rdx, rax
mov rcx, qword [0x14031d030]
movabs rax, 0xec3316b5249a524b
xor rcx, rax
movabs rax, 0xe0b56d90e8e9cd09
add rdx, rax
add rdx, rcx
movabs rax, 0xb451e310a6b58bbc
xor rdx, rax
mov qword [rsp + 0x2f8], rdx
jmp 0x14010f66f
mov dword [rsp + 0xf8], esi
mov dword [rsp + 0xf8], 0x86ac36e6
mov r8d, dword [rsp + 0xe0]
bts r8d, 0x13
mov dword [rsp + 0xe0], r8d
mov eax, dword [rsp + 0xf8]
add eax, 0x9de9bbb5
xor eax, 0x510a2fee
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x5b3f4c31
xor eax, 0xd939370d
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xc525caa0
add eax, ecx
xor eax, 0xb3e1dfef
add eax, 0x221250f3
xor eax, 0x22442809
mov edx, dword [0x14031d030]
xor edx, 0x25885abd
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xda77a542
sub edx, eax
sub edx, ecx
sub edx, 0x3378a9f2
xor edx, 0xaf7e35ba
mov dword [rsp + 0xf8], edx
movsxd rdx, edx
imul rdx, r9
mov qword [rsp + 0x300], rdx
bt r8d, 0x13
jae 0x14010f692