Function at 0x14017b26c
Capabilities:
Access peb ldr_data
Check os version
Encode data using base64
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov dword [rax + 0x18], r8d
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x13c0
call fcn.14025dea0
sub rsp, rax
lea rax, [rsp + 0x1428]
mov qword [rsp + 0x2f8], rax
movabs rax, 0x64704a4081862ca2
mov qword [rsp + 0x2c0], rax
movabs r9, 0x2ce795adf65302b5
mov qword [rsp + 0x58], r9
movabs rax, 0xe617cc4bcd28a000
mov r13, qword [0x140301060]
imul r13, rax
movabs rax, 0x8a9dce1f2ddeb000
xor r13, rax
mov rcx, r13
imul rcx, r9
mov qword [rsp + 0x190], rcx
movabs rdi, 0xaaaaaaaaaaaaaaab
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea rbx, [0x140000000]
mov r8, r13
and r8, r9
imul r8, qword [rbx + rcx*8 + 0x301060]
movabs rax, 0x87624019aed0520
imul r8, rax
shr r8, 3
movabs rax, 0xc9e6fd92534531d3
xor r8, rax
movabs rax, 0xffffff57f59eacc7
mov rsi, r13
imul rsi, rax
sub rsi, 0xdd39a70
xor rsi, r8
xor rsi, qword [0x140301060]
mov rax, r8
imul rax, qword [0x140301070]
movabs rcx, 0xb9de928bfc2d13e6
imul rax, rcx
not rax
and rsi, rax
ror rsi, 0x22
shr rsi, 8
mov qword [rsp + 0x2a8], rsi
movabs r10, 0xd3186a5209acfd4b
lea rcx, [r10 + r13]
xor rcx, 0xffffffffc2a318eb
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x28e2fef11b96bca0
mov r11, qword [rbx + rcx*8 + 0x301060]
imul r11, rax
add r11, r9
movabs rcx, 0xc4b985f312f34a28
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rax, r11
xor rax, r13
mov qword [rsp + 0x198], rax
lea rcx, [r11 + r10]
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [rbx + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xf7
mov r15d, 0x8000003f
and ecx, r15d
mov r12d, 1
lea r14d, [r12 - 0x41]
jge 0x14017b457
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rdx, qword [rsp + 0x198]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0xfffffffff22c6590
mov qword [rsp + 0x198], rax
lea r9, [rax + r10]
mov r10, r11
imul r10, rsi
sub r10, r9
movabs rsi, 0x64704a4081862ca2
xor r10, rsi
mov cl, r9b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
mov rax, r9
sub rax, qword [0x140301078]
xor r10, rax
movabs rax, 0xd6bfa027dfdeeed0
imul rdx, rax
movabs rax, 0x6afe013f629aac07
add rdx, rax
xor r10, rdx
xor r10, r8
xor r10, r13
mov rax, r10
and rax, r12
je 0x14017b853
sub rax, 1
je 0x14017b710
sub rax, 1
mov sil, 0x3f
je 0x14017b608
cmp rax, 1
jne 0x14017b920
mov rcx, r9
imul rcx, r11
movabs rax, 0xcc187323de6d0b4d
add rax, r10
xor rcx, rax
ror rcx, 0x18
shr rcx, 0xc
xor rcx, r13
not rcx
mov qword [rsp + 0x2c0], rcx
movabs rdx, 0x83571edc1de4
add rdx, qword [0x140301088]
movabs rax, 0xd39aef2a5c6bc02d
xor rdx, rax
movzx eax, r10b
movzx ecx, cl
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9463cf11f
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0x2ce795adf65302b5
imul rcx, rax
mov eax, 0x97e723f5
add rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rbx + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0x5327d0a1e8592f62
sub rax, qword [rsp + 0x2c0]
shr rax, cl
mov qword [rsp + 0x58], rax
movabs rcx, 0xd3208eda6f105085
add rcx, qword [rsp + 0x198]
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [rbx + rcx*8 + 0x301060]
imul rax, r10
sub rax, qword [rsp + 0x2a8]
xor qword [rsp + 0x58], rax
jmp 0x14017b920
movabs rax, 0xaaaaaa1a97fedecb
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed55f30287
imul rcx, rax
movabs rdx, 0xfff17ca8409ce8b7
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8ab1eeec17
mov rdx, qword [rsp + 0x198]
imul rdx, rax
movabs r11, 0x68cabb3760b4d1d4
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be452e09ab
mov rcx, r11
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
imul r9, qword [rbx + rcx*8 + 0x301060]
xor r9, 0xffffffffc2ab081b
lea ecx, [r10 + 9]
and cl, sil
rol r9, cl
movabs rcx, 0xefcfba7bf453fd55
mov rax, qword [rsp + 0x190]
xor rax, rcx
movabs rcx, 0x7c7a7dc6abac02aa
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0x34
not rcx
movabs rax, 0x9b2de6b22b0a2e30
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x2a8]
and cl, sil
ror rdx, cl
movabs rax, 0x2ce795adf65302b5
imul rdx, rax
mov qword [rsp + 0x58], rdx
jmp 0x14017b920
movabs rax, 0x6089e32ee27fe9b5
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, 0xd3186a5209acfd4a
mov rax, r13
imul rax, rdx
xor rax, rsi
not rax
shl rax, cl
xor r8, rax
mov cl, r9b
mov sil, 0x3f
and cl, sil
rol r8, cl
movabs rcx, 0xd3186a5209acfd4b
add rcx, r10
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x15adf65302b5
mov rax, qword [rbx + rcx*8 + 0x301060]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7cb3aa8e6
or r8, rax
mov rcx, qword [0x140301070]
movabs rdx, 0x64704a4081862ca2
imul rcx, rdx
sub rcx, r9
mov rax, qword [rsp + 0x2a8]
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a69a32a8eb
xor rcx, rax
mov qword [rsp + 0x58], rcx
movabs rax, 0xcccccccccccccccd
mul r13
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, r13
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, qword [rsp + 0x58]
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r9
imul rdx, qword [rsp + 0x58]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, r13
movabs r13, 0x78958945560e4f1
add r13, rax
xor r13, qword [rsp + 0x2a8]
movzx eax, r11b
imul ecx, eax, 0xe
and cl, sil
rol r13, cl
not r13
jmp 0x14017b920
mov rax, rdi
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 [0x140301080]
mov rdx, qword [rbx + rcx*8 + 0x301060]
and rdx, rax
xor rdx, r8
mov sil, 0x3f
and r8b, sil
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r9
mov rcx, qword [rsp + 0x2a8]
not rcx
imul rcx, r11
movabs rax, 0x7cd8a7de47c3f90a
imul rcx, rax
mov rax, r8
imul rax, r13
mov r13, rcx
xor r13, rax
imul rax, qword [0x140301060], 0xfffffffff22c6590
mov rdx, qword [0x140301068]
sub rax, rdx
mov qword [rsp + 0x190], rax
mov al, r13b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, r15d
jge 0x14017b8f8
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rax, qword [rsp + 0x190]
ror rax, cl
movabs rcx, 0xd3186a5209acfd4b
add rax, rcx
add rax, qword [rsp + 0x198]
mov qword [rsp + 0x2a8], rax
movabs rax, 0xff055d7bb788f3c7
mov rcx, qword [rsp + 0x2c0]
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r8, r13
imul r8, qword [rbx + rcx*8 + 0x301060]
not r9
imul r9, r10
imul r9, qword [rsp + 0x2a8]
imul r9, qword [rsp + 0x58]
movabs rcx, 0xf5ed7e87b03bb91b
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r8
call fcn.140154fdc
mov qword [0x14030af50], rax
movabs rax, 0xebc62a204006d32
mov qword [rsp + 0x58], rax
movabs rcx, 0xcad3218dd84dc03
xor r13d, r13d
mov qword [rsp + 0x68], r13
movabs rax, 0x37d327a2b0be2980
movabs r11, 0x14db02ffc55efc70
mov rdx, qword [0x140301070]
imul rdx, rax
not rdx
movabs r9, 0x14db02ffc1ede32e
mov rax, qword [0x140301060]
xor rax, r9
and rdx, rax
ror rdx, 0x1a
shr rdx, 8
mov qword [rsp + 0x80], rdx
movabs rax, 0xea82d9cb8c2d2a30
mov r10, qword [0x140301060]
imul r10, rax
add r10, rcx
movabs rax, 0x93526e30ffffffff
xor r10, rax
shr r10, 0x1f
not r10
movabs r8, 0xf352cde7227b23fd
lea rcx, [r10 + r8]
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [rbx + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xb9
and ecx, r15d
jge 0x14017ba6b
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rax, r10
ror rax, cl
not rax
mov qword [rsp + 0x60], rax
movabs rcx, 0x45b4902d3bc24120
imul rax, rcx
mov qword [rsp + 0x78], rax
add r8, rax
mov r9, r10
imul r9, qword [rsp + 0x80]
sub r9, r8
movabs rdx, 0xebc62a204006d32
xor r9, rdx
movzx ecx, r8b
mov dword [rsp + 0xb0], ecx
xor ecx, 6
and ecx, 0xf
and ecx, r15d
jge 0x14017baca
sub ecx, r12d
or ecx, r14d
add ecx, r12d
rol r9, cl
mov rax, r8
sub rax, qword [0x140301078]
xor r9, rax
movabs rcx, 0x6e7c6d44d7be4360
mov rax, qword [rsp + 0x60]
imul rax, rcx
movabs rcx, 0x2d68ea9f31d2d7f7
add rax, rcx
xor r9, rax
xor r9, r11
mov rax, r9
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14017be12
sub rax, 1
je 0x14017bd0b
sub rax, 1
je 0x14017bc33
cmp rax, 1
jne 0x14017beab
mov rcx, r8
imul rcx, r10
movabs rax, 0x42576792b9da7765
add rax, r9
xor rcx, rax
ror rcx, 0x22
shr rcx, 0xc
not rcx
mov qword [rsp + 0x58], rcx
movabs rdx, 0x83572cc436ae
add rdx, qword [0x140301088]
movabs rax, 0xf3d0489f45a435d5
xor rdx, rax
movzx eax, r9b
movzx ecx, cl
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97424da51
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
movabs rax, 0xcad3218dd84dc03
imul rcx, rax
mov eax, 0xa5ff08bb
add rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rbx + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0xe8306bd4ac930c5c
sub rax, qword [rsp + 0x58]
shr rax, cl
mov qword [rsp + 0x60], rax
movabs rdx, 0xf35af26f79f69c75
mov rcx, qword [rsp + 0x78]
add rcx, rdx
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [rbx + rcx*8 + 0x301060]
imul rax, r9
sub rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x60]
xor rcx, rax
jmp 0x14017beb5
movabs rcx, 0xaaaaaa1aa5e6f585
mov r10, r9
xor r10, rcx
movabs rcx, 0x1206ed67eb29c9
imul r10, rcx
movabs rdx, 0xffff7e8a83f6c759
mov rcx, qword [rsp + 0x78]
imul rcx, rdx
movabs rdx, 0x3b88537c8e03b5c5
add r10, rdx
add r10, rcx
movabs rax, 0x277cd7be773622e5
mov rcx, r10
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r10
not r8
imul r8, qword [rbx + rcx*8 + 0x301060]
xor r8, 0xfffffffff0b32355
lea ecx, [r9 + 7]
and cl, sil
rol r8, cl
movabs rax, 0x3c7a704080000000
imul r8, rax
mov rcx, r8
ror rcx, 0x2a
not rcx
movabs rax, 0x9b2de6b2e36a8308
imul rcx, rax
mov rax, r10
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x80]
and cl, sil
ror rdx, cl
movabs rax, 0xcad3218dd84dc03
mov rcx, rdx
imul rcx, rax
jmp 0x14017beb5
movabs rax, 0xd4f28aacf1378df7
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 rdx, 0xf1439d5dfbff92cd
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0xb0]
and eax, r15d
jge 0x14017bd60
sub eax, r12d
or eax, r14d
add eax, r12d
mov cl, al
rol r11, cl
movabs rcx, 0xf352cde7227b23fd
add rcx, r9
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffff218dd84dc03
mov rax, qword [rbx + rcx*8 + 0x301060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7f92283a8
or r11, rax
mov rcx, qword [0x140301070]
movabs rax, 0xebc62a204006d32
imul rcx, rax
sub rcx, r8
mov rax, qword [rsp + 0x80]
sub rax, r11
xor rcx, rax
movabs rax, 0xc7a7c6a6a82a83a5
xor rcx, rax
mov rax, r9
imul rax, r8
imul rax, rcx
mov rdx, r10
sub rdx, rax
movabs rax, 0x78958946778cfbf
add rdx, rax
xor rdx, qword [rsp + 0x80]
not rdx
mov qword [rsp + 0x68], rdx
jmp 0x14017beb5
mov rcx, r9
imul rcx, qword [0x140301080]
and rcx, qword [0x140301070]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x30
imul r11, r8
mov rax, qword [rsp + 0x80]
not rax
imul rax, r10
movabs rcx, 0x7cd8a7de75dbd244
imul rax, rcx
mov qword [rsp + 0x68], rax
imul rcx, qword [0x140301060], 0x4b31f5e
mov rdx, qword [0x140301068]
sub rcx, rdx
mov qword [rsp + 0x60], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, r15d
jge 0x14017be89
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rax, qword [rsp + 0x60]
ror rax, cl
movabs rcx, 0xf352cde7227b23fd
add rax, rcx
add rax, qword [rsp + 0x78]
mov qword [rsp + 0x80], rax
movabs rcx, 0xcad3218dd84dc03
movabs rax, 0xff055d7b8590d889
xor qword [rsp + 0x58], rax
mov rax, rdi
mul qword [rsp + 0x58]
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, qword [rsp + 0x58]
sub rdx, rax
xor r11, qword [rsp + 0x68]
imul r11, qword [rbx + rdx*8 + 0x301060]
not r8
imul r8, r9
imul r8, qword [rsp + 0x80]
imul rcx, r8
movabs rax, 0xf5ed7e8782239255
xor r10, rax
not r10
xor rcx, r10
sub rcx, r11
call fcn.1401549ac
mov qword [0x14030af80], rax
movabs rax, 0xf46132f909b23b86
mov qword [rsp + 0x78], rax
movabs rax, 0x934a5200352773a9
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x58], r13
movabs rax, 0xf1e16bbebe52d3a0
movabs r11, 0x2372794b7b40ae74
mov rcx, qword [0x140301070]
imul rcx, rax
not rcx
movabs r8, 0xdc8d86b48f1bb78e
mov rax, qword [0x140301060]
xor rax, r8
and rcx, rax
ror rcx, 0x10
shr rcx, 8
mov qword [rsp + 0x68], rcx
movabs rax, 0xab8ecab64e78a750
mov r10, qword [0x140301060]
imul r10, rax
movabs r8, 0x6cb5adffcad88c57
sub r10, r8
movabs rax, 0x1c568dab00000000
xor r10, rax
shr r10, 0x1f
not r10
lea rcx, [r10 + r8]
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [rbx + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x19
and ecx, r15d
jge 0x14017bffd
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rax, r10
ror rax, cl
not rax
movabs rdx, 0x5fb09a90416fb148
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x80], rcx
add r8, rcx
mov r9, r10
imul r9, qword [rsp + 0x68]
sub r9, r8
movabs rdx, 0xf46132f909b23b86
xor r9, rdx
movzx ecx, r8b
mov dword [rsp + 0xb0], ecx
xor ecx, 6
and ecx, 0xf
and ecx, r15d
jge 0x14017c05a
sub ecx, r12d
or ecx, r14d
add ecx, r12d
rol r9, cl
movabs rcx, 0x4823fe5849576088
imul rax, rcx
movabs rcx, 0x44d59ff86bbf4591
sub rax, rcx
xor r9, rax
mov rax, r8
sub rax, qword [0x140301078]
xor r9, rax
xor r9, r11
mov rax, r9
and rax, r12
xor rax, 2
je 0x14017c3ab
sub rax, 1
je 0x14017c295
sub rax, 1
je 0x14017c1bb
cmp rax, 1
jne 0x14017c441
mov rcx, r8
imul rcx, r10
movabs rax, 0xa9b4c602de8c78ef
add rax, r9
xor rcx, rax
ror rcx, 0x2a
shr rcx, 0xc
not rcx
mov qword [rsp + 0x78], rcx
movabs rdx, 0x83573f2c360e
add rdx, qword [0x140301088]
movabs rax, 0x6c372887beef9adf
xor rdx, rax
movzx eax, r9b
movzx ecx, cl
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db967ccdaf1
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
movabs rax, 0x934a5200352773a9
imul rcx, rax
mov eax, 0xb617081b
add rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rbx + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0x365b495fe2250d52
sub rax, qword [rsp + 0x78]
shr rax, cl
mov qword [rsp + 0x60], rax
movabs rdx, 0x6cbdd2880f6c052f
mov rcx, qword [rsp + 0x80]
add rcx, rdx
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [rbx + rcx*8 + 0x301060]
imul rax, r9
sub rax, qword [rsp + 0x68]
xor qword [rsp + 0x60], rax
jmp 0x14017c441
movabs rcx, 0xaaaaaa1ab60ef525
mov r10, r9
xor r10, rcx
movabs rcx, 0x1206ed74032969
imul r10, rcx
movabs rdx, 0xffff7e8a901ec7f9
mov rcx, qword [rsp + 0x80]
imul rcx, rdx
movabs rdx, 0xc1ff9a5979dc7c6b
add r10, rdx
add r10, rcx
movabs rax, 0x277cd7be64de2245
mov rcx, r10
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r10
not r8
imul r8, qword [rbx + rcx*8 + 0x301060]
xor r8, 0xffffffffe35b23f5
lea ecx, [r9 - 0x19]
and cl, sil
rol r8, cl
movabs rax, 0x5c48388600000000
imul r8, rax
mov rcx, r8
ror rcx, 0x3e
not rcx
movabs rax, 0x9b2de6b2acca8188
imul rcx, rax
mov rax, r10
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x68]
and cl, sil
ror rdx, cl
movabs rax, 0x934a5200352773a9
imul rdx, rax
mov qword [rsp + 0x60], rdx
jmp 0x14017c441
movabs rax, 0xdb791843ad3b6553
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 rdx, 0xb9ecd06f64dc479
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0xb0]
and eax, r15d
jge 0x14017c2ea
sub eax, r12d
or eax, r14d
add eax, r12d
mov cl, al
rol r11, cl
movabs rcx, 0x6cb5adffcad88c57
add rcx, r9
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x1200352773a9
mov rax, qword [rbx + rcx*8 + 0x301060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7eaca8308
or r11, rax
mov rcx, qword [0x140301070]
movabs rax, 0xf46132f909b23b86
imul rcx, rax
sub rcx, r8
mov rax, qword [rsp + 0x68]
sub rax, r11
xor rcx, rax
movabs rax, 0xc7a7c6a6bbc28305
xor rcx, rax
mov qword [rsp + 0x60], rcx
mov rax, r9
imul rax, r8
imul rax, rcx
mov rdx, r10
sub rdx, rax
movabs rax, 0x78958947490cf1f
add rdx, rax
xor rdx, qword [rsp + 0x68]
movzx eax, r10b
imul ecx, eax, 0xe0
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x58], rdx
jmp 0x14017c441
mov rcx, r9
imul rcx, qword [0x140301080]
and rcx, qword [0x140301060]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x34
imul r11, r8
mov rax, qword [rsp + 0x68]
not rax
imul rax, r10
movabs rcx, 0x7cd8a7de6633d2e4
imul rax, rcx
mov qword [rsp + 0x58], rax
imul rcx, qword [0x140301060], 0xfffffffff45b19fa
mov rdx, qword [0x140301068]
sub rcx, rdx
mov qword [rsp + 0x68], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, r15d
jge 0x14017c41f
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rax, qword [rsp + 0x68]
ror rax, cl
movabs rcx, 0x6cb5adffcad88c57
add rax, rcx
add rax, qword [rsp + 0x80]
mov qword [rsp + 0x68], rax
movabs rax, 0xff055d7b9678d829
mov rcx, qword [rsp + 0x78]
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x58]
imul r11, qword [rbx + rcx*8 + 0x301060]
not r8
imul r8, r9
imul r8, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x60]
imul rcx, r8
movabs rax, 0xf5ed7e8791cb92f5
xor r10, rax
not r10
xor rcx, r10
sub rcx, r11
call fcn.140155168
mov qword [0x14030af48], rax
movabs rax, 0x378800dbdced4685
mov qword [rsp + 0x78], rax
movabs rax, 0xbec20b30fd05fca6
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x58], r13
movabs rax, 0xfa7f989f44a7b52a
movabs r11, 0xc6eda723bc549887
mov rcx, qword [0x140301070]
imul rcx, rax
not rcx
movabs rdx, 0x391258dc5f27fd73
mov rax, qword [0x140301060]
xor rax, rdx
and rcx, rax
ror rcx, 0x11
shr rcx, 8
mov qword [rsp + 0x68], rcx
movabs rax, 0xd762c18f56d79448
mov r10, qword [0x140301068]
imul r10, rax
movabs r8, 0x413df4cf02fa035a
sub r10, r8
movabs rax, 0xdbf13f00000000
xor r10, rax
shr r10, 0x1f
not r10
lea rcx, [r10 + r8]
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [rbx + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x17
and ecx, r15d
jge 0x14017c587
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rdx, r10
ror rdx, cl
not rdx
movabs rcx, 0x662c6c161a73a3ac
mov rax, rdx
imul rax, rcx
mov qword [rsp + 0x80], rax
add r8, rax
mov r9, r10
imul r9, qword [rsp + 0x68]
sub r9, r8
movabs rax, 0x378800dbdced4685
xor r9, rax
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r9, cl
mov rax, r8
sub rax, qword [0x140301078]
xor r9, rax
movabs rax, 0x8dd5b9a22a757188
imul rdx, rax
movabs rax, 0x4c5e283c0c2cc45c
add rdx, rax
xor r9, rdx
xor r9, r11
mov rax, r9
and eax, 2
je 0x14017c90a
sub rax, 1
je 0x14017c805
sub rax, 1
je 0x14017c72b
cmp rax, 1
jne 0x14017c997
mov rcx, r8
imul rcx, r10
movabs rax, 0x612f8e28525b88b6
add rax, r9
xor rcx, rax
ror rcx, 0x28
shr rcx, 0xc
not rcx
mov qword [rsp + 0x78], rcx
movabs rdx, 0x83572f044004
add rdx, qword [0x140301088]
movabs rax, 0x41bf71b766e563de
xor rdx, rax
movzx eax, r9b
movzx ecx, cl
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db977e4acff
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
movabs rax, 0xbec20b30fd05fca6
imul rcx, rax
mov eax, 0xa63f7e15
add rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rbx + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0xb38ebae32742ed29
sub rax, qword [rsp + 0x78]
shr rax, cl
mov qword [rsp + 0x60], rax
movabs rdx, 0x4146195757b51234
mov rcx, qword [rsp + 0x80]
add rcx, rdx
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [rbx + rcx*8 + 0x301060]
imul rax, r9
sub rax, qword [rsp + 0x68]
xor qword [rsp + 0x60], rax
jmp 0x14017c997
movabs rcx, 0xaaaaaa1aa626832b
mov r10, r9
xor r10, rcx
movabs rcx, 0x1206ed642b5f67
imul r10, rcx
movabs rdx, 0xffff7e8a8036b1f7
mov rcx, qword [rsp + 0x80]
imul rcx, rdx
movabs rdx, 0x5a26b4b723acf9fd
add r10, rdx
add r10, rcx
movabs rax, 0x277cd7be74f6544b
mov rcx, r10
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r10
not r8
imul r8, qword [rbx + rcx*8 + 0x301060]
xor r8, 0xfffffffff37355fb
lea ecx, [r9 - 0x17]
and cl, sil
rol r8, cl
movabs rax, 0x462550600000000
imul r8, rax
mov rcx, r8
ror rcx, 0x33
not rcx
movabs rax, 0x9b2de6b2ec6b59b0
imul rcx, rax
mov rax, r10
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x68]
and cl, sil
ror rdx, cl
movabs rax, 0xbec20b30fd05fca6
imul rdx, rax
mov qword [rsp + 0x60], rdx
jmp 0x14017c997
movabs rax, 0x29589195b1017c44
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 rdx, 0xc877ff242312b97a
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r8b
and cl, sil
rol r11, cl
movabs rcx, 0x413df4cf02fa035a
add rcx, r9
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xb30fd05fca6
mov rax, qword [rbx + rcx*8 + 0x301060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7fae2f506
or r11, rax
mov rcx, qword [0x140301070]
movabs rax, 0x378800dbdced4685
imul rcx, rax
sub rcx, r8
mov rax, qword [rsp + 0x68]
sub rax, r11
xor rcx, rax
movabs rax, 0xc7a7c6a6abeaf50b
xor rcx, rax
mov qword [rsp + 0x60], rcx
mov rax, r9
imul rax, r8
imul rax, rcx
mov rdx, r10
sub rdx, rax
movabs rax, 0x789589464b8b911
add rdx, rax
xor rdx, qword [rsp + 0x68]
movzx eax, r10b
imul ecx, eax, 0xee
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x58], rdx
jmp 0x14017c997
mov rcx, r9
imul rcx, qword [0x140301080]
and rcx, qword [0x140301088]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 7
imul r11, r8
mov rax, qword [rsp + 0x68]
not rax
imul rax, r10
movabs rcx, 0x7cd8a7de761ba4ea
imul rax, rcx
mov qword [rsp + 0x58], rax
imul rdx, qword [0x140301060], 0xffffffffe37365f4
sub rdx, qword [0x140301068]
not al
movzx ecx, al
movzx eax, byte [0x140301068]
xor ecx, eax
and ecx, r15d
jge 0x14017c97a
sub ecx, r12d
or ecx, r14d
add ecx, r12d
ror rdx, cl
movabs rax, 0x413df4cf02fa035a
add rax, rdx
add rax, qword [rsp + 0x80]
mov qword [rsp + 0x68], rax
movabs rax, 0xff055d7b8650ae27
mov rcx, qword [rsp + 0x78]
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x58]
imul r11, qword [rbx + rcx*8 + 0x301060]
not r8
imul r8, r9
imul r8, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x60]
imul rcx, r8
movabs rax, 0xf5ed7e8781e3e4fb
xor r10, rax
not r10
xor rcx, r10
sub rcx, r11
call fcn.140154c34
mov qword [0x14030af78], rax
movabs rax, 0x2799f4325c0ca6ea
mov qword [rsp + 0x78], rax
movabs r10, 0xf6566f7f6ce00a83
mov qword [rsp + 0x60], r10
movabs rax, 0xdbe8dbe000000000
mov r9, qword [0x140301060]
imul r9, rax
movabs rax, 0x32b6ef000000000
xor r9, rax
mov qword [rsp + 0x58], r9
mov rcx, r9
imul rcx, r10
mov qword [rsp + 0x68], rcx
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
and r8, r10
imul r8, qword [rbx + rcx*8 + 0x301060]
movabs rax, 0x770b82acb68f8ab8
imul r8, rax
shr r8, 3
movabs rax, 0xddd2ebf614a68d27
xor r8, rax
movabs rax, 0xffffff57b45ec7c3
mov rcx, r9
imul rcx, rax
sub rcx, 0xc97af94
xor rcx, r8
xor rcx, qword [0x140301060]
mov rax, r8
imul rax, qword [0x140301070]
movabs rdx, 0xb9de928bbded78e2
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x10
shr rcx, 8
mov qword [rsp + 0x80], rcx
movabs r10, 0x9a99080931ff57d
lea rcx, [r9 + r10]
xor rcx, 0xffffffff836373ef
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x1a95017394b80448
mov r11, qword [rbx + rcx*8 + 0x301060]
imul r11, rax
sub r11, r10
movabs rcx, 0x1de84bc176fa36f8
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rax, r11
xor rax, r9
mov qword [rsp + 0xb0], rax
lea rcx, [r11 + r10]
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [rbx + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xf3
and ecx, r15d
jge 0x14017cb90
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rdx, qword [rsp + 0xb0]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0xfffffffff368506c
mov qword [rsp + 0xb0], rax
lea r9, [rax + r10]
mov r10, r11
imul r10, qword [rsp + 0x80]
sub r10, r9
movabs rax, 0x2799f4325c0ca6ea
xor r10, rax
mov cl, r9b
xor cl, 0xfc
and cl, 0xf
rol r10, cl
movabs rax, 0xc28bb64390055f44
imul rdx, rax
movabs rax, 0x51b9d4eaedae7f09
sub rdx, rax
xor r10, rdx
mov rax, r9
sub rax, qword [0x140301078]
xor r10, rax
xor r10, r8
mov rdx, qword [rsp + 0x58]
xor r10, rdx
mov rax, r10
and eax, 3
je 0x14017cfa1
sub rax, 1
je 0x14017ce47
sub rax, 1
je 0x14017cd42
cmp rax, 1
jne 0x14017d068
mov rcx, r9
imul rcx, r11
movabs rax, 0x5fe1bd330268f337
add rax, r10
xor rcx, rax
ror rcx, 0x28
shr rcx, 0xc
xor rcx, rdx
not rcx
mov qword [rsp + 0x78], rcx
movabs rdx, 0x83575f1c76e8
add rdx, qword [0x140301088]
movabs rax, 0x92b15f88718a31f
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db907fc9a1b
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0xf6566f7f6ce00a83
imul rcx, rax
mov eax, 0xd62748f1
add rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rbx + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0x90666c6920acd6d4
sub rax, qword [rsp + 0x78]
shr rax, cl
mov qword [rsp + 0x60], rax
movabs rcx, 0x9b1b508b7c32dbb
add rcx, qword [rsp + 0xb0]
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [rbx + rcx*8 + 0x301060]
imul rax, r10
sub rax, qword [rsp + 0x80]
xor qword [rsp + 0x60], rax
jmp 0x14017d068
movabs rax, 0xaaaaaa1ad63eb5cf
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed14336983
imul rcx, rax
movabs rdx, 0xfff17ca8015c83b3
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8af02e8713
mov rdx, qword [rsp + 0xb0]
imul rdx, rax
movabs r11, 0xb86246f10278aa5a
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be04ee62af
mov rcx, r11
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
imul r9, qword [rbx + rcx*8 + 0x301060]
xor r9, 0xffffffff836b631f
lea ecx, [r10 + 0xd]
and cl, sil
rol r9, cl
movabs rcx, 0x347a6902a0000000
mov rax, qword [rsp + 0x68]
xor rax, rcx
movabs rcx, 0x7c7a7dc6ea6c69ae
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0x38
not rcx
movabs rax, 0x9b2de6b32c0b8220
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x80]
and cl, sil
ror rdx, cl
movabs rax, 0xf6566f7f6ce00a83
imul rdx, rax
mov qword [rsp + 0x60], rdx
jmp 0x14017d068
movabs rax, 0x2e448350d50fa137
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, 0x9a99080931ff57c
mov rax, qword [rsp + 0x58]
imul rax, rdx
movabs rdx, 0x2799f4325c0ca6ea
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov cl, r9b
and cl, sil
rol r8, cl
movabs rcx, 0x9a99080931ff57d
add rcx, r10
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffef7f6ce00a83
mov rax, qword [rbx + rcx*8 + 0x301060]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a78afac3e2
or r8, rax
mov rcx, qword [0x140301070]
movabs rax, 0x2799f4325c0ca6ea
imul rcx, rax
sub rcx, r9
mov rax, qword [rsp + 0x80]
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a6dbf2c3ef
xor rcx, rax
mov qword [rsp + 0x60], rcx
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x58]
mul rcx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, qword [rsp + 0x60]
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r9
imul rdx, qword [rsp + 0x60]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, qword [rsp + 0x58]
movabs rdx, 0x789589414a08ff5
add rdx, rax
xor rdx, qword [rsp + 0x80]
mov al, r11b
shl al, 2
lea ecx, [rax + r11]
add cl, cl
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x58], rdx
jmp 0x14017d068
mov rax, rdi
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 [0x140301080]
mov rdx, qword [rbx + rcx*8 + 0x301060]
and rdx, rax
xor rdx, r8
and r8b, sil
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r9
mov rcx, qword [rsp + 0x80]
not rcx
imul rcx, r11
movabs rax, 0x7cd8a7de0603920e
imul rcx, rax
mov rax, r8
imul rax, qword [rsp + 0x58]
xor rcx, rax
mov qword [rsp + 0x58], rcx
imul rax, qword [0x140301060], 0xfffffffff368506c
mov rdx, qword [0x140301068]
sub rax, rdx
mov qword [rsp + 0x68], rax
mov al, cl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, r15d
jge 0x14017d043
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rax, qword [rsp + 0x68]
ror rax, cl
movabs rcx, 0x9a99080931ff57d
add rax, rcx
add rax, qword [rsp + 0xb0]
mov qword [rsp + 0x80], rax
movabs rax, 0xff055d7bf64898c3
mov rcx, qword [rsp + 0x78]
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r8, qword [rsp + 0x58]
imul r8, qword [rbx + rcx*8 + 0x301060]
not r9
imul r9, r10
imul r9, qword [rsp + 0x80]
imul r9, qword [rsp + 0x60]
movabs rcx, 0xf5ed7e87f1fbd21f
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r8
call fcn.1401550fc
mov qword [0x14030af40], rax
movabs rax, 0xf56809ee1f37e9c3
mov qword [rsp + 0x78], rax
movabs rax, 0xd15a2e3b354a1d96
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x58], r13
movabs rax, 0x3eea8b0a3942c568
movabs r11, 0xca1d6f140bdc8cee
mov rcx, qword [0x140301070]
imul rcx, rax
not rcx
movabs rdx, 0x35e290ebc877814c
mov rax, qword [0x140301060]
xor rax, rdx
and rcx, rax
ror rcx, 0xb
shr rcx, 8
mov qword [rsp + 0x68], rcx
movabs rax, 0xa2ae3d9fb4b4feb8
mov r10, qword [0x140301068]
imul r10, rax
movabs r8, 0x2ea5d1c4cab5e26a
sub r10, r8
movabs rax, 0xfd54cc1effffffff
xor r10, rax
shr r10, 0x1f
not r10
lea rcx, [r10 + r8]
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [rbx + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xfd
and ecx, r15d
jge 0x14017d1b1
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rax, r10
ror rax, cl
not rax
movabs rdx, 0xd0d4ae0721b3449c
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x80], rcx
lea r9, [rcx + r8]
mov r8, r10
imul r8, qword [rsp + 0x68]
sub r8, r9
movabs rdx, 0xf56809ee1f37e9c3
xor r8, rdx
movzx ecx, r9b
mov dword [rsp + 0xb0], ecx
xor ecx, 2
and ecx, 0xf
and ecx, r15d
jge 0x14017d20f
sub ecx, r12d
or ecx, r14d
add ecx, r12d
rol r8, cl
movabs rcx, 0xb1db79f92ee7df68
imul rax, rcx
movabs rcx, 0x8a4af26c5dcac1c
add rax, rcx
xor r8, rax
mov rax, r9
sub rax, qword [0x140301078]
xor r8, rax
xor r8, r11
mov rax, r8
not rax
and eax, 2
je 0x14017d55b
sub rax, 1
je 0x14017d449
sub rax, 1
je 0x14017d36f
cmp rax, 1
jne 0x14017d5e8
mov rcx, r9
imul rcx, r10
movabs rax, 0xd48258d32e8e12e2
add rax, r8
xor rcx, rax
ror rcx, 0x32
shr rcx, 0xc
not rcx
mov qword [rsp + 0x78], rcx
movabs rdx, 0x8357282c35ea
add rdx, qword [0x140301088]
movabs rax, 0x2e2754bca982f704
xor rdx, rax
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db970ccd915
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
movabs rax, 0xd15a2e3b354a1d96
imul rcx, rax
mov eax, 0xa1170bff
add rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rbx + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0x23d465c030a3c113
sub rax, qword [rsp + 0x78]
shr rax, cl
mov qword [rsp + 0x60], rax
movabs rdx, 0x2eadf64d1e495d9e
mov rcx, qword [rsp + 0x80]
add rcx, rdx
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [rbx + rcx*8 + 0x301060]
imul rax, r8
sub rax, qword [rsp + 0x68]
xor qword [rsp + 0x60], rax
jmp 0x14017d5e8
movabs rcx, 0xaaaaaa1aa10ef6c1
mov r10, r8
xor r10, rcx
movabs rcx, 0x1206ed63032a8d
imul r10, rcx
movabs rdx, 0xffff7e8a871ec41d
mov rcx, qword [rsp + 0x80]
imul rcx, rdx
movabs rdx, 0x4c7ebe26afce45cc
add r10, rdx
add r10, rcx
movabs rax, 0x277cd7be73de21a1
mov rcx, r10
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r10
not r9
imul r9, qword [rbx + rcx*8 + 0x301060]
xor r9, 0xfffffffff45b2011
lea ecx, [r8 + 3]
and cl, sil
rol r9, cl
movabs rax, 0x3c1800c680000000
imul r9, rax
mov rcx, r9
ror rcx, 0x1f
not rcx
movabs rax, 0x9b2de6b2f0ca8e18
imul rcx, rax
mov rax, r10
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x68]
and cl, sil
ror rdx, cl
movabs rax, 0xd15a2e3b354a1d96
imul rdx, rax
mov qword [rsp + 0x60], rdx
jmp 0x14017d5e8
movabs rax, 0x2e6e7805296ee384
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, 0xa97f611e0c8163c
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0xb0]
and eax, r15d
jge 0x14017d49e
sub eax, r12d
or eax, r14d
add eax, r12d
mov cl, al
rol r11, cl
movabs rcx, 0x2ea5d1c4cab5e26a
add rcx, r8
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffee3b354a1d96
mov rax, qword [rbx + rcx*8 + 0x301060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7fdca80ec
or r11, rax
mov rcx, qword [0x140301070]
movabs rax, 0xf56809ee1f37e9c3
imul rcx, rax
sub rcx, r9
mov rax, qword [rsp + 0x68]
sub rax, r11
xor rcx, rax
movabs rax, 0xc7a7c6a6acc280e1
xor rcx, rax
mov qword [rsp + 0x60], rcx
mov rax, r8
imul rax, r9
imul rax, rcx
mov rdx, r10
sub rdx, rax
movabs rax, 0x78958946390ccfb
add rdx, rax
xor rdx, qword [rsp + 0x68]
mov cl, r10b
shl cl, 2
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x58], rdx
jmp 0x14017d5e8
mov rcx, r8
imul rcx, qword [0x140301080]
and rcx, qword [0x140301070]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x2e
imul r11, r9
mov rax, qword [rsp + 0x68]
not rax
imul rax, r10
movabs rcx, 0x7cd8a7de7133d100
imul rax, rcx
mov qword [rsp + 0x58], rax
imul rdx, qword [0x140301060], 0xffffffffc3ab0da2
sub rdx, qword [0x140301068]
not al
movzx ecx, al
movzx eax, byte [0x140301068]
xor ecx, eax
and ecx, r15d
jge 0x14017d5cb
sub ecx, r12d
or ecx, r14d
add ecx, r12d
ror rdx, cl
movabs rax, 0x2ea5d1c4cab5e26a
add rax, rdx
add rax, qword [rsp + 0x80]
mov qword [rsp + 0x68], rax
movabs rax, 0xff055d7b8178dbcd
mov rcx, qword [rsp + 0x78]
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x58]
imul r11, qword [rbx + rcx*8 + 0x301060]
not r9
imul r9, r8
imul r9, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x60]
imul rcx, r9
movabs rax, 0xf5ed7e8786cb9111
xor r10, rax
not r10
xor rcx, r10
sub rcx, r11
call fcn.14015464c
mov qword [0x14030af70], rax
movabs rax, 0xf304000000000000
movabs r10, 0x3fd2db2775231cbc
mov r9, qword [0x140301070]
imul r9, rax
movabs rax, 0x9b9000000000000
xor r9, rax
mov qword [rsp + 0x78], r9
mov rcx, r9
imul rcx, r10
mov qword [rsp + 0x60], rcx
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
and r8, r10
imul r8, qword [rbx + rcx*8 + 0x301060]
movabs rax, 0x88f85b2c83ecdffa
imul r8, rax
shr r8, 3
movabs rax, 0x751011082f49b761
xor r8, rax
movabs rax, 0xffffff57df0e7895
mov rcx, r9
imul rcx, rax
sub rcx, 0x14c4bf9a
xor rcx, r8
xor rcx, qword [0x140301060]
mov rax, r8
imul rax, qword [0x140301070]
movabs rdx, 0xb9de928bd6bdc7b4
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x39
shr rcx, 8
mov qword [rsp + 0x58], rcx
movabs rcx, 0xc02d24d88adce344
add rcx, r9
xor rcx, 0xffffffffe833ccb9
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x9157aa7f0612b2d8
mov r11, qword [rbx + rcx*8 + 0x301060]
imul r11, rax
add r11, r10
movabs rcx, 0x517ec9a3b23bcc10
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rax, r11
xor rax, r9
mov qword [rsp + 0x68], rax
movabs r9, 0xc02d24d88adce344
lea rcx, [r11 + r9]
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [rbx + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xa5
and ecx, r15d
jge 0x14017d7d0
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rdx, qword [rsp + 0x68]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0xffffffffeb3b4066
mov qword [rsp + 0x68], rax
add r9, rax
mov r10, r11
imul r10, qword [rsp + 0x58]
sub r10, r9
movabs rax, 0xf65366ac2bfcbf0f
xor r10, rax
mov cl, r9b
xor cl, 0xfa
and cl, 0xf
rol r10, cl
movabs rax, 0x6a494cbda68072e8
imul rdx, rax
movabs rax, 0x5a1a79a3495e55f0
add rdx, rax
xor r10, rdx
mov rax, r9
sub rax, qword [0x140301078]
xor r10, rax
xor r10, r8
mov rdx, qword [rsp + 0x78]
xor r10, rdx
mov eax, 2
dec rax
sub rax, 1
je 0x14017d95d
cmp rax, 1
jne 0x14017da54
mov r14, r9
imul r14, r11
movabs rax, 0xa752f0b860e55e94
add rax, r10
xor r14, rax
ror r14, 2
shr r14, 0xc
xor r14, rdx
not r14
movabs rcx, 0x8357344cc9b2
mov rdx, qword [0x140301088]
add rdx, rcx
movabs rax, 0xc0afa1a0f58b0a76
xor rdx, rax
movzx eax, r10b
movzx ecx, r14b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db96cac254d
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0x3fd2db2775231cbc
imul rcx, rax
mov eax, 0xbd77f7a7
add rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rbx + rcx*8 + 0x301060]
and cl, 0xf
movabs r15, 0xe043d07f31d1b5f9
sub r15, r14
shr r15, cl
movabs rax, 0xc0354960dad06ab0
mov rcx, qword [rsp + 0x68]
add rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [rbx + rcx*8 + 0x301060]
imul rax, r10
sub rax, qword [rsp + 0x58]
xor r15, rax
jmp 0x14017da68
movabs rax, 0xaaaaaa1abd6e0a99
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed7f63d6d5
imul rcx, rax
movabs rdx, 0xfff17ca86a0c3ce5
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a9b7e3845
mov rdx, qword [rsp + 0x68]
imul rdx, rax
movabs r11, 0x9a8bdc4262365999
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be6fbeddf9
mov rcx, r11
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
imul r9, qword [rbx + rcx*8 + 0x301060]
xor r9, 0xffffffffe83bdc49
lea ecx, [r10 + 0x1b]
and cl, sil
rol r9, cl
movabs rcx, 0xfb85ea3f7ec32907
mov rax, qword [rsp + 0x60]
xor rax, rcx
movabs rcx, 0x7c7a7dc6813cd6f8
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0xb
not rcx
movabs rax, 0x9b2de6b281497f78
imul rcx, rax
mov rax, r11
sub rax, r9
lea r15, [rcx + rax*4]
mov cl, byte [rsp + 0x58]
and cl, sil
ror r15, cl
movabs rax, 0x3fd2db2775231cbc
imul r15, rax
jmp 0x14017da5e
movabs r15, 0x3fd2db2775231cbc
movabs r14, 0xf65366ac2bfcbf0f
movabs rax, 0xff055d7b9d182795
xor r14, rax
mov rax, rdi
mul r14
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r14, rax
xor r8, qword [rsp + 0x78]
imul r8, qword [rbx + r14*8 + 0x301060]
not r9
imul r9, r10
imul r9, qword [rsp + 0x58]
imul r9, r15
movabs rcx, 0xf5ed7e879aab6d49
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r8
call fcn.14002e03c
mov qword [0x14030af38], rax
mov dword [rsp + 0x244], r13d
mov dword [rsp + 0x244], 0x63e7eb50
mov eax, dword [rsp + 0x244]
add eax, 0x6b0a
xor eax, 0x5f187e
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
sub eax, 0x59f8fcd6
xor eax, 0x238046dc
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0xdc5d2283
add eax, ecx
xor eax, 0xd1e619d4
add eax, 0x68065c12
xor eax, 0xf6918bdd
lea edx, [rcx + 0x1d713efb]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0x2e19e61e
sub edx, eax
mov ecx, dword [0x140301030]
xor ecx, 0xd1e619e1
add ecx, 0x35f0518e
add ecx, edx
xor ecx, 0x49302e5e
mov dword [rsp + 0x244], ecx
movsxd rax, ecx
mov rcx, qword [rsp + 0x1400]
movsx rdx, byte [rax + rcx]
mov ecx, dword [rsp + 0x1410]
not ecx
imul rcx, qword [rsp + 0x1408]
xor rdx, rcx
mov qword [rsp + 0x78], rdx
mov dword [rsp + 0x244], r13d
mov rcx, rdx
call fcn.140154af0
xor edx, edx
mov r8d, 0x8a
lea rcx, [rsp + 0xc70]
call fcn.140284020
mov rax, qword [0x14030b1f0]
mov qword [rsp + 0x60], rax
xor ecx, ecx
mov byte [rsp + 0xc8], cl
mov dword [rsp + 0x9d8], 0x29cb86e8
mov dword [rsp + 0x9dc], 0x3b7cccb4
mov dword [rsp + 0x9e0], 0x9550f1f1
mov eax, 0x11dc
mov word [rsp + 0x9e4], ax
mov qword [rsp + 0x58], r13
movabs rcx, 0x13cce94adbcd969a
mov dword [rsp + 0xb0], 0x4050
xor edx, edx
mov rax, r13
div rcx
lea r15d, [rdx + 0x35]
movzx r14d, r15w
ror r14w, 8
movzx esi, r14w
shr si, 0xa
movzx eax, r14w
shl ax, 6
or si, ax
movzx edi, si
ror di, 8
movzx r9d, r14w
shr r9w, 0xd
movzx eax, r14w
shl ax, 3
or r9w, ax
movzx edx, r14w
shl dx, 0xd
movzx eax, r14w
shr ax, 3
or dx, ax
movzx r11d, dx
ror r11w, 8
movzx r8d, r14w
shr r8w, 0xc
movzx eax, r14w
shl ax, 4
or r8w, ax
movzx ebx, r14w
not bx
movzx ecx, r14w
ror cx, 1
movzx r10d, word [rsp + r13*2 + 0x9d8]
sub r10w, si
mov eax, 0x6afe
add r10w, ax
mov eax, 0x9204
sub ax, si
xor r10w, ax
sub r10w, word [0x140301058]
sub r10w, word [0x140301050]
add r10w, r14w
add r10w, di
sub r10w, cx
mov eax, 0x6fc1
add r10w, ax
lea eax, [rsi + r14]
mov ecx, 0x2d07
add ax, cx
xor r10w, ax
sub r10w, r14w
sub r10w, r9w
sub r10w, dx
sub r10w, word [0x140301048]
sub r10w, 0x50
add r10w, r11w
mov rcx, qword [0x140301040]
add r10w, si
add r10w, cx
movzx eax, r14w
sub ax, r9w
add ax, r8w
add ax, si
xor r10w, ax
movzx eax, r14w
sub ax, r8w
xor ax, r14w
sub r10w, ax
sub r10w, r11w
add r10w, r14w
mov eax, 0x4230
add r10w, ax
movzx eax, r14w
ror ax, 7
mov edx, 0x4050
sub r11w, dx
add ax, r11w
xor r10w, ax
movzx edx, r14w
xor dx, word [0x140301030]
sub dx, r10w
movzx eax, bx
xor ax, word [0x140301038]
sub dx, ax
mov eax, 0x7100
add eax, r14d
mov r8d, 0x2440
xor ax, r8w
sub dx, ax
mov eax, 0x9d7
add eax, r14d
add ax, ax
add dx, ax
sub dx, di
sub dx, si
sub dx, cx
sub dx, r15w
movzx eax, bx
movzx ecx, r14w
imul ecx, eax
xor dx, cx
mov word [rsp + r13*2 + 0x9d8], dx
add r13, r12
cmp r13, 7
movabs rcx, 0x13cce94adbcd969a
jb 0x14017dc0b
lea rax, [rsp + 0x9d8]
mov qword [rsp + 0x9e8], rax
mov qword [rsp + 0x9f0], 0xe
mov r8, qword [rsp + 0x9e8]
xor r13d, r13d
mov qword [rsp + 0x300], r13
movabs rax, 0xc1060416cf0fe57c
mov qword [rsp + 0x300], rax
movabs rcx, 0xf33a52b3ea00bb83
add rcx, qword [rsp + 0x300]
movabs rax, 0xe0d5366253077c05
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0x7120fb80acdc6ecf
add rcx, rax
movabs rax, 0xf8f8cd9a97f1db3f
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x87d654bc705c9265
add rcx, rax
mov rdx, qword [0x140301040]
add rcx, rdx
movabs rax, 0x5a9179aac917a427
xor rcx, rax
movabs rax, 0x5f627dc75f178332
sub rcx, rax
movabs rax, 0x23b3cd36c4e476a
xor rcx, rax
movabs rax, 0xb483ce46ce299e01
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94acfa80142
mov rax, qword [0x140301038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b53057febd
mov rcx, qword [0x140301030]
xor rcx, rax
movabs rax, 0xe0b56d853f7ff617
add rdx, rax
add rdx, rcx
movabs rax, 0x97271842cdb669ba
xor rdx, rax
mov qword [rsp + 0x300], rdx
mov r9, qword [rsp + 0x60]
lea rcx, [rsp + 0xc70]
call fcn.140195414
nop
mov qword [rsp + 0x300], r13
mov rcx, qword [rsp + 0x9e8]
test rcx, rcx
je 0x14017df57
mov eax, r13d
cmp qword [rsp + 0x9f0], r13
jbe 0x14017df57
mov byte [rcx + rax], r13b
add rax, r12
cmp rax, qword [rsp + 0x9f0]
jae 0x14017df57
mov rcx, qword [rsp + 0x9e8]
jmp 0x14017df3c
movabs rax, 0x6b48af845d95ae6
mov qword [rsp + 0x308], rax
movabs rbx, 0x30868c68c43eb0b9
mov qword [rsp + 0x310], rbx
mov qword [rsp + 0x318], r13
movabs r11, 0xa097c04764ee1b0d
mov qword [rsp + 0x320], r11
movabs rax, 0x21f738df35de8b74
mov r15, qword [0x140301070]
imul r15, rax
not r15
movabs rdx, 0xa097c0476f1dc5c7
mov rax, qword [0x140301060]
xor rax, rdx
and r15, rax
mov qword [rsp + 0x328], r15
ror r15, 0xc
shr r15, 8
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x330], r15
movabs rax, 0x1f4cf30d54e3388
mov r10, qword [0x140301060]
imul r10, rax
add r10, rbx
movabs rax, 0xf0c824a0ffffffff
xor r10, rax
shr r10, 0x1f
not r10
mov qword [rsp + 0x338], r10
mov qword [rsp + 0x340], r10
movabs r8, 0xcf7973973bc14f47
lea rcx, [r10 + r8]
movabs r14, 0xaaaaaaaaaaaaaaab
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
lea rsi, [0x140000000]
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x55
mov edi, 0x8000003f
and ecx, edi
jge 0x14017e077
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, r10
ror rax, cl
not rax
movabs rcx, 0xe596ab095bad9e42
imul rax, rcx
add r8, rax
mov qword [rsp + 0x348], r8
mov r9, r15
imul r9, r10
sub r9, r8
movabs rdx, 0x6b48af845d95ae6
xor r9, rdx
mov qword [rsp + 0x350], r9
movzx ecx, r8b
mov dword [rsp + 0x80], ecx
xor cl, 0xfa
and cl, 0xf
rol r9, cl
mov rax, r8
sub rax, qword [0x140301078]
xor r9, rax
mov rax, r8
imul rax, rbx
xor r9, rax
xor r9, r11
mov qword [rsp + 0x358], r9
mov qword [rsp + 0x58], r13
mov rax, r9
and rax, r12
xor rax, 2
je 0x14017e988
sub rax, 1
mov r15b, 0x3f
je 0x14017e84a
sub rax, 1
je 0x14017e242
cmp rax, 1
jne 0x14017e33e
mov rcx, r8
imul rcx, r10
movabs rax, 0x5b43fa125b8203
add rax, r9
xor rcx, rax
mov qword [rsp + 0x360], rcx
ror rcx, 0x36
shr rcx, 0xc
not rcx
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x308], rcx
movabs rdx, 0x835717e4c242
add rdx, qword [0x140301088]
movabs rax, 0xcffbf6ef673ead83
xor rdx, rax
mov qword [rsp + 0x368], rdx
movzx eax, r9b
movzx ecx, cl
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db94f042ebd
sub rax, r10
mov r10, rdx
xor r10, rax
mov qword [rsp + 0x338], r10
mov rcx, r10
imul rcx, rbx
mov eax, 0x9edffc57
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs rbx, 0x8b2f02b756a8d08a
sub rbx, qword [rsp + 0x68]
shr rbx, cl
movabs rcx, 0x824886c5b8c9c
add rcx, r8
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r9
mov rcx, qword [rsp + 0x60]
sub rax, rcx
xor rbx, rax
mov qword [rsp + 0x310], rbx
mov qword [rsp + 0x58], r13
mov rdx, qword [rsp + 0x68]
jmp 0x14017e343
movabs rcx, 0xaaaaaa1a9ec60169
mov r10, r9
xor r10, rcx
movabs rcx, 0x1206ed5ccbdd25
imul r10, rcx
movabs rcx, 0xffff7e8ab8d633b5
imul r8, rcx
movabs rcx, 0xa098c19b8b8c079d
add r10, rcx
add r10, r8
mov qword [rsp + 0x338], r10
movabs rax, 0x277cd7be4c16d609
mov rcx, r10
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r10
not r8
imul r8, qword [rsi + rcx*8 + 0x301060]
xor r8, 0xffffffffcb93d7b9
mov qword [rsp + 0x370], r8
lea ecx, [r9 - 0x15]
and cl, r15b
rol r8, cl
movabs rax, 0x7440548220000000
imul r8, rax
mov qword [rsp + 0x348], r8
mov rcx, r8
ror rcx, 0x12
not rcx
movabs rax, 0x9b2de6b20fe950b8
imul rcx, rax
mov rax, r10
sub rax, r8
lea rdx, [rcx + rax*4]
mov qword [rsp + 0x378], rdx
mov rcx, qword [rsp + 0x60]
and cl, r15b
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
mov qword [rsp + 0x310], rbx
movabs rdx, 0x6b48af845d95ae6
mov qword [rsp + 0x58], r13
mov rcx, qword [rsp + 0x60]
movabs rax, 0xff055d7bbeb02c65
xor rdx, rax
mov qword [rsp + 0x68], rdx
mov rax, r14
mul rdx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, qword [rsp + 0x68]
sub rdx, rax
mov rax, qword [rsp + 0x58]
xor rax, r11
imul rax, qword [rsi + rdx*8 + 0x301060]
not r8
imul r8, rbx
imul r8, rcx
imul r8, r9
movabs rcx, 0xf5ed7e87b90366b9
xor r10, rcx
not r10
xor r8, r10
sub r8, rax
mov qword [rsp + 0x3a0], r8
mov rcx, r8
call fcn.140154868
mov qword [0x14030af90], rax
xor edx, edx
mov r8d, 0x8a
lea rcx, [rsp + 0xd00]
call fcn.140284020
mov rax, qword [0x14030b1f0]
mov r11, qword [rax + 0x60]
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x3a8], r11
movabs rax, 0x61612664e6ce06
mov r10, r11
xor r10, rax
movabs rax, 0x15a0b1750f0555b5
imul r10, rax
mov qword [rsp + 0x3b0], r10
ror r10, 6
movzx eax, r11b
movzx ecx, r11b
imul ecx, eax
and cl, 7
shr r10, cl
xor r10, r11
mov qword [rsp + 0x3b8], r10
movabs rcx, 0xf8c0a7001f0014e1
mov rax, r11
imul rax, rcx
mov qword [rsp + 0x3c0], rax
ror rax, 0x19
imul rax, r10
movabs rcx, 0xb6db357fcac8aa
xor rax, rcx
mov qword [rsp + 0x58], rax
mov r8, rax
not r8
mov qword [rsp + 0x3c8], r8
mov rcx, r10
imul rcx, r8
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r8
imul r9, qword [rsi + rcx*8 + 0x301060]
imul r9, r10
movabs rax, 0x9610a54465ca1ae3
xor r9, rax
movzx eax, r8b
imul ecx, eax, 0xfc
shl r9, cl
mov qword [rsp + 0xa0], r9
mov qword [rsp + 0x3d0], r9
mov rcx, r9
imul rcx, r8
mov qword [rsp + 0x70], rcx
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rbx, r9
and rbx, r8
imul rbx, qword [rsi + rcx*8 + 0x301060]
imul rbx, r10
imul rbx, r11
movabs rax, 0x202e134e0e63f10
xor rbx, rax
shr rbx, 3
mov rax, r8
imul rax, r11
xor rbx, rax
mov qword [rsp + 0x3d8], rbx
movabs rax, 0x737f3cf71a66bcf
mov rdx, r9
imul rdx, rax
add rdx, r11
xor rdx, rbx
xor rdx, qword [0x140301060]
mov rax, rbx
imul rax, qword [0x140301070]
movabs rcx, 0x41169e137815d4ee
imul rax, rcx
not rax
and rdx, rax
mov qword [rsp + 0x3e0], rdx
movzx eax, r8b
mov dword [rsp + 0x80], eax
xor eax, 0x1f
and eax, edi
jge 0x14017e57e
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov cl, al
ror rdx, cl
shr rdx, 8
mov qword [rsp + 0x2e8], rdx
mov qword [rsp + 0x3e8], rdx
mov rcx, r9
sub rcx, r8
movabs rax, 0x737f367469bdfe3
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
imul r11, qword [rsi + rcx*8 + 0x301060]
movabs rax, 0x543d8d0ade41e62
imul r11, rax
add r11, r8
mov rax, rbx
imul rax, r8
imul rax, r10
shl rax, 2
xor r11, rax
shr r11, 0x1f
not r11
mov qword [rsp + 0x88], r11
mov qword [rsp + 0x3f0], r11
mov r9, r11
xor r9, qword [rsp + 0xa0]
mov qword [rsp + 0x3f8], r9
mov rcx, r11
sub rcx, r8
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
not cl
and cl, r15b
ror r9, cl
not r9
imul r9, rbx
imul r9, qword [rsp + 0x60]
sub r9, r8
mov qword [rsp + 0x400], r9
imul r11, qword [rsp + 0x2e8]
sub r11, r9
xor r11, r10
mov qword [rsp + 0x408], r11
movzx ecx, r9b
mov dword [rsp + 0x68], ecx
and ecx, 0xf
and ecx, edi
jge 0x14017e68c
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
rol r11, cl
mov rax, r9
sub rax, qword [0x140301078]
xor r11, rax
mov rax, r9
imul rax, r8
xor r11, rax
xor r11, rbx
mov rdx, qword [rsp + 0xa0]
xor r11, rdx
mov qword [rsp + 0x410], r11
mov rax, r11
and rax, r8
and eax, 3
je 0x14017ecee
sub rax, 1
je 0x14017eb66
sub rax, 1
je 0x14017ea31
cmp rax, 1
jne 0x14017edd2
movabs rcx, 0x746fd0ff1efa75cf
mov rax, r8
imul rax, rcx
mov r10, r11
sub r10, rax
mov rax, r9
imul rax, qword [rsp + 0x88]
xor r10, rax
mov qword [rsp + 0x418], r10
mov eax, dword [rsp + 0x80]
and eax, 0x3c
xor eax, 0xe4
and eax, edi
jge 0x14017e733
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov cl, al
ror r10, cl
shr r10, 0xc
xor r10, rdx
not r10
mov qword [rsp + 0x3b8], r10
movabs rcx, 0xf8c88fcf9ae4daec
mov rdx, qword [0x140301088]
add rdx, rcx
xor rdx, r8
movabs rax, 0x7b5761f2e000590
xor rdx, rax
mov qword [rsp + 0x420], rdx
movzx eax, r10b
movzx ecx, r11b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf027121c2043617
sub rax, qword [rsp + 0x88]
mov rdi, rdx
xor rdi, rax
mov qword [rsp + 0x3f0], rdi
mov rcx, r8
imul rcx, rdi
movabs rax, 0x737f367ec201b03
sub rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0xe1485e557b4c91f
imul r8, rax
sub r8, r10
movabs rax, 0x694e79e1e90533e9
sub r8, rax
shr r8, cl
movabs rcx, 0xf8c02810e15b9432
add rcx, r9
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r11
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r11
mov rcx, qword [rsp + 0x2e8]
sub rax, rcx
xor r8, rax
mov qword [rsp + 0x3c8], r8
jmp 0x14017ede2
movabs rax, 0x9b2e9e993763103b
imul r9, rax
mov qword [rsp + 0x358], r9
movabs rax, 0xd79435e50d79435f
mul r9
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r9b
sub cl, dl
movabs rdx, 0xf94b7507ba26a519
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov qword [rsp + 0x380], r11
mov ecx, dword [rsp + 0x80]
and cl, r15b
rol r11, cl
movabs rcx, 0xcf7973973bc14f47
add rcx, r9
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xc68c43eb0b9
mov rax, qword [rsi + rcx*8 + 0x301060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7c2027744
or r11, rax
mov qword [rsp + 0x320], r11
mov rbx, qword [0x140301070]
movabs rax, 0x6b48af845d95ae6
imul rbx, rax
sub rbx, r8
mov rax, qword [rsp + 0x60]
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a6930a7749
xor rbx, rax
mov qword [rsp + 0x310], rbx
mov rax, rbx
imul rax, r9
imul rax, r8
mov rdx, r10
sub rdx, rax
movabs rax, 0x78958945c583b53
add rdx, rax
xor rdx, qword [rsp + 0x60]
mov qword [rsp + 0x388], rdx
movzx eax, r10b
imul ecx, eax, 0xec
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x318], rdx
movabs rdx, 0x6b48af845d95ae6
jmp 0x14017e33e
mov rdx, qword [0x140301068]
mov rcx, r9
imul rcx, qword [0x140301080]
and rcx, rdx
mov rax, r11
mov r11, rcx
xor r11, rax
mov qword [rsp + 0x390], r11
ror r11, 0xd
imul r11, r8
mov qword [rsp + 0x320], r11
mov rax, r15
not rax
imul rax, r10
movabs rcx, 0x7cd8a7de4efb26a8
imul rax, rcx
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x318], rax
imul r15, qword [0x140301060], 0xbf3deca
sub r15, rdx
mov qword [rsp + 0x398], r15
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x14017ea10
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror r15, cl
lea rcx, [r15 + r8]
mov qword [rsp + 0x330], rcx
movabs rdx, 0x6b48af845d95ae6
mov r15b, 0x3f
jmp 0x14017e343
inc r9
movabs rax, 0x737721235d62b1f
imul r9, rax
movabs rdx, 0x7397030c4a42fbf
mov rax, rbx
xor rax, rdx
sub r9, rax
movabs rdx, 0x5262a68213c619c3
mov rax, r11
xor rax, rdx
movabs rdx, 0xf8da0a75d1cbc58f
imul rax, rdx
add r9, rax
mov qword [rsp + 0x88], r9
mov qword [rsp + 0x3f0], r9
movabs rax, 0xdfb4db26c116cea3
mov rcx, r9
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
not r9
imul r9, qword [rsi + rcx*8 + 0x301060]
movabs rax, 0x737f3674693cf13
xor r9, rax
mov qword [rsp + 0x428], r9
lea ecx, [r12 + r11]
and cl, r15b
rol r9, cl
mov rax, r10
not rax
shl rax, 0x1d
xor rax, qword [rsp + 0x70]
movabs rcx, 0x84b2715e2f94c5a2
and rax, rcx
imul r9, rax
mov qword [rsp + 0x400], r9
movzx ecx, r10b
xor ecx, 0x9e
and ecx, edi
jge 0x14017eb14
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, r9
ror rax, cl
not rax
movabs rcx, 0x1e0375340efa4c84
imul rax, rcx
sub rax, r9
mov rdi, qword [rsp + 0x88]
add rax, rdi
shl rax, 2
mov qword [rsp + 0x430], rax
mov cl, byte [rsp + 0x2e8]
and cl, r15b
ror rax, cl
imul rax, r8
mov r8, rax
mov qword [rsp + 0x3c8], rax
jmp 0x14017edda
mov rax, r8
imul rax, r8
shr rax, 2
not rax
imul r11, rax
imul r11, r8
mov qword [rsp + 0x410], r11
movabs rax, 0xd79435e50d79435f
mul r11
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r11b
sub cl, dl
mov rax, qword [rsp + 0xa0]
imul rax, qword [rsp + 0x58]
xor rax, r10
not rax
shl rax, cl
xor rbx, rax
mov qword [rsp + 0x438], rbx
mov eax, dword [rsp + 0x68]
and eax, edi
jge 0x14017ebd3
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov cl, al
rol rbx, cl
mov rcx, r11
sub rcx, r8
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
imul r8, qword [rsi + rcx*8 + 0x301060]
xor rbx, r8
movabs rax, 0x737cb3f4f026fee
or rbx, rax
mov qword [rsp + 0x3d8], rbx
mov r8, r10
imul r8, qword [0x140301070]
sub r8, r9
mov rax, qword [rsp + 0x2e8]
sub rax, rbx
xor r8, rax
movabs rax, 0x3f6fca3e1e0a6fe3
xor r8, rax
mov qword [rsp + 0x3c8], r8
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0xa0]
mul rcx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, r8
div rcx
mov rcx, rdx
mov rdx, r8
imul rdx, r11
imul rdx, r9
shr rdx, cl
mov rdi, qword [rsp + 0x88]
mov rax, rdi
sub rax, rdx
sub rax, qword [rsp + 0xa0]
movabs rcx, 0xbeabf32ea7dc07
sub rax, rcx
xor rax, qword [rsp + 0x2e8]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x440], rax
mov al, dil
add al, al
lea ecx, [rax + rdi]
add cl, cl
and cl, r15b
mov r15, qword [rsp + 0xa0]
rol r15, cl
not r15
mov qword [rsp + 0x3d0], r15
mov rcx, qword [rsp + 0x2e8]
jmp 0x14017edea
mov rax, r14
mul rbx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, rbx
sub rcx, rax
mov rax, r11
imul rax, qword [0x140301080]
mov rdx, qword [rsi + rcx*8 + 0x301060]
and rdx, rax
xor rdx, rbx
mov qword [rsp + 0x448], rdx
and bl, r15b
mov cl, bl
mov rbx, rdx
ror rbx, cl
imul rbx, r9
mov qword [rsp + 0x3d8], rbx
mov r15, qword [rsp + 0x2e8]
not r15
imul r15, qword [rsp + 0x88]
movabs rax, 0x8410ab46c3fb3e02
imul r15, rax
mov rax, qword [rsp + 0xa0]
imul rax, rbx
xor r15, rax
mov qword [rsp + 0x3d0], r15
mov rax, qword [rsp + 0x60]
imul rax, qword [0x140301060]
mov rdx, qword [0x140301068]
sub rax, rdx
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x450], rax
mov al, r15b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x14017edb4
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0x60]
ror rax, cl
lea rcx, [rax + r9]
mov qword [rsp + 0x3e8], rcx
mov rdi, qword [rsp + 0x88]
jmp 0x14017edea
mov rdi, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x2e8]
mov r15, qword [rsp + 0xa0]
movabs rax, 0x7cd51e333b034cf
xor r10, rax
mov rax, r14
mul r10
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r10, rax
xor r15, rbx
imul r15, qword [rsi + r10*8 + 0x301060]
not r9
imul r9, r8
imul r9, rcx
imul r9, r11
movabs rax, 0xd25721f34037e13
xor rdi, rax
not rdi
xor r9, rdi
sub r9, r15
mov qword [rsp + 0x88], r9
mov qword [rsp + 0x2e8], r9
xor eax, eax
mov byte [rsp + 0x11b], al
mov eax, 0x86eb
mov word [rsp + 0xab0], ax
mov eax, 0x29d5
mov word [rsp + 0xab2], ax
mov eax, 0xcc84
mov word [rsp + 0xab4], ax
mov eax, 0x3b89
mov word [rsp + 0xab6], ax
mov eax, 0xf489
mov word [rsp + 0xab8], ax
mov eax, 0x98de
mov word [rsp + 0xaba], ax
mov eax, 0x1248
mov word [rsp + 0xabc], ax
mov eax, 0x3f29
mov word [rsp + 0xabe], ax
mov eax, 0xf210
mov word [rsp + 0xac0], ax
mov eax, 0x5aa7
mov word [rsp + 0xac2], ax
mov r8, r13
mov qword [rsp + 0x458], r13
cmp r8, 0xa
jae 0x14017f100
xor edx, edx
mov rax, r8
movabs rcx, 0x13cce94adbcd969a
div rcx
lea r13d, [rdx + 0x35]
movzx r12d, r13w
ror r12w, 8
mov word [rsp + 0x140], r12w
movzx eax, r12w
shl ax, 6
movzx r15d, r12w
shr r15w, 0xa
or r15w, ax
movzx ecx, r12w
mov edi, ecx
shr rdi, 0xa
or di, ax
mov r14d, ecx
shr r14, 2
movzx eax, r12w
shl ax, 0xe
or r14w, ax
movzx r11d, r12w
shr r11w, 0xd
movzx eax, r12w
shl ax, 3
or r11w, ax
movzx edx, r12w
shl dx, 0xd
movzx eax, r12w
shr ax, 3
or dx, ax
movzx ebx, dx
ror bx, 8
movzx r9d, r12w
shr r9w, 0xc
movzx eax, r12w
shl ax, 4
or r9w, ax
movzx esi, r12w
not si
movzx r10d, r12w
ror r10w, 7
movzx eax, bx
sub ax, word [rsp + 0xb0]
add r10w, ax
movzx r8d, word [rsp + r8*2 + 0xab0]
sub r8w, r15w
mov eax, 0x6afe
add r8w, ax
mov eax, 0x9204
sub ax, di
xor r8w, ax
shr rcx, 1
movzx eax, r12w
shl ax, 0xf
or cx, ax
sub r8w, cx
sub r8w, word [0x140301050]
sub r8w, word [0x140301058]
add r8w, r12w
add r8w, r14w
mov eax, 0x6fc1
add r8w, ax
lea eax, [rdi + r12]
mov ecx, 0x2d07
add ax, cx
xor r8w, ax
sub r8w, r12w
sub r8w, word [0x140301048]
sub r8w, r11w
sub r8w, dx
mov rcx, qword [0x140301040]
sub r8w, 0x50
add r8w, cx
add r8w, bx
add r8w, di
movzx eax, r12w
sub ax, r11w
add ax, r9w
add ax, r15w
xor r8w, ax
movzx eax, r12w
sub ax, r9w
xor ax, r12w
sub r8w, ax
sub r8w, bx
add r8w, r12w
mov eax, 0x4230
add r8w, ax
xor r10w, r8w
movzx edx, r12w
xor dx, word [0x140301030]
sub dx, r10w
movzx eax, si
xor ax, word [0x140301038]
sub dx, ax
mov eax, 0x7100
add eax, r12d
mov r8d, 0x2440
xor ax, r8w
sub dx, ax
mov eax, 0x9d7
add eax, r12d
add ax, ax
add dx, ax
sub dx, cx
sub dx, r14w
sub dx, r15w
sub dx, r13w
movzx eax, si
movzx ecx, r12w
imul ecx, eax
xor dx, cx
mov word [rsp + 0x150], dx
mov r8, qword [rsp + 0x458]
mov word [rsp + r8*2 + 0xab0], dx
mov r12d, 1
add r8, r12
mov qword [rsp + 0x458], r8
jmp 0x14017eee2
lea rax, [rsp + 0xab0]
mov qword [rsp + 0x9f8], rax
mov qword [rsp + 0xa00], 0x14
mov r8, qword [rsp + 0x9f8]
xor r13d, r13d
mov qword [rsp + 0x460], r13
movabs rax, 0x21025b19749d3898
mov qword [rsp + 0x460], rax
movabs rcx, 0xf33a52b3f0701c83
add rcx, qword [rsp + 0x460]
movabs rax, 0x41d5366253078274
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0x7120fb80acc920ac
add rcx, rax
movabs rax, 0xf8f8cd9a9168bcbb
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x7d654bc67a06239
add rcx, rax
mov rdx, qword [0x140301040]
add rcx, rdx
movabs rax, 0x5a9179aac1c09983
xor rcx, rax
movabs rax, 0x5f627dc75dce1076
sub rcx, rax
movabs rax, 0xfa3b3cd36916636f
xor rcx, rax
movabs rax, 0xb483ce46c7e748a8
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94acfc1bec6
mov rax, qword [0x140301038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5303e4139
mov rcx, qword [0x140301030]
xor rcx, rax
movabs rax, 0xe0b56d8559172f9b
add rdx, rax
add rdx, rcx
movabs rax, 0xac17b17c787c016
xor rdx, rax
mov qword [rsp + 0x468], rdx
mov qword [rsp + 0x460], rdx
mov r9, qword [rsp + 0x88]
lea rcx, [rsp + 0xd00]
call fcn.140195414
nop
mov qword [rsp + 0x460], r13
mov rcx, qword [rsp + 0x9f8]
test rcx, rcx
je 0x14017f291
mov eax, r13d
mov qword [rsp + 0x470], rax
cmp rax, qword [rsp + 0xa00]
jae 0x14017f291
mov byte [rcx + rax], r13b
add rax, r12
mov qword [rsp + 0x470], rax
mov rcx, qword [rsp + 0x9f8]
jmp 0x14017f26e
movabs rax, 0x6447b5245821375f
mov qword [rsp + 0x478], rax
movabs rdi, 0xdc420277f91ba5c
mov qword [rsp + 0x480], rdi
movabs rax, 0x35d94bf9ec240000
mov r8, qword [0x140301060]
imul r8, rax
movabs rax, 0xa9dcd0b3fb7b0000
xor r8, rax
mov qword [rsp + 0x88], r8
mov qword [rsp + 0x488], r8
mov rcx, r8
imul rcx, rdi
movabs r14, 0xaaaaaaaaaaaaaaab
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r8
and r10, rdi
lea rsi, [0x140000000]
imul r10, qword [rsi + rcx*8 + 0x301060]
movabs rax, 0xacb32276f4b37d60
imul r10, rax
shr r10, 3
movabs rax, 0xc773205cc1c1ba51
xor r10, rax
mov qword [rsp + 0x490], r10
movabs rax, 0xffffff57c4df8a57
mov r9, r8
imul r9, rax
sub r9, 0x3c1ba160
xor r9, r10
xor r9, qword [0x140301060]
mov rax, r10
imul rax, qword [0x140301070]
movabs rcx, 0xb9de928bcd6c3576
imul rax, rcx
not rax
and r9, rax
mov qword [rsp + 0x498], r9
ror r9, 0x1b
shr r9, 8
mov qword [rsp + 0x4a0], r9
movabs r15, 0xf23bdfd8806e45a4
lea rcx, [r8 + r15]
xor rcx, 0xfffffffff3e23e7b
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xe508b9d9f14dfe40
mov rbx, qword [rsi + rcx*8 + 0x301060]
imul rbx, rax
add rbx, rdi
movabs rcx, 0x419cd7652fe7b090
mov rax, r10
imul rax, rcx
xor rbx, rax
shr rbx, 0x1f
not rbx
mov qword [rsp + 0x4a8], rbx
mov r11, rbx
xor r11, r8
mov qword [rsp + 0x4b0], r11
lea rcx, [rbx + r15]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, bl
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x67
mov edi, 0x8000003f
and ecx, edi
jge 0x14017f453
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror r11, cl
not r11
imul r11, r10
imul r15, r11, 0xffffffffc3e45ea0
movabs r8, 0xf23bdfd8806e45a4
add r8, r15
mov qword [rsp + 0x4b8], r8
mov r11, rbx
imul r11, r9
sub r11, r8
movabs rax, 0x6447b5245821375f
xor r11, rax
mov qword [rsp + 0x4c0], r11
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r11, cl
mov rax, r8
sub rax, qword [0x140301078]
xor r11, rax
mov rax, r8
movabs rcx, 0xdc420277f91ba5c
imul rax, rcx
xor r11, rax
xor r11, r10
xor r11, qword [rsp + 0x88]
mov qword [rsp + 0x4c8], r11
mov rax, r14
mul r10
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, r10
sub rdx, rax
mov rax, r11
imul rax, qword [0x140301080]
mov rsi, qword [rsi + rdx*8 + 0x301060]
and rsi, rax
xor rsi, r10
mov qword [rsp + 0x4d0], rsi
and r10b, 0x3f
mov cl, r10b
ror rsi, cl
imul rsi, r8
mov qword [rsp + 0x490], rsi
not r9
imul r9, rbx
movabs rax, 0x7cd8a7de7682df9a
imul r9, rax
mov rax, rsi
imul rax, qword [rsp + 0x88]
xor r9, rax
mov qword [rsp + 0x488], r9
mov r10, qword [0x140301060]
imul r8, r10, 0xffffffffc3e45ea0
mov rdx, qword [0x140301068]
sub r8, rdx
mov qword [rsp + 0x4d8], r8
mov al, r9b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x14017f58c
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror r8, cl
movabs rdx, 0xf23bdfd8806e45a4
lea rcx, [r8 + rdx]
add rcx, r15
mov qword [rsp + 0x4a0], rcx
imul r15, rdx
movabs rax, 0x33ab91bc6c5016b4
add r15, rax
imul r15, r11
imul r15, rcx
movabs rax, 0xf5ed7e87817a9f8b
xor rbx, rax
not rbx
xor r15, rbx
xor r9, rsi
imul r9, r10
sub r15, r9
mov qword [rsp + 0x4e0], r15
mov rcx, r15
call fcn.14015488c
mov qword [0x14030af88], rax
xor edx, edx
mov r8d, 0xa6
lea rcx, [rsp + 0xd90]
call fcn.140284020
mov qword [rsp + 0x4e8], r13
movabs rax, 0xd8aec2a93d2e25c1
mov qword [rsp + 0x4e8], rax
movabs rcx, 0xcc5ad4a0c02963a
add rcx, qword [rsp + 0x4e8]
movabs rax, 0xbb8b4fedad9d9e07
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0x4ed45970ea76693f
add rcx, rax
movabs rax, 0x707459a1d67f91e
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x5829ab45a5330e01
add rcx, rax
add rcx, qword [0x140301040]
movabs rax, 0xa56e86578a4d86b0
xor rcx, rax
movabs rax, 0x2b02fde7192e2650
sub rcx, rax
movabs rax, 0x1fc4c32d869c4a00
xor rcx, rax
movabs rax, 0x13cce94ad7cff753
mov rbx, qword [0x140301030]
xor rbx, rax
sub rbx, rcx
movabs rcx, 0xec3316b5283008ac
mov rax, qword [0x140301038]
xor rax, rcx
sub rbx, rax
sub rbx, qword [0x140301040]
movabs rax, 0x7660b1dec7466f6a
sub rbx, rax
movabs rax, 0x638c0a59d704c3c4
xor rbx, rax
mov qword [rsp + 0x4f0], rbx
mov qword [rsp + 0x4e8], rbx
call fcn.140178cf0
xor rax, rbx
mov qword [rsp + 0x88], rax
xor eax, eax
mov byte [rsp + 0x11c], al
mov eax, 0x8707
mov word [rsp + 0xac4], ax
mov eax, 0x29cd
mov word [rsp + 0xac6], ax
mov eax, 0xccaa
mov word [rsp + 0xac8], ax
mov eax, 0x3b74
mov word [rsp + 0xaca], ax
mov eax, 0xf464
mov word [rsp + 0xacc], ax
mov eax, 0x9556
mov word [rsp + 0xace], ax
mov eax, 0x11df
mov word [rsp + 0xad0], ax
mov eax, 0x3f29
mov word [rsp + 0xad2], ax
mov eax, 0xedbc
mov word [rsp + 0xad4], ax
mov eax, 0x5ab3
mov word [rsp + 0xad6], ax
mov eax, 0x3786
mov word [rsp + 0xad8], ax
mov r8, r13
mov qword [rsp + 0x4f8], r13
cmp r8, 0xb
jae 0x14017f9db
xor edx, edx
mov rax, r8
movabs rcx, 0x13cce94adbcd969a
div rcx
lea r12d, [rdx + 0x35]
movzx r13d, r12w
ror r13w, 8
mov word [rsp + 0x158], r13w
movzx eax, r13w
shl ax, 6
movzx r15d, r13w
shr r15w, 0xa
or r15w, ax
movzx ecx, r13w
mov edi, ecx
shr rdi, 0xa
or di, ax
mov r14d, ecx
shr r14, 2
movzx eax, r13w
shl ax, 0xe
or r14w, ax
movzx r11d, r13w
shr r11w, 0xd
movzx eax, r13w
shl ax, 3
or r11w, ax
movzx edx, r13w
shl dx, 0xd
movzx eax, r13w
shr ax, 3
or dx, ax
movzx ebx, dx
ror bx, 8
movzx r9d, r13w
shr r9w, 0xc
movzx eax, r13w
shl ax, 4
or r9w, ax
movzx esi, r13w
not si
movzx r10d, r13w
ror r10w, 7
movzx eax, bx
sub ax, word [rsp + 0xb0]
add r10w, ax
movzx r8d, word [rsp + r8*2 + 0xac4]
sub r8w, r15w
mov eax, 0x6afe
add r8w, ax
mov eax, 0x9204
sub ax, di
xor r8w, ax
shr rcx, 1
movzx eax, r13w
shl ax, 0xf
or cx, ax
sub r8w, cx
sub r8w, word [0x140301050]
sub r8w, word [0x140301058]
add r8w, r13w
add r8w, r14w
mov eax, 0x6fc1
add r8w, ax
lea eax, [rdi + r13]
mov ecx, 0x2d07
add ax, cx
xor r8w, ax
sub r8w, r13w
sub r8w, r11w
sub r8w, dx
sub r8w, word [0x140301048]
add r8w, bx
add r8w, di
mov rdi, qword [0x140301040]
sub r8w, 0x50
add r8w, di
movzx eax, r13w
sub ax, r11w
add ax, r9w
add ax, r15w
xor r8w, ax
movzx eax, r13w
sub ax, r9w
xor ax, r13w
sub r8w, ax
sub r8w, bx
add r8w, r13w
mov eax, 0x4230
add r8w, ax
xor r10w, r8w
movzx edx, r13w
xor dx, word [0x140301030]
sub dx, r10w
movzx eax, si
xor ax, word [0x140301038]
sub dx, ax
mov eax, 0x7100
add eax, r13d
mov ecx, 0x2440
xor ax, cx
sub dx, ax
mov eax, 0x9d7
add eax, r13d
add ax, ax
add dx, ax
sub dx, r14w
sub dx, r15w
sub dx, r12w
sub dx, di
movzx eax, si
movzx ecx, r13w
imul ecx, eax
xor dx, cx
mov word [rsp + 0x160], dx
mov r8, qword [rsp + 0x4f8]
mov word [rsp + r8*2 + 0xac4], dx
mov r12d, 1
add r8, r12
mov qword [rsp + 0x4f8], r8
jmp 0x14017f7bf
lea rax, [rsp + 0xac4]
mov qword [rsp + 0xa08], rax
mov qword [rsp + 0xa10], 0x16
mov r8, qword [rsp + 0xa08]
xor r13d, r13d
mov qword [rsp + 0x500], r13
movabs rax, 0x14e2af81e74bc016
mov qword [rsp + 0x500], rax
movabs rcx, 0xf33a52b3ec980183
add rcx, qword [rsp + 0x500]
movabs rax, 0x26d5366253077e9c
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0x7120fb80acd4a8fd
add rcx, rax
movabs rax, 0xf8f8cd9a95503827
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x87d654bc6cd83ae0
add rcx, rax
mov rdx, qword [0x140301040]
add rcx, rdx
movabs rax, 0x5a9179aac623184f
xor rcx, rax
movabs rax, 0x5f627dc75e8477ca
sub rcx, rax
movabs rax, 0xd23b3cd36b028fb0
xor rcx, rax
movabs rax, 0xb483ce46cba47aeb
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94acfb25e5a
mov rax, qword [0x140301038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5304da1a5
mov rcx, qword [0x140301030]
xor rcx, rax
movabs rax, 0xe0b56d8549a7232f
add rdx, rax
add rdx, rcx
movabs rax, 0xc562c5d04c5f6a02
xor rdx, rax
mov qword [rsp + 0x508], rdx
mov qword [rsp + 0x500], rdx
mov r9, qword [rsp + 0x88]
lea rcx, [rsp + 0xd90]
call fcn.140195414
nop
mov qword [rsp + 0x500], r13
mov rcx, qword [rsp + 0xa08]
test rcx, rcx
je 0x14017fb6c
mov eax, r13d
mov qword [rsp + 0x510], rax
cmp rax, qword [rsp + 0xa10]
jae 0x14017fb6c
mov byte [rcx + rax], r13b
add rax, r12
mov qword [rsp + 0x510], rax
mov rcx, qword [rsp + 0xa08]
jmp 0x14017fb49
mov qword [rsp + 0x4e8], r13
movabs rax, 0xfd56b06af15f3818
mov qword [rsp + 0x518], rax
movabs r8, 0x7940b6ac3fc0463f
mov qword [rsp + 0x520], r8
movabs rax, 0x8dea969c55de8000
mov rbx, qword [0x140301060]
imul rbx, rax
movabs rax, 0x8a9dcd15d6351000
xor rbx, rax
mov qword [rsp + 0x528], rbx
mov rcx, rbx
imul rcx, r8
mov qword [rsp + 0x88], rcx
movabs r14, 0xaaaaaaaaaaaaaaab
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, rbx
and r10, r8
lea rsi, [0x140000000]
imul r10, qword [rsi + rcx*8 + 0x301060]
movabs rax, 0xbb27a4e785782bb0
imul r10, rax
shr r10, 3
movabs rax, 0xa5a4f99cab0ea07a
xor r10, rax
mov qword [rsp + 0x530], r10
movabs rax, 0xffffff57c531127d
mov r15, rbx
imul r15, rax
sub r15, 0x3cc7282e
xor r15, r10
xor r15, qword [0x140301060]
mov rax, r10
imul rax, qword [0x140301070]
movabs rcx, 0xb9de928bcc82ad5c
imul rax, rcx
not rax
and r15, rax
mov qword [rsp + 0x538], r15
ror r15, 0x12
shr r15, 8
mov qword [rsp + 0x540], r15
movabs r9, 0x86bf4953c03fb9c1
lea rcx, [rbx + r9]
xor rcx, 0xfffffffff20ca651
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x72f764dabb08d8d8
mov r11, qword [rsi + rcx*8 + 0x301060]
imul r11, rax
add r11, r8
movabs rcx, 0xa8237aa5a71577a0
mov rax, r10
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov qword [rsp + 0x548], r11
mov r8, rbx
xor r8, r11
mov qword [rsp + 0x550], r8
lea rcx, [r11 + r9]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x4d
mov edi, 0x8000003f
and ecx, edi
jge 0x14017fd37
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror r8, cl
not r8
imul r8, r10
imul r8, r8, 0xffffffffc338d7d2
add r8, r9
mov qword [rsp + 0x558], r8
mov r9, r15
imul r9, r11
sub r9, r8
movabs rax, 0xfd56b06af15f3818
xor r9, rax
mov qword [rsp + 0x560], r9
movzx ecx, r8b
mov dword [rsp + 0x68], ecx
xor ecx, 2
and ecx, 0xf
and ecx, edi
jge 0x14017fd8d
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
rol r9, cl
mov rax, r8
sub rax, qword [0x140301078]
xor r9, rax
mov rax, r8
movabs rcx, 0x7940b6ac3fc0463f
imul rax, rcx
xor r9, rax
xor r9, r10
xor r9, rbx
mov qword [rsp + 0x568], r9
mov rax, r9
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x1401801c0
sub rax, 1
je 0x14018002f
sub rax, 1
je 0x14017ff16
cmp rax, 1
jne 0x140180289
mov rdi, r8
imul rdi, r11
movabs rax, 0x6f56800b1cffbf3d
add rax, r9
xor rdi, rax
mov qword [rsp + 0x570], rdi
ror rdi, 0x2a
shr rdi, 0xc
xor rdi, rbx
not rdi
mov qword [rsp + 0x518], rdi
movabs rcx, 0x83572e73a35a
mov rdx, qword [0x140301088]
add rdx, rcx
movabs rax, 0x863dcc2ba5573a1d
xor rdx, rax
mov qword [rsp + 0x578], rdx
movzx eax, dil
movzx ecx, r9b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db976934fa5
sub rax, r11
mov r11, rdx
xor r11, rax
mov qword [rsp + 0x548], r11
mov rcx, r11
movabs rax, 0x7940b6ac3fc0463f
imul rcx, rax
mov eax, 0xa7489d4f
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0x817da2185f457e38
sub rax, rdi
shr rax, cl
mov qword [rsp + 0x88], rax
movabs rcx, 0x8248855cced84
add rcx, r8
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r9
sub rax, r15
mov rcx, qword [rsp + 0x88]
xor rcx, rax
mov qword [rsp + 0x520], rcx
jmp 0x140180293
lea r11, [r8 + 1]
movabs rax, 0xffff7e8a814152ad
imul r11, rax
movabs rcx, 0xaaaaaa1aa7516071
mov rax, r9
xor rax, rcx
movabs rcx, 0x1206ed655cbc3d
imul rax, rcx
add r11, rax
movabs rcx, 0xfff17ca87033560d
mov rax, r10
xor rax, rcx
sub r11, rax
mov qword [rsp + 0x548], r11
movabs rax, 0x277cd7be7581b711
mov rcx, r11
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
not r8
imul r8, qword [rsi + rcx*8 + 0x301060]
xor r8, 0xfffffffff204b6a1
mov qword [rsp + 0x580], r8
lea ecx, [r9 - 0xd]
and cl, 0x3f
rol r8, cl
movabs rcx, 0x205018c480000000
mov rax, qword [rsp + 0x88]
xor rax, rcx
movabs rcx, 0x7c7a7dc69b03bc10
and rax, rcx
imul r8, rax
mov qword [rsp + 0x558], r8
mov rcx, r8
ror rcx, 0x34
not rcx
movabs rax, 0x9b2de6b2e9b4d4d8
imul rcx, rax
mov rax, r11
sub rax, r8
lea rdx, [rcx + rax*4]
mov qword [rsp + 0x588], rdx
mov cl, r15b
and cl, 0x3f
ror rdx, cl
movabs rax, 0x7940b6ac3fc0463f
mov rcx, rdx
imul rcx, rax
mov qword [rsp + 0x520], rcx
jmp 0x140180289
movabs rax, 0xacfc59bbc6cbe2a1
imul r9, rax
mov qword [rsp + 0x568], r9
movabs rax, 0xd79435e50d79435f
mul r9
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r9b
sub cl, dl
movabs rdx, 0x86bf4953c03fb9c0
mov rax, rbx
imul rax, rdx
movabs rdx, 0xfd56b06af15f3818
xor rax, rdx
not rax
shl rax, cl
xor r10, rax
mov qword [rsp + 0x590], r10
mov eax, dword [rsp + 0x68]
and eax, edi
jge 0x1401800a1
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov cl, al
rol r10, cl
movabs rcx, 0x86bf4953c03fb9c1
add rcx, r9
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffff6ac3fc0463f
mov rax, qword [rsi + rcx*8 + 0x301060]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a7fb95165c
or r10, rax
mov qword [rsp + 0x530], r10
mov rcx, qword [0x140301070]
movabs rdi, 0xfd56b06af15f3818
imul rcx, rdi
sub rcx, r8
mov rax, r15
sub rax, r10
xor rcx, rax
movabs rax, 0xc7a7c6a6aa9d1651
xor rcx, rax
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x520], 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, r12
xor edx, edx
mov rax, qword [rsp + 0x88]
div rcx
mov rcx, rdx
mov rdx, qword [rsp + 0x88]
imul rdx, r9
imul rdx, r8
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, rbx
movabs rbx, 0x789589465cf5a4b
add rbx, rax
xor rbx, r15
mov qword [rsp + 0x598], rbx
movzx eax, r11b
imul ecx, eax, 0xf4
and cl, 0x3f
rol rbx, cl
not rbx
mov qword [rsp + 0x528], rbx
mov rcx, qword [rsp + 0x88]
jmp 0x140180293
mov rax, r14
mul r10
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r10
sub rcx, rax
mov rax, r9
imul rax, qword [0x140301080]
mov rdx, qword [rsi + rcx*8 + 0x301060]
and rdx, rax
xor rdx, r10
mov qword [rsp + 0x5a0], rdx
and r10b, 0x3f
mov cl, r10b
mov r10, rdx
ror r10, cl
imul r10, r8
mov qword [rsp + 0x530], r10
not r15
imul r15, r11
movabs rax, 0x7cd8a7de776c47b0
imul r15, rax
mov rax, rbx
imul rax, r10
mov rbx, r15
xor rbx, rax
mov qword [rsp + 0x528], rbx
imul r15, qword [0x140301060], 0xffffffffc338d7d2
mov rdx, qword [0x140301068]
sub r15, rdx
mov qword [rsp + 0x5a8], r15
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x140180271
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror r15, cl
add r15, r8
mov qword [rsp + 0x540], r15
movabs rcx, 0x7940b6ac3fc0463f
movabs rdi, 0xfd56b06af15f3818
movabs rax, 0xff055d7b87274d7d
xor rdi, rax
mov rax, r14
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rdi, rax
xor rbx, r10
imul rbx, qword [rsi + rdi*8 + 0x301060]
not r8
imul r8, rcx
imul r8, r15
imul r8, r9
movabs rax, 0xf5ed7e87809407a1
xor r11, rax
not r11
xor r8, r11
sub r8, rbx
mov qword [rsp + 0x5b0], r8
mov rcx, r8
call fcn.1401548b0
mov qword [0x14030af48], rax
xor edx, edx
mov r8d, 0xa6
lea rcx, [rsp + 0xe40]
call fcn.140284020
xor eax, eax
mov byte [rsp + 0x11d], al
mov eax, 0x86d7
mov word [rsp + 0xada], ax
mov eax, 0x29cb
mov word [rsp + 0xadc], ax
mov eax, 0xcc99
mov word [rsp + 0xade], ax
mov eax, 0x3b60
mov word [rsp + 0xae0], ax
mov eax, 0xf48d
mov word [rsp + 0xae2], ax
mov eax, 0x9543
mov word [rsp + 0xae4], ax
mov eax, 0x1237
mov word [rsp + 0xae6], ax
mov eax, 0x6ac2
mov word [rsp + 0xae8], ax
mov eax, 0xedbc
mov word [rsp + 0xaea], ax
mov eax, 0x572e
mov word [rsp + 0xaec], ax
mov eax, 0x3786
mov word [rsp + 0xaee], ax
mov r8, r13
mov qword [rsp + 0x5b8], r13
cmp r8, 0xb
jae 0x1401805d0
xor edx, edx
mov rax, r8
movabs rcx, 0x13cce94adbcd969a
div rcx
lea r13d, [rdx + 0x35]
movzx r12d, r13w
ror r12w, 8
mov word [rsp + 0x168], r12w
movzx eax, r12w
shl ax, 6
movzx r15d, r12w
shr r15w, 0xa
or r15w, ax
movzx ecx, r12w
mov edi, ecx
shr rdi, 0xa
or di, ax
mov r14d, ecx
shr r14, 2
movzx eax, r12w
shl ax, 0xe
or r14w, ax
movzx r10d, r12w
shr r10w, 0xd
movzx eax, r12w
shl ax, 3
or r10w, ax
movzx edx, r12w
shl dx, 0xd
movzx eax, r12w
shr ax, 3
or dx, ax
movzx r11d, dx
ror r11w, 8
movzx r9d, r12w
shr r9w, 0xc
movzx eax, r12w
shl ax, 4
or r9w, ax
movzx esi, r12w
not si
movzx ebx, r12w
ror bx, 7
movzx eax, r11w
sub ax, word [rsp + 0xb0]
add bx, ax
movzx r8d, word [rsp + r8*2 + 0xada]
sub r8w, r15w
mov eax, 0x6afe
add r8w, ax
mov eax, 0x9204
sub ax, di
xor r8w, ax
shr rcx, 1
movzx eax, r12w
shl ax, 0xf
or cx, ax
sub r8w, cx
sub r8w, word [0x140301050]
sub r8w, word [0x140301058]
add r8w, r12w
add r8w, r14w
mov eax, 0x6fc1
add r8w, ax
lea eax, [rdi + r12]
mov ecx, 0x2d07
add ax, cx
xor r8w, ax
sub r8w, r12w
sub r8w, r10w
sub r8w, word [0x140301048]
sub r8w, dx
add r8w, r11w
add r8w, di
mov rdi, qword [0x140301040]
sub r8w, 0x50
add r8w, di
movzx eax, r12w
sub ax, r10w
add ax, r9w
add ax, r15w
xor r8w, ax
movzx eax, r12w
sub ax, r9w
xor ax, r12w
sub r8w, ax
sub r8w, r11w
add r8w, r12w
mov eax, 0x4230
add r8w, ax
xor bx, r8w
mov edx, 0x9d7
add edx, r12d
add dx, dx
sub dx, bx
mov eax, 0x7100
add eax, r12d
mov ecx, 0x2440
xor ax, cx
sub dx, ax
movzx eax, si
xor ax, word [0x140301038]
sub dx, ax
movzx eax, r12w
xor ax, word [0x140301030]
add dx, ax
sub dx, r14w
sub dx, r15w
sub dx, di
sub dx, r13w
movzx eax, si
movzx ecx, r12w
imul ecx, eax
xor dx, cx
mov word [rsp + 0x170], dx
mov r8, qword [rsp + 0x5b8]
mov word [rsp + r8*2 + 0xada], dx
mov r12d, 1
add r8, r12
mov qword [rsp + 0x5b8], r8
jmp 0x1401803b4
lea rax, [rsp + 0xada]
mov qword [rsp + 0xa18], rax
mov qword [rsp + 0xa20], 0x16
mov r8, qword [rsp + 0xa18]
xor r13d, r13d
mov qword [rsp + 0x5c0], r13
movabs rax, 0xc2f1e02d1b936bc0
mov qword [rsp + 0x5c0], rax
movabs rcx, 0xf33a52b500283283
add rcx, qword [rsp + 0x5c0]
movabs rax, 0x57d536625308922c
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0x7120fb80a999f86a
add rcx, rax
movabs rax, 0xf8f8cd997d71c663
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x7d654baf6ca005c
add rcx, rax
mov rdx, qword [0x140301040]
add rcx, rdx
movabs rax, 0x5a9179a98bd2a06b
xor rcx, rax
movabs rax, 0x5f627dc705c2ab4e
sub rcx, rax
movabs rax, 0x4a3b3cd2e131daae
xor rcx, rax
movabs rax, 0xb483ce45bf9d3b42
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94ad4009f1e
mov rax, qword [0x140301038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b52bff60e1
mov rcx, qword [0x140301030]
xor rcx, rax
movabs rax, 0xe0b56d899c382873
add rdx, rax
add rdx, rcx
movabs rax, 0x7ed175d31919195e
xor rdx, rax
mov qword [rsp + 0x5c8], rdx
mov qword [rsp + 0x5c0], rdx
mov r9, qword [rsp + 0x1420]
lea rcx, [rsp + 0xe40]
call fcn.140195414
nop
mov qword [rsp + 0x5c0], r13
mov rcx, qword [rsp + 0xa18]
test rcx, rcx
je 0x140180761
mov eax, r13d
mov qword [rsp + 0x5d0], rax
cmp rax, qword [rsp + 0xa20]
jae 0x140180761
mov byte [rcx + rax], r13b
add rax, r12
mov qword [rsp + 0x5d0], rax
mov rcx, qword [rsp + 0xa18]
jmp 0x14018073e
mov dword [rsp + 0x2a4], r13d
mov dword [rsp + 0x2a4], 0x6ee1c03c
mov eax, dword [rsp + 0x2a4]
add eax, 0x99b255b4
xor eax, 0xeb092bb6
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
sub eax, 0x5832a5ff
xor eax, 0xe1817aa6
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x265efd97
add eax, ecx
xor eax, 0xdcb11048
sub eax, 0x2d0a1b76
xor eax, 0xd467fcc5
lea edx, [rcx + 0x2a45df06]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xd666c7aa
sub edx, eax
mov ecx, dword [0x140301030]
xor ecx, 0x29993855
add ecx, 0x5071dc2
add ecx, edx
xor ecx, 0x3a677b72
mov dword [rsp + 0x2b0], ecx
mov dword [rsp + 0x2a4], ecx
movsxd rbx, ecx
mov qword [rsp + 0x88], rbx
mov dword [rsp + 0x2b8], r13d
mov dword [rsp + 0x2b8], 0x7583158f
mov eax, dword [rsp + 0x2b8]
add eax, 0xc020eb30
xor eax, 0x80855225
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
add eax, 0x335a0e40
xor eax, 0xca792ad4
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x2033e1ae
add eax, ecx
xor eax, 0x40daedc7
add eax, 0x1d371c55
xor eax, 0x154f7e92
add ecx, 0x68e44fa0
add ecx, eax
not ecx
mov eax, dword [0x140301038]
xor eax, 0xc7008200
sub ecx, eax
mov eax, dword [0x140301030]
xor eax, 0x38ff7dff
add eax, 0xaf1b3609
add ecx, eax
xor ecx, 0xf6fb7e00
mov dword [rsp + 0x2c8], ecx
mov dword [rsp + 0x2b8], ecx
movsxd rbx, ecx
mov qword [rsp + 0x70], rbx
xor eax, eax
mov byte [rsp + 0x11e], al
lea rdx, [rsp + 0xb84]
lea rcx, [rsp + 0x11e]
call fcn.14015c96c
mov qword [rsp + 0x5d8], rax
mov r8, r13
mov qword [rsp + 0x5e0], r13
cmp r8, 0x12
jae 0x140180b01
xor edx, edx
mov rax, r8
movabs rcx, 0x13cce94adbcd969a
div rcx
lea r13d, [rdx + 0x35]
movzx r12d, r13w
ror r12w, 8
mov word [rsp + 0x178], r12w
movzx eax, r12w
shl ax, 6
movzx r15d, r12w
shr r15w, 0xa
or r15w, ax
movzx ecx, r12w
mov edi, ecx
shr rdi, 0xa
or di, ax
mov r14d, ecx
shr r14, 2
movzx eax, r12w
shl ax, 0xe
or r14w, ax
movzx r11d, r12w
shr r11w, 0xd
movzx eax, r12w
shl ax, 3
or r11w, ax
movzx edx, r12w
shl dx, 0xd
movzx eax, r12w
shr ax, 3
or dx, ax
movzx ebx, dx
ror bx, 8
movzx r9d, r12w
shr r9w, 0xc
movzx eax, r12w
shl ax, 4
or r9w, ax
movzx esi, r12w
not si
movzx r10d, r12w
ror r10w, 7
movzx eax, bx
sub ax, word [rsp + 0xb0]
add r10w, ax
mov rax, qword [rsp + 0x5d8]
movzx r8d, word [rax + r8*2]
sub r8w, r15w
mov eax, 0x6afe
add r8w, ax
mov eax, 0x9204
sub ax, di
xor r8w, ax
shr rcx, 1
movzx eax, r12w
shl ax, 0xf
or cx, ax
sub r8w, cx
sub r8w, word [0x140301050]
sub r8w, word [0x140301058]
add r8w, r12w
add r8w, r14w
mov eax, 0x6fc1
add r8w, ax
lea eax, [rdi + r12]
mov ecx, 0x2d07
add ax, cx
xor r8w, ax
sub r8w, r12w
sub r8w, r11w
sub r8w, word [0x140301048]
sub r8w, dx
sub r8w, 0x50
add r8w, bx
mov rcx, qword [0x140301040]
add r8w, di
add r8w, cx
movzx eax, r12w
sub ax, r11w
add ax, r9w
add ax, r15w
xor r8w, ax
movzx eax, r12w
sub ax, r9w
xor ax, r12w
sub r8w, ax
sub r8w, bx
add r8w, r12w
mov eax, 0x4230
add r8w, ax
xor r10w, r8w
movzx edx, r12w
xor dx, word [0x140301030]
sub dx, r10w
movzx eax, si
xor ax, word [0x140301038]
sub dx, ax
mov eax, 0x7100
add eax, r12d
mov r8d, 0x2440
xor ax, r8w
sub dx, ax
mov eax, 0x9d7
add eax, r12d
add ax, ax
add dx, ax
sub dx, r14w
sub dx, r15w
sub dx, cx
sub dx, r13w
movzx eax, si
movzx ecx, r12w
imul ecx, eax
xor dx, cx
mov word [rsp + 0x180], dx
mov r8, qword [rsp + 0x5e0]
mov rax, qword [rsp + 0x5d8]
mov word [rax + r8*2], dx
mov r12d, 1
add r8, r12
mov qword [rsp + 0x5e0], r8
jmp 0x1401808db
mov qword [rsp + 0xa28], rax
mov qword [rsp + 0xa30], 0x24
mov rdx, qword [rsp + 0xa28]
lea rcx, [rsp + 0xef0]
call fcn.14002eda0
nop
xor eax, eax
mov byte [rsp + 0x11f], al
lea rdx, [rsp + 0xb68]
lea rcx, [rsp + 0x11f]
call fcn.14015c9b0
mov qword [rsp + 0x5e8], rax
xor r8d, r8d
mov qword [rsp + 0x5f0], r8
cmp r8, 0xe
jae 0x140180d7a
xor edx, edx
mov rax, r8
movabs rcx, 0x13cce94adbcd969a
div rcx
lea r12d, [rdx + 0x35]
movzx r13d, r12w
ror r13w, 8
mov word [rsp + 0x188], r13w
movzx eax, r13w
shl ax, 6
movzx r15d, r13w
shr r15w, 0xa
or r15w, ax
movzx edx, r13w
mov edi, edx
shr rdi, 0xa
or di, ax
mov r14d, edx
shr r14, 2
movzx eax, r13w
shl ax, 0xe
or r14w, ax
movzx r11d, r13w
shr r11w, 0xd
movzx eax, r13w
shl ax, 3
or r11w, ax
movzx ecx, r13w
shl cx, 0xd
movzx eax, r13w
shr ax, 3
or cx, ax
movzx ebx, cx
ror bx, 8
movzx r9d, r13w
shr r9w, 0xc
movzx eax, r13w
shl ax, 4
or r9w, ax
movzx esi, r13w
not si
movzx r10d, r13w
ror r10w, 7
movzx eax, bx
sub ax, word [rsp + 0xb0]
add r10w, ax
mov rax, qword [rsp + 0x5e8]
movzx r8d, word [rax + r8*2]
sub r8w, r15w
mov eax, 0x6afe
add r8w, ax
mov eax, 0x9204
sub ax, di
xor r8w, ax
shr rdx, 1
movzx eax, r13w
shl ax, 0xf
or dx, ax
sub r8w, dx
sub r8w, word [0x140301050]
sub r8w, word [0x140301058]
add r8w, r13w
add r8w, r14w
mov eax, 0x6fc1
add r8w, ax
lea eax, [rdi + r13]
mov edx, 0x2d07
add ax, dx
xor r8w, ax
sub r8w, cx
sub r8w, word [0x140301048]
sub r8w, r13w
sub r8w, r11w
mov rcx, qword [0x140301040]
sub r8w, 0x50
add r8w, cx
add r8w, bx
add r8w, di
movzx eax, r13w
sub ax, r11w
add ax, r9w
add ax, r15w
xor r8w, ax
movzx eax, r13w
sub ax, r9w
xor ax, r13w
sub r8w, ax
sub r8w, bx
add r8w, r13w
mov eax, 0x4230
add r8w, ax
xor r10w, r8w
movzx edx, r13w
xor dx, word [0x140301030]
sub dx, r10w
mov eax, 0x7100
add eax, r13d
mov r8d, 0x2440
xor ax, r8w
sub dx, ax
movzx eax, si
xor ax, word [0x140301038]
sub dx, ax
mov eax, 0x9d7
add eax, r13d
add ax, ax
add dx, ax
sub dx, cx
sub dx, r12w
sub dx, r14w
sub dx, r15w
movzx eax, r13w
movzx ecx, si
imul ecx, eax
xor dx, cx
mov word [rsp + 0x138], dx
mov r8, qword [rsp + 0x5f0]
mov rax, qword [rsp + 0x5e8]
mov word [rax + r8*2], dx
mov r12d, 1
add r8, r12
jmp 0x140180b54
mov qword [rsp + 0xa38], rax
mov qword [rsp + 0xa40], 0x1c
mov rdx, qword [rsp + 0xa38]
lea rcx, [rsp + 0xf10]
call fcn.14002eda0
nop
mov rdx, qword [rsp + 0x1418]
lea rcx, [rsp + 0xf30]
call fcn.14002eda0
nop
lea rdx, [rsp + 0xc70]
lea rcx, [rsp + 0xf50]
call fcn.14002eda0
nop
lea rdx, [rsp + 0xd00]
lea rcx, [rsp + 0xf70]
call fcn.14002eda0
nop
lea rdx, [rsp + 0xe40]
lea rcx, [rsp + 0xf90]
call fcn.14002eda0
nop
lea rdx, [rsp + 0xd90]
lea rcx, [rsp + 0xfb0]
call fcn.14002eda0
nop
lea rax, [rsp + 0xef0]
mov qword [rsp + 0xa0], rax
lea rax, [rsp + 0xfd0]
mov qword [rsp + 0xa8], rax
lea rax, [rsp + 0xef0]
mov qword [rsp + 0xa50], rax
lea rax, [rsp + 0xfd0]
mov qword [rsp + 0xa58], rax
lea r8, [rsp + 0x120]
lea rdx, [rsp + 0xa50]
lea rcx, [rsp + 0xaf0]
call fcn.1400ae82c
nop
mov r9, qword [rsp + 0x88]
mov r8, qword [rsp + 0x70]
lea rdx, [rsp + 0xaf0]
lea rcx, [rsp + 0xa60]
call fcn.14018ab04
mov dl, byte [rsp + 0xa60]
lea rcx, [rsp + 0xa68]
call fcn.140160d7c
nop
lea rcx, [rsp + 0xaf0]
call fcn.1400b99a8
nop
lea r9, [fcn.14002f954]
mov edx, 0x20
lea r8d, [rdx - 0x19]
lea rcx, [rsp + 0xef0]
call fcn.14025def0
nop
mov rcx, qword [rsp + 0xa38]
xor r13d, r13d
test rcx, rcx
je 0x140180f11
mov eax, r13d
mov qword [rsp + 0x5f8], rax
cmp rax, qword [rsp + 0xa40]
jae 0x140180f11
mov byte [rcx + rax], r13b
add rax, r12
mov qword [rsp + 0x5f8], rax
mov rcx, qword [rsp + 0xa38]
jmp 0x140180eee
mov rcx, qword [rsp + 0xa28]
test rcx, rcx
je 0x140180f4c
mov rax, r13
mov qword [rsp + 0x600], rax
cmp rax, qword [rsp + 0xa30]
jae 0x140180f4c
mov byte [rcx + rax], r13b
add rax, r12
mov qword [rsp + 0x600], rax
mov rcx, qword [rsp + 0xa28]
jmp 0x140180f29
mov dword [rsp + 0x2b8], r13d
mov dword [rsp + 0x2a4], r13d
mov qword [rsp + 0x608], r13
movabs rax, 0xab88e0f649586e49
mov qword [rsp + 0x608], rax
mov qword [rsp + 0x610], r13
movabs rax, 0xb25dfdacd50aaba9
mov qword [rsp + 0x610], rax
movabs rcx, 0xf33a52b3d44a2103
add rcx, qword [rsp + 0x610]
movabs rax, 0x465536625307664e
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0xedf047f52e26d62
sub rcx, rax
movabs rax, 0xf8f8cd9aadff5029
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x47d654bc8dd5f11e
add rcx, rax
mov rdi, qword [0x140301040]
add rcx, rdi
movabs rax, 0x5a9179aae1dbec61
xor rcx, rax
movabs rax, 0x5f627dc7647ba934
sub rcx, rax
movabs rax, 0xd63b3cd3772a425f
xor rcx, rax
movabs rdx, 0x3483ce46e3483a47
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94acf5126d8
mov r10, qword [0x140301038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b530aed927
mov r11, qword [0x140301030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d84e85069ad
add rdx, rax
add rdx, rcx
movabs rax, 0xb86f1b4a461a02e8
xor rdx, rax
mov qword [rsp + 0x618], rdx
mov qword [rsp + 0x610], rdx
movabs rcx, 0xf33a52bbda0d0083
add rcx, qword [rsp + 0x608]
movabs rax, 0x25d53662530f6c11
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0x7120fb80950c4a00
add rcx, rax
movabs rax, 0xf8f8cd928825652b
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x7d654b1aa03eabb
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a1bb49a573
xor rcx, rax
movabs rax, 0x5f627dbd83cee406
sub rcx, rax
movabs rax, 0xda3b3ccf7408a488
xor rcx, rax
movabs rax, 0xb483ce3f15adaee4
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94aef683256
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b51097cda9
xor r11, rax
movabs rax, 0xe0b56da55f713b2b
add rcx, rax
add rcx, r11
movabs rax, 0xfb61b8978cd218c6
xor rcx, rax
mov qword [rsp + 0x620], rcx
mov qword [rsp + 0x608], rcx
and rcx, rdx
mov rax, r13
cmp qword [0x14030b218], r13
sete al
mov qword [rsp + 0x610], r13
mov qword [rsp + 0x608], r13
cmp rax, rcx
jne 0x140181fbf
mov rbx, qword [0x14030b218]
mov qword [rsp + 0x88], rbx
xor eax, eax
mov byte [rsp + 0x121], al
lea rdx, [rsp + 0xba8]
lea rcx, [rsp + 0x121]
call fcn.14015ca28
mov qword [rsp + 0x628], rax
mov r8, r13
mov qword [rsp + 0x630], r13
cmp r8, 0x2a
jae 0x1401813fe
xor edx, edx
mov rax, r8
movabs rcx, 0x13cce94adbcd969a
div rcx
lea r12d, [rdx + 0x35]
movzx r13d, r12w
ror r13w, 8
mov word [rsp + 0x16a], r13w
movzx eax, r13w
shl ax, 6
movzx r15d, r13w
shr r15w, 0xa
or r15w, ax
movzx ecx, r13w
mov edi, ecx
shr rdi, 0xa
or di, ax
mov r14d, ecx
shr r14, 2
movzx eax, r13w
shl ax, 0xe
or r14w, ax
movzx r10d, r13w
shr r10w, 0xd
movzx eax, r13w
shl ax, 3
or r10w, ax
movzx edx, r13w
shl dx, 0xd
movzx eax, r13w
shr ax, 3
or dx, ax
movzx r11d, dx
ror r11w, 8
movzx r9d, r13w
shr r9w, 0xc
movzx eax, r13w
shl ax, 4
or r9w, ax
movzx esi, r13w
not si
movzx ebx, r13w
ror bx, 7
movzx eax, r11w
sub ax, word [rsp + 0xb0]
add bx, ax
mov rax, qword [rsp + 0x628]
movzx r8d, word [rax + r8*2]
sub r8w, r15w
mov eax, 0x6afe
add r8w, ax
mov eax, 0x9204
sub ax, di
xor r8w, ax
shr rcx, 1
movzx eax, r13w
shl ax, 0xf
or cx, ax
sub r8w, cx
sub r8w, word [0x140301050]
sub r8w, word [0x140301058]
add r8w, r13w
add r8w, r14w
mov eax, 0x6fc1
add r8w, ax
lea eax, [rdi + r13]
mov ecx, 0x2d07
add ax, cx
xor r8w, ax
sub r8w, r13w
sub r8w, dx
sub r8w, word [0x140301048]
sub r8w, r10w
mov rcx, qword [0x140301040]
sub r8w, 0x50
add r8w, cx
add r8w, r11w
add r8w, di
movzx eax, r13w
sub ax, r10w
add ax, r9w
add ax, r15w
xor r8w, ax
movzx eax, r13w
sub ax, r9w
xor ax, r13w
sub r8w, ax
sub r8w, r11w
add r8w, r13w
mov eax, 0x4230
add r8w, ax
xor bx, r8w
mov edx, 0x9d7
add edx, r13d
add dx, dx
sub dx, bx
mov eax, 0x7100
add eax, r13d
mov r8d, 0x2440
xor ax, r8w
sub dx, ax
movzx eax, si
xor ax, word [0x140301038]
sub dx, ax
movzx eax, r13w
xor ax, word [0x140301030]
add dx, ax
sub dx, r12w
sub dx, cx
sub dx, r14w
sub dx, r15w
movzx eax, si
movzx ecx, r13w
imul ecx, eax
xor dx, cx
mov word [rsp + 0x148], dx
mov r8, qword [rsp + 0x630]
mov rax, qword [rsp + 0x628]
mov word [rax + r8*2], dx
mov r12d, 1
add r8, r12
mov qword [rsp + 0x630], r8
jmp 0x1401811d8
mov qword [rsp + 0xa70], rax
mov qword [rsp + 0xa78], 0x54
mov r8, qword [rsp + 0xa70]
xor r13d, r13d
mov dword [rsp + 0x2d0], r13d
mov dword [rsp + 0x2d0], 0x5abe264a
mov eax, dword [rsp + 0x2d0]
add eax, 0xd445ffb2
xor eax, 0x9507664a
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
sub eax, 0x52e260fd
xor eax, 0xae038200
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x8ddb8c57
add eax, ecx
xor eax, 0xe1e0a263
sub eax, 0x647cb140
xor eax, 0x672c5329
lea edx, [rcx - 0x1cb3c152]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xcf511652
sub edx, eax
mov ecx, dword [0x140301030]
xor ecx, 0x30aee9ad
add ecx, 0xe83fd3e3
add ecx, edx
xor ecx, 0x72d8b76a
mov dword [rsp + 0x2d8], ecx
mov dword [rsp + 0x2d0], ecx
movsxd rdx, ecx
mov r9, qword [rsp + 0x88]
lea rcx, [rsp + 0xfd0]
call fcn.140195414
nop
mov dword [rsp + 0x2d0], r13d
mov rcx, qword [rsp + 0xa70]
test rcx, rcx
je 0x140181515
mov eax, r13d
mov qword [rsp + 0x638], rax
cmp rax, qword [rsp + 0xa78]
jae 0x140181515
mov byte [rcx + rax], r13b
add rax, r12
mov qword [rsp + 0x638], rax
mov rcx, qword [rsp + 0xa70]
jmp 0x1401814f2
xor edx, edx
lea r8d, [rdx + 0x68]
lea rcx, [rsp + 0xc00]
call fcn.140284020
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0xb08], xmm0
mov qword [rsp + 0xb18], rax
mov dword [rsp + 0x640], r13d
mov dword [rsp + 0x644], 0xfc2f7f7e
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x648], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x650], rax
mov qword [rsp + 0x658], rax
mov r9d, 0x4764996c
mov r14d, dword [rsp + 0x640]
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0xa80], xmm0
movd ecx, xmm0
sub cx, 8
mov word [rsp + 0xa80], cx
test r14d, r14d
je 0x14018161c
mov r8, qword [rsp + 0xa88]
mov qword [rsp + 0x660], r8
movzx ecx, cx
shr rcx, 1
lea r11, [r8 + rcx*2]
mov qword [rsp + 0x668], r11
mov r10d, 0x2d01c946
mov dword [rsp + 0x2e0], r10d
cmp r8, r11
je 0x140181613
movsx ecx, byte [r8]
mov byte [rsp + 0x128], cl
mov edx, ecx
imul ecx, ecx
add ecx, 0x31
xor ecx, r9d
xor edx, r10d
mov r10d, ecx
imul r10d, edx
mov dword [rsp + 0x2e0], r10d
add r8, 2
mov qword [rsp + 0x660], r8
jmp 0x1401815d8
cmp r10d, r14d
jne 0x1401817f7
mov r10, qword [rax + 0x30]
mov qword [rsp + 0x670], r10
mov qword [rsp + 0x88], r10
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov qword [rsp + 0x678], rcx
mov ebx, ecx
add rbx, r10
mov qword [rsp + 0x90], rbx
shr rcx, 0x20
mov dword [rsp + 0x98], ecx
cmp rbx, r10
je 0x1401817f7
mov esi, dword [rbx + 0x18]
mov dword [rsp + 0x1a0], esi
mov edx, esi
dec esi
mov dword [rsp + 0x1a0], esi
test edx, edx
je 0x1401817f7
mov r8d, dword [rbx + 0x20]
add r8, r10
mov r11d, dword [r8 + rsi*4]
add r11, r10
mov qword [rsp + 0x680], r11
mov edi, 0x2d01c946
mov dword [rsp + 0x1a4], edi
movsx edx, byte [r11]
mov byte [rsp + 0x130], dl
add r11, r12
mov qword [rsp + 0x680], r11
test dl, dl
jne 0x140183140
cmp edi, dword [rsp + 0x644]
jne 0x14018313b
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov qword [rsp + 0x688], rdx
mov eax, dword [rbx + 0x24]
add rax, r10
mov qword [rsp + 0x690], rax
movzx eax, word [rax + rsi*2]
mov r8d, dword [rdx + rax*4]
add r8, r10
mov qword [rsp + 0x88], r8
mov qword [rsp + 0x698], r8
cmp r8, rbx
jbe 0x140181807
lea rax, [rbx + rcx]
cmp r8, rax
jae 0x140181807
mov qword [rsp + 0x6a0], r8
mov dword [rsp + 0x6a8], 0x2d01c946
mov r10d, 0x2d01c946
mov dword [rsp + 0x6ac], r10d
mov r11d, r10d
movsx eax, byte [r8]
cmp al, 0x2e
je 0x14018177d
mov byte [rsp + 0xb8], al
mov ecx, eax
mov edx, eax
imul edx, eax
add edx, 0x31
xor edx, r9d
mov eax, r11d
xor eax, ecx
mov r11d, edx
imul r11d, eax
mov dword [rsp + 0x6a8], r11d
add r8, r12
mov qword [rsp + 0x6a0], r8
jmp 0x140181740
add r8, r12
mov qword [rsp + 0x6a0], r8
movsx eax, byte [r8]
test al, al
je 0x1401817b6
mov byte [rsp + 0xc0], al
mov ecx, eax
imul eax, eax
add eax, 0x31
xor eax, r9d
xor ecx, r10d
mov r10d, eax
imul r10d, ecx
mov dword [rsp + 0x6ac], r10d
jmp 0x14018177d
mov rax, qword [rsp + 0x6a8]
mov qword [rsp + 0x640], rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x6b0], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x6b8], rax
mov qword [rsp + 0x658], rax
mov r14d, dword [rsp + 0x640]
mov rax, qword [rax]
mov qword [rsp + 0x658], rax
jmp 0x140181587
mov dword [rsp + 0x1a8], r13d
mov dword [rsp + 0x1a8], 0xd0cd4829
mov eax, dword [rsp + 0x1a8]
add eax, 0x5df22b4
xor eax, 0xb80897e3
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
sub eax, 0x56772c66
xor eax, 0x77a3fa72
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x6f082d51
add eax, ecx
xor eax, 0x854df674
sub eax, 0x1909302
xor eax, 0xb65634df
lea edx, [rcx - 0x45f1b45f]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xd4177ade
sub edx, eax
mov ecx, dword [0x140301030]
xor ecx, 0x2be88521
add ecx, 0xb3690c74
add ecx, edx
xor ecx, 0x2d0c2c9e
mov dword [rsp + 0x1b0], ecx
mov dword [rsp + 0x1a8], ecx
movsxd rax, ecx
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x1b8], r13d
mov dword [rsp + 0x1b8], 0xc1bd6c1c
mov eax, dword [rsp + 0x1b8]
add eax, 0x2dba2835
xor eax, 0xbd89bfbe
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
add eax, 0x26114289
xor eax, 0x4b2988db
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x9d6e5f58
add eax, ecx
xor eax, 0x33d8242d
add eax, 0x3e47a885
xor eax, 0xf65f7346
lea edx, [rcx + 0x1a4a4346]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xd8b6e6f4
sub edx, eax
mov ecx, dword [0x140301030]
xor ecx, 0x2749190b
add ecx, 0x3736468e
add ecx, edx
xor ecx, 0x33fdc07c
mov dword [rsp + 0x1c0], ecx
mov dword [rsp + 0x1b8], ecx
movsxd rax, ecx
mov qword [rsp + 0xa0], rax
mov dword [rsp + 0x1c8], r13d
mov dword [rsp + 0x1c8], 0xaeadfb3
mov eax, dword [rsp + 0x1c8]
add eax, 0xc5b5ebb5
xor eax, 0x810a57ba
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
sub eax, 0x5bb6b0c1
xor eax, 0xb0cdd64d
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x8f201f78
add eax, ecx
xor eax, 0x867cf92f
add eax, 0x2b2488b3
xor eax, 0x8e5cd1a7
mov edx, dword [0x140301030]
xor edx, 0x24e929fd
sub edx, eax
mov eax, dword [0x140301038]
xor eax, 0xdb16d602
sub edx, eax
sub edx, ecx
sub edx, 0x6cb11e01
xor edx, 0x3da9d1fa
mov dword [rsp + 0x68], edx
mov dword [rsp + 0x1d0], edx
mov dword [rsp + 0x1c8], edx
mov dword [rsp + 0x1d8], r13d
mov dword [rsp + 0x1d8], 0xb8bdd266
mov eax, dword [rsp + 0x1d8]
add eax, 0xbe3a3d35
xor eax, 0xd28a503e
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
add eax, 0x245fc24a
xor eax, 0xb8677387
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x594882d7
add eax, ecx
xor eax, 0x8f060c39
add eax, 0x28b1ae11
xor eax, 0x61ae4c5
mov r13d, dword [0x140301030]
xor r13d, 0x250718b7
sub r13d, eax
mov eax, dword [0x140301038]
xor eax, 0xdaf8e748
sub r13d, eax
sub r13d, ecx
sub r13d, 0x124513f6
xor r13d, 0x98941478
mov dword [rsp + 0x1e0], r13d
mov dword [rsp + 0x1d8], r13d
xor r8d, r8d
mov dword [rsp + 0x1e8], r8d
mov dword [rsp + 0x1e8], 0xf0b2acc0
mov eax, dword [rsp + 0x1e8]
add eax, 0xaed374b5
xor eax, 0xa0a40d8
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
sub eax, 0x5b72095c
xor eax, 0xc80bd729
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x2e308800
add eax, ecx
xor eax, 0xa09748eb
add eax, 0x1d10b547
xor eax, 0x51cec43b
mov edx, dword [0x140301030]
xor edx, 0x2544b3d9
sub edx, eax
mov eax, dword [0x140301038]
xor eax, 0xdabb4c26
sub edx, eax
sub edx, ecx
add edx, 0x20e77e63
xor edx, 0x171a1e36
mov dword [rsp + 0x1f0], edx
mov dword [rsp + 0x1e8], edx
movsxd r9, edx
mov dword [rsp + 0x1f8], r8d
mov dword [rsp + 0x1f8], 0xbbe61114
mov eax, dword [rsp + 0x1f8]
add eax, 0x388d1e30
xor eax, 0xb384ca91
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
add eax, 0x34f0c9a7
xor eax, 0x542b4708
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x583d0273
add eax, ecx
xor eax, 0xdb7f839b
sub eax, 0x44d8ce37
xor eax, 0xc11da1b1
lea edx, [rcx - 0x133cedfb]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xc4e232cc
sub edx, eax
mov ecx, dword [0x140301030]
xor ecx, 0x3b1dcd33
add ecx, 0x8eebb252
add ecx, edx
xor ecx, 0x20d97aa4
mov dword [rsp + 0x200], ecx
mov dword [rsp + 0x1f8], ecx
movsxd r15, ecx
mov dword [rsp + 0x208], r8d
mov dword [rsp + 0x208], 0xa7458a8a
mov eax, dword [rsp + 0x208]
add eax, 0xf1939b5
xor eax, 0xcf09a11d
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
sub eax, 0x5992daab
xor eax, 0x6a44fb15
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x8701d317
add eax, ecx
xor eax, 0x56c7b437
add eax, 0x3925f99b
xor eax, 0x79b0df8d
lea edx, [rcx - 0x47eb34bf]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xd83c633a
sub edx, eax
mov ecx, dword [0x140301030]
xor ecx, 0x27c39cc5
add ecx, 0xdc361154
add ecx, edx
xor ecx, 0x9e1db3a2
mov dword [rsp + 0x210], ecx
mov dword [rsp + 0x208], ecx
movsxd r14, ecx
mov qword [rsp + 0x6c0], r8
movabs rax, 0xe02afad4de7c3fa2
mov qword [rsp + 0x6c0], rax
mov qword [rsp + 0x6c8], r8
movabs rax, 0xd68f222a26ecddb2
mov qword [rsp + 0x6c8], rax
movabs rcx, 0xf33a52b6bbab5203
add rcx, qword [rsp + 0x6c0]
movabs rax, 0x77553662530a4daf
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0xedf047f5b9890f5
sub rcx, rax
movabs rax, 0xf8f8cd97bb009a65
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0xc7d654b89cc1831a
add rcx, rax
mov rdi, qword [0x140301040]
add rcx, rdi
movabs rax, 0x5a9179a791f1107d
xor rcx, rax
movabs rax, 0x5f627dc6dde65030
sub rcx, rax
movabs rax, 0x4e3b3cd203626ed5
xor rcx, rax
movabs rdx, 0x3483ce44103ab19e
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94adaeeab9c
mov r10, qword [0x140301038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b525115463
mov r11, qword [0x140301030]
mov rcx, r11
xor rcx, rax
movabs rsi, 0xe0b56d907132baf1
add rsi, rdx
add rsi, rcx
movabs rax, 0x81fa8dbbebf78d54
xor rsi, rax
mov qword [rsp + 0x6d0], rsi
mov qword [rsp + 0x6c0], rsi
movabs rcx, 0xf33a52b6bb29a583
add rcx, qword [rsp + 0x6c8]
movabs rax, 0xcad53662530a4d2e
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0x7120fb80a468f411
add rcx, rax
movabs rax, 0xf8f8cd97bb844d97
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x87d654b89d7188c2
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a79284f93f
xor rcx, rax
movabs rax, 0x5f627dc6de06b81a
sub rcx, rax
movabs rax, 0xb23b3cd203a34923
xor rcx, rax
movabs rax, 0xb483ce4410b8d267
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94adaeca4ea
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b525135b15
xor r11, rax
movabs rbx, 0xe0b56d906f2a01bf
add rbx, rcx
add rbx, r11
movabs rax, 0x4b09e7ce2366b532
xor rbx, rax
mov qword [rsp + 0x6d8], rbx
mov qword [rsp + 0x6c8], rbx
lea rax, [rsp + 0xb08]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0xc00]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r13d
mov r8, r15
lea rdx, [rsp + 0xfd0]
mov rcx, r14
call qword [rsp + 0x88]
movsxd rcx, eax
and rsi, rbx
xor r13d, r13d
mov qword [rsp + 0x6c8], r13
mov qword [rsp + 0x6c0], r13
mov dword [rsp + 0x208], r13d
mov dword [rsp + 0x1f8], r13d
mov dword [rsp + 0x1e8], r13d
mov dword [rsp + 0x1d8], r13d
mov dword [rsp + 0x1c8], r13d
mov dword [rsp + 0x1b8], r13d
mov dword [rsp + 0x1a8], r13d
cmp rcx, rsi
jne 0x140182620
mov dword [rsp + 0x218], r13d
mov dword [rsp + 0x218], 0xdca22787
mov eax, dword [rsp + 0x218]
add eax, 0xbb9670b5
xor eax, 0x60a4d9b
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
sub eax, 0x5b985250
xor eax, 0xbb15cf39
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x1cdddaee
add eax, ecx
xor eax, 0x9208e17b
add eax, 0x22165e37
xor eax, 0x6b6ce023
mov edx, dword [0x140301030]
xor edx, 0x2511a7e9
sub edx, eax
mov eax, dword [0x140301038]
xor eax, 0xdaee5816
sub edx, eax
sub edx, ecx
add edx, 0x608dd96f
xor edx, 0xc5da8606
mov dword [rsp + 0x220], edx
mov dword [rsp + 0x218], edx
mov dword [rsp + 0x218], r13d
lea r12d, [r13 + 1]
mov dword [rsp + 0x248], r13d
mov dword [rsp + 0x248], 0x40cfe1a7
mov eax, dword [rsp + 0x248]
add eax, 0x2c7fb6a9
xor eax, 0x4bfdbe84
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
sub eax, 0x35eb0e22
xor eax, 0x7c68e42d
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x2919347a
add eax, ecx
xor eax, 0xe53ecdb1
add eax, 0x4e8a136a
xor eax, 0x835cb5df
lea edx, [rcx + 0x477c1bb8]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xa8b1fd2e
sub edx, eax
mov eax, dword [0x140301030]
xor eax, 0x574e02d1
add eax, 0x6245d718
add eax, edx
xor eax, 0xe34e0e8e
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x250], eax
mov dword [rsp + 0x248], eax
mov dword [rsp + 0x258], r13d
mov dword [rsp + 0x258], 0x4d540e55
mov eax, dword [rsp + 0x258]
add eax, 0xec49943a
xor eax, 0x298f7e4e
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
add eax, 0x14d59445
xor eax, 0x759fdf26
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0xd142b038
add eax, ecx
xor eax, 0xa67c8cf8
sub eax, 0x7e9c4cc8
xor eax, 0xb6e9c8c8
mov edx, dword [0x140301030]
xor edx, 0x104edb5b
sub edx, eax
mov eax, dword [0x140301038]
xor eax, 0xefb124a4
sub edx, eax
sub edx, ecx
add edx, 0x247d799f
xor edx, 0x2848524c
mov dword [rsp + 0x260], edx
mov dword [rsp + 0x258], edx
movsxd rax, edx
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x820], rax
mov qword [rsp + 0x828], r13
movabs rax, 0x771659cbe372b0b1
mov qword [rsp + 0x828], rax
mov qword [rsp + 0x830], r13
movabs rax, 0x51dc4907d0e720c
mov qword [rsp + 0x830], rax
movabs rcx, 0xf33a52b5da48f603
add rcx, qword [rsp + 0x828]
movabs rax, 0x1b55366253096c4d
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0xedf047f58f469e1
sub rcx, rax
movabs rax, 0xf8f8cd989fe87fd5
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0xc7d654b9ceb286fc
add rcx, rax
mov rdi, qword [0x140301040]
add rcx, rdi
movabs rax, 0x5a9179a89305416d
xor rcx, rax
movabs rax, 0x5f627dc70be477c0
sub rcx, rax
movabs rax, 0x2e3b3cd2741aa7e8
xor rcx, rax
movabs rdx, 0x3483ce44eb735d1a
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ad769222c
mov r10, qword [0x140301038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b52896ddd3
mov r11, qword [0x140301030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d8d0823c181
add rax, rdx
add rax, rcx
movabs rcx, 0x4fd57ab233ef2644
xor rax, rcx
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x838], rax
mov qword [rsp + 0x828], rax
movabs rcx, 0xf33a52b1d673e183
add rcx, qword [rsp + 0x830]
movabs rax, 0x6d5366253056878
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0x7120fb80b317155d
add rcx, rax
movabs rax, 0xf8f8cd9cb3cce8a7
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x87d654bf41e64450
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179ad27644ccf
xor rcx, rax
movabs rax, 0x5f627dc5dce50e4a
sub rcx, rax
movabs rax, 0xd23b3cd4762550d1
xor rcx, rax
movabs rax, 0xb483ce48d32d9e0b
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ac759cdda
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b538a63225
xor r11, rax
movabs rax, 0xe0b56d7d08fe52af
add rax, rcx
add rax, r11
movabs rcx, 0x28e48323858b5482
xor rax, rcx
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x840], rax
mov qword [rsp + 0x830], rax
movabs r15, 0xfd47d30d093b3c14
mov qword [rsp + 0x848], r15
movabs rdi, 0x30eb949a47f50f1f
mov qword [rsp + 0x850], rdi
mov qword [rsp + 0x858], r13
movabs r11, 0x3cfd4588b03ebf76
mov qword [rsp + 0x860], r11
movabs rax, 0x7c48d1ba896aeba8
mov rcx, qword [0x140301070]
imul rcx, rax
not rcx
movabs r8, 0xc302ba77541f8884
mov rax, qword [0x140301060]
xor rax, r8
and rcx, rax
mov qword [rsp + 0x868], rcx
ror rcx, 0x12
shr rcx, 8
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x870], rcx
movabs rax, 0xe9795d594fd84f18
mov rbx, qword [0x140301060]
imul rbx, rax
add rbx, rdi
movabs rax, 0xbe72bf137fffffff
xor rbx, rax
shr rbx, 0x1f
not rbx
mov qword [rsp + 0x878], rbx
mov qword [rsp + 0x880], rbx
movabs r9, 0xcf146b65b80af0e1
lea rcx, [rbx + r9]
movabs r14, 0xaaaaaaaaaaaaaaab
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, bl
lea rsi, [0x140000000]
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x2d
mov r8d, 0x8000003f
and ecx, r8d
jge 0x140182444
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, rbx
ror rax, cl
not rax
movabs rcx, 0x14b3f439dca9578c
imul rax, rcx
add r9, rax
mov qword [rsp + 0x888], r9
mov r10, rbx
mov rdx, qword [rsp + 0x60]
imul r10, rdx
sub r10, r9
xor r10, r15
mov qword [rsp + 0x890], r10
movzx ecx, r9b
mov dword [rsp + 0x80], ecx
xor ecx, 2
and ecx, 0xf
and ecx, r8d
jge 0x14018249f
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
rol r10, cl
mov rax, r9
sub rax, qword [0x140301078]
xor r10, rax
mov rax, r9
imul rax, rdi
xor r10, rax
xor r10, r11
mov qword [rsp + 0x898], r10
mov rdi, r13
mov rax, r10
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x1401833cf
sub rax, 1
je 0x140183289
sub rax, 1
mov r15b, 0x3f
je 0x14018317a
cmp rax, 1
jne 0x140183161
mov rdi, r9
imul rdi, rbx
movabs rax, 0x7e74c546343bfc7d
add rax, r10
xor rdi, rax
mov qword [rsp + 0x8a0], rdi
ror rdi, 0x2a
shr rdi, 0xc
not rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x848], rdi
movabs rcx, 0x83572cc0bc3a
mov rdx, qword [0x140301088]
add rdx, rcx
movabs rax, 0xcf96ee1ddfd16c5d
xor rdx, rax
mov qword [rsp + 0x8a8], rdx
movzx eax, r10b
movzx ecx, dil
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9742050c5
sub rax, rbx
mov rbx, rdx
xor rbx, rax
mov qword [rsp + 0x878], rbx
mov rcx, rbx
movabs rax, 0x30eb949a47f50f1f
imul rcx, rax
mov eax, 0xa5fb822f
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs r8, 0xe61fd68885e1f798
sub r8, rdi
shr r8, cl
movabs rcx, 0x82488577ff2e4
add rcx, r9
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r10
mov rcx, qword [rsp + 0x60]
sub rax, rcx
xor r8, rax
mov qword [rsp + 0x850], r8
mov rdi, r13
mov qword [rsp + 0x60], rcx
jmp 0x140183489
mov qword [rsp + 0x6e0], r13
movabs rax, 0x1b03686e578c0cc8
mov qword [rsp + 0x6e0], rax
mov qword [rsp + 0x6e8], r13
movabs rax, 0xc37f3a28df6e1be3
mov qword [rsp + 0x6e8], rax
movabs rcx, 0xf33a52b735198403
add rcx, qword [rsp + 0x6e8]
movabs rax, 0xa9553662530ac71e
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0xedf047f5d04db8b
sub rcx, rax
movabs rax, 0xf8f8cd973facaf9d
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0xc7d654b7f7ec6e3b
add rcx, rax
mov rdi, qword [0x140301040]
add rcx, rdi
movabs rax, 0x5a9179a7076f5f75
xor rcx, rax
movabs rax, 0x5f627dc67f820ff8
sub rcx, rax
movabs rax, 0xbe3b3cd1c6a78a64
xor rcx, rax
movabs rdx, 0x3483ce439a1e82fc
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94adcd46464
mov r10, qword [0x140301038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5232b9b9b
mov r11, qword [0x140301030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d92590f3b39
add rdx, rax
add rdx, rcx
movabs rax, 0xccd4822d62d548c
xor rdx, rax
mov qword [rsp + 0x6f0], rdx
mov qword [rsp + 0x6e8], rdx
movabs rcx, 0xf33a52b6cd78cf83
add rcx, qword [rsp + 0x6e0]
movabs rax, 0xf4d53662530a5f7d
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0x7120fb80a4320693
add rcx, rax
movabs rax, 0xf8f8cd97a8ebe6ef
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x87d654b88497133f
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a77da2ad57
xor rcx, rax
movabs rax, 0x5f627dc6db3b9702
sub rcx, rax
movabs rax, 0x623b3cd1fa7b21a9
xor rcx, rax
movabs rax, 0xb483ce43fee9d28d
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94adb35e192
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b524ca1e6d
xor r11, rax
movabs rax, 0xe0b56d90b8ade6e7
add rcx, rax
add rcx, r11
movabs rax, 0x340baf062b94272a
xor rcx, rax
mov qword [rsp + 0x6f8], rcx
mov qword [rsp + 0x6e0], rcx
and rdx, rcx
cmp qword [rsp + 0xb10], rdx
setne al
mov byte [rsp + 0x11a], al
mov qword [rsp + 0x6e8], r13
mov qword [rsp + 0x6e0], r13
test al, al
je 0x140182b5e
mov dword [rsp + 0x700], r13d
mov dword [rsp + 0x704], 0x100b5396
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x708], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x710], rax
mov qword [rsp + 0x718], rax
mov r14d, dword [rsp + 0x700]
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0xa90], xmm0
movd ecx, xmm0
sub cx, 8
mov word [rsp + 0xa90], cx
test r14d, r14d
je 0x14018293c
mov r8, qword [rsp + 0xa98]
mov qword [rsp + 0x720], r8
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov qword [rsp + 0x728], r10
mov r9d, 0x27b2067e
mov dword [rsp + 0x228], r9d
cmp r8, r10
je 0x140182933
movsx ecx, byte [r8]
mov byte [rsp + 0xd0], cl
mov edx, ecx
imul ecx, ecx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
mov dword [rsp + 0x228], r9d
add r8, 2
mov qword [rsp + 0x720], r8
jmp 0x1401828f5
cmp r9d, r14d
jne 0x140182b1b
mov r10, qword [rax + 0x30]
mov qword [rsp + 0x730], r10
mov qword [rsp + 0xb20], r10
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov qword [rsp + 0x738], rcx
mov ebx, ecx
add rbx, r10
mov qword [rsp + 0xb28], rbx
shr rcx, 0x20
mov dword [rsp + 0xb30], ecx
cmp rbx, r10
je 0x140182b1b
mov esi, dword [rbx + 0x18]
mov dword [rsp + 0x22c], esi
mov r12d, 1
mov edx, esi
dec esi
mov dword [rsp + 0x22c], esi
test edx, edx
je 0x140182b1b
mov r8d, dword [rbx + 0x20]
add r8, r10
mov r11d, dword [r8 + rsi*4]
add r11, r10
mov qword [rsp + 0x740], r11
mov edi, 0x27b2067e
mov dword [rsp + 0x230], edi
mov r9d, 0x4764996c
movsx edx, byte [r11]
mov byte [rsp + 0xd8], dl
add r11, r12
mov qword [rsp + 0x740], r11
test dl, dl
jne 0x140182b3d
cmp edi, dword [rsp + 0x704]
jne 0x140182b38
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov qword [rsp + 0x748], rdx
mov eax, dword [rbx + 0x24]
add rax, r10
mov qword [rsp + 0x750], rax
movzx eax, word [rax + rsi*2]
mov r8d, dword [rdx + rax*4]
add r8, r10
mov qword [rsp + 0x758], r8
cmp r8, rbx
jbe 0x140182b2b
lea rax, [rbx + rcx]
cmp r8, rax
jae 0x140182b2b
mov qword [rsp + 0x760], r8
mov dword [rsp + 0x768], 0x27b2067e
mov r10d, 0x27b2067e
mov dword [rsp + 0x76c], r10d
mov r11d, r10d
movsx eax, byte [r8]
cmp al, 0x2e
je 0x140182aa1
mov byte [rsp + 0xe0], al
mov ecx, eax
mov edx, eax
imul edx, eax
add edx, 0x31
xor edx, r9d
mov eax, r11d
xor eax, ecx
mov r11d, edx
imul r11d, eax
mov dword [rsp + 0x768], r11d
add r8, r12
mov qword [rsp + 0x760], r8
jmp 0x140182a64
add r8, r12
mov qword [rsp + 0x760], r8
movsx eax, byte [r8]
test al, al
je 0x140182ada
mov byte [rsp + 0xe8], al
mov ecx, eax
imul eax, eax
add eax, 0x31
xor eax, r9d
xor ecx, r10d
mov r10d, eax
imul r10d, ecx
mov dword [rsp + 0x76c], r10d
jmp 0x140182aa1
mov rax, qword [rsp + 0x768]
mov qword [rsp + 0x700], rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x770], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x778], rax
mov qword [rsp + 0x718], rax
mov r14d, dword [rsp + 0x700]
mov rax, qword [rax]
mov qword [rsp + 0x718], rax
jmp 0x1401828a4
mov rcx, qword [rsp + 0xb10]
call r8
jmp 0x140182b64
jmp 0x140182995
mov r8d, edx
imul edx, edx
add edx, 0x31
xor edx, r9d
xor r8d, edi
mov edi, edx
imul edi, r8d
mov dword [rsp + 0x230], edi
jmp 0x1401829d0
mov r12d, 1
mov qword [rsp + 0x780], r13
movabs rax, 0x2a0091799cd036f
mov qword [rsp + 0x780], rax
mov qword [rsp + 0x788], r13
movabs rax, 0x8a9928f62427e22e
mov qword [rsp + 0x788], rax
movabs rcx, 0xf33a52b6373b4303
add rcx, qword [rsp + 0x788]
movabs rax, 0x685536625309c93f
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0xedf047f5a0b40c8
sub rcx, rax
movabs rax, 0xf8f8cd98418269a1
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x47d654b950879f77
add rcx, rax
mov rdi, qword [0x140301040]
add rcx, rdi
movabs rax, 0x5a9179a82900e199
xor rcx, rax
movabs rax, 0x5f627dc6baf21b6c
sub rcx, rax
movabs rax, 0xc63b3cd2459e99d6
xor rcx, rax
movabs rdx, 0x3483ce44910bb035
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ad8dceb60
mov r10, qword [0x140301038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b52723149f
mov r11, qword [0x140301030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d8e5da0be35
add rdx, rax
add rdx, rcx
movabs rax, 0x4f50b75dc1b9b0a0
xor rdx, rax
mov qword [rsp + 0x790], rdx
mov qword [rsp + 0x788], rdx
movabs rcx, 0xf33a52b5348ded83
add rcx, qword [rsp + 0x780]
movabs rax, 0x12d536625308c692
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0x7120fb80a8fcc739
add rcx, rax
movabs rax, 0xf8f8cd99483a7477
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x87d654baafa9e906
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a9500e971f
xor rcx, rax
movabs rax, 0x5f627dc6f7e815fa
sub rcx, rax
movabs rax, 0x723b3cd2c6fd5a00
xor rcx, rax
movabs rax, 0xb483ce458ca6485f
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ad4d2360a
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b52b2dc9f5
xor r11, rax
movabs rax, 0xe0b56d8a6edeeb5f
add rcx, rax
add rcx, r11
movabs rax, 0xef70cecfe75d9192
xor rcx, rax
mov qword [rsp + 0x798], rcx
mov qword [rsp + 0x780], rcx
and rcx, rdx
cmp qword [rsp + 0xb08], rcx
setne al
mov byte [rsp + 0xf0], al
mov qword [rsp + 0x788], r13
mov qword [rsp + 0x780], r13
test al, al
je 0x140183074
mov dword [rsp + 0x7a0], r13d
mov dword [rsp + 0x7a4], 0x9bd14296
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x7a8], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x7b0], rax
mov qword [rsp + 0x7b8], rax
mov r14d, dword [rsp + 0x7a0]
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0xaa0], xmm0
movd ecx, xmm0
sub cx, 8
mov word [rsp + 0xaa0], cx
test r14d, r14d
je 0x140182e80
mov r8, qword [rsp + 0xaa8]
mov qword [rsp + 0x7c0], r8
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov qword [rsp + 0x7c8], r10
mov r9d, 0x42e79afa
mov dword [rsp + 0x234], r9d
cmp r8, r10
je 0x140182e77
movsx ecx, byte [r8]
mov byte [rsp + 0xf8], cl
mov edx, ecx
imul ecx, ecx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
mov dword [rsp + 0x234], r9d
add r8, 2
mov qword [rsp + 0x7c0], r8
jmp 0x140182e39
cmp r9d, r14d
jne 0x140183059
mov r10, qword [rax + 0x30]
mov qword [rsp + 0x7d0], r10
mov qword [rsp + 0xb38], r10
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov qword [rsp + 0x7d8], rcx
mov ebx, ecx
add rbx, r10
mov qword [rsp + 0xb40], rbx
shr rcx, 0x20
mov dword [rsp + 0xb48], ecx
cmp rbx, r10
je 0x140183059
mov esi, dword [rbx + 0x18]
mov dword [rsp + 0x238], esi
mov edx, esi
dec esi
mov dword [rsp + 0x238], esi
test edx, edx
je 0x140183059
mov r8d, dword [rbx + 0x20]
add r8, r10
mov r11d, dword [r8 + rsi*4]
add r11, r10
mov qword [rsp + 0x7e0], r11
mov edi, 0x42e79afa
mov dword [rsp + 0x23c], edi
mov r9d, 0x4764996c
movsx edx, byte [r11]
mov byte [rsp + 0x100], dl
add r11, r12
mov qword [rsp + 0x7e0], r11
test dl, dl
jne 0x14018311a
cmp edi, dword [rsp + 0x7a4]
jne 0x140183115
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov qword [rsp + 0x7e8], rdx
mov eax, dword [rbx + 0x24]
add rax, r10
mov qword [rsp + 0x7f0], rax
movzx eax, word [rax + rsi*2]
mov r8d, dword [rdx + rax*4]
add r8, r10
mov qword [rsp + 0x7f8], r8
cmp r8, rbx
jbe 0x140183069
lea rax, [rbx + rcx]
cmp r8, rax
jae 0x140183069
mov qword [rsp + 0x800], r8
mov dword [rsp + 0x808], 0x42e79afa
mov r10d, 0x42e79afa
mov dword [rsp + 0x80c], r10d
mov r11d, r10d
movsx eax, byte [r8]
cmp al, 0x2e
je 0x140182fdf
mov byte [rsp + 0x108], al
mov ecx, eax
mov edx, eax
imul edx, eax
add edx, 0x31
xor edx, r9d
mov eax, r11d
xor eax, ecx
mov r11d, edx
imul r11d, eax
mov dword [rsp + 0x808], r11d
add r8, r12
mov qword [rsp + 0x800], r8
jmp 0x140182fa2
add r8, r12
mov qword [rsp + 0x800], r8
movsx eax, byte [r8]
test al, al
je 0x140183018
mov byte [rsp + 0x110], al
mov ecx, eax
imul eax, eax
add eax, 0x31
xor eax, r9d
xor ecx, r10d
mov r10d, eax
imul r10d, ecx
mov dword [rsp + 0x80c], r10d
jmp 0x140182fdf
mov rax, qword [rsp + 0x808]
mov qword [rsp + 0x7a0], rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x810], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x818], rax
mov qword [rsp + 0x7b8], rax
mov r14d, dword [rsp + 0x7a0]
mov rax, qword [rax]
mov qword [rsp + 0x7b8], rax
jmp 0x140182de8
mov rcx, qword [rsp + 0xb08]
call r8
mov dword [rsp + 0x240], r13d
mov dword [rsp + 0x240], 0xee44b07a
mov eax, dword [rsp + 0x240]
add eax, 0x3e1d67b6
xor eax, 0xfd0ad021
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
sub eax, 0x5d1fe735
xor eax, 0x3684bc5c
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0xebafa6a5
add eax, ecx
xor eax, 0xfd26efbe
sub eax, 0x7952fa9d
xor eax, 0x7225506c
mov edx, dword [0x140301030]
xor edx, 0x23078c0d
sub edx, eax
mov eax, dword [0x140301038]
xor eax, 0xdcf873f2
sub edx, eax
sub edx, ecx
sub edx, 0x1454a0f3
xor edx, 0x59a43b4a
mov dword [rsp + 0x298], edx
mov dword [rsp + 0x240], edx
mov dword [rsp + 0x240], r13d
jmp 0x140181fbf
jmp 0x140182ed3
mov r8d, edx
imul edx, edx
add edx, 0x31
xor edx, r9d
xor r8d, edi
mov edi, edx
imul edi, r8d
mov dword [rsp + 0x23c], edi
jmp 0x140182f0e
jmp 0x14018166f
mov r8d, edx
imul edx, edx
add edx, 0x31
xor edx, r9d
xor r8d, edi
mov edi, edx
imul edi, r8d
mov dword [rsp + 0x1a4], edi
jmp 0x1401816a4
movabs rcx, 0xfd47d30d093b3c14
movabs r8, 0x30eb949a47f50f1f
jmp 0x14018348e
movabs rcx, 0xaaaaaa1aa5e27f11
mov rbx, r10
xor rbx, rcx
movabs rcx, 0x1206ed67efa35d
imul rbx, rcx
movabs rcx, 0xffff7e8a83f24dcd
imul r9, rcx
movabs rcx, 0x3cf34569c13357b2
add rbx, rcx
add rbx, r9
mov qword [rsp + 0x878], rbx
movabs rax, 0x277cd7be7732a871
mov rcx, rbx
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, rbx
not r9
imul r9, qword [rsi + rcx*8 + 0x301060]
xor r9, 0xfffffffff0b7a9c1
mov qword [rsp + 0x8b0], r9
lea ecx, [r10 + 0x13]
and cl, r15b
rol r9, cl
movabs rax, 0x5c58184400000000
imul r9, rax
mov qword [rsp + 0x888], r9
mov rcx, r9
ror rcx, 0x18
not rcx
movabs rax, 0x9b2de6b2e378a958
imul rcx, rax
mov rax, rbx
sub rax, r9
lea rdx, [rcx + rax*4]
mov qword [rsp + 0x8b8], rdx
mov cl, byte [rsp + 0x60]
and cl, r15b
ror rdx, cl
movabs rax, 0x30eb949a47f50f1f
mov r8, rdx
imul r8, rax
mov qword [rsp + 0x850], r8
movabs rcx, 0xfd47d30d093b3c14
mov rdi, r13
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x60], rax
jmp 0x14018348e
movabs rax, 0x2d4da51fcb26dc51
imul r10, rax
mov qword [rsp + 0x898], r10
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0x2b82cf2f6c4c3eb
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov qword [rsp + 0x8c0], r11
mov eax, dword [rsp + 0x80]
and eax, r8d
jge 0x1401832ee
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov cl, al
rol r11, cl
movabs rcx, 0xcf146b65b80af0e1
add rcx, r10
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x149a47f50f1f
mov rax, qword [rsi + rcx*8 + 0x301060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7f926093c
or r11, rax
mov qword [rsp + 0x860], r11
mov r8, qword [0x140301070]
imul r8, r15
sub r8, r9
mov rdx, qword [rsp + 0x60]
mov rax, rdx
sub rax, r11
xor r8, rax
movabs rax, 0xc7a7c6a6a82e0931
xor r8, rax
mov qword [rsp + 0x850], r8
mov rax, r8
imul rax, r10
imul rax, r9
mov rdi, rbx
sub rdi, rax
movabs rax, 0x7895894677c452b
add rdi, rax
xor rdi, rdx
mov qword [rsp + 0x8c8], rdi
mov al, bl
shl al, 2
lea ecx, [rax + rbx]
shl cl, 2
mov r15b, 0x3f
and cl, r15b
rol rdi, cl
not rdi
mov qword [rsp + 0x858], rdi
movabs rcx, 0xfd47d30d093b3c14
mov qword [rsp + 0x60], rdx
jmp 0x14018348e
mov rcx, r10
imul rcx, qword [0x140301080]
and rcx, qword [0x140301060]
mov rax, r11
mov r11, rcx
xor r11, rax
mov qword [rsp + 0x8d0], r11
ror r11, 0x36
imul r11, r9
mov qword [rsp + 0x860], r11
mov rdi, rdx
not rdi
imul rdi, rbx
movabs rax, 0x7cd8a7de75df58d0
imul rdi, rax
mov qword [rsp + 0x858], rdi
imul rax, qword [0x140301060], 0xffffffffe42137f2
mov rdx, qword [0x140301068]
sub rax, rdx
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x8d8], rax
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, r8d
jge 0x14018345f
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0x60]
ror rax, cl
add rax, r9
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x870], rax
mov qword [rsp + 0x58], r15
movabs r8, 0x30eb949a47f50f1f
mov r15b, 0x3f
mov rcx, qword [rsp + 0x58]
movabs rax, 0xff055d7b8594521d
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor rdi, r11
imul rdi, qword [rsi + rcx*8 + 0x301060]
not r9
imul r9, r8
imul r9, qword [rsp + 0x60]
imul r9, r10
movabs rax, 0xf5ed7e87822718c1
xor rbx, rax
not rbx
xor r9, rbx
sub r9, rdi
mov qword [rsp + 0x8e0], r9
mov rcx, r9
call fcn.1400c2d68
mov qword [0x14030af38], rax
xor eax, eax
mov byte [rsp + 0x118], al
lea rcx, [rsp + 0x118]
call fcn.14015beac
mov dword [rsp + 0x268], r13d
mov dword [rsp + 0x268], 0x80149e6d
mov qword [rsp + 0x8e8], r13
movabs rax, 0x78a839847b13e693
mov qword [rsp + 0x8e8], rax
mov qword [rsp + 0x8f0], r13
movabs rax, 0xf1175e9cd10d835d
mov qword [rsp + 0x8f0], rax
movabs rcx, 0xf33a52b430670103
add rcx, qword [rsp + 0x8f0]
movabs rax, 0x265536625307c26b
xor rcx, rax
mov rdi, qword [0x140301050]
sub rcx, rdi
mov r11, qword [0x140301058]
sub rcx, r11
movabs rax, 0xedf047f53f6c402
sub rcx, rax
movabs rax, 0xf8f8cd9a5071fca9
xor rcx, rax
mov r10, qword [0x140301048]
sub rcx, r10
movabs rax, 0x47d654bc10ccbf0e
add rcx, rax
mov rbx, qword [0x140301040]
add rcx, rbx
movabs rax, 0x5a9179aa78cafce1
xor rcx, rax
movabs rax, 0x5f627dc736d47bb4
sub rcx, rax
movabs rax, 0xd63b3cd34918f178
xor rcx, rax
movabs rdx, 0x3483ce4689b02467
add rdx, rcx
add rdx, rbx
not rdx
movabs rcx, 0x13cce94ad0c19a58
mov r9, qword [0x140301038]
mov rax, r9
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b52f3e65a7
mov r8, qword [0x140301030]
mov rcx, r8
xor rcx, rax
movabs rax, 0xe0b56d8659f2652d
add rax, rdx
add rax, rcx
movabs rcx, 0x1ad67e9c19806768
xor rax, rcx
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x8f8], rax
mov qword [rsp + 0x8f0], rax
movabs rcx, 0xf33a52b33247df83
add rcx, qword [rsp + 0x8e8]
movabs rax, 0x4d536625306c44c
xor rcx, rax
sub rcx, rdi
sub rcx, r11
movabs rax, 0x7120fb80af039963
add rcx, rax
movabs rax, 0xf8f8cd9b52899aaf
xor rcx, rax
sub rcx, r10
movabs rax, 0x87d654bd69c00107
add rcx, rax
add rcx, rbx
movabs rax, 0x5a9179ab9aa67f17
xor rcx, rax
movabs rax, 0x5f627dc56a837ec2
sub rcx, rax
movabs rax, 0xe23b3cd3c8307331
xor rcx, rax
movabs rdx, 0xb483ce4780dc6bfd
add rdx, rcx
add rdx, rbx
not rdx
movabs rcx, 0x13cce94accc91dd2
mov rax, r9
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b53336e22d
mov rcx, r8
xor rcx, rax
movabs rax, 0xe0b56d825dbf5aa7
add rax, rdx
add rax, rcx
movabs rcx, 0x19246fc6abf9a1ea
xor rax, rcx
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x900], rax
mov qword [rsp + 0x8e8], rax
mov eax, dword [rsp + 0x268]
add eax, 0x4ffe16b4
xor eax, 0xac08e202
sub eax, r11d
sub eax, edi
sub eax, 0x57558942
xor eax, 0x2c5c8aa2
sub eax, r10d
add eax, 0xa6b291b
add eax, ebx
xor eax, 0x30c2a824
add eax, 0x145fa3ee
xor eax, 0xf14469e7
lea ecx, [rbx + 0x71f6304d]
add ecx, eax
not ecx
xor r9d, 0xd53ff6ae
sub ecx, r9d
xor r8d, 0x2ac00951
lea ebx, [r8 - 0x2332af3b]
add ebx, ecx
xor ebx, 0x47692b0e
mov dword [rsp + 0x270], ebx
mov dword [rsp + 0x268], ebx
mov eax, dword [0x14030b228]
test eax, eax
jne 0x1401837ca
mov rdx, r13
mov qword [rsp + 0x908], rdx
jmp 0x140183800
mov dword [rsp + 0xb60], eax
lea rax, [rsp + 0xb50]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x88]
call fcn.14025bec0
mov rdx, rax
mov qword [rsp + 0x908], rax
movsxd rax, ebx
mov rcx, r13
cmp rdx, rax
setb cl
mov rdx, qword [rsp + 0x60]
and rdx, qword [rsp + 0x58]
mov rax, r13
cmp rcx, rdx
sete al
mov qword [rsp + 0x910], rax
mov qword [rsp + 0x8f0], r13
mov qword [rsp + 0x8e8], r13
mov dword [rsp + 0x268], r13d
movabs rax, 0xd5bfdb4b3d46bf68
mov qword [rsp + 0x918], rax
movabs r8, 0x91330cc1621c4b9
mov qword [rsp + 0x88], r8
mov qword [rsp + 0x920], r8
movabs rax, 0x3f22800000000000
mov r11, qword [0x140301070]
imul r11, rax
movabs rax, 0x3794f00000000000
xor r11, rax
mov qword [rsp + 0x928], r11
mov rcx, r11
imul rcx, r8
mov qword [rsp + 0x60], rcx
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
and r9, r8
imul r9, qword [rsi + rcx*8 + 0x301060]
movabs rax, 0xe3c9f97032389380
imul r9, rax
shr r9, 3
movabs rax, 0x2e3d2fdd176bcb27
xor r9, rax
mov qword [rsp + 0x930], r9
movabs rax, 0xffffff57c3df0863
mov rcx, r11
imul rcx, rax
sub rcx, 0x1f25d1d0
xor rcx, r9
xor rcx, qword [0x140301060]
mov rax, r9
imul rax, qword [0x140301070]
movabs rdx, 0xb9de928bca6cb742
imul rax, rdx
not rax
and rcx, rax
mov qword [rsp + 0x938], rcx
ror rcx, 0xa
shr rcx, 8
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x940], rcx
movabs r10, 0xf6eccf33e9de3b47
lea rcx, [r11 + r10]
xor rcx, 0xfffffffff4e2bc4f
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xb76f7e719096e20
mov rdi, qword [rsi + rcx*8 + 0x301060]
imul rdi, rax
add rdi, r8
movabs rcx, 0x31f856ec3c4fc8a0
mov rax, r9
imul rax, rcx
xor rdi, rax
shr rdi, 0x1f
not rdi
mov qword [rsp + 0x948], rdi
mov r8, rdi
xor r8, r11
mov qword [rsp + 0x950], r8
lea rcx, [rdi + r10]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, dil
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x53
mov ebx, 0x8000003f
and ecx, ebx
jge 0x1401839fb
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror r8, cl
not r8
imul r8, r9
imul r8, r8, 0xffffffffe0da2e30
add r8, r10
mov qword [rsp + 0x958], r8
mov r10, rdi
imul r10, qword [rsp + 0x58]
sub r10, r8
movabs rdx, 0xd5bfdb4b3d46bf68
xor r10, rdx
mov qword [rsp + 0x960], r10
movzx ecx, r8b
mov dword [rsp + 0x68], ecx
xor cl, 0xfc
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x140301078]
xor r10, rax
mov rax, r8
movabs rcx, 0x91330cc1621c4b9
imul rax, rcx
xor r10, rax
xor r10, r9
xor r10, r11
mov qword [rsp + 0x968], r10
mov rax, r10
and rax, r12
je 0x140183ff8
sub rax, 1
je 0x140183e77
sub rax, 1
je 0x140183be0
cmp rax, 1
jne 0x140183d04
mov rcx, r8
imul rcx, rdi
movabs rax, 0x52c07149935e0675
add rax, r10
xor rcx, rax
mov qword [rsp + 0x970], rcx
ror rcx, 0x30
shr rcx, 0xc
xor rcx, r11
not rcx
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x918], rcx
movabs rdx, 0x8357289db948
add rdx, qword [0x140301088]
movabs rax, 0xf66e4a4b8a58a285
xor rdx, rax
mov qword [rsp + 0x978], rdx
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9707d55bb
sub rax, rdi
mov rdi, rdx
xor rdi, rax
mov qword [rsp + 0x948], rdi
mov rcx, rdi
movabs rax, 0x91330cc1621c4b9
imul rcx, rax
mov eax, 0xa1a68751
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0xde462d458fe81716
sub rax, qword [rsp + 0x60]
shr rax, cl
mov qword [rsp + 0x88], rax
movabs rcx, 0x824885322f79e
add rcx, r8
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r10
mov rcx, qword [rsp + 0x58]
sub rax, rcx
mov rdx, qword [rsp + 0x88]
xor rdx, rax
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x920], rdx
mov rdx, qword [rsp + 0x60]
jmp 0x140183d09
lea rdi, [r8 + 1]
movabs rax, 0xffff7e8a87af48b3
imul rdi, rax
movabs rdx, 0xfff17ca876dd4c13
mov rax, r9
xor rax, rdx
sub rdi, rax
movabs rdx, 0xaaaaaa1aa1bf7a6f
mov rax, r10
xor rax, rdx
movabs rdx, 0x1206ed63b2a623
imul rax, rdx
add rdi, rax
mov qword [rsp + 0x948], rdi
movabs rax, 0x277cd7be736fad0f
mov rcx, rdi
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, rdi
not r8
imul r8, qword [rsi + rcx*8 + 0x301060]
xor r8, 0xfffffffff4eaacbf
mov qword [rsp + 0x980], r8
lea ecx, [r10 - 0x13]
and cl, r15b
rol r8, cl
movabs rcx, 0x1852280280000000
mov rax, qword [rsp + 0x60]
xor rax, rcx
movabs rcx, 0x7c7a7dc69deda60e
and rax, rcx
imul r8, rax
mov qword [rsp + 0x958], r8
mov rcx, r8
ror rcx, 0x1a
not rcx
movabs rax, 0x9b2de6b2f20cbca0
imul rcx, rax
mov rax, rdi
sub rax, r8
lea rdx, [rcx + rax*4]
mov qword [rsp + 0x988], rdx
mov cl, byte [rsp + 0x58]
and cl, r15b
ror rdx, cl
movabs rax, 0x91330cc1621c4b9
mov rcx, rdx
imul rcx, rax
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x920], rcx
movabs rdx, 0xd5bfdb4b3d46bf68
mov rcx, qword [rsp + 0x58]
movabs rax, 0xff055d7b81c95763
xor rdx, rax
mov qword [rsp + 0x60], rdx
mov rax, r14
mul rdx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, qword [rsp + 0x60]
sub rdx, rax
xor r11, r9
imul r11, qword [rsi + rdx*8 + 0x301060]
not r8
imul r8, rcx
imul r8, qword [rsp + 0x88]
imul r8, r10
movabs rax, 0xf5ed7e87867a1dbf
xor rdi, rax
not rdi
xor r8, rdi
sub r8, r11
mov qword [rsp + 0x9b0], r8
mov rcx, r8
call fcn.140154e98
mov qword [0x14030af88], rax
mov rcx, qword [rsp + 0x70]
and rcx, qword [rsp + 0xa0]
mov rax, qword [rsp + 0x910]
mov qword [rsp + 0x830], r13
mov qword [rsp + 0x828], r13
mov dword [rsp + 0x258], r13d
mov dword [rsp + 0x248], r13d
cmp rax, rcx
jne 0x140183e5b
mov dword [rsp + 0x278], r13d
mov dword [rsp + 0x278], 0xa0b70bdf
mov eax, dword [rsp + 0x278]
add eax, 0x9a99bcba
xor eax, 0x520f2c9e
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
sub eax, 0x6a355c34
xor eax, 0xc8967604
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x8024e13e
add eax, ecx
xor eax, 0x3a91ec6
sub eax, 0x74abefca
xor eax, 0x9bc44207
mov edx, dword [0x140301030]
xor edx, 0x11959ab9
sub edx, eax
mov eax, dword [0x140301038]
xor eax, 0xee6a6546
sub edx, eax
sub edx, ecx
add edx, 0xd014b24
xor edx, 0xe38d4b96
mov dword [rsp + 0x280], edx
mov dword [rsp + 0x278], edx
mov dword [rsp + 0x278], r13d
xor eax, eax
mov byte [rsp + 0x119], al
lea rcx, [rsp + 0x119]
call fcn.14015cac0
nop
jmp 0x140184110
movabs rax, 0x4d7a11a7201223b
imul r10, rax
mov qword [rsp + 0x968], r10
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0xf6eccf33e9de3b46
mov rax, r11
imul rax, rdx
movabs rdx, 0xd5bfdb4b3d46bf68
xor rax, rdx
not rax
shl rax, cl
xor r9, rax
mov qword [rsp + 0x990], r9
mov ecx, dword [rsp + 0x68]
and cl, r15b
rol r9, cl
movabs rcx, 0xf6eccf33e9de3b47
add rcx, r10
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffff0cc1621c4b9
mov rax, qword [rsi + rcx*8 + 0x301060]
imul rax, rdx
xor r9, rax
movabs rax, 0xffffc7a7fd7b0c42
or r9, rax
mov qword [rsp + 0x930], r9
mov rcx, qword [0x140301070]
movabs rax, 0xd5bfdb4b3d46bf68
imul rcx, rax
sub rcx, r8
mov rax, qword [rsp + 0x58]
sub rax, r9
xor rcx, rax
movabs rax, 0xc7a7c6a6ac730c4f
xor rcx, rax
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x920], rcx
movabs rax, 0xcccccccccccccccd
mul r11
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, r11
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, qword [rsp + 0x88]
div rcx
mov rcx, rdx
mov rdx, qword [rsp + 0x88]
imul rdx, r10
imul rdx, r8
shr rdx, cl
mov rax, rdi
sub rax, rdx
sub rax, r11
movabs r11, 0x789589463214055
add r11, rax
xor r11, qword [rsp + 0x58]
mov qword [rsp + 0x998], r11
movzx eax, dil
imul ecx, eax, 0xea
and cl, r15b
rol r11, cl
not r11
mov qword [rsp + 0x928], r11
jmp 0x140183cfa
mov rax, r14
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 [0x140301080]
mov rdx, qword [rsi + rcx*8 + 0x301060]
and rdx, rax
xor rdx, r9
mov qword [rsp + 0x9a0], rdx
and r9b, r15b
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r8
mov qword [rsp + 0x930], r9
mov rcx, qword [rsp + 0x58]
not rcx
imul rcx, rdi
movabs rax, 0x7cd8a7de71825dae
imul rcx, rax
mov rax, r11
imul rax, r9
mov r11, rcx
xor r11, rax
mov qword [rsp + 0x928], r11
imul rax, qword [0x140301060], 0xffffffffe0da2e30
mov rdx, qword [0x140301068]
sub rax, rdx
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x9a8], rax
mov al, r11b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, ebx
jge 0x1401840b6
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0x88]
ror rax, cl
lea rcx, [rax + r8]
mov qword [rsp + 0x940], rcx
movabs rdx, 0xd5bfdb4b3d46bf68
movabs rax, 0x91330cc1621c4b9
mov qword [rsp + 0x88], rax
jmp 0x140183d09
mov qword [rsp + 0x9b8], r13
movabs rax, 0xcb8034b78c756c45
mov qword [rsp + 0x9b8], rax
mov rax, qword [rsp + 0x9b8]
add rax, 0x6b03
movabs rcx, 0x905536625305c4f6
xor rax, rcx
sub rax, qword [0x140301050]
sub rax, qword [0x140301058]
movabs rcx, 0xedf047f4dfe641e
sub rax, rcx
movabs rcx, 0xec33204e88ce67d9
xor rax, rcx
sub rax, qword [0x140301048]
movabs rcx, 0x16468673ca653d78
add rcx, rax
mov rdx, qword [0x140301040]
add rcx, rdx
movabs rax, 0xec3316b537343ad1
xor rcx, rax
movabs rax, 0x13cce94a32ab8304
sub rcx, rax
movabs rax, 0xffd8662d615c2822
xor rcx, rax
movabs rax, 0x27be20faac288553
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94ac8cbc528
mov rax, qword [0x140301038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b537343ad7
mov rcx, qword [0x140301030]
xor rcx, rax
movabs rax, 0x13cc22b590a2707d
add rax, rdx
add rax, rcx
movabs rcx, 0x2443455471eda498
xor rax, rcx
mov qword [rsp + 0x9b8], rax
mov rcx, qword [rsp + 0x1400]
mov eax, dword [rax + rcx]
mov qword [rsp + 0x9b8], r13
test eax, eax
je 0x140184b7b
movabs rax, 0xf450b7bb019f273c
movabs r9, 0x3a772e8dc0de72d3
movabs r10, 0xc588d1723f218d2d
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x70], r9
movabs rax, 0xe0e7400000000000
mov r11, qword [0x140301080]
imul r11, rax
movabs rax, 0xaba9500000000000
xor r11, rax
mov rcx, r11
imul rcx, r9
mov qword [rsp + 0xa0], rcx
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
and r8, r9
imul r8, qword [rsi + rcx*8 + 0x301060]
movabs rax, 0x452ce94c2e8c4858
imul r8, rax
shr r8, 3
movabs rax, 0x37c2487245703fd2
xor r8, rax
movabs rax, 0xffffff57c5e6cbb9
mov rcx, r11
imul rcx, rax
sub rcx, 0x3d2c2ff6
xor rcx, r8
xor rcx, qword [0x140301060]
mov rax, r8
imul rax, qword [0x140301070]
movabs rdx, 0xb9de928bcc557498
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x3a
shr rcx, 8
mov qword [rsp + 0x60], rcx
lea rcx, [r11 + r10]
xor rcx, 0xfffffffff2db7f95
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x8ab05fce38b3f470
mov rdi, qword [rsi + rcx*8 + 0x301060]
imul rdi, rax
add rdi, r9
movabs rcx, 0xe1537d60eeb839d0
mov rax, r8
imul rax, rcx
xor rdi, rax
shr rdi, 0x1f
not rdi
mov rax, rdi
xor rax, r11
mov qword [rsp + 0x58], rax
lea rcx, [rdi + r10]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, dil
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x89
and ecx, ebx
jge 0x1401843b7
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rdx, qword [rsp + 0x58]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0xffffffffc2d3d00a
mov qword [rsp + 0x58], rax
add r10, rax
mov r9, rdi
imul r9, qword [rsp + 0x60]
sub r9, r10
movabs rax, 0xf450b7bb019f273c
xor r9, rax
movzx ecx, r10b
mov dword [rsp + 0x68], ecx
xor ecx, 6
and ecx, 0xf
and ecx, ebx
jge 0x140184409
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
rol r9, cl
mov rax, r10
sub rax, qword [0x140301078]
xor r9, rax
movabs rax, 0x289b15c7cfe4ec3e
imul rdx, rax
movabs rax, 0x53c6bdf5d97499e9
sub rdx, rax
xor r9, rdx
xor r9, r8
xor r9, r11
mov rax, r9
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x1401847c6
sub rax, 1
je 0x140184672
sub rax, 1
je 0x140184570
cmp rax, 1
jne 0x140184886
mov rcx, r10
imul rcx, rdi
movabs rax, 0x913f0951fe677685
add rax, r9
xor rcx, rax
ror rcx, 2
shr rcx, 0xc
xor rcx, r11
not rcx
mov qword [rsp + 0x88], rcx
movabs rdx, 0x83572ea47a9e
add rdx, qword [0x140301088]
movabs rax, 0xc50a540a5a9ed735
xor rdx, rax
movzx eax, r9b
movzx ecx, cl
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db976449661
sub rax, rdi
mov rdi, rdx
xor rdi, rax
mov rcx, rdi
movabs rdx, 0x3a772e8dc0de72d3
imul rcx, rdx
mov eax, 0xa79f448b
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0x3f9d6a3852c0fec
sub rax, qword [rsp + 0x88]
shr rax, cl
mov qword [rsp + 0x70], rax
movabs rcx, 0xc590f5fa943cc175
add rcx, qword [rsp + 0x58]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r9
sub rax, qword [rsp + 0x60]
xor qword [rsp + 0x70], rax
jmp 0x140184886
movabs rax, 0xaaaaaa1aa786b9b5
mov rcx, r9
xor rcx, rax
movabs rax, 0x1206ed658b65f9
imul rcx, rax
movabs rdx, 0xfff17ca870e48fc9
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a81968b69
mov rdx, qword [rsp + 0x58]
imul rdx, rax
movabs rdi, 0x97fc94bc035ee1de
add rdi, rcx
add rdi, rdx
movabs rax, 0x277cd7be75566ed5
mov rcx, rdi
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, rdi
not r10
imul r10, qword [rsi + rcx*8 + 0x301060]
xor r10, 0xfffffffff2d36f65
lea ecx, [r9 - 9]
and cl, r15b
rol r10, cl
movabs rcx, 0x1c48190000000000
mov rax, qword [rsp + 0xa0]
xor rax, rcx
movabs rcx, 0x7c7a7dc69bd465d4
and rax, rcx
imul r10, rax
mov rcx, r10
ror rcx, 0x14
not rcx
movabs rax, 0x9b2de6b2eaebb3c8
imul rcx, rax
mov rax, rdi
sub rax, r10
lea rax, [rcx + rax*4]
mov cl, byte [rsp + 0x60]
and cl, r15b
ror rax, cl
movabs rdx, 0x3a772e8dc0de72d3
imul rax, rdx
mov qword [rsp + 0x70], rax
jmp 0x140184886
movabs rax, 0x25aeaf7f576c829f
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 rdx, 0xc588d1723f218d2c
mov rax, r11
imul rax, rdx
movabs rdx, 0xf450b7bb019f273c
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov eax, dword [rsp + 0x68]
and eax, ebx
jge 0x1401846d4
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov cl, al
rol r8, cl
movabs rcx, 0xc588d1723f218d2d
add rcx, r9
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffee8dc0de72d3
mov rax, qword [rsi + rcx*8 + 0x301060]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7fb42cf98
or r8, rax
mov rcx, qword [0x140301070]
movabs rax, 0xf450b7bb019f273c
imul rcx, rax
sub rcx, r10
mov rax, qword [rsp + 0x60]
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a6aa4acf95
xor rcx, rax
mov qword [rsp + 0x70], rcx
movabs rax, 0xcccccccccccccccd
mul r11
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, r11
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, qword [rsp + 0x70]
div rcx
mov rcx, rdx
mov rdx, r9
imul rdx, r10
imul rdx, qword [rsp + 0x70]
shr rdx, cl
mov rax, rdi
sub rax, rdx
sub rax, r11
movabs r11, 0x78958946518838f
add r11, rax
xor r11, qword [rsp + 0x60]
movzx eax, dil
imul ecx, eax, 0xf0
and cl, r15b
rol r11, cl
not r11
jmp 0x140184886
mov rax, r14
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r8
sub rcx, rax
mov rax, r9
imul rax, qword [0x140301080]
mov rdx, qword [rsi + rcx*8 + 0x301060]
and rdx, rax
xor rdx, r8
and r8b, r15b
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r10
mov rcx, qword [rsp + 0x60]
not rcx
imul rcx, rdi
movabs rax, 0x7cd8a7de77bb9e74
imul rcx, rax
mov rax, r8
imul rax, r11
mov r11, rcx
xor r11, rax
imul rax, qword [0x140301060], 0xffffffffc2d3d00a
mov rdx, qword [0x140301068]
sub rax, rdx
mov qword [rsp + 0xa0], rax
mov al, r11b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, ebx
jge 0x140184864
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0xa0]
ror rax, cl
movabs rcx, 0xc588d1723f218d2d
add rax, rcx
add rax, qword [rsp + 0x58]
mov qword [rsp + 0x60], rax
movabs rax, 0xff055d7b87f094b9
mov rcx, qword [rsp + 0x88]
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r8, r11
imul r8, qword [rsi + rcx*8 + 0x301060]
not r10
imul r10, r9
imul r10, qword [rsp + 0x60]
imul r10, qword [rsp + 0x70]
movabs rcx, 0xf5ed7e878043de65
xor rcx, rdi
not rcx
xor rcx, r10
sub rcx, r8
call fcn.140154670
mov qword [0x14030af38], rax
mov dword [rsp + 0x2a0], r13d
mov dword [rsp + 0x2a0], 0x8c19ecc8
mov eax, dword [rsp + 0x2a0]
add eax, 0x467dc731
xor eax, 0x5c85d882
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
add eax, 0x31c6f7ac
xor eax, 0x4202db63
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x69d0d50a
add eax, ecx
xor eax, 0xa79902d6
sub eax, 0xe1e703a
xor eax, 0xf21cddab
lea edx, [rcx - 0x19cc025d]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xc919f570
sub edx, eax
mov ecx, dword [0x140301030]
xor ecx, 0x36e60a8f
add ecx, 0xaae610fb
add ecx, edx
xor ecx, 0x7bb67990
mov dword [rsp + 0x2a0], ecx
movsxd rax, ecx
mov r8, qword [rsi + rax*8 + 0x30af30]
mov dword [rsp + 0x198], r13d
mov dword [rsp + 0x198], 0x85c83f85
mov eax, dword [rsp + 0x198]
add eax, 0xba7491aa
xor eax, 0x26ff4c79
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
sub eax, 0x3a94ecb3
xor eax, 0xe83c35c0
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x8ce75533
add eax, ecx
xor eax, 0x1f5383e4
add eax, 0x55cb6e76
xor eax, 0xe455d8b8
lea edx, [rcx - 0x3b970d4c]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xaee9d09a
sub edx, eax
mov ecx, dword [0x140301030]
xor ecx, 0x51162f65
add ecx, 0xa051168a
add ecx, edx
xor ecx, 0x96c792c2
mov dword [rsp + 0x198], ecx
movsxd rax, ecx
mov r9, qword [rsp + 0x1400]
mov dword [rax + r9], r8d
mov dword [rsp + 0x198], r13d
mov dword [rsp + 0x2a0], r13d
mov qword [rsp + 0x9b8], r13
movabs rax, 0xcb8034b78c756c45
mov qword [rsp + 0x9b8], rax
mov rax, qword [rsp + 0x9b8]
add rax, 0x6b03
movabs rcx, 0x905536625305c4f6
xor rax, rcx
sub rax, qword [0x140301050]
sub rax, qword [0x140301058]
movabs rcx, 0xedf047f4dfe641e
sub rax, rcx
movabs rcx, 0xec33204e88ce67d9
xor rax, rcx
sub rax, qword [0x140301048]
movabs rcx, 0x16468673ca653d78
add rcx, rax
mov rdx, qword [0x140301040]
add rcx, rdx
movabs rax, 0xec3316b537343ad1
xor rcx, rax
movabs rax, 0x13cce94a32ab8304
sub rcx, rax
movabs rax, 0xffd8662d615c2822
xor rcx, rax
movabs rax, 0x27be20faac288553
add rax, rcx
add rdx, rax
not rdx
mov rax, qword [0x140301038]
movabs rcx, 0x13cce94ac8cbc528
xor rax, rcx
sub rdx, rax
mov rcx, qword [0x140301030]
movabs rax, 0xec3316b537343ad7
xor rcx, rax
movabs rax, 0x13cc22b590a2707d
add rax, rdx
add rax, rcx
movabs rcx, 0x2443455471eda498
xor rax, rcx
mov qword [rsp + 0x9b8], rax
mov eax, dword [rax + r9]
mov qword [rsp + 0x9b8], r13
test eax, eax
movabs rax, 0xf450b7bb019f273c
movabs r9, 0x3a772e8dc0de72d3
movabs r10, 0xc588d1723f218d2d
jne 0x14018424e
mov qword [rsp + 0x2f8], r13
movabs rax, 0x9794472ba6655fb6
mov qword [rsp + 0x88], rax
movabs rdi, 0x3a914268213c9c61
mov qword [rsp + 0x70], r13
movabs rax, 0xfca8206c1a5909e4
movabs r11, 0xb3fd57f1d22a1a6a
mov rcx, qword [0x140301070]
imul rcx, rax
not rcx
movabs r8, 0x4c02a80e2093a952
mov rax, qword [0x140301060]
xor rax, r8
and rcx, rax
ror rcx, 0x3a
shr rcx, 8
mov qword [rsp + 0xa0], rcx
movabs rax, 0xb70059622ede7690
mov r9, qword [0x140301060]
imul r9, rax
add r9, rdi
movabs rax, 0x7f277ac400000000
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xc56ebd97dec3639f
lea rcx, [r9 + r8]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x7b
and ecx, ebx
jge 0x140184c5d
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, r9
ror rax, cl
not rax
mov qword [rsp + 0x60], rax
movabs rcx, 0xd82be5d4b447e530
imul rax, rcx
mov qword [rsp + 0x58], rax
lea r10, [rax + r8]
mov r8, r9
mov rdx, qword [rsp + 0xa0]
imul r8, rdx
sub r8, r10
movabs rax, 0x9794472ba6655fb6
xor r8, rax
movzx ecx, r10b
mov dword [rsp + 0x68], ecx
xor ecx, 4
and ecx, 0xf
and ecx, ebx
jge 0x140184cbc
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
rol r8, cl
mov rax, r10
sub rax, qword [0x140301078]
xor r8, rax
movabs rcx, 0x6842b45906271730
mov rax, qword [rsp + 0x60]
imul rax, rcx
movabs rcx, 0x6013c17aaefe5cc1
sub rax, rcx
xor r8, rax
xor r8, r11
mov rax, r8
and rax, r12
je 0x140184fee
sub rax, 1
je 0x140184ee0
sub rax, 1
je 0x140184e0f
cmp rax, 1
jne 0x140185087
mov rcx, r10
imul rcx, r9
movabs rax, 0x1bfad89c24f85795
add rax, r8
xor rcx, rax
shr rcx, 0xc
not rcx
mov qword [rsp + 0x88], rcx
movabs rdx, 0x83573eca7770
add rdx, qword [0x140301088]
movabs rax, 0xc5ec38efab123475
xor rdx, rax
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9662a9b93
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rdi
mov eax, 0xb7f14979
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs rdi, 0xb03237d1a4f6f44e
sub rdi, qword [rsp + 0x88]
shr rdi, cl
movabs rax, 0xc576e22024389d55
mov rcx, qword [rsp + 0x58]
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r8
sub rax, qword [rsp + 0xa0]
xor rdi, rax
jmp 0x140185087
movabs rcx, 0xaaaaaa1ab7e8b447
mov r9, r8
xor r9, rcx
movabs rcx, 0x1206ed75e5680b
imul r9, rcx
movabs rdx, 0xffff7e8a91f8869b
mov rcx, qword [rsp + 0x58]
imul rcx, rdx
movabs rdx, 0xc2470b2a96d2798f
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be65386327
mov rcx, r9
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r9
not r10
imul r10, qword [rsi + rcx*8 + 0x301060]
xor r10, 0xffffffffe2bd6297
lea ecx, [r8 + 5]
and cl, r15b
rol r10, cl
movabs rax, 0x832540000000000
imul r10, rax
mov rcx, r10
ror rcx, 0x2c
not rcx
movabs rax, 0x9b2de6b2ab538400
imul rcx, rax
mov rax, r9
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0xa0]
and cl, r15b
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x140185087
movabs rax, 0x71c23a2b6bc9da6f
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, 0x686bb8d4599aa049
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0x68]
and eax, ebx
jge 0x140184f31
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov cl, al
rol r11, cl
movabs rcx, 0xc56ebd97dec3639f
add rcx, r8
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x268213c9c61
mov rax, qword [rsi + rcx*8 + 0x301060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7eb2cc26a
or r11, rax
mov rdi, qword [0x140301070]
movabs rax, 0x9794472ba6655fb6
imul rdi, rax
sub rdi, r10
mov rax, qword [rsp + 0xa0]
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a6ba24c267
xor rdi, rax
mov rax, r8
imul rax, r10
imul rax, rdi
mov rdx, r9
sub rdx, rax
movabs rax, 0x789589475768e7d
add rdx, rax
xor rdx, qword [rsp + 0xa0]
mov cl, r9b
add cl, cl
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0x70], rdx
jmp 0x140185087
mov rcx, r8
imul rcx, qword [0x140301080]
and rcx, qword [0x140301080]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x2a
imul r11, r10
mov rax, rdx
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de67d59386
imul rax, rcx
mov qword [rsp + 0x70], rax
imul rcx, qword [0x140301060], 0xfffffffff2b9b338
mov rdx, qword [0x140301068]
sub rcx, rdx
mov qword [rsp + 0xa0], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, ebx
jge 0x140185062
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0xa0]
ror rax, cl
movabs rcx, 0xc56ebd97dec3639f
add rax, rcx
add rax, qword [rsp + 0x58]
mov qword [rsp + 0xa0], rax
movabs rax, 0xff055d7b979e994b
mov rcx, qword [rsp + 0x88]
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x70]
imul r11, qword [rsi + rcx*8 + 0x301060]
not r10
imul r10, r8
imul r10, qword [rsp + 0xa0]
imul r10, rdi
movabs rcx, 0xf5ed7e87902dd397
xor rcx, r9
not rcx
xor rcx, r10
sub rcx, r11
call fcn.140154700
mov qword [0x14030af60], rax
mov dword [rsp + 0x2a8], r13d
mov dword [rsp + 0x2a8], 0x50c0a896
mov eax, dword [rsp + 0x2a8]
add eax, 0x2c85fb2a
xor eax, 0x907ebe8a
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
add eax, 0x4714df10
xor eax, 0x7862869a
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0xd90b27e
add eax, ecx
xor eax, 0xc137a78e
add eax, 0x328e4f90
xor eax, 0xdf51936d
lea edx, [rcx - 0x3189fcea]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xacb21640
sub edx, eax
mov ecx, dword [0x140301030]
xor ecx, 0x534de9bf
add ecx, 0x665ec1ae
add ecx, edx
xor ecx, 0x605ed9c0
mov dword [rsp + 0x2a8], ecx
movsxd rax, ecx
and qword [0x14030b1f0], rax
mov dword [rsp + 0x2a8], r13d
movabs rdi, 0xb757c6e89fbb4e5b
mov qword [rsp + 0x88], r13
movabs rax, 0xbfc1293fb3b73ab0
movabs r11, 0x605f9faf830bfaab
mov rcx, qword [0x140301070]
imul rcx, rax
not rcx
movabs rdx, 0x9fa06050725d93c9
mov rax, qword [0x140301060]
xor rax, rdx
and rcx, rax
ror rcx, 0x3a
shr rcx, 8
mov qword [rsp + 0x70], rcx
movabs rax, 0x95a663c322eba0
mov r10, qword [0x140301080]
imul r10, rax
movabs r8, 0x48a839176044b1a5
sub r10, r8
movabs rax, 0x253183b400000000
xor r10, rax
shr r10, 0x1f
not r10
lea rcx, [r10 + r8]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, r12d
and ecx, ebx
jge 0x140185263
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rdx, r10
ror rdx, cl
not rdx
movabs rcx, 0x7962704644d81876
mov rax, rdx
imul rax, rcx
mov qword [rsp + 0xa0], rax
lea r9, [rax + r8]
mov r8, r10
imul r8, qword [rsp + 0x70]
sub r8, r9
movabs rax, 0xf850b811a66b78d0
xor r8, rax
mov cl, r9b
xor cl, 0xfe
and cl, 0xf
rol r8, cl
mov rax, r9
sub rax, qword [0x140301078]
xor r8, rax
movabs rax, 0xfd2541ef7876a5f2
imul rdx, rax
movabs rax, 0x36fd509aed9459
sub rdx, rax
xor r8, rdx
xor r8, r11
mov rax, r8
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x1401855c3
sub rax, 1
je 0x1401854ca
sub rax, 1
je 0x1401853f7
cmp rax, 1
jne 0x14018565b
mov rbx, r9
imul rbx, r10
movabs rax, 0x9591b53c04bef595
add rax, r8
xor rbx, rax
ror rbx, 2
shr rbx, 0xc
not rbx
movabs rcx, 0xffff7ca8d117be16
mov rdx, qword [0x140301088]
add rdx, rcx
movabs rax, 0xb7d54390fa482f35
xor rdx, rax
movzx eax, r8b
movzx ecx, bl
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0x835824689f752e9
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
imul rcx, rdi
mov eax, 0xa7d37ffd
sub rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs rdi, 0xffc1019a03da05e4
sub rdi, rbx
shr rdi, cl
movabs rax, 0x48a0148f0aeda275
mov rcx, qword [rsp + 0xa0]
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r8
sub rax, qword [rsp + 0x70]
xor rdi, rax
jmp 0x140185665
movabs rcx, 0x555555e558357d3d
mov r10, r8
xor r10, rcx
movabs rcx, 0xffedf9129a38a171
imul r10, rcx
movabs rdx, 0x81757e254fe1
mov rcx, qword [rsp + 0xa0]
imul rcx, rdx
movabs rdx, 0xc3d3d78423d3aafc
add r10, rdx
add r10, rcx
movabs rax, 0xd88328418ae5aa5d
mov rcx, r10
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r10
not r9
imul r9, qword [rsi + rcx*8 + 0x301060]
xor r9, 0xd60abed
mov cl, r8b
sub cl, r12b
and cl, r15b
rol r9, cl
movabs rax, 0x8300802160000000
imul r9, rax
mov rdx, r9
ror rdx, 0x30
not rdx
movabs rax, 0x193486534509287a
imul rdx, rax
sub rdx, r9
add rdx, r10
shl rdx, 2
mov cl, byte [rsp + 0x70]
and cl, r15b
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x14018565b
movabs rax, 0xee7643c501c90ed3
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, 0x7af47ee5994872f
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r9b
and cl, r15b
rol r11, cl
movabs rcx, 0x48a839176044b1a5
add rcx, r8
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [rsi + rcx*8 + 0x301060]
imul rax, rdi
xor r11, rax
movabs rax, 0x385804f10b10
or r11, rax
mov rdi, qword [0x140301070]
movabs rbx, 0xf850b811a66b78d0
imul rdi, rbx
sub rdi, r9
mov rax, qword [rsp + 0x70]
sub rax, r11
xor rdi, rax
movabs rax, 0x3858395955f90b1d
xor rdi, rax
mov rax, r8
imul rax, r9
imul rax, rdi
mov rdx, r10
sub rdx, rax
movabs rax, 0x78958946554b8f9
sub rdx, rax
xor rdx, qword [rsp + 0x70]
movzx eax, r10b
imul ecx, eax, 0xf8
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0x88], rdx
jmp 0x140185665
mov rcx, r8
imul rcx, qword [0x140301080]
and rcx, qword [0x140301088]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x2b
imul r11, r9
mov rax, qword [rsp + 0x70]
not rax
imul rax, r10
movabs rcx, 0x8327582188085afc
imul rax, rcx
mov qword [rsp + 0x88], rax
imul rcx, qword [0x140301060], 0xfffffffff1566962
mov rdx, qword [0x140301068]
sub rcx, rdx
mov qword [rsp + 0x70], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, ebx
jge 0x140185639
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0x70]
ror rax, cl
movabs rcx, 0x48a839176044b1a5
add rax, rcx
add rax, qword [rsp + 0xa0]
mov qword [rsp + 0x70], rax
movabs rbx, 0xf850b811a66b78d0
movabs rax, 0xfaa28478435031
xor rbx, rax
mov rax, r14
mul rbx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rbx, rax
xor r11, qword [rsp + 0x88]
imul r11, qword [rsi + rbx*8 + 0x301060]
not r9
imul r9, r8
imul r9, qword [rsp + 0x70]
imul r9, rdi
movabs rcx, 0xa1281787ff01aed
xor rcx, r10
not rcx
xor rcx, r9
sub rcx, r11
call fcn.140154b38
mov qword [0x14030af58], rax
mov qword [rsp + 0x9c0], r13
movabs rax, 0xdb885d2070e74ff7
mov qword [rsp + 0x9c0], rax
mov qword [rsp + 0x9c8], r13
movabs rax, 0xfaf348d7925b1167
mov qword [rsp + 0x9c8], rax
movabs rcx, 0xf33a52b593d73883
add rcx, qword [rsp + 0x9c8]
movabs rax, 0x5dd53662530925db
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0x7120fb80a7deeb58
add rcx, rax
movabs rax, 0xf8f8cd98e774044b
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x7d654ba2e51ebb7
add rcx, rax
mov rdi, qword [0x140301040]
add rcx, rdi
movabs rax, 0x5a9179a8e35efd93
xor rcx, rax
movabs rax, 0x5f627dc71d5aaf26
sub rcx, rax
movabs rax, 0x1a3b3cd29755ba36
xor rcx, rax
movabs rdx, 0xb483ce452ff7fe6c
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ad64f5b36
mov r10, qword [0x140301038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b529b0a4c9
mov r11, qword [0x140301030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d8bed83048b
add rdx, rax
add rdx, rcx
movabs rax, 0x7cd14a6575dd3566
xor rdx, rax
mov qword [rsp + 0x9c8], rdx
movabs rcx, 0xf33a52b212a39903
add rcx, qword [rsp + 0x9c0]
movabs rax, 0xbe5536625305a4a8
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0xedf047f4d9d79ca
sub rcx, rax
movabs rax, 0xf8f8cd9c76ac7249
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x47d654bef0337eba
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179ace2bddf81
xor rcx, rax
movabs rax, 0x5f627dc5b4c40114
sub rcx, rax
movabs rax, 0x163b3cd4580b9393
xor rcx, rax
movabs rax, 0x3483ce4898a3348f
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ac84a8cb8
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b537b57347
xor r11, rax
movabs rax, 0xe0b56d7ddaaff80d
add rcx, rax
add rcx, r11
movabs rax, 0x3afe3ac00ffbaf08
xor rcx, rax
mov qword [rsp + 0x9c0], rcx
and rcx, rdx
mov rax, r13
cmp qword [0x14030b220], rcx
sete al
mov qword [0x14030b220], rax
mov qword [rsp + 0x9c8], r13
mov qword [rsp + 0x9c0], r13
movabs rax, 0xf177d75a732b29f7
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x70], r13
movabs rax, 0xd6ac0c9594550740
movabs r10, 0xf521aa8b7edf8588
mov rcx, qword [0x140301070]
imul rcx, rax
not rcx
movabs r8, 0xade5574fcbce196
mov rax, qword [0x140301060]
xor rax, r8
and rcx, rax
ror rcx, 0x1a
shr rcx, 8
mov qword [rsp + 0xa0], rcx
movabs rax, 0x9a5ba9fac92f53b0
mov r11, qword [0x140301060]
imul r11, rax
movabs r8, 0x10d9aad7554f6cbd
sub r11, r8
movabs rax, 0x6f85774d80000000
xor r11, rax
shr r11, 0x1f
not r11
lea rcx, [r11 + r8]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x79
mov edi, 0x8000003f
and ecx, edi
mov ebx, 0xffffffc0
jge 0x1401859cd
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, r11
ror rax, cl
not rax
mov qword [rsp + 0x60], rax
movabs rcx, 0x2c10869fe1f2c5f0
imul rax, rcx
mov qword [rsp + 0x58], rax
add r8, rax
mov r9, r11
imul r9, qword [rsp + 0xa0]
sub r9, r8
movabs rdx, 0xf177d75a732b29f7
xor r9, rdx
movzx ecx, r8b
mov dword [rsp + 0x68], ecx
xor ecx, 6
and ecx, 0xf
and ecx, edi
jge 0x140185a27
sub ecx, r12d
or ecx, ebx
add ecx, r12d
rol r9, cl
mov rax, r8
sub rax, qword [0x140301078]
xor r9, rax
movabs rcx, 0x1adf366fff329dd0
mov rax, qword [rsp + 0x60]
imul rax, rcx
movabs rcx, 0x23547fb03329fc77
add rax, rcx
xor r9, rax
xor r9, r10
mov rax, r9
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x140185d70
sub rax, 1
je 0x140185c6e
sub rax, 1
je 0x140185b96
cmp rax, 1
jne 0x140185e0d
mov rcx, r8
imul rcx, r11
movabs rax, 0xef5d402147a2e9e5
add rax, r9
xor rcx, rax
ror rcx, 0x22
shr rcx, 0xc
not rcx
mov qword [rsp + 0x88], rcx
movabs rdx, 0x835715fda76e
add rdx, qword [0x140301088]
movabs rax, 0x105b2faf0ba9eb55
xor rdx, rax
movzx eax, r9b
movzx ecx, cl
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db94d1d4b91
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0xef265528aab09343
imul rcx, rax
mov eax, 0x9cc6997b
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0xf35e2023d13dd09c
sub rax, qword [rsp + 0x88]
shr rax, cl
mov qword [rsp + 0x60], rax
movabs rdx, 0x10e1cf5fc3925675
mov rcx, qword [rsp + 0x58]
add rcx, rdx
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r9
sub rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x60]
xor rcx, rax
jmp 0x140185e17
movabs rcx, 0xaaaaaa1a9cdf6445
mov r11, r9
xor r11, rcx
movabs rcx, 0x1206ed5ed2b809
imul r11, rcx
movabs rdx, 0xffff7e8abacf5699
mov rcx, qword [rsp + 0x58]
imul rcx, rdx
movabs rdx, 0x665c6dde6f3ef9dd
add r11, rdx
add r11, rcx
movabs rax, 0x277cd7be4e0fb325
mov rcx, r11
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
not r8
imul r8, qword [rsi + rcx*8 + 0x301060]
xor r8, 0xffffffffc98ab295
lea ecx, [r9 + 7]
and cl, r15b
rol r8, cl
movabs rax, 0x301a18c000000000
imul r8, rax
mov rcx, r8
ror rcx, 0x2f
not rcx
movabs rax, 0x9b2de6b2078cc408
imul rcx, rax
mov rax, r11
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0xa0]
and cl, r15b
ror rdx, cl
movabs rax, 0xef265528aab09343
mov rcx, rdx
imul rcx, rax
jmp 0x140185e17
movabs rax, 0xd109a74845eceb97
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 rdx, 0xe8828a58cd4d608
shl rdx, cl
mov rax, r10
mov r10, rdx
xor r10, rax
mov eax, dword [rsp + 0x68]
and eax, edi
jge 0x140185cbe
sub eax, r12d
or eax, ebx
add eax, r12d
mov cl, al
rol r10, cl
movabs rcx, 0x10d9aad7554f6cbd
add rcx, r9
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x1528aab09343
mov rax, qword [rsi + rcx*8 + 0x301060]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a7c01b1268
or r10, rax
mov rcx, qword [0x140301070]
movabs rax, 0xf177d75a732b29f7
imul rcx, rax
sub rcx, r8
mov rax, qword [rsp + 0xa0]
sub rax, r10
xor rcx, rax
movabs rax, 0xc7a7c6a691131265
xor rcx, rax
mov rax, r9
imul rax, r8
imul rax, rcx
mov rdx, r11
sub rdx, rax
movabs rax, 0x78958945e415e7f
add rdx, rax
xor rdx, qword [rsp + 0xa0]
not rdx
mov qword [rsp + 0x70], rdx
jmp 0x140185e17
mov rcx, r9
imul rcx, qword [0x140301080]
and rcx, qword [0x140301070]
mov rax, r10
mov r10, rcx
xor r10, rax
ror r10, 8
imul r10, r8
mov rax, qword [rsp + 0xa0]
not rax
imul rax, r11
movabs rcx, 0x7cd8a7de4ce24384
imul rax, rcx
mov qword [rsp + 0x70], rax
imul rcx, qword [0x140301060], 0xffffffff8263641e
mov rdx, qword [0x140301068]
sub rcx, rdx
mov qword [rsp + 0xa0], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x140185de8
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, qword [rsp + 0xa0]
ror rax, cl
movabs rcx, 0x10d9aad7554f6cbd
add rax, rcx
add rax, qword [rsp + 0x58]
mov qword [rsp + 0xa0], rax
movabs rcx, 0xef265528aab09343
movabs rax, 0xff055d7bbca94949
xor qword [rsp + 0x88], rax
mov rax, r14
mul qword [rsp + 0x88]
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, qword [rsp + 0x88]
sub rdx, rax
xor r10, qword [rsp + 0x70]
imul r10, qword [rsi + rdx*8 + 0x301060]
not r8
imul r8, r9
imul r8, qword [rsp + 0xa0]
imul rcx, r8
movabs rax, 0xf5ed7e87bb1a0395
xor r11, rax
not r11
xor rcx, r11
sub rcx, r10
call fcn.1401551d4
mov qword [0x14030af48], rax
mov r11d, r13d
mov dword [rsp + 0x68], r13d
mov edi, 0xec9d6c56
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 r11d, r11d
je 0x140185f13
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea rcx, [r9 + rcx*2]
mov r10d, 0x9ec77b1a
cmp r9, rcx
je 0x140185f0a
mov rsi, rcx
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov ecx, r10d
xor ecx, edx
mov r10d, r8d
imul r10d, ecx
add r9, 2
cmp r9, rsi
jne 0x140185edf
cmp r10d, r11d
jne 0x140186000
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov rcx, qword [rcx + r11 + 0x88]
mov edx, ecx
add rdx, r11
mov qword [rsp + 0x88], rdx
shr rcx, 0x20
cmp rdx, r11
je 0x140185ffb
mov r8d, dword [rdx + 0x18]
test r8d, r8d
je 0x140185ffb
mov r9d, dword [rdx + 0x20]
mov qword [rsp + 0x70], r9
dec r8d
mov dword [rsp + 0x80], r8d
mov esi, r8d
lea rdx, [r11 + r8*4]
mov edx, dword [rdx + r9]
add rdx, r11
mov r9d, 0x9ec77b1a
mov r10b, byte [rdx]
add rdx, r12
mov qword [rsp + 0xa0], rdx
mov dl, r10b
test r10b, r10b
mov r10d, 0x4764996c
je 0x140185fe8
mov r11, qword [rsp + 0xa0]
mov r14d, r9d
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, r10d
mov edx, r14d
xor edx, r8d
mov r14d, r9d
imul r14d, edx
mov dl, byte [r11]
add r11, r12
test dl, dl
jne 0x140185f99
mov dword [rsp + 0xb0], r14d
movabs r14, 0xaaaaaaaaaaaaaaab
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0x80]
mov r9d, dword [rsp + 0xb0]
cmp r9d, edi
je 0x140186008
test r8d, r8d
mov r9, qword [rsp + 0x70]
jne 0x140185f53
mov r11d, dword [rsp + 0x68]
mov rax, qword [rax]
jmp 0x140185eac
mov r8, qword [rsp + 0x88]
mov edx, dword [r8 + 0x1c]
add rdx, r11
mov eax, dword [r8 + 0x24]
add rax, r11
movzx eax, word [rax + rsi*2]
mov r9d, dword [rdx + rax*4]
add r9, r11
cmp r9, r8
jbe 0x1401860d8
lea rax, [rcx + r8]
cmp r9, rax
jae 0x1401860d8
mov r11d, 0x9ec77b1a
mov dword [rsp + 0x68], r11d
mov edi, r11d
mov al, byte [r9]
cmp al, 0x2e
je 0x14018607d
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r10d
mov eax, r11d
xor eax, ecx
mov r11d, edx
imul r11d, eax
add r9, r12
mov al, byte [r9]
cmp al, 0x2e
jne 0x140186054
mov dword [rsp + 0x68], r11d
add r9, r12
mov al, byte [r9]
test al, al
je 0x1401860c2
mov r11d, edi
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r10d
mov eax, r11d
xor eax, ecx
mov r11d, edx
imul r11d, eax
add r9, r12
mov al, byte [r9]
test al, al
jne 0x14018608a
mov dword [rsp + 0x80], r11d
mov r11d, dword [rsp + 0x68]
mov edi, dword [rsp + 0x80]
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x140186000
mov dword [rsp + 0x190], r13d
mov dword [rsp + 0x190], 0x826d0b8e
mov eax, dword [rsp + 0x190]
add eax, 0x6a348139
xor eax, 0x168dfc39
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
add eax, 0x195bd37e
xor eax, 0xfdbd4673
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x5d564b84
add eax, ecx
xor eax, 0x5edc96a5
add eax, 0x3ade6264
xor eax, 0x100062f1
mov edx, dword [0x140301030]
xor edx, 0x16572fa7
sub edx, eax
mov eax, dword [0x140301038]
xor eax, 0xe9a8d058
sub edx, eax
sub edx, ecx
sub edx, 0x61656eaf
xor edx, 0xc9481168
mov dword [rsp + 0x190], edx
movsxd rax, edx
lea rsi, [0x140000000]
mov rcx, qword [rsi + rax*8 + 0x30af30]
mov eax, dword [rsp + 0x1410]
xor rcx, rax
xor rcx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x1400]
lea rdx, [0x14030b220]
call r9
nop
mov dword [rsp + 0x190], r13d
movabs rax, 0xd6cf02c197543448
mov qword [rsp + 0x88], rax
movabs r10, 0x563875764b72a3d1
mov qword [rsp + 0x70], r10
movabs rax, 0x29367891886c8000
mov r9, qword [0x140301070]
imul r9, rax
movabs rax, 0x8a9dcef6e674f000
xor r9, rax
mov qword [rsp + 0xa0], r9
mov rcx, r9
imul rcx, r10
mov qword [rsp + 0x78], rcx
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
and r8, r10
imul r8, qword [rsi + rcx*8 + 0x301060]
movabs rax, 0x734d2140c9eded80
imul r8, rax
shr r8, 3
movabs rax, 0x47a2170137a31367
xor r8, rax
movabs rax, 0xffffff57fb021663
mov rcx, r9
imul rcx, rax
sub rcx, 0x12c09bd0
xor rcx, r8
xor rcx, qword [0x140301060]
mov rax, r8
imul rax, qword [0x140301070]
movabs rdx, 0xb9de928bf2b1a942
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x22
shr rcx, 8
mov qword [rsp + 0x60], rcx
movabs rdi, 0xa9c78a89b48d5c2f
lea rcx, [r9 + rdi]
xor rcx, 0xffffffffcc3fa24f
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x1a2a7d2fab56b220
mov r11, qword [rsi + rcx*8 + 0x301060]
imul r11, rax
add r11, r10
movabs rcx, 0xef0a4d9e24621b20
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rax, r11
xor rax, r9
mov qword [rsp + 0x58], rax
lea rcx, [r11 + rdi]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x53
mov edi, 0x8000003f
and ecx, edi
jge 0x14018632e
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rdx, qword [rsp + 0x58]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0xffffffffed3f6430
mov qword [rsp + 0x58], rax
movabs r9, 0xa9c78a89b48d5c2f
add r9, rax
mov r10, r11
imul r10, qword [rsp + 0x60]
sub r10, r9
movabs rax, 0xd6cf02c197543448
xor r10, rax
mov cl, r9b
xor cl, 0xfc
and cl, 0xf
rol r10, cl
mov rax, r9
sub rax, qword [0x140301078]
xor r10, rax
movabs rax, 0x58fb4ab4baeb5b30
imul rdx, rax
movabs rax, 0x7ae792013b082f5f
add rdx, rax
xor r10, rdx
xor r10, r8
mov rdx, qword [rsp + 0xa0]
xor r10, rdx
mov rax, r10
and rax, r12
je 0x140186740
sub rax, 1
je 0x1401865e2
sub rax, 1
je 0x1401864e3
cmp rax, 1
jne 0x140186802
mov rcx, r9
imul rcx, r11
movabs rax, 0x5632610142ce1e2d
add rax, r10
xor rcx, rax
ror rcx, 0x18
shr rcx, 0xc
xor rcx, rdx
not rcx
mov qword [rsp + 0x88], rcx
movabs rdx, 0x83571040a748
add rdx, qword [0x140301088]
movabs rax, 0xa9450ff1efd6dbed
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db948a04bbb
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0x563875764b72a3d1
imul rcx, rax
mov eax, 0x997b9951
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0xaf525deca2c630de
sub rax, qword [rsp + 0x88]
shr rax, cl
mov qword [rsp + 0x70], rax
movabs rcx, 0xa9cfaf12208d45cd
add rcx, qword [rsp + 0x58]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r10
sub rax, qword [rsp + 0x60]
xor qword [rsp + 0x70], rax
jmp 0x140186802
movabs rax, 0xaaaaaa1a9962646f
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed5b6fb823
imul rcx, rax
movabs rdx, 0xfff17ca84e005213
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8abf7256b3
mov rdx, qword [rsp + 0x58]
imul rdx, rax
movabs r11, 0xb97b518b992f9590
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be4bb2b30f
mov rcx, r11
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
imul r9, qword [rsi + rcx*8 + 0x301060]
xor r9, 0xffffffffcc37b2bf
lea ecx, [r10 - 0x13]
and cl, r15b
rol r9, cl
movabs rcx, 0xcf95fb7ffacf47f1
mov rax, qword [rsp + 0x78]
xor rax, rcx
movabs rcx, 0x7c7a7dc6a530b80e
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0x3a
not rcx
movabs rax, 0x9b2de6b21178c4a0
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x60]
and cl, r15b
ror rdx, cl
movabs rax, 0x563875764b72a3d1
imul rdx, rax
mov qword [rsp + 0x70], rdx
jmp 0x140186802
movabs rax, 0x5859e2e11cb38f87
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, 0xa9c78a89b48d5c2e
mov rax, qword [rsp + 0xa0]
imul rax, rdx
movabs rdx, 0xd6cf02c197543448
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov cl, r9b
and cl, r15b
rol r8, cl
movabs rcx, 0xa9c78a89b48d5c2f
add rcx, r10
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffff5764b72a3d1
mov rax, qword [rsi + rcx*8 + 0x301060]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7c5a61242
or r8, rax
mov rcx, qword [0x140301070]
movabs rax, 0xd6cf02c197543448
imul rcx, rax
sub rcx, r9
mov rax, qword [rsp + 0x60]
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a694ae124f
xor rcx, rax
mov qword [rsp + 0x70], rcx
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0xa0]
mul rcx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, qword [rsp + 0x70]
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r9
imul rdx, qword [rsp + 0x70]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, qword [rsp + 0xa0]
movabs rdx, 0x78958945bfc5e55
add rdx, rax
xor rdx, qword [rsp + 0x60]
movzx eax, r11b
imul ecx, eax, 0xea
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0xa0], rdx
jmp 0x140186802
mov rax, r14
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 [0x140301080]
mov rdx, qword [rsi + rcx*8 + 0x301060]
and rdx, rax
xor rdx, r8
and r8b, r15b
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r9
mov rcx, qword [rsp + 0x60]
not rcx
imul rcx, r11
movabs rax, 0x7cd8a7de495f43ae
imul rcx, rax
mov rax, r8
imul rax, qword [rsp + 0xa0]
xor rcx, rax
mov qword [rsp + 0xa0], rcx
imul rax, qword [0x140301060], 0xffffffffed3f6430
mov rdx, qword [0x140301068]
sub rax, rdx
mov qword [rsp + 0x78], rax
mov al, cl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x1401867e3
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, qword [rsp + 0x78]
ror rax, cl
movabs rcx, 0xa9c78a89b48d5c2f
add rax, rcx
add rax, qword [rsp + 0x58]
mov qword [rsp + 0x60], rax
movabs rax, 0xff055d7bb9144963
mov rcx, qword [rsp + 0x88]
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r8, qword [rsp + 0xa0]
imul r8, qword [rsi + rcx*8 + 0x301060]
not r9
imul r9, r10
imul r9, qword [rsp + 0x60]
imul r9, qword [rsp + 0x70]
movabs rcx, 0xf5ed7e87bea703bf
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r8
call fcn.1401552d0
mov qword [0x14030af48], rax
mov r9d, r13d
mov dword [rsp + 0x68], r13d
mov dword [rsp + 0x80], 0x2a3aee44
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 r9d, r9d
je 0x1401868fc
psrldq xmm0, 8
movq r10, xmm0
movzx ecx, cx
shr rcx, 1
lea rcx, [r10 + rcx*2]
mov r11d, 0xb60515b2
cmp r10, rcx
je 0x1401868f3
mov rsi, rcx
movsx edx, byte [r10]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov ecx, r11d
xor ecx, edx
mov r11d, r8d
imul r11d, ecx
add r10, 2
cmp r10, rsi
jne 0x1401868c8
cmp r11d, r9d
jne 0x140186a9f
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov rcx, qword [rcx + r11 + 0x88]
mov edx, ecx
add rdx, r11
mov qword [rsp + 0x88], rdx
shr rcx, 0x20
cmp rdx, r11
je 0x140186a9f
mov r8d, dword [rdx + 0x18]
test r8d, r8d
je 0x140186a9f
mov edx, dword [rdx + 0x20]
mov qword [rsp + 0x70], rdx
dec r8d
mov dword [rsp + 0xb0], r8d
mov esi, r8d
lea rdx, [rdx + r8*4]
mov edx, dword [rdx + r11]
add rdx, r11
mov r9d, 0xb60515b2
mov r10b, byte [rdx]
add rdx, r12
mov qword [rsp + 0xa0], rdx
mov dl, r10b
test r10b, r10b
mov r10d, 0x4764996c
je 0x1401869c2
mov r11, qword [rsp + 0xa0]
mov edi, r9d
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, r10d
mov edx, edi
xor edx, r8d
mov edi, r9d
imul edi, edx
mov dl, byte [r11]
add r11, r12
test dl, dl
jne 0x140186981
mov dword [rsp + 0x58], edi
mov edi, 0x8000003f
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0xb0]
mov r9d, dword [rsp + 0x58]
cmp r9d, dword [rsp + 0x80]
je 0x1401869e4
test r8d, r8d
mov rdx, qword [rsp + 0x70]
jne 0x14018693b
mov r9d, dword [rsp + 0x68]
jmp 0x140186a9f
mov r9, qword [rsp + 0x88]
mov edx, dword [r9 + 0x1c]
add rdx, r11
mov eax, dword [r9 + 0x24]
add rax, r11
movzx eax, word [rax + rsi*2]
mov r8d, dword [rdx + rax*4]
add r8, r11
cmp r8, r9
jbe 0x140186aa7
lea rax, [r9 + rcx]
cmp r8, rax
jae 0x140186aa7
mov r9d, 0xb60515b2
mov dword [rsp + 0x68], r9d
mov edx, r9d
mov dword [rsp + 0x80], edx
mov al, byte [r8]
cmp al, 0x2e
je 0x140186a5e
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r10d
xor ecx, r9d
mov r9d, eax
imul r9d, ecx
add r8, r12
mov al, byte [r8]
cmp al, 0x2e
jne 0x140186a37
mov dword [rsp + 0x68], r9d
add r8, r12
mov al, byte [r8]
test al, al
je 0x140186a8e
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r10d
xor ecx, edx
mov edx, eax
imul edx, ecx
add r8, r12
mov al, byte [r8]
test al, al
jne 0x140186a68
mov dword [rsp + 0x80], edx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140186895
call r8
movabs rax, 0x75d1d0f9c50fde68
mov qword [rsp + 0x88], rax
movabs r10, 0x2aee970add878a3d
mov qword [rsp + 0x70], r10
movabs rax, 0x9162c93840ec8000
mov r9, qword [0x140301060]
imul r9, rax
movabs rax, 0x8a9dccef3b773000
xor r9, rax
mov qword [rsp + 0xa0], r9
mov rcx, r9
imul rcx, r10
mov qword [rsp + 0x78], rcx
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
and r8, r10
lea rsi, [0x140000000]
imul r8, qword [rsi + rcx*8 + 0x301060]
movabs rax, 0xe77e2a37b565e3e0
imul r8, rax
movabs rax, 0x370b13c4d2b60f60
xor r8, rax
shr r8, 3
movabs rax, 0xffffff57da9fc65f
mov rcx, r9
imul rcx, rax
sub rcx, 0x12fd7594
xor rcx, r8
xor rcx, qword [0x140301060]
mov rax, r8
imul rax, qword [0x140301070]
movabs rdx, 0xb9de928bd32c797e
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x32
shr rcx, 8
mov qword [rsp + 0x60], rcx
movabs rcx, 0xd51168f5227875c3
add rcx, r9
xor rcx, 0xffffffffeda27273
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xeff21f65249ec418
mov r11, qword [rsi + rcx*8 + 0x301060]
imul r11, rax
add r11, r10
movabs rcx, 0x8fe458b24e103b20
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rax, r11
xor rax, r9
mov qword [rsp + 0x58], rax
movabs r9, 0xd51168f5227875c3
lea rcx, [r11 + r9]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x6f
and ecx, edi
jge 0x140186c42
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rdx, qword [rsp + 0x58]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0xffffffffed028a6c
mov qword [rsp + 0x68], rax
add r9, rax
mov r10, r11
imul r10, qword [rsp + 0x60]
sub r10, r9
movabs rax, 0x75d1d0f9c50fde68
xor r10, rax
movzx ecx, r9b
mov dword [rsp + 0x58], ecx
and ecx, 0xf
and ecx, edi
jge 0x140186c90
sub ecx, r12d
or ecx, ebx
add ecx, r12d
rol r10, cl
mov rax, r9
sub rax, qword [0x140301078]
xor r10, rax
movabs rax, 0x19b83fcd132d33bc
imul rdx, rax
movabs rax, 0xca0f3468fbd289
sub rdx, rax
xor r10, rdx
xor r10, r8
mov rdx, qword [rsp + 0xa0]
xor r10, rdx
mov rax, r10
and rax, r12
je 0x140187061
sub rax, 1
je 0x140186efa
sub rax, 1
je 0x140186dfb
cmp rax, 1
jne 0x140187123
mov rcx, r9
imul rcx, r11
movabs rax, 0xdffd2a8700993b5d
add rax, r10
xor rcx, rax
ror rcx, 8
shr rcx, 0xc
xor rcx, rdx
not rcx
mov qword [rsp + 0x88], rcx
movabs rdx, 0x835731dd777c
add rdx, qword [0x140301088]
movabs rax, 0xd593ed8d58be223d
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9693d9b87
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0x2aee970add878a3d
imul rcx, rax
mov eax, 0xb8e6496d
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0x9e62bca59e126d9a
sub rax, qword [rsp + 0x88]
shr rax, cl
mov qword [rsp + 0x70], rax
movabs rcx, 0xd5198d7d6cdaaf65
add rcx, qword [rsp + 0x68]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r10
sub rax, qword [rsp + 0x60]
xor qword [rsp + 0x70], rax
jmp 0x140187123
movabs rax, 0xaaaaaa1ab8ffb453
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed7af2681f
imul rcx, rax
movabs rdx, 0xfff17ca86f9d822f
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a9eef868f
mov rdx, qword [rsp + 0x68]
imul rdx, rax
movabs r11, 0xd2ed6bc638ea607c
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be6a2f6333
mov rcx, r11
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
imul r9, qword [rsi + rcx*8 + 0x301060]
xor r9, 0xffffffffedaa6283
lea ecx, [r10 + 0x11]
and cl, r15b
rol r9, cl
movabs rcx, 0xc7df863bfb5297cd
mov rax, qword [rsp + 0x78]
xor rax, rcx
movabs rcx, 0x7c7a7dc684ad6832
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0x26
not rcx
movabs rax, 0x9b2de6b2970f8450
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x60]
and cl, r15b
ror rdx, cl
movabs rax, 0x2aee970add878a3d
imul rdx, rax
mov qword [rsp + 0x70], rdx
jmp 0x140187123
movabs rax, 0xd1cd2439162ad729
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, 0xd51168f5227875c2
mov rax, qword [rsp + 0xa0]
imul rax, rdx
movabs rdx, 0x75d1d0f9c50fde68
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov eax, dword [rsp + 0x58]
and eax, edi
jge 0x140186f60
sub eax, r12d
or eax, ebx
add eax, r12d
mov cl, al
rol r8, cl
movabs rcx, 0xd51168f5227875c3
add rcx, r10
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x170add878a3d
mov rax, qword [rsi + rcx*8 + 0x301060]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7e43bc27e
or r8, rax
mov rcx, qword [0x140301070]
movabs rax, 0x75d1d0f9c50fde68
imul rcx, rax
sub rcx, r9
mov rax, qword [rsp + 0x60]
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a6b533c273
xor rcx, rax
mov qword [rsp + 0x70], rcx
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0xa0]
mul rcx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, qword [rsp + 0x70]
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r9
imul rdx, qword [rsp + 0x70]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, qword [rsp + 0xa0]
movabs rdx, 0x78958947a618e69
add rdx, rax
xor rdx, qword [rsp + 0x60]
movzx eax, r11b
imul ecx, eax, 0x16
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0xa0], rdx
jmp 0x140187123
mov rax, r14
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 [0x140301080]
mov rdx, qword [rsi + rcx*8 + 0x301060]
and rdx, rax
xor rdx, r8
and r8b, r15b
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r9
mov rcx, qword [rsp + 0x60]
not rcx
imul rcx, r11
movabs rax, 0x7cd8a7de68c29392
imul rcx, rax
mov rax, r8
imul rax, qword [rsp + 0xa0]
xor rcx, rax
mov qword [rsp + 0xa0], rcx
imul rax, qword [0x140301060], 0xffffffffed028a6c
mov rdx, qword [0x140301068]
sub rax, rdx
mov qword [rsp + 0x78], rax
mov al, cl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x140187104
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, qword [rsp + 0x78]
ror rax, cl
movabs rcx, 0xd51168f5227875c3
add rax, rcx
add rax, qword [rsp + 0x68]
mov qword [rsp + 0x60], rax
movabs rax, 0xff055d7b9889995f
mov rcx, qword [rsp + 0x88]
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r8, qword [rsp + 0xa0]
imul r8, qword [rsi + rcx*8 + 0x301060]
not r9
imul r9, r10
imul r9, qword [rsp + 0x60]
imul r9, qword [rsp + 0x70]
movabs rcx, 0xf5ed7e879f3ad383
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r8
call fcn.140154a84
mov qword [0x14030af80], rax
mov r9d, r13d
mov dword [rsp + 0x58], r13d
mov dword [rsp + 0x68], 0x9612a516
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 r9d, r9d
je 0x14018721a
psrldq xmm0, 8
movq r10, xmm0
movzx ecx, cx
shr rcx, 1
lea rcx, [r10 + rcx*2]
mov r11d, 0xddcecb68
cmp r10, rcx
je 0x140187211
mov r14, rcx
movsx edx, byte [r10]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov ecx, r11d
xor ecx, edx
mov r11d, r8d
imul r11d, ecx
add r10, 2
cmp r10, r14
jne 0x1401871e6
cmp r11d, r9d
jne 0x1401873c5
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov rcx, qword [rcx + r11 + 0x88]
mov edx, ecx
add rdx, r11
mov qword [rsp + 0x88], rdx
shr rcx, 0x20
cmp rdx, r11
je 0x1401873c5
mov r8d, dword [rdx + 0x18]
test r8d, r8d
je 0x1401873c5
mov r9d, dword [rdx + 0x20]
mov qword [rsp + 0x70], r9
dec r8d
mov dword [rsp + 0x80], r8d
mov r14d, r8d
lea rdx, [r11 + r8*4]
mov edx, dword [rdx + r9]
add rdx, r11
mov r9d, 0xddcecb68
mov r10b, byte [rdx]
add rdx, r12
mov qword [rsp + 0xa0], rdx
mov dl, r10b
test r10b, r10b
mov r10d, 0x4764996c
je 0x1401872e7
mov r11, qword [rsp + 0xa0]
mov edi, r9d
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, r10d
mov edx, edi
xor edx, r8d
mov edi, r9d
imul edi, edx
mov dl, byte [r11]
add r11, r12
test dl, dl
jne 0x1401872a0
mov dword [rsp + 0xb0], edi
mov edi, 0x8000003f
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0x80]
mov r9d, dword [rsp + 0xb0]
cmp r9d, dword [rsp + 0x68]
je 0x140187306
test r8d, r8d
mov r9, qword [rsp + 0x70]
jne 0x14018725a
mov r9d, dword [rsp + 0x58]
jmp 0x1401873c5
mov r9, qword [rsp + 0x88]
mov edx, dword [r9 + 0x1c]
add rdx, r11
mov eax, dword [r9 + 0x24]
add rax, r11
movzx eax, word [rax + r14*2]
mov r8d, dword [rdx + rax*4]
add r8, r11
cmp r8, r9
jbe 0x1401873cd
lea rax, [rcx + r9]
cmp r8, rax
jae 0x1401873cd
mov r9d, 0xddcecb68
mov dword [rsp + 0x58], r9d
mov r11d, r9d
mov dword [rsp + 0x68], r9d
mov al, byte [r8]
cmp al, 0x2e
je 0x140187381
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r10d
mov eax, r9d
xor eax, ecx
mov r9d, edx
imul r9d, eax
add r8, r12
mov al, byte [r8]
cmp al, 0x2e
jne 0x140187358
mov dword [rsp + 0x58], r9d
add r8, r12
mov al, byte [r8]
test al, al
je 0x1401873b4
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r10d
mov eax, r11d
xor eax, ecx
mov r11d, edx
imul r11d, eax
add r8, r12
mov al, byte [r8]
test al, al
jne 0x14018738b
mov dword [rsp + 0x68], r11d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x1401871b3
call r8
movabs rax, 0x946e6de0caa1a9fa
mov qword [rsp + 0x88], rax
movabs rax, 0xb5ad8d3bedc1cf65
mov qword [rsp + 0x70], rax
mov qword [rsp + 0xa0], r13
movabs rax, 0xb81e3300060d2904
movabs r11, 0xbe4e19b2aa8ae43a
mov rcx, qword [0x140301070]
imul rcx, rax
not rcx
movabs rdx, 0x41b1e64d470aaa82
mov rax, qword [0x140301060]
xor rax, rdx
and rcx, rax
ror rcx, 0x3e
shr rcx, 8
mov qword [rsp + 0x78], rcx
movabs rax, 0xe21c82cd4abd1390
mov r9, qword [0x140301080]
imul r9, rax
movabs r8, 0x4a5272c4123e309b
sub r9, r8
movabs rax, 0xe0afb85bffffffff
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
movabs r14, 0xaaaaaaaaaaaaaaab
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xfb
and ecx, edi
jge 0x1401874bb
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, r9
ror rax, cl
not rax
movabs rdx, 0x2aa3dee2b45db5b0
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x60], rcx
add r8, rcx
mov r10, r9
imul r10, qword [rsp + 0x78]
sub r10, r8
movabs rdx, 0x946e6de0caa1a9fa
xor r10, rdx
movzx ecx, r8b
mov dword [rsp + 0x58], ecx
xor ecx, 4
and ecx, 0xf
and ecx, edi
jge 0x140187510
sub ecx, r12d
or ecx, ebx
add ecx, r12d
rol r10, cl
movabs rcx, 0xa45fcab2d891fe70
imul rax, rcx
movabs rcx, 0x131d4749604e7dd9
sub rax, rcx
xor r10, rax
mov rax, r8
sub rax, qword [0x140301078]
xor r10, rax
xor r10, r11
mov rax, r10
and rax, r12
je 0x140187856
sub rax, 1
je 0x140187747
sub rax, 1
je 0x140187670
cmp rax, 1
jne 0x1401878ea
mov rcx, r8
imul rcx, r9
movabs rax, 0x9c874a2e8e8e8fe9
add rax, r10
xor rcx, rax
ror rcx, 4
shr rcx, 0xc
not rcx
mov qword [rsp + 0x88], rcx
movabs rdx, 0x835731bb70f0
add rdx, qword [0x140301088]
movabs rax, 0x4ad0f7bc689e60f1
xor rdx, rax
movzx eax, r10b
movzx ecx, cl
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9695b9c13
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
movabs rax, 0xb5ad8d3bedc1cf65
imul rcx, rax
mov eax, 0xb8804ef9
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0x71def72c920154ba
sub rax, qword [rsp + 0x88]
shr rax, cl
mov qword [rsp + 0x70], rax
movabs rdx, 0x4a5a974c5c426ed1
mov rcx, qword [rsp + 0x60]
add rcx, rdx
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r10
sub rax, qword [rsp + 0x78]
xor qword [rsp + 0x70], rax
jmp 0x1401878ea
movabs rcx, 0xaaaaaa1ab899b3c7
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed7a946f8b
imul r9, rcx
movabs rdx, 0xffff7e8a9e89811b
mov rcx, qword [rsp + 0x60]
imul rcx, rdx
movabs rdx, 0xcfcea424c9185af3
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be6a4964a7
mov rcx, r9
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [rsi + rcx*8 + 0x301060]
xor r8, 0xffffffffedcc6517
lea ecx, [r10 + 5]
and cl, r15b
rol r8, cl
movabs rax, 0x642a48c080000000
imul r8, rax
mov rcx, r8
ror rcx, 0x20
not rcx
movabs rax, 0x9b2de6b296979a00
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x78]
and cl, r15b
ror rdx, cl
movabs rax, 0xb5ad8d3bedc1cf65
imul rdx, rax
mov qword [rsp + 0x70], rdx
jmp 0x1401878ea
movabs rax, 0x854fc5f1fe99dd0d
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, 0x6b91921f355e5605
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0x58]
and eax, edi
jge 0x140187797
sub eax, r12d
or eax, ebx
add eax, r12d
mov cl, al
rol r11, cl
movabs rcx, 0x4a5272c4123e309b
add rcx, r10
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xd3bedc1cf65
mov rax, qword [rsi + rcx*8 + 0x301060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7e45dc5ea
or r11, rax
mov rcx, qword [0x140301070]
movabs rax, 0x946e6de0caa1a9fa
imul rcx, rax
sub rcx, r8
mov rax, qword [rsp + 0x78]
sub rax, r11
xor rcx, rax
movabs rax, 0xc7a7c6a6b555c5e7
xor rcx, rax
mov qword [rsp + 0x70], rcx
mov rax, r10
imul rax, r8
imul rax, rcx
mov rdx, r9
sub rdx, rax
movabs rax, 0x78958947a0789fd
add rdx, rax
xor rdx, qword [rsp + 0x78]
mov cl, r9b
add cl, cl
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0xa0], rdx
jmp 0x1401878ea
mov rcx, qword [0x140301080]
imul rcx, r10
and rcx, qword [0x140301060]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x3a
imul r11, r8
mov rax, qword [rsp + 0x78]
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de68a49406
imul rax, rcx
mov qword [rsp + 0xa0], rax
imul rcx, qword [0x140301060], 0xffffffffed804eb8
mov rdx, qword [0x140301068]
sub rcx, rdx
mov qword [rsp + 0x78], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x1401878cb
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, qword [rsp + 0x78]
ror rax, cl
movabs rcx, 0x4a5272c4123e309b
add rax, rcx
add rax, qword [rsp + 0x60]
mov qword [rsp + 0x78], rax
movabs rax, 0xff055d7b98ef9ecb
mov rcx, qword [rsp + 0x88]
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0xa0]
imul r11, qword [rsi + rcx*8 + 0x301060]
not r8
imul r8, r10
imul r8, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x70]
imul rcx, r8
movabs rax, 0xf5ed7e879f5cd417
xor r9, rax
not r9
xor rcx, r9
sub rcx, r11
call fcn.140154628
mov qword [0x14030af50], rax
mov r10d, r13d
mov dword [rsp + 0x58], r13d
mov dword [rsp + 0x68], 0x7e1f40e
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 r10d, r10d
je 0x1401879d8
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r8 + rcx*2]
mov r9d, 0x207f7614
jmp 0x1401879ca
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, r11
jne 0x1401879aa
cmp r9d, r10d
jne 0x140187ab4
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov edx, ecx
add rdx, r10
mov qword [rsp + 0x88], rdx
shr rcx, 0x20
cmp rdx, r10
je 0x140187aaf
mov r8d, dword [rdx + 0x18]
test r8d, r8d
je 0x140187aaf
mov r9d, dword [rdx + 0x20]
mov qword [rsp + 0x70], r9
dec r8d
mov dword [rsp + 0x80], r8d
mov edx, r8d
mov qword [rsp + 0xa0], rdx
lea rdx, [r10 + r8*4]
mov r11d, dword [rdx + r9]
add r11, r10
mov edx, 0x207f7614
mov r9b, byte [r11]
mov byte [rsp + 0x50], r9b
add r11, r12
test r9b, r9b
mov r9d, 0x4764996c
je 0x140187a9b
mov r10d, edx
mov dl, byte [rsp + 0x50]
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, r9d
xor r8d, r10d
mov r10d, edx
imul r10d, r8d
mov dl, byte [r11]
add r11, r12
test dl, dl
jne 0x140187a5b
mov dword [rsp + 0xb0], r10d
mov r10, qword [rax + 0x30]
mov r8d, dword [rsp + 0x80]
mov edx, dword [rsp + 0xb0]
cmp edx, dword [rsp + 0x68]
je 0x140187abc
test r8d, r8d
mov r9, qword [rsp + 0x70]
jne 0x140187a18
mov r10d, dword [rsp + 0x58]
mov rax, qword [rax]
jmp 0x14018797d
mov r11, qword [rsp + 0x88]
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov eax, dword [r11 + 0x24]
add rax, r10
mov r8, qword [rsp + 0xa0]
movzx eax, word [rax + r8*2]
mov r8d, dword [rdx + rax*4]
add r8, r10
cmp r8, r11
jbe 0x140187b88
lea rax, [r11 + rcx]
cmp r8, rax
jae 0x140187b88
mov eax, 0x207f7614
mov r10d, eax
mov dword [rsp + 0x58], eax
mov r11d, eax
mov dword [rsp + 0x68], eax
mov al, byte [r8]
cmp al, 0x2e
je 0x140187b3f
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r9d
mov eax, r10d
xor eax, ecx
mov r10d, edx
imul r10d, eax
add r8, r12
mov al, byte [r8]
cmp al, 0x2e
jne 0x140187b16
mov dword [rsp + 0x58], r10d
add r8, r12
mov al, byte [r8]
test al, al
je 0x140187b72
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r9d
mov eax, r11d
xor eax, ecx
mov r11d, edx
imul r11d, eax
add r8, r12
mov al, byte [r8]
test al, al
jne 0x140187b49
mov dword [rsp + 0x68], r11d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x140187ab4
xor ecx, ecx
call r8
movabs rax, 0xb6977013d10013e1
mov qword [rsp + 0x88], rax
movabs rcx, 0x6fbbb369d99fb0ba
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0xa0], r13
movabs rax, 0xd6e302f7c9252be6
movabs r11, 0x4967bebbcf135e69
mov rdx, qword [0x140301070]
imul rdx, rax
not rdx
movabs r8, 0xb6984144269f25ad
mov rax, qword [0x140301060]
xor rax, r8
and rdx, rax
ror rdx, 0x3d
shr rdx, 8
mov qword [rsp + 0x78], rdx
movabs rax, 0x9d5e83292d3a7328
mov r9, qword [0x140301068]
imul r9, rax
add r9, rcx
movabs rax, 0x52fefbfa00000000
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0x90444c9626604f46
lea rcx, [r9 + r8]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xe7
and ecx, edi
jge 0x140187c6e
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, r9
ror rax, cl
not rax
movabs rdx, 0x7b2cc5650b9cbb64
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x60], rcx
add r8, rcx
mov r10, r9
imul r10, qword [rsp + 0x78]
sub r10, r8
movabs rdx, 0xb6977013d10013e1
xor r10, rdx
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
movabs rcx, 0x1f32bc9a57d0e6a8
imul rax, rcx
movabs rcx, 0xadf31cc550c4724
sub rax, rcx
xor r10, rax
mov rax, r8
mov rdx, qword [0x140301078]
sub rax, rdx
xor r10, rax
xor r10, r11
mov rax, r10
and eax, 2
je 0x140187ff1
sub rax, 1
je 0x140187eec
sub rax, 1
je 0x140187e15
cmp rax, 1
jne 0x140188078
mov rcx, r8
imul rcx, r9
movabs rax, 0xcb74448e4df62fca
add rax, r10
xor rcx, rax
ror rcx, 4
shr rcx, 0xc
not rcx
mov qword [rsp + 0x88], rcx
movabs rdx, 0x83573dbd75f4
add rdx, qword [0x140301088]
movabs rax, 0x90c6c9ee50c61a32
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9655d990f
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
movabs rax, 0x6fbbb369d99fb0ba
imul rcx, rax
mov eax, 0xb4864be5
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs rax, 0xef80a278419d5425
sub rax, qword [rsp + 0x88]
shr rax, cl
mov qword [rsp + 0x70], rax
movabs rdx, 0x904c711e6c628a70
mov rcx, qword [rsp + 0x60]
add rcx, rdx
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r10
sub rax, qword [rsp + 0x78]
xor qword [rsp + 0x70], rax
jmp 0x140188078
movabs rcx, 0xaaaaaa1ab49fb6db
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed76926a97
imul r9, rcx
movabs rdx, 0xffff7e8a928f8407
mov rcx, qword [rsp + 0x60]
imul rcx, rdx
movabs rdx, 0xa42fcd19cf3ce823
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be664f61bb
mov rcx, r9
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [rsi + rcx*8 + 0x301060]
xor r8, 0xffffffffe1ca600b
lea ecx, [r10 + 0x19]
and cl, r15b
rol r8, cl
movabs rax, 0x45a7d8280000000
imul r8, rax
mov rcx, r8
ror rcx, 0x27
not rcx
movabs rax, 0x9b2de6b2a68f8e70
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x78]
and cl, r15b
ror rdx, cl
movabs rax, 0x6fbbb369d99fb0ba
imul rdx, rax
mov qword [rsp + 0x70], rdx
jmp 0x140188078
movabs rax, 0xeee5bd2e2a94333c
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, 0x49688fec2effec1e
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r8b
and cl, r15b
rol r11, cl
movabs rcx, 0x90444c9626604f46
add rcx, r10
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffff369d99fb0ba
mov rax, qword [rsi + rcx*8 + 0x301060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7e85bc0f6
or r11, rax
mov rcx, qword [0x140301070]
movabs rax, 0xb6977013d10013e1
imul rcx, rax
sub rcx, r8
mov rax, qword [rsp + 0x78]
sub rax, r11
xor rcx, rax
movabs rax, 0xc7a7c6a6b953c0fb
xor rcx, rax
mov qword [rsp + 0x70], rcx
mov rax, r10
imul rax, r8
imul rax, rcx
mov rdx, r9
sub rdx, rax
movabs rax, 0x789589476018ce1
add rdx, rax
xor rdx, qword [rsp + 0x78]
movzx eax, r9b
imul ecx, eax, 0x1e
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0xa0], rdx
jmp 0x140188078
mov rcx, r10
imul rcx, qword [0x140301080]
and rcx, rdx
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x29
imul r11, r8
mov rax, qword [rsp + 0x78]
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de64a2911a
imul rax, rcx
mov qword [rsp + 0xa0], rax
imul rdx, qword [0x140301060], 0xffffffffe98c7bc4
sub rdx, qword [0x140301068]
not al
movzx ecx, al
movzx eax, byte [0x140301068]
xor ecx, eax
and ecx, edi
jge 0x14018805e
sub ecx, r12d
or ecx, ebx
add ecx, r12d
ror rdx, cl
movabs rax, 0x90444c9626604f46
add rax, rdx
add rax, qword [rsp + 0x60]
mov qword [rsp + 0x78], rax
movabs rax, 0xff055d7b94e99bd7
mov rcx, qword [rsp + 0x88]
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0xa0]
imul r11, qword [rsi + rcx*8 + 0x301060]
not r8
imul r8, r10
imul r8, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x70]
imul rcx, r8
movabs rax, 0xf5ed7e87935ad10b
xor r9, rax
not r9
xor rcx, r9
sub rcx, r11
call fcn.1401546b8
mov qword [0x14030af88], rax
movabs rax, 0xa57374466eed6027
mov qword [rsp + 0x88], rax
movabs r11, 0x4a1286f7d3693dbe
mov qword [rsp + 0x70], r13
movabs rcx, 0x543be7944b28cbb1
mov qword [rsp + 0xa0], rcx
movabs rax, 0xc8e1341d8934e292
mov rcx, qword [0x140301070]
imul rcx, rax
not rcx
movabs rdx, 0xabc4186b8686e80d
mov rax, qword [0x140301060]
xor rax, rdx
and rcx, rax
ror rcx, 0x3d
shr rcx, 8
mov qword [rsp + 0x78], rcx
movabs rax, 0xdc9393a8da675fe8
mov r9, qword [0x140301088]
imul r9, rax
add r9, r11
movabs rax, 0xbd3d00a07fffffff
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xb5ed79082c96c242
lea rcx, [r9 + r8]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x23
and ecx, edi
jge 0x1401881c8
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, r9
ror rax, cl
not rax
movabs rdx, 0xe8794c53f51cc8fc
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x60], rcx
lea r10, [rcx + r8]
mov r8, r9
imul r8, qword [rsp + 0x78]
sub r8, r10
movabs rdx, 0xa57374466eed6027
xor r8, rdx
mov cl, r10b
xor cl, 0xfc
and cl, 0xf
rol r8, cl
movabs rcx, 0x7c5ebd51ea9d3708
imul rax, rcx
movabs rcx, 0x5706b3aee8c01904
sub rax, rcx
xor r8, rax
mov rax, r10
mov rdx, qword [0x140301078]
sub rax, rdx
xor r8, rax
movabs rax, 0x543be7944b28cbb1
xor r8, rax
mov rcx, r8
and ecx, 2
je 0x140188545
sub rcx, 1
je 0x140188437
sub rcx, 1
je 0x140188369
cmp rcx, 1
jne 0x1401885d4
mov rcx, r10
imul rcx, r9
movabs rax, 0x6c5b9855a41e60e6
add rax, r8
xor rcx, rax
ror rcx, 4
shr rcx, 0xc
not rcx
mov qword [rsp + 0x88], rcx
movabs rdx, 0x83572db63438
add rdx, qword [0x140301088]
movabs rax, 0xb56ffc704a3bd6f2
xor rdx, rax
movzx eax, cl
movzx ecx, r8b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97556d8cb
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, r11
mov eax, 0xa48d0a21
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs r11, 0xf87ff4db6bee1c85
sub r11, qword [rsp + 0x88]
shr r11, cl
movabs rax, 0xb5f59d9082a03d30
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r8
sub rax, qword [rsp + 0x78]
xor r11, rax
jmp 0x1401885d4
movabs rcx, 0xaaaaaa1aa494f71f
mov r9, r8
xor r9, rcx
movabs rcx, 0x1206ed66992b53
imul r9, rcx
movabs rdx, 0xffff7e8a8284c5c3
mov rcx, qword [rsp + 0x60]
imul rcx, rdx
movabs rdx, 0xafb61ecdf2017d37
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be7644207f
mov rcx, r9
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r9
not r10
imul r10, qword [rsi + rcx*8 + 0x301060]
xor r10, 0xfffffffff1c121cf
lea ecx, [r8 + 0x1d]
and cl, r15b
rol r10, cl
movabs rax, 0x302251c200000000
imul r10, rax
mov rcx, r10
ror rcx, 0x25
not rcx
movabs rax, 0x9b2de6b2e6a28960
imul rcx, rax
mov rax, r9
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x78]
and cl, r15b
ror rdx, cl
mov rax, r11
mov r11, rdx
imul r11, rax
jmp 0x1401885d4
movabs rax, 0x30a7f52567cba104
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, 0x5a8c8bb991129fd8
shl r11, cl
movabs rcx, 0x543be7944b28cbb1
xor r11, rcx
mov cl, r10b
and cl, r15b
rol r11, cl
movabs rcx, 0xb5ed79082c96c242
add rcx, r8
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x6f7d3693dbe
mov rax, qword [rsi + rcx*8 + 0x301060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7f8508132
or r11, rax
mov qword [rsp + 0xa0], r11
mov r11, qword [0x140301070]
movabs rax, 0xa57374466eed6027
imul r11, rax
sub r11, r10
mov rax, qword [rsp + 0x78]
sub rax, qword [rsp + 0xa0]
xor r11, rax
movabs rax, 0xc7a7c6a6a958813f
xor r11, rax
mov rax, r8
imul rax, r10
imul rax, r11
mov rdx, r9
sub rdx, rax
movabs rax, 0x7895894660acd25
add rdx, rax
xor rdx, qword [rsp + 0x78]
movzx eax, r9b
imul ecx, eax, 0x1a
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0x70], rdx
jmp 0x1401885d4
mov rcx, r8
imul rcx, qword [0x140301080]
and rcx, rdx
xor rcx, rax
ror rcx, 0x31
imul rcx, r10
mov qword [rsp + 0xa0], rcx
mov rax, qword [rsp + 0x78]
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de74a9d0de
imul rax, rcx
mov qword [rsp + 0x70], rax
imul rcx, qword [0x140301060], 0xffffffffcdae23bc
mov rdx, qword [0x140301068]
sub rcx, rdx
mov qword [rsp + 0x78], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x1401885b5
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, qword [rsp + 0x78]
ror rax, cl
movabs rcx, 0xb5ed79082c96c242
add rax, rcx
add rax, qword [rsp + 0x60]
mov qword [rsp + 0x78], rax
movabs rax, 0xff055d7b84e2da13
mov rcx, qword [rsp + 0x88]
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [rsp + 0xa0]
xor rax, qword [rsp + 0x70]
imul rax, qword [rsi + rcx*8 + 0x301060]
not r10
imul r10, r8
imul r10, qword [rsp + 0x78]
imul r10, r11
movabs rcx, 0xf5ed7e87835190cf
xor rcx, r9
not rcx
xor rcx, r10
sub rcx, rax
call fcn.1401546dc
mov qword [0x14030af50], rax
mov dword [rsp + 0x2c0], r13d
mov dword [rsp + 0x2c0], 0xf83023a8
mov eax, dword [rsp + 0x2c0]
add eax, 0x4194b729
xor eax, 0x4c7dd399
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
add eax, 0x49d5b2dc
xor eax, 0x66ff8fab
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0x4c7b324d
add eax, ecx
xor eax, 0xcd32d91f
add eax, 0x5c3ca800
xor eax, 0x74d18cf7
lea edx, [rcx - 0x4d0551c5]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xa9065130
sub edx, eax
mov ecx, dword [0x140301030]
xor ecx, 0x56f9aecf
add ecx, 0xb6edf51b
add ecx, edx
xor ecx, 0xefa45d0
mov dword [rsp + 0x2c0], ecx
mov rax, qword [0x14030b1f0]
xor byte [rax], cl
mov dword [rsp + 0x2c0], r13d
mov qword [rsp + 0x9d0], r13
movabs rax, 0xee1d542d9f44569c
mov qword [rsp + 0x9d0], rax
movabs rcx, 0xcc5ad4a4114d43a
add rcx, qword [rsp + 0x9d0]
movabs rax, 0xf98b4fedad9dd319
xor rcx, rax
sub rcx, qword [0x140301050]
sub rcx, qword [0x140301058]
movabs rax, 0x4ed45970e9d73285
add rcx, rax
movabs rax, 0x7074599e7817226
xor rcx, rax
sub rcx, qword [0x140301048]
movabs rax, 0x5829ab455d28cad8
add rcx, rax
mov rdx, qword [0x140301040]
add rcx, rdx
movabs rax, 0xa56e86574dc4b7f8
xor rcx, rax
movabs rax, 0x2b02fde7241541c8
sub rcx, rax
movabs rax, 0x2fc4c32d6c11826e
xor rcx, rax
movabs rax, 0x95ab432a937711f5
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0xec3316b5290451a4
mov rax, qword [0x140301038]
xor rax, rcx
sub rdx, rax
movabs rax, 0x13cce94ad6fbae5b
mov rcx, qword [0x140301030]
xor rcx, rax
movabs rax, 0x1f4a914b34ec69d2
add rdx, rax
add rdx, rcx
movabs rax, 0x67bee529a7d27d4c
xor rdx, rax
mov qword [rsp + 0x9d0], rdx
mov rax, qword [0x14030b1f0]
xor qword [rax + 0x68], rdx
mov qword [rsp + 0x9d0], r13
movabs rax, 0xeeb7c96120000000
movabs r8, 0x77edfe275d1c7fa2
movabs r10, 0xcbf99965a19f9db9
mov r9, qword [0x140301070]
imul r9, rax
movabs rax, 0xcd218e6930000000
xor r9, rax
mov qword [rsp + 0x88], r9
mov rcx, r9
imul rcx, r10
mov qword [rsp + 0x70], rcx
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r11, r9
and r11, r10
imul r11, qword [rsi + rcx*8 + 0x301060]
movabs rax, 0x6cad011da9bd2a18
imul r11, rax
shr r11, 3
movabs rax, 0x69ccfa13d3e53580
xor r11, rax
movabs rax, 0xffffff57c67497bf
mov rcx, r9
imul rcx, rax
sub rcx, 0x12a2ccb4
xor rcx, r11
xor rcx, qword [0x140301060]
mov rax, r11
imul rax, qword [0x140301070]
movabs rdx, 0xb9de928bcfc7289e
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x16
shr rcx, 8
mov qword [rsp + 0xa0], rcx
movabs r10, 0x3406669a5e606247
lea rcx, [r9 + r10]
xor rcx, 0xfffffffff1492393
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x10379d65c281d958
mov r13, qword [rsi + rcx*8 + 0x301060]
imul r13, rax
sub r13, r10
movabs rcx, 0x6bd2f1bbadf25848
mov rax, r11
imul rax, rcx
xor r13, rax
shr r13, 0x1f
not r13
lea rcx, [r10 + r13]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r13b
movzx ecx, byte [rsi + rcx*8 + 0x301060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x8f
and ecx, edi
jge 0x14018897e
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rdx, r13
xor rdx, r9
ror rdx, cl
not rdx
imul rdx, r11
imul rax, rdx, 0xffffffffed5d334c
mov qword [rsp + 0x78], rax
lea r9, [rax + r10]
movzx ecx, r9b
mov dword [rsp + 0x58], ecx
and cl, 0xf
mov r10, r13
imul r10, qword [rsp + 0xa0]
sub r10, r9
xor r10, r8
rol r10, cl
mov rax, r9
sub rax, qword [0x140301078]
xor r10, rax
movabs rax, 0x7695a7a65903adec
imul rdx, rax
movabs rax, 0xf9a421e0105904f
add rdx, rax
xor r10, rdx
xor r10, r11
mov rcx, qword [rsp + 0x88]
xor r10, rcx
mov rax, r10
and rax, r12
je 0x140188d7c
sub rax, 1
je 0x140188c20
sub rax, 1
je 0x140188b19
cmp rax, 1
jne 0x140188e3d
mov r8, r9
imul r8, r13
movabs rax, 0xeba9182f389951f9
add rax, r10
xor r8, rax
ror r8, 0x2c
shr r8, 0xc
xor r8, rcx
not r8
movzx eax, r8b
movzx ecx, r10b
imul ecx, eax
and cl, r15b
movabs rdx, 0x83572d36269c
add rdx, qword [0x140301088]
movabs rax, 0x3484e3e2384d6459
xor rdx, rax
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db975d6ca67
sub rax, r13
mov r13, rdx
xor r13, rax
mov rcx, r13
movabs rax, 0xcbf99965a19f9db9
imul rcx, rax
mov eax, 0xa40d188d
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8 + 0x301060]
and cl, 0xf
movabs rdi, 0x3fb32bfd78bae09e
sub rdi, r8
shr rdi, cl
movabs rax, 0x340e8b22b4e9ca89
mov rcx, qword [rsp + 0x78]
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [rsi + rcx*8 + 0x301060]
imul rax, r10
sub rax, qword [rsp + 0xa0]
xor rdi, rax
jmp 0x140188e47
movabs rax, 0xaaaaaa1aa414e5b3
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed661939ff
imul rcx, rax
movabs rdx, 0xfff17ca87376d3cf
mov rax, r11
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a8204d76f
mov rdx, qword [rsp + 0x78]
imul rdx, rax
movabs r13, 0xdb54f86bf7751538
add r13, rcx
add r13, rdx
lea ecx, [r10 - 0xf]
and cl, r15b
movabs rax, 0x277cd7be76c432d3
mov r8, r13
xor r8, rax
mov rax, r14
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r8, rax
mov r9, r13
not r9
imul r9, qword [rsi + r8*8 + 0x301060]
xor r9, 0xfffffffff1413363
rol r9, cl
movabs rcx, 0x1458700280000000
mov rax, qword [rsp + 0x70]
xor rax, rcx
movabs rcx, 0x7c7a7dc6984639d2
and rax, rcx
imul r9, rax
mov cl, byte [rsp + 0xa0]
and cl, r15b
mov rdx, r9
ror rdx, 0xc
not rdx
movabs rax, 0x9b2de6b2e4a2c3d0
imul rdx, rax
mov rax, r13
sub rax, r9
lea rdi, [rdx + rax*4]
ror rdi, cl
movabs rax, 0xcbf99965a19f9db9
imul rdi, rax
movabs r8, 0x77edfe275d1c7fa2
jmp 0x140188e47
movabs rax, 0xa2a2a9fe46df8bb
imul r10, rax
mov eax, dword [rsp + 0x58]
and eax, edi
mov dword [rsp + 0x58], eax
jge 0x140188c46
sub eax, r12d
or eax, ebx
add eax, r12d
mov dword [rsp + 0x58], eax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0x3406669a5e606246
mov rbx, qword [rsp + 0x88]
mov rax, rbx
imul rax, rdx
xor rax, r8
not rax
shl rax, cl
xor r11, rax
mov ecx, dword [rsp + 0x58]
rol r11, cl
movabs rcx, 0x3406669a5e606247
add rcx, r10
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x1965a19f9db9
mov rax, qword [rsi + rcx*8 + 0x301060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7f8d0939e
or r11, rax
mov rdi, qword [0x140301070]
imul rdi, r8
sub rdi, r9
mov rax, qword [rsp + 0xa0]
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a6a9d89393
xor rdi, rax
movzx eax, r13b
imul r8d, eax, 0xf6
and r8b, r15b
movabs rax, 0xcccccccccccccccd
mul rbx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rbx
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, rdi
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r9
imul rdx, rdi
shr rdx, cl
mov rax, r13
sub rax, rdx
sub rax, rbx
movabs r15, 0x7895894668adf89
add r15, rax
xor r15, qword [rsp + 0xa0]
mov cl, r8b
rol r15, cl
not r15
movabs r8, 0x77edfe275d1c7fa2
jmp 0x140188e4f
mov cl, r11b
and cl, r15b
mov rax, r14
mul r11
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, r11
sub rdx, rax
mov rax, r10
imul rax, qword [0x140301080]
mov rdx, qword [rsi + rdx*8 + 0x301060]
and rdx, rax
xor r11, rdx
ror r11, cl
imul r11, r9
mov r15, qword [rsp + 0xa0]
not r15
imul r15, r13
movabs rax, 0x7cd8a7de7429c272
imul r15, rax
mov rax, r11
imul rax, qword [rsp + 0x88]
xor r15, rax
mov al, r15b
not al
movzx ecx, al
movzx eax, byte [0x140301068]
xor ecx, eax
and ecx, edi
jge 0x140188e02
sub ecx, r12d
or ecx, ebx
add ecx, r12d
imul rdx, qword [0x140301060], 0xffffffffed5d334c
sub rdx, qword [0x140301068]
ror rdx, cl
movabs rax, 0x3406669a5e606247
add rax, rdx
add rax, qword [rsp + 0x78]
mov qword [rsp + 0xa0], rax
movabs rdi, 0xcbf99965a19f9db9
jmp 0x140188e4f
movabs rdi, 0xcbf99965a19f9db9
mov r15, qword [rsp + 0x88]
movabs rax, 0xff055d7b8462c8bf
xor r8, rax
mov rax, r14
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r8, rax
xor r11, r15
imul r11, qword [rsi + r8*8 + 0x301060]
not r9
imul r9, r10
imul r9, qword [rsp + 0xa0]
imul r9, rdi
movabs rcx, 0xf5ed7e8783d18263
xor rcx, r13
not rcx
xor rcx, r9
sub rcx, r11
call fcn.140154ba4
mov qword [0x14030af40], rax
add rsp, 0x13c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret