Function at 0x140182ff0
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.140277eb0
sub rsp, rax
lea rax, [rsp + 0x1428]
mov qword [rsp + 0x2f8], rax
movabs rax, 0xe559b68f6c5736e9
mov qword [rsp + 0x2c0], rax
movabs r9, 0xb0396ad0c43c7b33
mov qword [rsp + 0x58], r9
movabs rax, 0x36b0000000000000
mov r13, qword [0x14031d078]
imul r13, rax
movabs rax, 0xcb30000000000000
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 + 0x31d060]
movabs rax, 0xdaf100e674545458
imul r8, rax
shr r8, 3
movabs rax, 0x6c775c4fb7be1160
xor r8, rax
movabs rax, 0xa83c30fd9f
mov rsi, r13
imul rsi, rax
sub rsi, 0x1db25568
xor rsi, r8
xor rsi, qword [0x14031d060]
mov rax, r8
imul rax, qword [0x14031d070]
movabs rcx, 0x46216d74358342be
imul rax, rcx
not rax
and rsi, rax
ror rsi, 0x3c
shr rsi, 8
mov qword [rsp + 0x2a8], rsi
movabs r9, 0x4fc6952f3bc384cd
lea rcx, [r9 + r13]
xor rcx, 0xb0d49b3
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xf3bb403409c689b0
mov r11, qword [rbx + rcx*8 + 0x31d060]
imul r11, rax
sub r11, r9
movabs rcx, 0xc68225aefd778dac
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 + 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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xaf
mov r15d, 0x8000003f
and ecx, r15d
mov r12d, 1
lea r14d, [r12 - 0x41]
jge 0x1401831db
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, 0xffffffffe24daa98
mov qword [rsp + 0x198], rax
lea r10, [rax + r9]
mov r9, r11
imul r9, rsi
sub r9, r10
movabs rax, 0xe559b68f6c5736e9
xor r9, rax
movzx ecx, r10b
mov dword [rsp + 0x148], ecx
and ecx, 0xf
and ecx, r15d
jge 0x140183233
sub ecx, r12d
or ecx, r14d
add ecx, r12d
rol r9, cl
mov rax, r10
sub rax, qword [0x14031d078]
xor r9, rax
movabs rax, 0x6cd1fe05c2100448
imul rdx, rax
movabs rax, 0x748ee62feccdf3d7
add rdx, rax
xor r9, rdx
xor r9, r8
xor r9, r13
mov rax, r9
and eax, 3
je 0x1401835fe
sub rax, 1
je 0x1401834a7
sub rax, 1
mov sil, 0x3f
je 0x14018339f
cmp rax, 1
jne 0x1401836cb
mov rcx, r10
imul rcx, r11
movabs rax, 0xd7a40596faad4253
add rax, r9
xor rcx, rax
ror rcx, 4
shr rcx, 0xc
xor rcx, r13
not rcx
mov qword [rsp + 0x2c0], rcx
movabs rdx, 0xffff7ca8d7724cbc
add rdx, qword [0x14031d088]
movabs rax, 0xb0bbefa8a7aae8f3
xor rdx, rax
movzx eax, cl
movzx ecx, r9b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0x83582468f92a047
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rdx, 0xb0396ad0c43c7b33
imul rcx, rdx
mov eax, 0xa1b68d53
sub 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 + 0x31d060]
and cl, 0xf
movabs rax, 0xd0032b29e6944c04
sub rax, qword [rsp + 0x2c0]
shr rax, cl
mov qword [rsp + 0x58], rax
movabs rcx, 0x4fbe70a6e890872f
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, r9
imul rax, qword [rbx + rcx*8 + 0x31d060]
imul rax, r9
sub rax, qword [rsp + 0x2a8]
xor qword [rsp + 0x58], rax
jmp 0x1401836cb
movabs rax, 0x555555e55e508f93
mov rcx, r9
xor rcx, rax
movabs rax, 0xffedf9129c5d53df
imul rcx, rax
movabs rdx, 0xe83578932b9ef
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0x81757840bd4f
mov rdx, qword [rsp + 0x198]
imul rdx, rax
movabs r11, 0x8085fffa8de21192
add r11, rcx
add r11, rdx
movabs rax, 0xd88328418c8058f3
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 r10, r11
not r10
imul r10, qword [rbx + rcx*8 + 0x31d060]
xor r10, 0xb055943
lea ecx, [r9 + 0x11]
and cl, sil
rol r10, cl
movabs rcx, 0x205002040000000
mov rax, qword [rsp + 0x190]
xor rax, rcx
movabs rcx, 0x83858239620253f2
and rax, rcx
imul r10, rax
mov rdx, r10
ror rdx, 0x27
not rdx
movabs rax, 0x19348653436cdad4
imul rdx, rax
sub rdx, r10
add rdx, r11
shl rdx, 2
mov cl, byte [rsp + 0x2a8]
and cl, sil
ror rdx, cl
movabs rax, 0xb0396ad0c43c7b33
imul rdx, rax
mov qword [rsp + 0x58], rdx
jmp 0x1401836cb
movabs rax, 0x8f867d61a5b79bcf
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, 0x4fc6952f3bc384cc
mov rax, r13
imul rax, rdx
movabs rdx, 0xe559b68f6c5736e9
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov eax, dword [rsp + 0x148]
and eax, r15d
jge 0x14018350d
sub eax, r12d
or eax, r14d
add eax, r12d
mov cl, al
rol r8, cl
movabs rcx, 0x4fc6952f3bc384cd
add rcx, r9
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [rbx + rcx*8 + 0x31d060]
movabs rdx, 0xb0396ad0c43c7b33
imul rax, rdx
xor r8, rax
movabs rax, 0x38580294f9be
or r8, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xe559b68f6c5736e9
imul rcx, rax
sub rcx, r10
mov rax, rsi
sub rax, r8
xor rcx, rax
movabs rax, 0x38583959539cf9b3
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, r9
imul rdx, r10
imul rdx, qword [rsp + 0x58]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, r13
movabs rcx, 0x789589463314a57
mov r13, rax
sub r13, rcx
xor r13, rsi
movzx eax, r11b
imul ecx, eax, 0x16
mov sil, 0x3f
and cl, sil
rol r13, cl
not r13
jmp 0x1401836cb
mov rax, rdi
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 [0x14031d080]
mov rdx, qword [rbx + rcx*8 + 0x31d060]
and rdx, rax
xor rdx, r8
mov sil, 0x3f
and r8b, sil
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r10
mov rcx, qword [rsp + 0x2a8]
not rcx
imul rcx, r11
movabs rax, 0x832758218e6da852
imul rcx, rax
mov rax, r8
imul rax, r13
mov r13, rcx
xor r13, rax
imul rax, qword [0x14031d060], 0xffffffffe24daa98
mov rdx, qword [0x14031d068]
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 0x1401836a3
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rax, qword [rsp + 0x190]
ror rax, cl
movabs rcx, 0x4fc6952f3bc384cd
add rax, rcx
add rax, qword [rsp + 0x198]
mov qword [rsp + 0x2a8], rax
movabs rax, 0xfaa2847e26a29f
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 + 0x31d060]
not r10
imul r10, r9
imul r10, qword [rsp + 0x2a8]
imul r10, qword [rsp + 0x58]
movabs rcx, 0xa1281787995e843
xor rcx, r11
not rcx
xor rcx, r10
sub rcx, r8
call fcn.1400c923c
mov qword [0x140321f40], rax
movabs rax, 0xf975b4bd92dc6cc7
mov qword [rsp + 0x58], rax
movabs rcx, 0x6fe3b8f4cfcb1cba
mov qword [rsp + 0x60], rcx
xor r13d, r13d
mov qword [rsp + 0x88], r13
movabs rax, 0x39962485912a7890
movabs r11, 0x9cab0b5bf15ed771
mov rdx, qword [0x14031d070]
imul rdx, rax
not rdx
movabs r8, 0x6354f4a4030b7a47
mov rax, qword [0x14031d060]
xor rax, r8
and rdx, rax
ror rdx, 0x1b
shr rdx, 8
mov qword [rsp + 0x80], rdx
movabs rax, 0x5921c2710b1d98e0
mov r10, qword [0x14031d078]
imul r10, rax
add r10, rcx
movabs rax, 0xcfd2851bffffffff
xor r10, rax
shr r10, 0x1f
not r10
movabs r8, 0x901c470b3034e346
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x81
and ecx, r15d
jge 0x14018381e
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rdx, r10
ror rdx, cl
not rdx
movabs rcx, 0x61157c375c1dced6
mov rax, rdx
imul rax, rcx
mov qword [rsp + 0x70], rax
add r8, rax
mov r9, r10
imul r9, qword [rsp + 0x80]
sub r9, r8
movabs rax, 0xf975b4bd92dc6cc7
xor r9, rax
mov cl, r8b
xor cl, 0xfe
and cl, 0xf
rol r9, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r9, rax
movabs rax, 0x916968263df9af7c
imul rdx, rax
movabs rax, 0x4ffc3d4a1cac8dc
add rdx, rax
xor r9, rdx
xor r9, r11
mov rax, r9
not rax
and eax, 2
je 0x140183baf
sub rax, 1
je 0x140183aa1
sub rax, 1
je 0x1401839c5
cmp rax, 1
jne 0x140183c51
mov rcx, r8
imul rcx, r10
movabs rax, 0xbfb8f4525774f366
add rax, r9
xor rcx, rax
ror rcx, 0x22
shr rcx, 0xc
not rcx
mov qword [rsp + 0x58], rcx
movabs rdx, 0x835758ea5796
add rdx, qword [0x14031d088]
movabs rax, 0x909ec27323c59454
xor rdx, rax
movzx eax, cl
movzx ecx, r9b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9000abb69
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
movabs rax, 0x6fe3b8f4cfcb1cba
imul rcx, rax
mov eax, 0xd1d16983
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 + 0x31d060]
and cl, 0xf
movabs rax, 0xc4186898a5af8be3
sub rax, qword [rsp + 0x58]
shr rax, cl
mov qword [rsp + 0x60], rax
movabs rdx, 0x90246b935389fc96
mov rcx, qword [rsp + 0x70]
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 + 0x31d060]
imul rax, r9
sub rax, qword [rsp + 0x80]
xor qword [rsp + 0x60], rax
jmp 0x140183c51
movabs rcx, 0xaaaaaa1ad1c894bd
mov r10, r9
xor r10, rcx
movabs rcx, 0x1206ed13c548f1
imul r10, rcx
movabs rdx, 0xffff7e8af7d8a661
mov rcx, qword [rsp + 0x70]
imul rcx, rdx
movabs rdx, 0x6b79debadc5db237
add r10, rdx
add r10, rcx
movabs rax, 0x277cd7be031843dd
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 + 0x31d060]
xor r8, 0xffffffff849d426d
mov cl, r9b
sub cl, r12b
and cl, sil
rol r8, cl
movabs rax, 0x4c20704600000000
imul r8, rax
mov rcx, r8
ror rcx, 0x27
not rcx
movabs rax, 0x9b2de6b333d307e8
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, 0x6fe3b8f4cfcb1cba
imul rdx, rax
mov qword [rsp + 0x60], rdx
jmp 0x140183c51
movabs rax, 0x22365f10e9a5633c
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, 0x68a4b426d239338
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r8b
and cl, sil
rol r11, cl
movabs rcx, 0x901c470b3034e346
add rcx, r9
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffff8f4cfcb1cba
mov rax, qword [rbx + rcx*8 + 0x31d060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a78d0ce290
or r11, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xf975b4bd92dc6cc7
imul rcx, rax
sub rcx, r8
mov rax, qword [rsp + 0x80]
sub rax, r11
xor rcx, rax
movabs rax, 0xc7a7c6a6dc04e29d
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, 0x78958941356ae87
add rdx, rax
xor rdx, qword [rsp + 0x80]
movzx eax, r10b
imul ecx, eax, 0xf8
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x88], rdx
jmp 0x140183c51
mov rcx, r9
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d078]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x31
imul r11, r8
mov rax, qword [rsp + 0x80]
not rax
imul rax, r10
movabs rcx, 0x7cd8a7de01f5b37c
imul rax, rcx
mov qword [rsp + 0x88], rax
imul rcx, qword [0x14031d060], 0xfffffffff255ad36
mov rdx, qword [0x14031d068]
sub rcx, rdx
mov qword [rsp + 0x80], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, r15d
jge 0x140183c2c
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rax, qword [rsp + 0x80]
ror rax, cl
movabs rcx, 0x901c470b3034e346
add rax, rcx
add rax, qword [rsp + 0x70]
mov qword [rsp + 0x80], rax
movabs rax, 0xff055d7bf1beb9b1
mov rcx, qword [rsp + 0x58]
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 + 0x88]
imul r11, qword [rbx + rcx*8 + 0x31d060]
not r8
imul r8, r9
imul r8, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x60]
imul rcx, r8
movabs rax, 0xf5ed7e87f60df36d
xor r10, rax
not r10
xor rcx, r10
sub rcx, r11
call fcn.14015d5ac
mov qword [0x140321f70], rax
movabs rax, 0xf86f14f371cff65d
mov qword [rsp + 0x70], rax
movabs r10, 0x23f33f8d6bb104dc
mov qword [rsp + 0x58], r10
movabs rax, 0x2bec000000000000
mov r11, qword [0x14031d080]
imul r11, rax
movabs rax, 0x7acd000000000000
xor r11, rax
mov rcx, r11
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, r11
and r8, r10
imul r8, qword [rbx + rcx*8 + 0x31d060]
movabs rax, 0xde7f51681103110a
imul r8, rax
shr r8, 3
movabs rax, 0x99109ba423e26e9f
xor r8, rax
movabs rax, 0xffffff57dc4f0be1
mov rcx, r11
imul rcx, rax
sub rcx, 0x3c9e2f6e
xor rcx, r8
xor rcx, qword [0x14031d060]
mov rax, r8
imul rax, qword [0x14031d070]
movabs rdx, 0xb9de928bd5fcb4c0
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x2d
shr rcx, 8
mov qword [rsp + 0x88], rcx
movabs rcx, 0xdc0cc072944efb24
add rcx, r11
xor rcx, 0xffffffffeb72bfcd
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x34b912cf9331e900
mov r9, qword [rbx + rcx*8 + 0x31d060]
imul r9, rax
add r9, r10
movabs rcx, 0x9c7fffe10f78afb0
mov rax, r8
imul rax, rcx
xor r9, rax
shr r9, 0x1f
not r9
mov qword [rsp + 0x80], r9
mov rax, r9
xor rax, r11
mov qword [rsp + 0x78], rax
movabs r10, 0xdc0cc072944efb24
lea rcx, [r9 + r10]
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [rbx + rcx*8 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xd1
and ecx, r15d
jge 0x140183e59
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rdx, qword [rsp + 0x78]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0xffffffffc361d092
mov qword [rsp + 0x78], rax
add r10, rax
imul r9, qword [rsp + 0x88]
sub r9, r10
movabs rax, 0xf86f14f371cff65d
xor r9, rax
mov cl, r10b
xor cl, 0xfe
and cl, 0xf
rol r9, cl
movabs rax, 0x8649c611aa438578
imul rdx, rax
movabs rax, 0x505916cfa04f9d10
sub rdx, rax
xor r9, rdx
mov rax, r10
sub rax, qword [0x14031d078]
xor r9, rax
xor r9, r8
xor r9, r11
mov eax, 2
dec rax
sub rax, 1
je 0x140183ffa
cmp rax, 1
jne 0x140184101
mov rcx, r10
imul rcx, qword [rsp + 0x80]
movabs rax, 0xe948c1d1a3b0aea4
add rax, r9
xor rcx, rax
ror rcx, 0x16
shr rcx, 0xc
xor rcx, r11
not rcx
mov qword [rsp + 0x70], rcx
movabs rdx, 0x8357370dbac6
add rdx, qword [0x14031d088]
movabs rax, 0xdc8e450ae8586162
xor rdx, rax
movzx eax, cl
movzx ecx, r9b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db96fed5639
sub rax, qword [rsp + 0x80]
mov rcx, rdx
xor rcx, rax
mov qword [rsp + 0x80], rcx
movabs rax, 0x23f33f8d6bb104dc
imul rcx, rax
mov eax, 0xbe3684d3
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 + 0x31d060]
and cl, 0xf
movabs rax, 0xfca12a29d016d655
sub rax, qword [rsp + 0x70]
shr rax, cl
mov qword [rsp + 0x58], rax
movabs rcx, 0xdc14e4fae101ef44
add rcx, qword [rsp + 0x78]
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 + 0x31d060]
imul rax, r9
sub rax, qword [rsp + 0x88]
xor qword [rsp + 0x58], rax
jmp 0x140184101
movabs rax, 0xaaaaaa1abe2f79ed
mov rcx, r9
xor rcx, rax
movabs rax, 0x1206ed7c22a5a1
imul rcx, rax
movabs rdx, 0xfff17ca8694d4f91
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a983f4b31
mov rdx, qword [rsp + 0x78]
imul rdx, rax
movabs r10, 0x161e63e14ccce915
add r10, rcx
add r10, rdx
mov qword [rsp + 0x80], r10
movabs rax, 0x277cd7be6cffae8d
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
not r10
imul r10, qword [rbx + rcx*8 + 0x31d060]
xor r10, 0xffffffffeb7aaf3d
lea ecx, [r9 - 0x11]
and cl, sil
rol r10, cl
movabs rcx, 0x1042010400000000
mov rax, qword [rsp + 0x60]
xor rax, rcx
movabs rcx, 0x7c7a7dc6827da58c
and rax, rcx
imul r10, rax
mov rcx, r10
ror rcx, 0x2d
not rcx
movabs rax, 0x9b2de6b28c4cb2a8
imul rcx, rax
mov rax, qword [rsp + 0x80]
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x88]
and cl, sil
ror rdx, cl
movabs rax, 0x23f33f8d6bb104dc
imul rdx, rax
mov qword [rsp + 0x58], rdx
movabs rax, 0xff055d7b9e5954e1
mov rcx, qword [rsp + 0x70]
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r8, r11
imul r8, qword [rbx + rcx*8 + 0x31d060]
not r10
imul r10, r9
imul r10, qword [rsp + 0x88]
imul r10, qword [rsp + 0x58]
movabs rcx, 0xf5ed7e8799ea1e3d
xor rcx, qword [rsp + 0x80]
not rcx
xor rcx, r10
sub rcx, r8
call fcn.14015d660
mov qword [0x140321f38], rax
movabs rax, 0xe681760b9ab221d0
mov r10, qword [0x14031d070]
imul r10, rax
movabs rax, 0x6ed8a9dcc8390ee3
xor r10, rax
mov qword [rsp + 0x78], r10
movabs r9, 0x143e73083650d990
mov rcx, r10
imul rcx, r9
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r11, r10
and r11, r9
imul r11, qword [rbx + rcx*8 + 0x31d060]
movabs rax, 0xd4a287bc539449ec
imul r11, rax
shr r11, 3
movabs rax, 0x824a269d283404a2
xor r11, rax
movabs rax, 0xffffff57dc557fcf
mov r9, r10
imul r9, rax
sub r9, 0x15a60b84
xor r9, r11
xor r9, qword [0x14031d060]
mov rax, r11
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bd5e6c0ee
imul rax, rcx
not rax
and r9, rax
ror r9, 0xf
shr r9, 8
movabs rcx, 0xebc18cf7c9af2670
add rcx, r10
xor rcx, 0xffffffffeb68cbe3
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xaf9ecdc795742f78
mov r8, qword [rbx + rcx*8 + 0x31d060]
imul r8, rax
movabs rax, 0x143e73083650d990
add r8, rax
movabs rcx, 0x9a05d82e6ac88740
mov rax, r11
imul rax, rcx
xor r8, rax
shr r8, 0x1f
not r8
mov qword [rsp + 0x70], r8
mov rax, r8
xor rax, r10
mov qword [rsp + 0x58], rax
movabs r10, 0xebc18cf7c9af2670
lea rcx, [r8 + r10]
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r8b
movzx ecx, byte [rbx + rcx*8 + 0x31d060]
imul ecx, eax
not cl
and cl, sil
mov rdx, qword [rsp + 0x58]
ror rdx, cl
not rdx
imul rdx, r11
imul rax, rdx, 0xffffffffea59f47c
mov qword [rsp + 0x58], rax
add rax, r10
mov r10, r8
imul r10, r9
sub r10, rax
movabs rcx, 0xf5494b51bafe6325
xor r10, rcx
movzx ecx, al
and ecx, 0xf
and ecx, r15d
jge 0x140184328
sub ecx, r12d
or ecx, r14d
add ecx, r12d
rol r10, cl
sub rax, qword [0x14031d078]
xor r10, rax
movabs rax, 0x9d137b28a196a1c0
imul rdx, rax
movabs rax, 0xa34d1ae8d1a8f00
add rdx, rax
xor r10, rdx
xor r10, r11
xor r10, qword [rsp + 0x78]
mov rax, rdi
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 [0x14031d080]
mov rdx, qword [rbx + rdx*8 + 0x31d060]
and rdx, rax
xor rdx, r11
and r11b, sil
mov cl, r11b
ror rdx, cl
mov r11, qword [rsp + 0x58]
movabs rax, 0xebc18cf7c9af2670
add rax, r11
imul rdx, rax
mov qword [rsp + 0x58], rdx
not r9
imul r9, r8
movabs rax, 0x7cd8a7de6e082a02
imul r9, rax
mov rax, rdx
imul rax, qword [rsp + 0x78]
xor r9, rax
imul r8, qword [0x14031d060], 0xffffffffea59f47c
mov rdx, qword [0x14031d068]
sub r8, rdx
mov al, r9b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, r15d
jge 0x140184400
sub ecx, r12d
or ecx, r14d
add ecx, r12d
ror r8, cl
add r8, r11
movabs rax, 0x143e73083650d990
imul r8, rax
movabs rax, 0xa34d1ae8d1a8f00
add r8, rax
movabs rax, 0x143e73083650d98f
sub rax, r11
imul r8, rax
imul r8, r10
movabs rcx, 0xf5ed7e8799f06a13
xor rcx, qword [rsp + 0x70]
not rcx
xor rcx, r8
mov rax, qword [rsp + 0x58]
xor rax, r9
imul rax, qword [0x14031d080]
sub rcx, rax
call fcn.14015db4c
mov qword [0x140321f68], rax
movabs rax, 0xe6b97e34803cf4b0
mov qword [rsp + 0x78], rax
movabs rax, 0xb6851ffce160d0a1
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x58], r13
movabs rax, 0xba3a4e9242183cf4
movabs r11, 0x39ab564e88d4ea72
mov rcx, qword [0x14031d070]
imul rcx, rax
not rcx
movabs r8, 0xc654a9b1639d7876
mov rax, qword [0x14031d060]
xor rax, r8
and rcx, rax
ror rcx, 0x1a
shr rcx, 8
mov qword [rsp + 0x60], rcx
movabs rax, 0x1d1769353c3f76f8
mov r10, qword [0x14031d070]
imul r10, rax
movabs r8, 0x497ae0031e9f2f5f
sub r10, r8
movabs rax, 0x837bb45f7fffffff
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x5b
and ecx, r15d
jge 0x140184544
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rax, r10
ror rax, cl
not rax
movabs rdx, 0xc911b0bf118aadc8
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x88], rcx
lea r9, [rcx + r8]
mov r8, r10
imul r8, qword [rsp + 0x60]
sub r8, r9
movabs rdx, 0xe6b97e34803cf4b0
xor r8, rdx
movzx ecx, r9b
mov dword [rsp + 0x80], ecx
xor ecx, 4
and ecx, 0xf
and ecx, r15d
jge 0x1401845a2
sub ecx, r12d
or ecx, r14d
add ecx, r12d
rol r8, cl
movabs rcx, 0x92432608a869cac8
imul rax, rcx
movabs rcx, 0x5d28f1afdb39fabf
add rax, rcx
xor r8, rax
mov rax, r9
sub rax, qword [0x14031d078]
xor r8, rax
xor r8, r11
mov rax, r8
and rax, r12
je 0x1401848ef
sub rax, 1
je 0x1401847d9
sub rax, 1
je 0x1401846ff
cmp rax, 1
jne 0x140184985
mov rcx, r9
imul rcx, r10
movabs rax, 0xd51d106951a6efb5
add rax, r8
xor rcx, rax
ror rcx, 0x20
shr rcx, 0xc
not rcx
mov qword [rsp + 0x78], rcx
movabs rdx, 0x835717e51250
add rdx, qword [0x14031d088]
movabs rax, 0x49f8657b42611d95
xor rdx, rax
movzx eax, cl
movzx ecx, r8b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db94f05feb3
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
movabs rax, 0xb6851ffce160d0a1
imul rcx, rax
mov eax, 0x9ede2c59
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 + 0x31d060]
and cl, 0xf
movabs rax, 0x18d7b7da3a590b4e
sub rax, qword [rsp + 0x78]
shr rax, cl
mov qword [rsp + 0x70], rax
movabs rdx, 0x4983048b8af98bf5
mov rcx, qword [rsp + 0x88]
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 + 0x31d060]
imul rax, r8
sub rax, qword [rsp + 0x60]
xor qword [rsp + 0x70], rax
jmp 0x140184985
movabs rcx, 0xaaaaaa1a9ec7d167
mov r10, r8
xor r10, rcx
movabs rcx, 0x1206ed5cca0d2b
imul r10, rcx
movabs rdx, 0xffff7e8ab8d7e3bb
mov rcx, qword [rsp + 0x88]
imul rcx, rdx
movabs rdx, 0xe76c27058d78adb7
add r10, rdx
add r10, rcx
movabs rax, 0x277cd7be4c170607
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 + 0x31d060]
xor r9, 0xffffffffcb9207b7
lea ecx, [r8 - 0x1b]
and cl, sil
rol r9, cl
movabs rax, 0x6c786140a0000000
imul r9, rax
mov rcx, r9
ror rcx, 0xa
not rcx
movabs rax, 0x9b2de6b20fee1080
imul rcx, rax
mov rax, r10
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x60]
and cl, sil
ror rdx, cl
movabs rax, 0xb6851ffce160d0a1
imul rdx, rax
mov qword [rsp + 0x70], rdx
jmp 0x140184985
movabs rax, 0x72b6a8794f6bdc0f
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, 0x194681cb7fc30b4f
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0x80]
and eax, r15d
jge 0x14018482e
sub eax, r12d
or eax, r14d
add eax, r12d
mov cl, al
rol r11, cl
movabs rcx, 0x497ae0031e9f2f5f
add rcx, r8
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x1ffce160d0a1
mov rax, qword [rbx + rcx*8 + 0x31d060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7c203a74a
or r11, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xe6b97e34803cf4b0
imul rcx, rax
sub rcx, r9
mov rax, qword [rsp + 0x60]
sub rax, r11
xor rcx, rax
movabs rax, 0xc7a7c6a6930ba747
xor rcx, rax
mov qword [rsp + 0x70], rcx
mov rax, r8
imul rax, r9
imul rax, rcx
mov rdx, r10
sub rdx, rax
movabs rax, 0x78958945c59eb5d
add rdx, rax
xor rdx, qword [rsp + 0x60]
movzx eax, r10b
imul ecx, eax, 0xe2
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x58], rdx
jmp 0x140184985
mov rcx, r8
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d070]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x32
imul r11, r9
mov rax, qword [rsp + 0x60]
not rax
imul rax, r10
movabs rcx, 0x7cd8a7de4efaf6a6
imul rax, rcx
mov qword [rsp + 0x58], rax
imul rcx, qword [0x14031d060], 0xffffffffeb499204
mov rdx, qword [0x14031d068]
sub rcx, rdx
mov qword [rsp + 0x60], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, r15d
jge 0x140184963
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rax, qword [rsp + 0x60]
ror rax, cl
movabs rcx, 0x497ae0031e9f2f5f
add rax, rcx
add rax, qword [rsp + 0x88]
mov qword [rsp + 0x60], rax
movabs rax, 0xff055d7bbeb1fc6b
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 + 0x31d060]
not r9
imul r9, r8
imul r9, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x70]
imul rcx, r9
movabs rax, 0xf5ed7e87b902b6b7
xor r10, rax
not r10
xor rcx, r10
sub rcx, r11
call fcn.14015df18
mov qword [0x140321f30], rax
movabs rax, 0x6b28b880fe83409
mov qword [rsp + 0x78], rax
movabs r10, 0xc15c225b08e5ca5f
mov qword [rsp + 0x70], r10
movabs rax, 0x7695700000000000
mov r9, qword [0x14031d078]
imul r9, rax
movabs rax, 0xa5aa900000000000
xor r9, rax
mov qword [rsp + 0x58], 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 + 0x31d060]
movabs rax, 0xa390a74b840d0a7a
imul r8, rax
shr r8, 3
movabs rax, 0x44c8cd59a00f157d
xor r8, rax
movabs rax, 0xffffff57c4062b85
mov rcx, r9
imul rcx, rax
add rcx, 0x20ab92a
xor rcx, r8
xor rcx, qword [0x14031d060]
mov rax, r8
imul rax, qword [0x14031d070]
movabs rdx, 0xb9de928bcdb594a4
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0xa
shr rcx, 8
mov qword [rsp + 0x88], rcx
movabs r10, 0x3ea3dda4f71a35a1
lea rcx, [r9 + r10]
xor rcx, 0xfffffffff33b9fa9
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xa6f9f410ab9f3bc8
mov r11, qword [rbx + rcx*8 + 0x31d060]
imul r11, rax
sub r11, r10
movabs rcx, 0xa9014653d11da55c
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rax, r11
xor rax, r9
mov qword [rsp + 0x80], 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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xb5
and ecx, r15d
jge 0x140184b7e
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rdx, qword [rsp + 0x80]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0x20ab92a
mov qword [rsp + 0x80], rax
lea r9, [rax + r10]
mov r10, r11
imul r10, qword [rsp + 0x88]
sub r10, r9
movabs rax, 0x6b28b880fe83409
xor r10, rax
mov cl, r9b
xor cl, 0xfa
and cl, 0xf
rol r10, cl
movabs rax, 0x5b9190ec2aa7da96
imul rdx, rax
movabs rax, 0xfb646739df00f41
sub rdx, rax
xor r10, rdx
mov rax, r9
sub rax, qword [0x14031d078]
xor r10, rax
xor r10, r8
mov rdx, qword [rsp + 0x58]
xor r10, rdx
mov rax, r10
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x140184f93
sub rax, 1
je 0x140184e39
sub rax, 1
je 0x140184d34
cmp rax, 1
jne 0x14018505a
mov rcx, r9
imul rcx, r11
movabs rax, 0x8ebb9ead335231a5
add rax, r10
xor rcx, rax
ror rcx, 0x32
shr rcx, 0xc
xor rcx, rdx
not rcx
mov qword [rsp + 0x78], rcx
movabs rdx, 0x83572f449aa2
add rdx, qword [0x14031d088]
movabs rax, 0x3e2158dc93458f85
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db977a4765d
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0xc15c225b08e5ca5f
imul rcx, rax
mov eax, 0xa67fa4b7
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 + 0x31d060]
and cl, 0xf
movabs rax, 0x828fe0823e5f94e8
sub rax, qword [rsp + 0x78]
shr rax, cl
mov qword [rsp + 0x70], rax
movabs rcx, 0x3eac022d4c160a1d
add rcx, qword [rsp + 0x80]
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 + 0x31d060]
imul rax, r10
sub rax, qword [rsp + 0x88]
xor qword [rsp + 0x70], rax
jmp 0x14018505a
movabs rax, 0xaaaaaa1aa6665989
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed646b85c5
imul rcx, rax
movabs rdx, 0xfff17ca871046ff5
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a80766b55
mov rdx, qword [rsp + 0x80]
imul rdx, rax
movabs r11, 0xd4883147b8ca84ca
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be74b68ee9
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 + 0x31d060]
xor r9, 0xfffffffff3338f59
lea ecx, [r10 + 0xb]
and cl, sil
rol r9, cl
movabs rcx, 0xff87fb7fe5cb7a17
mov rax, qword [rsp + 0x60]
xor rax, rcx
movabs rcx, 0x7c7a7dc69a3485e8
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0x1d
not rcx
movabs rax, 0x9b2de6b2ed683338
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x88]
and cl, sil
ror rdx, cl
movabs rax, 0xc15c225b08e5ca5f
imul rdx, rax
mov qword [rsp + 0x70], rdx
jmp 0x14018505a
movabs rax, 0x3ba718c54c02ab71
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, 0x3ea3dda4f71a35a0
mov rax, qword [rsp + 0x58]
imul rax, rdx
movabs rdx, 0x6b28b880fe83409
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov cl, r9b
and cl, sil
rol r8, cl
movabs rcx, 0x3ea3dda4f71a35a1
add rcx, r10
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffe25b08e5ca5f
mov rax, qword [rbx + rcx*8 + 0x31d060]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7faa22fa4
or r8, rax
mov rcx, qword [0x14031d070]
movabs rax, 0x6b28b880fe83409
imul rcx, rax
sub rcx, r9
mov rax, qword [rsp + 0x88]
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a6abaa2fa9
xor rcx, rax
mov qword [rsp + 0x70], 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 + 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 + 0x58]
movabs rdx, 0x789589464f863b3
add rdx, rax
xor rdx, qword [rsp + 0x88]
mov al, r11b
add al, al
lea ecx, [rax + r11]
shl cl, 2
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x58], rdx
jmp 0x14018505a
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 [0x14031d080]
mov rdx, qword [rbx + rcx*8 + 0x31d060]
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 + 0x88]
not rcx
imul rcx, r11
movabs rax, 0x7cd8a7de765b7e48
imul rcx, rax
mov rax, r8
imul rax, qword [rsp + 0x58]
xor rcx, rax
mov qword [rsp + 0x58], rcx
imul rax, qword [0x14031d060], 0x20ab92a
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x60], rax
mov al, cl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, r15d
jge 0x140185035
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rax, qword [rsp + 0x60]
ror rax, cl
movabs rcx, 0x3ea3dda4f71a35a1
add rax, rcx
add rax, qword [rsp + 0x80]
mov qword [rsp + 0x88], rax
movabs rax, 0xff055d7b86107485
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 + 0x31d060]
not r9
imul r9, r10
imul r9, qword [rsp + 0x88]
imul r9, qword [rsp + 0x70]
movabs rcx, 0xf5ed7e8781a33e59
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r8
call fcn.14015d7a4
mov qword [0x140321f60], rax
movabs rcx, 0x4ad254d9e4672527
mov qword [rsp + 0x78], r13
movabs rax, 0x99aefce0869eb68
movabs r11, 0x120cf2b26d656236
mov rdx, qword [0x14031d070]
imul rdx, rax
not rdx
movabs r9, 0xedf30d4d9979d3d8
mov rax, qword [0x14031d060]
xor rax, r9
and rdx, rax
ror rdx, 0xa
shr rdx, 8
mov qword [rsp + 0x70], rdx
movabs rax, 0x2504069f39a21628
mov r10, qword [0x14031d070]
imul r10, rax
add r10, rcx
movabs rax, 0xd3bb11357fffffff
xor r10, rax
shr r10, 0x1f
not r10
movabs r8, 0xb52dab261b98dad9
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x4d
and ecx, r15d
jge 0x14018518c
sub ecx, r12d
or ecx, r14d
add ecx, r12d
mov rax, r10
ror rax, cl
not rax
mov qword [rsp + 0x58], rax
movabs rcx, 0xea3a36010310a434
imul rax, rcx
mov qword [rsp + 0x60], rax
lea r9, [rax + r8]
mov r8, r10
mov rdx, qword [rsp + 0x70]
imul r8, rdx
sub r8, r9
movabs rax, 0xf27fa0d21e8afd60
xor r8, rax
movzx ecx, r9b
mov dword [rsp + 0x80], ecx
xor ecx, 2
and ecx, 0xf
and ecx, r15d
jge 0x1401851ec
sub ecx, r12d
or ecx, r14d
add ecx, r12d
rol r8, cl
movabs rcx, 0x8373ad9d403087ec
mov rax, qword [rsp + 0x58]
imul rax, rcx
movabs rcx, 0x330277da62c64bf1
sub rax, rcx
xor r8, rax
mov rax, r9
sub rax, qword [0x14031d078]
xor r8, rax
xor r8, r11
mov rax, r8
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x140185528
sub rax, 1
je 0x140185417
sub rax, 1
je 0x140185345
cmp rax, 1
jne 0x1401855af
mov r15, r9
imul r15, r10
movabs rax, 0xeb0d3cc34ddc84f5
add rax, r8
xor r15, rax
ror r15, 0x32
shr r15, 0xc
not r15
movabs rcx, 0x835737edfe5a
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0xb5af2e5e676e0405
xor rdx, rax
movzx eax, r8b
movzx ecx, r15b
imul ecx, eax
and cl, sil
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db96f0d12a5
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
movabs rax, 0x4ad254d9e4672527
imul rcx, rax
mov eax, 0xbed6c04f
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 + 0x31d060]
and cl, 0xf
movabs r14, 0x45d7f7b316d81f00
sub r14, r15
shr r14, cl
movabs rax, 0xb535cfae67eb8b5d
mov rcx, qword [rsp + 0x60]
add rcx, rax
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 + 0x31d060]
imul rax, r8
sub rax, qword [rsp + 0x70]
xor r14, rax
jmp 0x1401855c3
movabs rcx, 0xaaaaaa1abecf3d71
mov r10, r8
xor r10, rcx
movabs rcx, 0x1206ed7cc2e13d
imul r10, rcx
movabs rdx, 0xffff7e8a98df0fad
mov rcx, qword [rsp + 0x60]
imul rcx, rdx
movabs rdx, 0x26be67e0aa3c4217
add r10, rdx
add r10, rcx
movabs rax, 0x277cd7be6c1fea11
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 + 0x31d060]
xor r9, 0xffffffffeb9aeba1
lea ecx, [r8 - 0xd]
and cl, sil
rol r9, cl
movabs rax, 0x3c2a204280000000
imul r9, rax
mov rcx, r9
ror rcx, 0xc
not rcx
movabs rax, 0x9b2de6b28fcda0d8
imul rcx, rax
mov rax, r10
sub rax, r9
lea r14, [rcx + rax*4]
mov cl, byte [rsp + 0x70]
and cl, sil
ror r14, cl
movabs rax, 0x4ad254d9e4672527
imul r14, rax
jmp 0x1401855b9
movabs rax, 0xa153188c9ae90a75
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, 0xd805f2de175029f
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0x80]
and eax, r15d
jge 0x14018546c
sub eax, r12d
or eax, r14d
add eax, r12d
mov cl, al
rol r11, cl
movabs rcx, 0xb52dab261b98dad9
add rcx, r8
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x14d9e4672527
mov rax, qword [rbx + rcx*8 + 0x31d060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7e20b4b5c
or r11, rax
mov r14, qword [0x14031d070]
movabs r15, 0xf27fa0d21e8afd60
imul r14, r15
sub r14, r9
mov rax, qword [rsp + 0x70]
sub rax, r11
xor r14, rax
movabs rax, 0xc7a7c6a6b3034b51
xor r14, rax
mov rax, r8
imul rax, r9
imul rax, r14
mov rdx, r10
sub rdx, rax
movabs rax, 0x78958947c51074b
add rdx, rax
xor rdx, qword [rsp + 0x70]
movzx eax, r10b
imul ecx, eax, 0xf4
and cl, sil
rol rdx, cl
not rdx
mov qword [rsp + 0x78], rdx
jmp 0x1401855c3
mov rcx, r8
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d070]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x36
imul r11, r9
mov rax, rdx
not rax
imul rax, r10
movabs rcx, 0x7cd8a7de6ef21ab0
imul rax, rcx
mov qword [rsp + 0x78], rax
imul rsi, qword [0x14031d060], 0xfffffffff41cb1ee
mov rdx, qword [0x14031d068]
sub rsi, rdx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, r15d
jge 0x140185595
sub ecx, r12d
or ecx, r14d
add ecx, r12d
ror rsi, cl
movabs rax, 0xb52dab261b98dad9
add rax, rsi
add rax, qword [rsp + 0x60]
mov qword [rsp + 0x70], rax
movabs r14, 0x4ad254d9e4672527
movabs r15, 0xf27fa0d21e8afd60
movabs rax, 0xff055d7b9eb9107d
xor r15, rax
mov rax, rdi
mul r15
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r15, rax
xor r11, qword [rsp + 0x78]
imul r11, qword [rbx + r15*8 + 0x31d060]
not r9
imul r9, r8
imul r9, qword [rsp + 0x70]
imul r9, r14
movabs rcx, 0xf5ed7e87990a5aa1
xor rcx, r10
not rcx
xor rcx, r9
sub rcx, r11
call fcn.14015d8a0
mov qword [0x140321f90], rax
mov dword [rsp + 0x244], r13d
mov dword [rsp + 0x244], 0x243ebf47
mov eax, dword [rsp + 0x244]
add eax, 0xeda87b38
xor eax, 0x108d7fad
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x1ad17790
xor eax, 0x7c3b7c8c
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x6665dab
add eax, ecx
xor eax, 0xecec4d7e
add eax, 0x19436d9b
xor eax, 0x7e4a4a52
mov edx, dword [0x14031d030]
xor edx, 0x18495fbf
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xe7b6a040
sub edx, eax
sub edx, ecx
sub edx, 0x2eac28a0
xor edx, 0x58f94fc0
mov dword [rsp + 0x244], edx
movsxd rax, edx
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.14015df3c
xor edx, edx
mov r8d, 0x8a
lea rcx, [rsp + 0xc70]
call fcn.14029dcc0
mov rax, qword [0x140322198]
mov qword [rsp + 0x70], rax
xor ecx, ecx
mov byte [rsp + 0xc8], cl
mov dword [rsp + 0x9d8], 0xf4313bae
mov dword [rsp + 0x9dc], 0x1237957a
mov dword [rsp + 0x9e0], 0xf1f76ac2
mov eax, 0x5aa7
mov word [rsp + 0x9e4], ax
mov qword [rsp + 0x58], r13
movabs rcx, 0x13cce94adba99340
mov dword [rsp + 0x80], 0x4050
xor edx, edx
mov rax, r13
div rcx
lea r15d, [rdx + 0x38]
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 [0x14031d058]
sub r10w, word [0x14031d050]
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 [0x14031d048]
sub r10w, 0x50
add r10w, r11w
mov rcx, qword [0x14031d040]
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 [0x14031d030]
sub dx, r10w
movzx eax, bx
xor ax, word [0x14031d038]
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, 0x13cce94adba99340
jb 0x14018575e
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, 0x7416d288a7caf4b6
mov qword [rsp + 0x300], rax
movabs rcx, 0xf33a52b1ebce6203
add rcx, qword [rsp + 0x300]
movabs rax, 0x8755366253057dd2
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0xedf047f4d28fa25
sub rcx, rax
movabs rax, 0xf8f8cd9c9e1cfe25
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654bf24e9eae2
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0x5a9179ad0f09123d
xor rcx, rax
movabs rax, 0x5f627dc5c6bc87f0
sub rcx, rax
movabs rax, 0xce3b3cd46b7765bd
xor rcx, rax
movabs rax, 0x3483ce48be68970e
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94ac7af37dc
mov rax, qword [0x14031d038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b53850c823
mov rcx, qword [0x14031d030]
xor rcx, rax
movabs rax, 0xe0b56d7d5e7fbeb1
add rdx, rax
add rdx, rcx
movabs rax, 0x3cd672bfc5588314
xor rdx, rax
mov qword [rsp + 0x300], rdx
mov r9, qword [rsp + 0x70]
lea rcx, [rsp + 0xc70]
call fcn.14019c834
nop
mov qword [rsp + 0x300], r13
mov rcx, qword [rsp + 0x9e8]
test rcx, rcx
je 0x140185aaa
mov eax, r13d
cmp qword [rsp + 0x9f0], r13
jbe 0x140185aaa
mov byte [rcx + rax], r13b
add rax, r12
cmp rax, qword [rsp + 0x9f0]
jae 0x140185aaa
mov rcx, qword [rsp + 0x9e8]
jmp 0x140185a8f
movabs rax, 0xfd5b4f5547839734
mov qword [rsp + 0x308], rax
movabs rbx, 0x9af350abba090cf7
mov qword [rsp + 0x310], rbx
mov qword [rsp + 0x318], r13
movabs r11, 0xe8c04cf34e0762e6
mov qword [rsp + 0x320], r11
movabs rax, 0xd1bd559dc516b7e8
mov r15, qword [0x14031d070]
imul r15, rax
not r15
movabs rdx, 0x173fb30c85944c14
mov rax, qword [0x14031d060]
xor rax, rdx
and r15, rax
mov qword [rsp + 0x328], r15
ror r15, 0x3a
shr r15, 8
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x330], r15
movabs rax, 0x562e3cb86ad1ad18
mov r10, qword [0x14031d060]
imul r10, rax
movabs r8, 0x650caf5445f6f309
sub r10, r8
movabs rax, 0x4d04b56780000000
xor r10, rax
shr r10, 0x1f
not r10
mov qword [rsp + 0x338], r10
mov qword [rsp + 0x340], r10
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x2d
mov edi, 0x8000003f
and ecx, edi
jge 0x140185bca
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov r9, r10
ror r9, cl
not r9
movabs rcx, 0x642abcc942d2d16c
imul r9, rcx
add r9, r8
mov qword [rsp + 0x348], r9
mov r8, r10
imul r8, r15
sub r8, r9
movabs rdx, 0xfd5b4f5547839734
xor r8, rdx
mov qword [rsp + 0x350], r8
movzx ecx, r9b
mov dword [rsp + 0x88], ecx
xor ecx, 2
and ecx, 0xf
and ecx, edi
jge 0x140185c29
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
rol r8, cl
mov rax, r9
sub rax, qword [0x14031d078]
xor r8, rax
mov rax, r9
imul rax, rbx
xor r8, rax
xor r8, r11
mov qword [rsp + 0x358], r8
mov rcx, r13
mov rax, r8
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x140185fe3
sub rax, 1
je 0x140185e9c
sub rax, 1
mov r15b, 0x3f
je 0x140185da3
cmp rax, 1
jne 0x140186095
mov rcx, r9
imul rcx, r10
movabs rax, 0xaed40d2b11d7fe05
add rax, r8
xor rcx, rax
mov qword [rsp + 0x360], rcx
ror rcx, 2
shr rcx, 0xc
not rcx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x308], rcx
movabs rdx, 0x83575784e93a
add rdx, qword [0x14031d088]
movabs rax, 0x658e2a2c59693ab5
xor rdx, rax
mov qword [rsp + 0x368], rdx
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db90f6405c5
sub rax, r10
mov r10, rdx
xor r10, rax
mov qword [rsp + 0x338], r10
mov rcx, r10
imul rcx, rbx
mov eax, 0xdebfd72f
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 + 0x31d060]
and cl, 0xf
movabs rbx, 0x68d7dc9dfe0f9790
sub rbx, qword [rsp + 0x58]
shr rbx, cl
movabs rcx, 0x824882c3ba7e4
add rcx, r9
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 + 0x31d060]
imul rax, r8
mov rdx, qword [rsp + 0x70]
sub rax, rdx
xor rbx, rax
mov qword [rsp + 0x310], rbx
mov rcx, r13
mov qword [rsp + 0x70], rdx
mov rdx, qword [rsp + 0x58]
jmp 0x140186095
movabs rcx, 0xaaaaaa1adea62a11
mov r10, r8
xor r10, rcx
movabs rcx, 0x1206ed1cabf65d
imul r10, rcx
movabs rcx, 0xffff7e8af8b618cd
imul r9, rcx
movabs rcx, 0xe8ce4e2fb0f29a42
add r10, rcx
add r10, r9
mov qword [rsp + 0x338], r10
movabs rax, 0x277cd7be0c76fd71
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 + 0x31d060]
xor r9, 0xffffffff8bf3fcc1
mov qword [rsp + 0x370], r9
lea ecx, [r8 + 0x13]
and cl, r15b
rol r9, cl
movabs rax, 0x540a0d0060000000
imul r9, rax
mov qword [rsp + 0x348], r9
mov rcx, r9
ror rcx, 0x38
not rcx
movabs rax, 0x9b2de6b30e69fd58
imul rcx, rax
mov rax, r10
sub rax, r9
lea rdx, [rcx + rax*4]
mov qword [rsp + 0x378], rdx
mov cl, byte [rsp + 0x70]
and cl, r15b
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
mov qword [rsp + 0x310], rbx
mov rcx, r13
mov rax, qword [rsp + 0x70]
jmp 0x140186086
movabs rax, 0x44caf033d988213d
imul r8, rax
mov qword [rsp + 0x358], r8
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
movabs rdx, 0x2a4b0aab87c68cb
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov qword [rsp + 0x380], r11
mov eax, dword [rsp + 0x88]
and eax, edi
jge 0x140185f00
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov cl, al
rol r11, cl
movabs rcx, 0x650caf5445f6f309
add rcx, r8
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x10abba090cf7
mov rax, qword [rsi + rcx*8 + 0x31d060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a782625c3c
or r11, rax
mov qword [rsp + 0x320], r11
mov rbx, qword [0x14031d070]
movabs rax, 0xfd5b4f5547839734
imul rbx, rax
sub rbx, r9
mov rax, r15
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a6d36a5c31
xor rbx, rax
mov qword [rsp + 0x310], rbx
mov rax, r9
imul rax, rbx
imul rax, r8
mov rdx, r10
sub rdx, rax
movabs rax, 0x78958941c38102b
add rdx, rax
xor rdx, r15
mov qword [rsp + 0x388], rdx
mov al, r10b
shl al, 2
lea ecx, [rax + r10]
shl cl, 2
mov r15b, 0x3f
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x318], rdx
mov rax, qword [rsp + 0x70]
jmp 0x140186081
mov rcx, r8
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d080]
mov rax, r11
mov r11, rcx
xor r11, rax
mov qword [rsp + 0x390], r11
ror r11, 0x26
imul r11, r9
mov qword [rsp + 0x320], r11
mov rax, r15
not rax
imul rax, r10
movabs rcx, 0x7cd8a7de0e9b0dd0
imul rax, rcx
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x318], rax
imul r15, qword [0x14031d060], 0xffffffffcb932ef2
mov rdx, qword [0x14031d068]
sub r15, rdx
mov qword [rsp + 0x398], r15
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x14018606f
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror r15, cl
lea rax, [r15 + r9]
mov qword [rsp + 0x330], rax
mov r15b, 0x3f
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x70], rax
movabs rdx, 0xfd5b4f5547839734
movabs rax, 0xff055d7bfed0071d
xor rdx, rax
mov qword [rsp + 0x58], rdx
mov rax, r14
mul rdx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, qword [rsp + 0x58]
sub rdx, rax
xor rcx, r11
imul rcx, qword [rsi + rdx*8 + 0x31d060]
not r9
imul r9, rbx
imul r9, qword [rsp + 0x70]
imul r9, r8
movabs rax, 0xf5ed7e87f9634dc1
xor r10, rax
not r10
xor r9, r10
sub r9, rcx
mov qword [rsp + 0x3a0], r9
mov rcx, r9
call fcn.14015d564
mov qword [0x140321f80], rax
xor edx, edx
mov r8d, 0x8a
lea rcx, [rsp + 0xd00]
call fcn.14029dcc0
mov rax, qword [0x140322198]
mov r11, qword [rax + 0x60]
mov qword [rsp + 0x70], 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 + 0x31d060]
imul r9, r10
movabs rax, 0x9610a54465ca1ae3
xor r9, rax
movzx eax, r8b
imul ecx, eax, 0xfc
shl r9, cl
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x3d0], r9
mov rcx, r8
imul rcx, r9
mov qword [rsp + 0x68], 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 + 0x31d060]
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 [0x14031d060]
mov rax, rbx
imul rax, qword [0x14031d070]
movabs rcx, 0x41169e137815d4ee
imul rax, rcx
not rax
and rdx, rax
mov qword [rsp + 0x3e0], rdx
movzx eax, r8b
mov dword [rsp + 0x88], eax
xor eax, 0x1f
and eax, edi
jge 0x1401862cd
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 + 0x31d060]
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 + 0xa0], r11
mov qword [rsp + 0x3f0], r11
mov r9, r11
xor r9, qword [rsp + 0x90]
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 + 0x31d060]
imul ecx, eax
not cl
and cl, r15b
ror r9, cl
not r9
imul r9, rbx
imul r9, qword [rsp + 0x70]
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 + 0x60], ecx
and ecx, 0xf
and ecx, edi
jge 0x1401863db
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
rol r11, cl
mov rax, r9
sub rax, qword [0x14031d078]
xor r11, rax
mov rax, r9
imul rax, r8
xor r11, rax
xor r11, rbx
mov rdx, qword [rsp + 0x90]
xor r11, rdx
mov qword [rsp + 0x410], r11
mov rax, r11
and rax, r8
and eax, 3
je 0x140186856
sub rax, 1
je 0x1401866ce
sub rax, 1
je 0x140186599
cmp rax, 1
jne 0x14018693a
movabs rcx, 0x746fd0ff1efa75cf
mov rax, r8
imul rax, rcx
mov r10, r11
sub r10, rax
mov rax, r9
imul rax, qword [rsp + 0xa0]
xor r10, rax
mov qword [rsp + 0x418], r10
mov eax, dword [rsp + 0x88]
and eax, 0x3c
xor eax, 0xe4
and eax, edi
jge 0x140186482
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 [0x14031d088]
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 + 0xa0]
mov rdi, rdx
xor rdi, rax
mov qword [rsp + 0x3f0], rdi
mov rcx, rdi
imul rcx, r8
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 + 0x31d060]
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 + 0x31d060]
imul rax, r11
mov rcx, qword [rsp + 0x2e8]
sub rax, rcx
xor r8, rax
mov qword [rsp + 0x3c8], r8
jmp 0x14018694a
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 + 0xa0], 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 + 0x31d060]
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 + 0x68]
movabs rcx, 0x84b2715e2f94c5a2
and rax, rcx
imul r9, rax
mov qword [rsp + 0x400], r9
movzx ecx, r10b
xor ecx, 0x9e
and ecx, edi
jge 0x14018667c
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 + 0xa0]
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 0x140186942
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 + 0x58]
imul rax, qword [rsp + 0x90]
xor rax, r10
not rax
shl rax, cl
xor rbx, rax
mov qword [rsp + 0x438], rbx
mov eax, dword [rsp + 0x60]
and eax, edi
jge 0x14018673b
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 + 0x31d060]
xor rbx, r8
movabs rax, 0x737cb3f4f026fee
or rbx, rax
mov qword [rsp + 0x3d8], rbx
mov r8, r10
imul r8, qword [0x14031d070]
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 + 0x90]
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 + 0xa0]
mov rax, rdi
sub rax, rdx
sub rax, qword [rsp + 0x90]
movabs rcx, 0xbeabf32ea7dc07
sub rax, rcx
xor rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x90], 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 + 0x90]
rol r15, cl
not r15
mov qword [rsp + 0x3d0], r15
mov rcx, qword [rsp + 0x2e8]
jmp 0x140186952
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 [0x14031d080]
mov rdx, qword [rsi + rcx*8 + 0x31d060]
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 + 0xa0]
movabs rax, 0x8410ab46c3fb3e02
imul r15, rax
mov rax, rbx
imul rax, qword [rsp + 0x90]
xor r15, rax
mov qword [rsp + 0x3d0], r15
mov rax, qword [rsp + 0x70]
imul rax, qword [0x14031d060]
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x450], rax
mov al, r15b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x14018691c
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0x70]
ror rax, cl
lea rcx, [rax + r9]
mov qword [rsp + 0x3e8], rcx
mov rdi, qword [rsp + 0xa0]
jmp 0x140186952
mov rdi, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x2e8]
mov r15, qword [rsp + 0x90]
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 + 0x31d060]
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 + 0xa0], r9
mov qword [rsp + 0x2e8], r9
xor eax, eax
mov byte [rsp + 0x11b], al
mov eax, 0x3b5d
mov word [rsp + 0xab0], ax
mov eax, 0xf48b
mov word [rsp + 0xab2], ax
mov eax, 0x956a
mov word [rsp + 0xab4], ax
mov eax, 0x1200
mov word [rsp + 0xab6], ax
mov eax, 0x42fa
mov word [rsp + 0xab8], ax
mov eax, 0xef81
mov word [rsp + 0xaba], ax
mov eax, 0x5acb
mov word [rsp + 0xabc], ax
mov eax, 0x3792
mov word [rsp + 0xabe], ax
mov eax, 0x88e
mov word [rsp + 0xac0], ax
mov eax, 0x4f4d
mov word [rsp + 0xac2], ax
mov r8, r13
mov qword [rsp + 0x458], r13
cmp r8, 0xa
jae 0x140186c66
xor edx, edx
mov rax, r8
movabs rcx, 0x13cce94adba99340
div rcx
lea r12d, [rdx + 0x38]
movzx r13d, r12w
ror r13w, 8
mov word [rsp + 0x140], 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 + 0x80]
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, r13w
shl ax, 0xf
or cx, ax
sub r8w, cx
sub r8w, word [0x14031d058]
sub r8w, word [0x14031d050]
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, word [0x14031d048]
sub r8w, dx
sub r8w, r11w
add r8w, di
mov rdi, qword [0x14031d040]
sub r8w, 0x50
add r8w, di
add r8w, bx
movzx eax, r15w
sub ax, r11w
add ax, r13w
add ax, r9w
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 [0x14031d030]
sub dx, r10w
movzx eax, si
xor ax, word [0x14031d038]
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, r15w
sub dx, di
sub dx, r12w
sub dx, r14w
movzx eax, si
movzx ecx, r13w
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 0x140186a4a
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, 0xc3332f19ba34c618
mov qword [rsp + 0x460], rax
movabs rcx, 0xf33a52b210ae6103
add rcx, qword [rsp + 0x460]
movabs rax, 0x865536625305a2b2
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0xedf047f4d979a22
sub rcx, rax
movabs rax, 0xf8f8cd9c78a97f29
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x47d654bef2dbdc3e
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0x5a9179ace4f99361
xor rcx, rax
movabs rax, 0x5f627dc5b6210834
sub rcx, rax
movabs rax, 0xd63b3cd459063f3d
xor rcx, rax
movabs rax, 0x3483ce489a8ab807
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94ac842b7d8
mov rax, qword [0x14031d038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b537bd4827
mov rcx, qword [0x14031d030]
xor rcx, rax
movabs rax, 0xe0b56d7df2933aad
add rdx, rax
add rdx, rcx
movabs rax, 0x6114d306856c1e8
xor rdx, rax
mov qword [rsp + 0x468], rdx
mov qword [rsp + 0x460], rdx
mov r9, qword [rsp + 0xa0]
lea rcx, [rsp + 0xd00]
call fcn.14019c834
nop
mov qword [rsp + 0x460], r13
mov rcx, qword [rsp + 0x9f8]
test rcx, rcx
je 0x140186df7
mov eax, r13d
mov qword [rsp + 0x470], rax
cmp rax, qword [rsp + 0xa00]
jae 0x140186df7
mov byte [rcx + rax], r13b
add rax, r12
mov qword [rsp + 0x470], rax
mov rcx, qword [rsp + 0x9f8]
jmp 0x140186dd4
movabs rax, 0x65df89cab5a9a673
mov qword [rsp + 0x478], rax
movabs rbx, 0x2ba98ab25bd1537e
mov qword [rsp + 0x480], rbx
mov qword [rsp + 0x488], r13
movabs r11, 0x72afc791f4e693fa
mov qword [rsp + 0x490], r11
movabs rax, 0x3c0cbe9ac9e4e9ec
mov r15, qword [0x14031d070]
imul r15, rax
not r15
movabs rcx, 0x8d50386e7ec56932
mov rax, qword [0x14031d060]
xor rax, rcx
and r15, rax
mov qword [rsp + 0x498], r15
ror r15, 0x21
shr r15, 8
mov qword [rsp + 0xa0], r15
mov qword [rsp + 0x4a0], r15
movabs rax, 0x6c8481d283858290
mov r10, qword [0x14031d088]
imul r10, rax
add r10, rbx
movabs rax, 0x7c7ba7b780000000
xor r10, rax
shr r10, 0x1f
not r10
mov qword [rsp + 0x4a8], r10
mov qword [rsp + 0x4b0], r10
movabs r8, 0xd456754da42eac82
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xbf
mov edi, 0x8000003f
and ecx, edi
jge 0x140186f1d
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, r10
ror rax, cl
not rax
movabs rcx, 0x444aa6817fd3bf50
imul rax, rcx
add r8, rax
mov qword [rsp + 0x4b8], r8
mov r9, r10
imul r9, r15
sub r9, r8
movabs rax, 0x65df89cab5a9a673
xor r9, rax
mov qword [rsp + 0x4c0], r9
movzx ecx, r8b
mov dword [rsp + 0x60], ecx
and ecx, 0xf
and ecx, edi
jge 0x140186f76
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
rol r9, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r9, rax
mov rax, r8
imul rax, rbx
xor r9, rax
xor r9, r11
mov qword [rsp + 0x4c8], r9
mov r15, r13
mov rax, r9
and eax, 2
je 0x14018731e
sub rax, 1
je 0x1401871e1
sub rax, 1
je 0x1401870e6
cmp rax, 1
jne 0x1401873cd
mov rdi, r8
imul rdi, r10
movabs rax, 0x47c2804b68a3289e
add rax, r9
xor rdi, rax
mov qword [rsp + 0x4d0], rdi
ror rdi, 0x18
shr rdi, 0xc
not rdi
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x478], rdi
movabs rcx, 0x8357375449ac
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0xd4d4f035d861c5ae
xor rdx, rax
mov qword [rsp + 0x4d8], rdx
movzx eax, r9b
movzx ecx, dil
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db96fb4a557
sub rax, r10
mov r10, rdx
xor r10, rax
mov qword [rsp + 0x4a8], r10
mov rcx, r10
imul rcx, rbx
mov eax, 0xbe6f77bd
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 + 0x31d060]
and cl, 0xf
movabs rbx, 0x44c6c452bf4aa719
sub rbx, rdi
shr rbx, cl
movabs rcx, 0x824884ceb0772
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 + 0x31d060]
imul rax, r9
mov rdi, qword [rsp + 0xa0]
sub rax, rdi
xor rbx, rax
mov qword [rsp + 0x480], rbx
mov rcx, qword [rsp + 0x68]
jmp 0x1401873df
movabs rcx, 0xaaaaaa1abe768a83
mov r10, r9
xor r10, rcx
movabs rcx, 0x1206ed7c7b56cf
imul r10, rcx
movabs rcx, 0xffff7e8a9866b85f
imul r8, rcx
movabs rcx, 0x72a0c350fa74895a
add r10, rcx
add r10, r8
mov qword [rsp + 0x4a8], r10
movabs rax, 0x277cd7be6ca65de3
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 + 0x31d060]
xor r8, 0xffffffffeb235c53
mov qword [rsp + 0x4e0], r8
lea ecx, [r12 + r9]
and cl, 0x3f
rol r8, cl
movabs rax, 0x284a490080000000
imul r8, rax
mov qword [rsp + 0x4b8], r8
mov rcx, r8
ror rcx, 0x2d
not rcx
movabs rax, 0x9b2de6b28d2b7f10
imul rcx, rax
mov rax, r10
sub rax, r8
lea rdx, [rcx + rax*4]
mov qword [rsp + 0x4e8], rdx
mov rdi, qword [rsp + 0xa0]
mov cl, dil
and cl, 0x3f
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
mov qword [rsp + 0x480], rbx
mov r15, r13
jmp 0x1401873d5
movabs rax, 0x7f223af3825d1204
imul r9, rax
mov qword [rsp + 0x4c8], r9
movabs rax, 0xd79435e50d79435f
mul r9
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r9b
sub cl, dl
movabs rdx, 0x9a2076354a56598c
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov qword [rsp + 0x4f0], r11
mov eax, dword [rsp + 0x60]
and eax, edi
jge 0x140187242
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov cl, al
rol r11, cl
movabs rcx, 0xd456754da42eac82
add rcx, r9
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xab25bd1537e
mov rax, qword [rsi + rcx*8 + 0x31d060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7e2b2fcae
or r11, rax
mov qword [rsp + 0x490], r11
mov rbx, qword [0x14031d070]
movabs rax, 0x65df89cab5a9a673
imul rbx, rax
sub rbx, r8
mov rdi, qword [rsp + 0xa0]
mov rax, rdi
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a6b3bafca3
xor rbx, rax
mov qword [rsp + 0x480], rbx
mov rax, rbx
imul rax, r9
imul rax, r8
mov r15, r10
sub r15, rax
movabs rax, 0x78958947ce8b0b9
add r15, rax
xor r15, rdi
mov qword [rsp + 0x4f8], r15
mov al, r10b
add al, al
lea ecx, [rax + r10]
add cl, cl
and cl, 0x3f
rol r15, cl
not r15
mov qword [rsp + 0x488], r15
jmp 0x1401873d5
mov rcx, r9
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d080]
mov rax, r11
mov r11, rcx
xor r11, rax
mov qword [rsp + 0x500], r11
ror r11, 0x3a
imul r11, r8
mov qword [rsp + 0x490], r11
mov r15, qword [rsp + 0xa0]
not r15
imul r15, r10
movabs rax, 0x7cd8a7de6e4bad42
imul r15, rax
mov qword [rsp + 0x488], r15
imul rax, qword [0x14031d060], 0xffffffff8a23fac8
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x508], rax
mov al, r15b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x1401873b5
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rdi, qword [rsp + 0xa0]
ror rdi, cl
add rdi, r8
mov qword [rsp + 0x4a0], rdi
jmp 0x1401873d5
mov rdi, qword [rsp + 0xa0]
movabs rcx, 0x65df89cab5a9a673
movabs rax, 0xff055d7b9e00a78f
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r15, r11
imul r15, qword [rsi + rcx*8 + 0x31d060]
not r8
imul r8, rbx
imul r8, rdi
imul r8, r9
movabs rax, 0xf5ed7e8799b3ed53
xor r10, rax
not r10
xor r8, r10
sub r8, r15
mov qword [rsp + 0x510], r8
mov rcx, r8
call fcn.14015d588
mov qword [0x140321f78], rax
xor edx, edx
mov r8d, 0xa6
lea rcx, [rsp + 0xd90]
call fcn.14029dcc0
mov qword [rsp + 0x518], r13
movabs rax, 0x7407f4ff9cfb4b10
mov qword [rsp + 0x518], rax
mov rax, qword [rsp + 0x518]
add rax, 0x6b03
movabs rcx, 0x90553662530f777f
xor rax, rcx
sub rax, qword [0x14031d058]
sub rax, qword [0x14031d050]
movabs rcx, 0xedf047f6b15fea1
sub rax, rcx
movabs rcx, 0xec33204e6204447f
xor rax, rcx
sub rax, qword [0x14031d048]
movabs rcx, 0x16468673f608a53d
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0xec3316b5106a1777
xor rcx, rax
movabs rax, 0x13cce94a5975a652
sub rcx, rax
movabs rax, 0xffd8662d610e93db
xor rcx, rax
movabs rax, 0x27be20faf00a4331
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94aef95e882
mov rax, qword [0x14031d038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5106a177d
mov rcx, qword [0x14031d030]
xor rcx, rax
movabs rbx, 0x13cc22b5f76c53d7
add rbx, rdx
add rbx, rcx
movabs rax, 0xcce2c7a1d9ea357a
xor rbx, rax
mov qword [rsp + 0x520], rbx
mov qword [rsp + 0x518], rbx
call fcn.140180cd4
xor rax, rbx
mov qword [rsp + 0xa0], rax
xor eax, eax
mov byte [rsp + 0x11c], al
mov eax, 0x3b99
mov word [rsp + 0xac4], ax
mov eax, 0xf463
mov word [rsp + 0xac6], ax
mov eax, 0x9568
mov word [rsp + 0xac8], ax
mov eax, 0x121f
mov word [rsp + 0xaca], ax
mov eax, 0x3f2f
mov word [rsp + 0xacc], ax
mov eax, 0xf229
mov word [rsp + 0xace], ax
mov eax, 0x5864
mov word [rsp + 0xad0], ax
mov eax, 0x3792
mov word [rsp + 0xad2], ax
mov eax, 0x85a
mov word [rsp + 0xad4], ax
mov eax, 0x4f59
mov word [rsp + 0xad6], ax
mov eax, 0x1e18
mov word [rsp + 0xad8], ax
mov r8, r13
mov qword [rsp + 0x528], r13
cmp r8, 0xb
jae 0x140187839
xor edx, edx
mov rax, r8
movabs rcx, 0x13cce94adba99340
div rcx
lea r12d, [rdx + 0x38]
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 + 0x80]
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 [0x14031d058]
sub r8w, word [0x14031d050]
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 [0x14031d048]
add r8w, bx
add r8w, di
mov rdi, qword [0x14031d040]
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 [0x14031d030]
sub dx, r10w
movzx eax, si
xor ax, word [0x14031d038]
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 + 0x528]
mov word [rsp + r8*2 + 0xac4], dx
mov r12d, 1
add r8, r12
mov qword [rsp + 0x528], r8
jmp 0x14018761d
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 + 0x530], r13
movabs rax, 0x41dfbc46f3a67db
mov qword [rsp + 0x530], rax
movabs rcx, 0xf33a52b305734803
add rcx, qword [rsp + 0x530]
movabs rax, 0x6d55366253069777
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0xedf047f5075e8d7
sub rcx, rax
movabs rax, 0xf8f8cd9b8011848d
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654bda69a94ad
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0x5a9179abcdc8fbe5
xor rcx, rax
movabs rax, 0x5f627dc579e8fa08
sub rcx, rax
movabs rax, 0x9e3b3cd3de9c2596
xor rcx, rax
movabs rax, 0x3483ce47ac773358
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94acc15cb74
mov rax, qword [0x14031d038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b533ea348b
mov rcx, qword [0x14031d030]
xor rcx, rax
movabs rax, 0xe0b56d81a9b7f249
add rdx, rax
add rdx, rcx
movabs rax, 0x27ad9189513107fc
xor rdx, rax
mov qword [rsp + 0x538], rdx
mov qword [rsp + 0x530], rdx
mov r9, qword [rsp + 0xa0]
lea rcx, [rsp + 0xd90]
call fcn.14019c834
nop
mov qword [rsp + 0x530], r13
mov rcx, qword [rsp + 0xa08]
test rcx, rcx
je 0x1401879ca
mov eax, r13d
mov qword [rsp + 0x540], rax
cmp rax, qword [rsp + 0xa10]
jae 0x1401879ca
mov byte [rcx + rax], r13b
add rax, r12
mov qword [rsp + 0x540], rax
mov rcx, qword [rsp + 0xa08]
jmp 0x1401879a7
mov qword [rsp + 0x518], r13
movabs rax, 0xf16079535eddf4ea
mov qword [rsp + 0x548], rax
movabs r8, 0x645b874629917cf7
mov qword [rsp + 0x550], r8
movabs rax, 0xa17513d52a5c6000
mov r11, qword [0x14031d080]
imul r11, rax
movabs rax, 0x8a9dcd10df8b9000
xor r11, rax
mov qword [rsp + 0x558], r11
mov rcx, r11
imul rcx, r8
mov qword [rsp + 0xa0], rcx
movabs r14, 0xaaaaaaaaaaaaaaab
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
lea rsi, [0x140000000]
imul r9, qword [rsi + rcx*8 + 0x31d060]
movabs rax, 0x6b40eefbd79f6504
imul r9, rax
movabs rax, 0x5fa542e16b4582f8
xor r9, rax
shr r9, 3
mov qword [rsp + 0x560], r9
movabs rax, 0xffffff57c5618995
mov r15, r11
imul r15, rax
sub r15, 0x73a75bc6
xor r15, r9
xor r15, qword [0x14031d060]
mov rax, r9
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bccd236b4
imul rax, rcx
not rax
and r15, rax
mov qword [rsp + 0x568], r15
ror r15, 0x32
shr r15, 8
mov qword [rsp + 0x570], r15
movabs r10, 0x9ba478b9d66e8309
lea rcx, [r11 + r10]
xor rcx, 0xfffffffff25c3db9
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x8e9c0500102c21a8
mov rbx, qword [rsi + rcx*8 + 0x31d060]
imul rbx, rax
add rbx, r8
movabs rcx, 0x95285d44f54a9718
mov rax, r9
imul rax, rcx
xor rbx, rax
shr rbx, 0x1f
not rbx
mov qword [rsp + 0x578], rbx
mov r8, r11
xor r8, rbx
mov qword [rsp + 0x580], r8
lea rcx, [rbx + r10]
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xa5
mov edi, 0x8000003f
and ecx, edi
jge 0x140187b97
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror r8, cl
not r8
imul r8, r9
imul r8, r8, 0xffffffff8c58a43a
add r8, r10
mov qword [rsp + 0x588], r8
mov r10, rbx
imul r10, r15
sub r10, r8
movabs rax, 0xf16079535eddf4ea
xor r10, rax
mov qword [rsp + 0x590], r10
movzx ecx, r8b
mov dword [rsp + 0x60], ecx
xor cl, 0xfa
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
mov rax, r8
movabs rcx, 0x645b874629917cf7
imul rax, rcx
xor r10, rax
xor r10, r9
xor r10, r11
mov qword [rsp + 0x598], r10
mov rax, r10
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x140187ff9
sub rax, 1
je 0x140187e82
sub rax, 1
je 0x140187d69
cmp rax, 1
jne 0x1401880c3
mov rdi, r8
imul rdi, rbx
movabs rax, 0x6c8ed19d30c1933d
add rax, r10
xor rdi, rax
mov qword [rsp + 0x5a0], rdi
ror rdi, 0xa
shr rdi, 0xc
xor rdi, r11
not rdi
mov qword [rsp + 0x548], rdi
movabs rcx, 0x83572e2338b2
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0x9b26fdc1b3569b3d
xor rdx, rax
mov qword [rsp + 0x5a8], rdx
movzx eax, dil
movzx ecx, r10b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db976c3d44d
sub rax, rbx
mov rbx, rdx
xor rbx, rax
mov qword [rsp + 0x578], rbx
mov rcx, rbx
movabs rax, 0x645b874629917cf7
imul rcx, rax
mov eax, 0xa71806a7
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 + 0x31d060]
and cl, 0xf
movabs rax, 0xbc6cab306e6659e0
sub rax, rdi
shr rax, cl
mov qword [rsp + 0xa0], rax
movabs rcx, 0x82488559c766c
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 + 0x31d060]
imul rax, r10
sub rax, r15
mov rcx, qword [rsp + 0xa0]
xor rcx, rax
mov qword [rsp + 0x550], rcx
jmp 0x1401880cd
lea rbx, [r8 + 1]
movabs rax, 0xffff7e8a8111c945
imul rbx, rax
movabs rdx, 0xfff17ca87063cde5
mov rax, r9
xor rax, rdx
sub rbx, rax
movabs rdx, 0xaaaaaa1aa701fb99
mov rax, r10
xor rax, rdx
movabs rdx, 0x1206ed650c27d5
imul rax, rdx
add rbx, rax
mov qword [rsp + 0x578], rbx
movabs rax, 0x277cd7be75d12cf9
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 r8, rbx
not r8
imul r8, qword [rsi + rcx*8 + 0x31d060]
xor r8, 0xfffffffff2542d49
mov qword [rsp + 0x5b0], r8
lea ecx, [r10 + 0x1b]
and cl, 0x3f
rol r8, cl
movabs rcx, 0x1420414280000000
mov rax, qword [rsp + 0xa0]
xor rax, rcx
movabs rcx, 0x7c7a7dc69b5327f8
and rax, rcx
imul r8, rax
mov qword [rsp + 0x588], r8
mov rcx, r8
ror rcx, 0x2e
not rcx
movabs rax, 0x9b2de6b2e8f6bb78
imul rcx, rax
mov rax, rbx
sub rax, r8
lea rdx, [rcx + rax*4]
mov qword [rsp + 0x5b8], rdx
mov cl, r15b
and cl, 0x3f
ror rdx, cl
movabs rax, 0x645b874629917cf7
mov rcx, rdx
imul rcx, rax
mov qword [rsp + 0x550], rcx
jmp 0x1401880c3
movabs rax, 0x5c7ecbfe95c9393d
imul r10, rax
mov qword [rsp + 0x598], r10
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0x9ba478b9d66e8308
mov rax, r11
imul rax, rdx
movabs rdi, 0xf16079535eddf4ea
xor rax, rdi
not rax
shl rax, cl
xor r9, rax
mov qword [rsp + 0x5c0], r9
mov ecx, dword [rsp + 0x60]
and cl, 0x3f
rol r9, cl
movabs rcx, 0x9ba478b9d66e8309
add rcx, r10
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x74629917cf7
mov rax, qword [rsi + rcx*8 + 0x31d060]
imul rax, rdx
xor r9, rax
movabs rax, 0xffffc7a7fbc58db4
or r9, rax
mov qword [rsp + 0x560], r9
mov rcx, qword [0x14031d070]
imul rcx, rdi
sub rcx, r8
mov rax, r15
sub rax, r9
xor rcx, rax
movabs rax, 0xc7a7c6a6aacd8db9
xor rcx, rax
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0x550], 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 + 0xa0]
div rcx
mov rcx, rdx
mov rdx, qword [rsp + 0xa0]
imul rdx, r10
imul rdx, r8
shr rdx, cl
mov rax, rbx
sub rax, rdx
sub rax, r11
movabs r11, 0x7895894659fc1a3
add r11, rax
xor r11, r15
mov qword [rsp + 0x5c8], r11
movzx eax, bl
imul ecx, eax, 0x1c
and cl, 0x3f
rol r11, cl
not r11
mov qword [rsp + 0x558], r11
mov rcx, qword [rsp + 0xa0]
jmp 0x1401880cd
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 [0x14031d080]
mov rdx, qword [rsi + rcx*8 + 0x31d060]
and rdx, rax
xor rdx, r9
mov qword [rsp + 0x5d0], rdx
and r9b, 0x3f
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r8
mov qword [rsp + 0x560], r9
not r15
imul r15, rbx
movabs rax, 0x7cd8a7de773cdc58
imul r15, rax
mov rax, r11
imul rax, r9
mov r11, r15
xor r11, rax
mov qword [rsp + 0x558], r11
imul r15, qword [0x14031d060], 0xffffffff8c58a43a
mov rdx, qword [0x14031d068]
sub r15, rdx
mov qword [rsp + 0x5d8], r15
mov al, r11b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x1401880ab
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror r15, cl
add r15, r8
mov qword [rsp + 0x570], r15
movabs rcx, 0x645b874629917cf7
movabs rdi, 0xf16079535eddf4ea
movabs rax, 0xff055d7b8777d695
xor rdi, rax
mov rax, r14
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rdi, rax
xor r11, r9
imul r11, qword [rsi + rdi*8 + 0x31d060]
not r8
imul r8, rcx
imul r8, r15
imul r8, r10
movabs rax, 0xf5ed7e8780c49c49
xor rbx, rax
not rbx
xor r8, rbx
sub r8, r11
mov qword [rsp + 0x5e0], r8
mov rcx, r8
call fcn.14015d6f0
mov qword [0x140321f38], rax
xor edx, edx
mov r8d, 0xa6
lea rcx, [rsp + 0xe40]
call fcn.14029dcc0
xor eax, eax
mov byte [rsp + 0x11d], al
mov eax, 0x3b89
mov word [rsp + 0xada], ax
mov eax, 0xf431
mov word [rsp + 0xadc], ax
mov eax, 0x956b
mov word [rsp + 0xade], ax
mov eax, 0x11fb
mov word [rsp + 0xae0], ax
mov eax, 0x4306
mov word [rsp + 0xae2], ax
mov eax, 0xedbc
mov word [rsp + 0xae4], ax
mov eax, 0x5b0c
mov word [rsp + 0xae6], ax
mov eax, 0x4f3f
mov word [rsp + 0xae8], ax
mov eax, 0x85a
mov word [rsp + 0xaea], ax
mov eax, 0x4fc8
mov word [rsp + 0xaec], ax
mov eax, 0x1e18
mov word [rsp + 0xaee], ax
mov r8, r13
mov qword [rsp + 0x5e8], r13
cmp r8, 0xb
jae 0x14018840a
xor edx, edx
mov rax, r8
movabs rcx, 0x13cce94adba99340
div rcx
lea r12d, [rdx + 0x38]
movzx r13d, r12w
ror r13w, 8
mov word [rsp + 0x168], 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 + 0x80]
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, r13w
shl ax, 0xf
or cx, ax
sub r8w, cx
sub r8w, word [0x14031d058]
sub r8w, word [0x14031d050]
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, r10w
sub r8w, word [0x14031d048]
sub r8w, dx
add r8w, r11w
add r8w, di
mov rdi, qword [0x14031d040]
sub r8w, 0x50
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 ecx, 0x2440
xor ax, cx
sub dx, ax
movzx eax, si
xor ax, word [0x14031d038]
sub dx, ax
movzx eax, r13w
xor ax, word [0x14031d030]
add dx, ax
sub dx, r12w
sub dx, r14w
sub dx, r15w
sub dx, di
movzx eax, si
movzx ecx, r13w
imul ecx, eax
xor dx, cx
mov word [rsp + 0x170], dx
mov r8, qword [rsp + 0x5e8]
mov word [rsp + r8*2 + 0xada], dx
mov r12d, 1
add r8, r12
mov qword [rsp + 0x5e8], r8
jmp 0x1401881ee
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 + 0x5f0], r13
movabs rax, 0x73566e685e42b439
mov qword [rsp + 0x5f0], rax
movabs rcx, 0xf33a52bbc30e6703
add rcx, qword [rsp + 0x5f0]
movabs rax, 0x8c553662530f5512
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0xedf047f6aaeba34
sub rcx, rax
movabs rax, 0xf8f8cd929f7ff911
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x47d654b1c93a8419
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0x5a9179a1d5840c89
xor rcx, rax
movabs rax, 0x5f627dbd88a986dc
sub rcx, rax
movabs rax, 0xa63b3ccf7f88a93d
xor rcx, rax
movabs rax, 0x3483ce3f2c0b5231
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94aef0c37f0
mov rax, qword [0x14031d038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b510f3c80f
mov rcx, qword [0x14031d030]
xor rcx, rax
movabs rax, 0xe0b56da5031ad2c5
add rdx, rax
add rdx, rcx
movabs rax, 0xd5980eeda63ac710
xor rdx, rax
mov qword [rsp + 0x5f8], rdx
mov qword [rsp + 0x5f0], rdx
mov r9, qword [rsp + 0x1420]
lea rcx, [rsp + 0xe40]
call fcn.14019c834
nop
mov qword [rsp + 0x5f0], r13
mov rcx, qword [rsp + 0xa18]
test rcx, rcx
je 0x14018859b
mov eax, r13d
mov qword [rsp + 0x600], rax
cmp rax, qword [rsp + 0xa20]
jae 0x14018859b
mov byte [rcx + rax], r13b
add rax, r12
mov qword [rsp + 0x600], rax
mov rcx, qword [rsp + 0xa18]
jmp 0x140188578
mov dword [rsp + 0x2a4], r13d
mov dword [rsp + 0x2a4], 0x5a281e73
mov eax, dword [rsp + 0x2a4]
add eax, 0xcd456832
xor eax, 0xfd875f49
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x2d32a0c9
xor eax, 0xb5201bde
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xd75cd9fd
add eax, ecx
xor eax, 0xe9dd4f31
sub eax, 0x67491a7e
xor eax, 0x26acd6ee
lea edx, [rcx + 0x6a1bd209]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xcf3513f4
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x30caec0b
add ecx, 0xcbe17b85
add ecx, edx
xor ecx, 0x5434cb7c
mov dword [rsp + 0x2b0], ecx
mov dword [rsp + 0x2a4], ecx
movsxd rbx, ecx
mov qword [rsp + 0xa0], rbx
mov dword [rsp + 0x2b8], r13d
mov dword [rsp + 0x2b8], 0xc5e814d8
mov eax, dword [rsp + 0x2b8]
add eax, 0xcd494ab2
xor eax, 0xe0075f4d
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x52cd6ade
xor eax, 0xb51c29d4
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x17579408
add eax, ecx
xor eax, 0xe9d8e0d7
sub eax, 0x67483a64
xor eax, 0x12aae58f
add ecx, 0xea180abb
add ecx, eax
not ecx
mov eax, dword [0x14031d038]
xor eax, 0xcf35237e
sub ecx, eax
mov eax, dword [0x14031d030]
xor eax, 0x30cadc81
add eax, 0xcbf1150f
add ecx, eax
xor ecx, 0xb5b32a7e
mov dword [rsp + 0x2c8], ecx
mov dword [rsp + 0x2b8], ecx
movsxd rbx, ecx
mov qword [rsp + 0x68], rbx
xor eax, eax
mov byte [rsp + 0x11e], al
lea rdx, [rsp + 0xb84]
lea rcx, [rsp + 0x11e]
call fcn.1401657f4
mov qword [rsp + 0x608], rax
mov r8, r13
mov qword [rsp + 0x610], r13
cmp r8, 0x12
jae 0x14018893b
xor edx, edx
mov rax, r8
movabs rcx, 0x13cce94adba99340
div rcx
lea r13d, [rdx + 0x38]
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 + 0x80]
add r10w, ax
mov rax, qword [rsp + 0x608]
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 [0x14031d058]
sub r8w, word [0x14031d050]
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 [0x14031d048]
sub r8w, dx
sub r8w, 0x50
add r8w, bx
mov rcx, qword [0x14031d040]
add r8w, di
add r8w, cx
movzx eax, r9w
sub ax, r11w
add ax, r12w
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 [0x14031d030]
sub dx, r10w
movzx eax, si
xor ax, word [0x14031d038]
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 + 0x610]
mov rax, qword [rsp + 0x608]
mov word [rax + r8*2], dx
mov r12d, 1
add r8, r12
mov qword [rsp + 0x610], r8
jmp 0x140188715
mov qword [rsp + 0xa28], rax
mov qword [rsp + 0xa30], 0x24
mov rdx, qword [rsp + 0xa28]
lea rcx, [rsp + 0xef0]
call fcn.14003fcb8
nop
xor eax, eax
mov byte [rsp + 0x11f], al
lea rdx, [rsp + 0xb68]
lea rcx, [rsp + 0x11f]
call fcn.140165838
mov qword [rsp + 0x618], rax
xor r8d, r8d
mov qword [rsp + 0x620], r8
cmp r8, 0xe
jae 0x140188bb4
xor edx, edx
mov rax, r8
movabs rcx, 0x13cce94adba99340
div rcx
lea r12d, [rdx + 0x38]
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 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 + 0x80]
add r10w, ax
mov rax, qword [rsp + 0x618]
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 [0x14031d058]
sub r8w, word [0x14031d050]
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, word [0x14031d048]
sub r8w, dx
sub r8w, r13w
sub r8w, r11w
mov rcx, qword [0x14031d040]
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 [0x14031d030]
sub dx, r10w
mov eax, 0x7100
add eax, r13d
mov r8d, 0x2440
xor ax, r8w
sub dx, ax
movzx eax, si
xor ax, word [0x14031d038]
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 + 0x620]
mov rax, qword [rsp + 0x618]
mov word [rax + r8*2], dx
mov r12d, 1
add r8, r12
jmp 0x14018898e
mov qword [rsp + 0xa38], rax
mov qword [rsp + 0xa40], 0x1c
mov rdx, qword [rsp + 0xa38]
lea rcx, [rsp + 0xf10]
call fcn.14003fcb8
nop
mov rdx, qword [rsp + 0x1418]
lea rcx, [rsp + 0xf30]
call fcn.14003fcb8
nop
lea rdx, [rsp + 0xc70]
lea rcx, [rsp + 0xf50]
call fcn.14003fcb8
nop
lea rdx, [rsp + 0xd00]
lea rcx, [rsp + 0xf70]
call fcn.14003fcb8
nop
lea rdx, [rsp + 0xe40]
lea rcx, [rsp + 0xf90]
call fcn.14003fcb8
nop
lea rdx, [rsp + 0xd90]
lea rcx, [rsp + 0xfb0]
call fcn.14003fcb8
nop
lea rax, [rsp + 0xef0]
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0xfd0]
mov qword [rsp + 0x98], 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.1400b4608
nop
mov r9, qword [rsp + 0xa0]
mov r8, qword [rsp + 0x68]
lea rdx, [rsp + 0xaf0]
lea rcx, [rsp + 0xa60]
call fcn.1401921e4
mov dl, byte [rsp + 0xa60]
lea rcx, [rsp + 0xa68]
call fcn.140169648
nop
lea rcx, [rsp + 0xaf0]
call fcn.1400bf284
nop
lea r9, [fcn.140027bf8]
mov edx, 0x20
lea r8d, [rdx - 0x19]
lea rcx, [rsp + 0xef0]
call fcn.140277b4c
nop
mov rcx, qword [rsp + 0xa38]
xor r13d, r13d
test rcx, rcx
je 0x140188d4b
mov eax, r13d
mov qword [rsp + 0x628], rax
cmp rax, qword [rsp + 0xa40]
jae 0x140188d4b
mov byte [rcx + rax], r13b
add rax, r12
mov qword [rsp + 0x628], rax
mov rcx, qword [rsp + 0xa38]
jmp 0x140188d28
mov rcx, qword [rsp + 0xa28]
test rcx, rcx
je 0x140188d86
mov rax, r13
mov qword [rsp + 0x630], rax
cmp rax, qword [rsp + 0xa30]
jae 0x140188d86
mov byte [rcx + rax], r13b
add rax, r12
mov qword [rsp + 0x630], rax
mov rcx, qword [rsp + 0xa28]
jmp 0x140188d63
mov dword [rsp + 0x2b8], r13d
mov dword [rsp + 0x2a4], r13d
mov qword [rsp + 0x638], r13
movabs rax, 0x6a88891af38a1b5a
mov qword [rsp + 0x638], rax
mov qword [rsp + 0x640], r13
movabs rax, 0xca219799c37fe04
mov qword [rsp + 0x640], rax
movabs rcx, 0xf33a52b5ce9cd083
add rcx, qword [rsp + 0x640]
movabs rax, 0xf5d53662530960a1
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0x7120fb80a72e9a90
add rcx, rax
movabs rax, 0xf8f8cd98abc355eb
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654b9de8ab3e3
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179a8a0559c33
xor rcx, rax
movabs rax, 0x5f627dc70e752646
sub rcx, rax
movabs rax, 0x5a3b3cd279f11809
xor rcx, rax
movabs rdx, 0xb483ce44f6cdcd94
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ad73a7196
mov r10, qword [0x14031d038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b528c58e69
mov r11, qword [0x14031d030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d8cd944baeb
add rdx, rax
add rdx, rcx
movabs rax, 0x1ba327db8a67ca86
xor rdx, rax
mov qword [rsp + 0x648], rdx
mov qword [rsp + 0x640], rdx
movabs rcx, 0xf33a52aa357e8d03
add rcx, qword [rsp + 0x638]
movabs rax, 0xb255366252fdc783
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0xedf047f36060aa6
sub rcx, rax
movabs rax, 0xf8f8cda473461279
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x47d654c99ce34884
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179b5dafc2131
xor rcx, rax
movabs rax, 0x5f627ddfab9a2de4
sub rcx, rax
movabs rax, 0x763b3cd846dd02bb
xor rcx, rax
movabs rax, 0x3483ce503ebc3d3b
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94aa8d5f888
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b5572a0777
xor r11, rax
movabs rax, 0xe0b56d5e86a52bdd
add rcx, rax
add rcx, r11
movabs rax, 0x19fe4f0b53923f38
xor rcx, rax
mov qword [rsp + 0x650], rcx
mov qword [rsp + 0x638], rcx
and rcx, rdx
mov rax, r13
cmp qword [0x1403221c0], r13
sete al
mov qword [rsp + 0x640], r13
mov qword [rsp + 0x638], r13
cmp rax, rcx
jne 0x140189df9
mov rbx, qword [0x1403221c0]
mov qword [rsp + 0xa0], rbx
xor eax, eax
mov byte [rsp + 0x121], al
lea rdx, [rsp + 0xba8]
lea rcx, [rsp + 0x121]
call fcn.1401658b0
mov qword [rsp + 0x658], rax
mov r8, r13
mov qword [rsp + 0x660], r13
cmp r8, 0x2a
jae 0x140189238
xor edx, edx
mov rax, r8
movabs rcx, 0x13cce94adba99340
div rcx
lea r12d, [rdx + 0x38]
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 + 0x80]
add bx, ax
mov rax, qword [rsp + 0x658]
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 [0x14031d058]
sub r8w, word [0x14031d050]
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 [0x14031d048]
sub r8w, r10w
mov rcx, qword [0x14031d040]
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 [0x14031d038]
sub dx, ax
movzx eax, r13w
xor ax, word [0x14031d030]
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 + 0x660]
mov rax, qword [rsp + 0x658]
mov word [rax + r8*2], dx
mov r12d, 1
add r8, r12
mov qword [rsp + 0x660], r8
jmp 0x140189012
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], 0x34bfecfe
mov eax, dword [rsp + 0x2d0]
add eax, 0xcf728a30
xor eax, 0x1f856177
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x332c1963
xor eax, 0xbaea4558
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x8b689659
add eax, ecx
xor eax, 0x2f61d46b
add eax, 0x223f0079
xor eax, 0x15a63486
lea edx, [rcx + 0x59fdebf9]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xc73dc87c
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x38c23783
add ecx, 0xec9cf005
add ecx, edx
xor ecx, 0x48a83b74
mov dword [rsp + 0x2d8], ecx
mov dword [rsp + 0x2d0], ecx
movsxd rdx, ecx
mov r9, qword [rsp + 0xa0]
lea rcx, [rsp + 0xfd0]
call fcn.14019c834
nop
mov dword [rsp + 0x2d0], r13d
mov rcx, qword [rsp + 0xa70]
test rcx, rcx
je 0x14018934f
mov eax, r13d
mov qword [rsp + 0x668], rax
cmp rax, qword [rsp + 0xa78]
jae 0x14018934f
mov byte [rcx + rax], r13b
add rax, r12
mov qword [rsp + 0x668], rax
mov rcx, qword [rsp + 0xa70]
jmp 0x14018932c
xor edx, edx
lea r8d, [rdx + 0x68]
lea rcx, [rsp + 0xc00]
call fcn.14029dcc0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0xb08], xmm0
mov qword [rsp + 0xb18], rax
mov dword [rsp + 0x670], r13d
mov dword [rsp + 0x674], 0x1236bf7e
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x678], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x680], rax
mov qword [rsp + 0x688], rax
mov r9d, 0x4764996c
mov r14d, dword [rsp + 0x670]
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 0x140189456
mov r8, qword [rsp + 0xa88]
mov qword [rsp + 0x690], r8
movzx ecx, cx
shr rcx, 1
lea r11, [r8 + rcx*2]
mov qword [rsp + 0x698], r11
mov r10d, 0x98608236
mov dword [rsp + 0x2e0], r10d
cmp r8, r11
je 0x14018944d
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 + 0x690], r8
jmp 0x140189412
cmp r10d, r14d
jne 0x140189631
mov r10, qword [rax + 0x30]
mov qword [rsp + 0x6a0], r10
mov qword [rsp + 0xa0], r10
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov qword [rsp + 0x6a8], rcx
mov ebx, ecx
add rbx, r10
mov qword [rsp + 0xa8], rbx
shr rcx, 0x20
mov dword [rsp + 0xb0], ecx
cmp rbx, r10
je 0x140189631
mov esi, dword [rbx + 0x18]
mov dword [rsp + 0x1a0], esi
mov edx, esi
dec esi
mov dword [rsp + 0x1a0], esi
test edx, edx
je 0x140189631
mov r8d, dword [rbx + 0x20]
add r8, r10
mov r11d, dword [r8 + rsi*4]
add r11, r10
mov qword [rsp + 0x6b0], r11
mov edi, 0x98608236
mov dword [rsp + 0x1a4], edi
movsx edx, byte [r11]
mov byte [rsp + 0x130], dl
add r11, r12
mov qword [rsp + 0x6b0], r11
test dl, dl
jne 0x14018af73
cmp edi, dword [rsp + 0x674]
jne 0x14018af6e
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov qword [rsp + 0x6b8], rdx
mov eax, dword [rbx + 0x24]
add rax, r10
mov qword [rsp + 0x6c0], rax
movzx eax, word [rax + rsi*2]
mov r8d, dword [rdx + rax*4]
add r8, r10
mov qword [rsp + 0xa0], r8
mov qword [rsp + 0x6c8], r8
cmp r8, rbx
jbe 0x140189641
lea rax, [rbx + rcx]
cmp r8, rax
jae 0x140189641
mov qword [rsp + 0x6d0], r8
mov dword [rsp + 0x6d8], 0x98608236
mov r10d, 0x98608236
mov dword [rsp + 0x6dc], r10d
mov r11d, r10d
movsx eax, byte [r8]
cmp al, 0x2e
je 0x1401895b7
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 + 0x6d8], r11d
add r8, r12
mov qword [rsp + 0x6d0], r8
jmp 0x14018957a
add r8, r12
mov qword [rsp + 0x6d0], r8
movsx eax, byte [r8]
test al, al
je 0x1401895f0
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 + 0x6dc], r10d
jmp 0x1401895b7
mov rax, qword [rsp + 0x6d8]
mov qword [rsp + 0x670], rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x6e0], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x6e8], rax
mov qword [rsp + 0x688], rax
mov r14d, dword [rsp + 0x670]
mov rax, qword [rax]
mov qword [rsp + 0x688], rax
jmp 0x1401893c1
mov dword [rsp + 0x1a8], r13d
mov dword [rsp + 0x1a8], 0x58c69f7a
mov eax, dword [rsp + 0x1a8]
add eax, 0x1ce04934
xor eax, 0xde88aee4
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x2943d026
xor eax, 0x6046cf58
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x8fce1d8f
add eax, ecx
xor eax, 0x6b10a68a
sub eax, 0x92c46c0
xor eax, 0x76d4e996
lea edx, [rcx + 0x23ae2d2e]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xd4737f78
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x2b8c8087
add ecx, 0xf89a30e
add ecx, edx
xor ecx, 0xa6443848
mov dword [rsp + 0x1b0], ecx
mov dword [rsp + 0x1a8], ecx
movsxd rax, ecx
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x1b8], r13d
mov dword [rsp + 0x1b8], 0xb9ffb517
mov eax, dword [rsp + 0x1b8]
add eax, 0x34b93fb5
xor eax, 0xd509c6bd
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x5a03babd
xor eax, 0x440e74fd
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x53ef1af2
add eax, ecx
xor eax, 0x2bdd2d5f
add eax, 0x44337bc3
xor eax, 0x36dfaf8d
lea edx, [rcx - 0x6c83da95]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xd8d2e352
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x272d1cad
add ecx, 0x538ea8ec
add ecx, edx
xor ecx, 0xaca966a
mov dword [rsp + 0x1c0], ecx
mov dword [rsp + 0x1b8], ecx
movsxd rax, ecx
mov qword [rsp + 0x90], rax
mov dword [rsp + 0x1c8], r13d
mov dword [rsp + 0x1c8], 0x99d9d1ce
mov eax, dword [rsp + 0x1c8]
add eax, 0xdcb55435
xor eax, 0xe98a6eb9
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x24045105
xor eax, 0x9972702b
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xafe86d1e
add eax, ecx
xor eax, 0x6c41a5fd
add eax, 0x29d09835
xor eax, 0x3edc656c
mov edx, dword [0x14031d030]
xor edx, 0x248d2c5b
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xdb72d3a4
sub edx, eax
sub edx, ecx
sub edx, 0x7a3909ba
xor edx, 0x5f856b4c
mov dword [rsp + 0x60], edx
mov dword [rsp + 0x1d0], edx
mov dword [rsp + 0x1c8], edx
mov dword [rsp + 0x1d8], r13d
mov dword [rsp + 0x1d8], 0x1c0a55b7
mov eax, dword [rsp + 0x1d8]
add eax, 0xa73926b5
xor eax, 0xbc0a393d
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x5b5b3a72
xor eax, 0xcfc48e61
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x38827ce1
add eax, ecx
xor eax, 0xa94349e3
add eax, 0x24cd662f
xor eax, 0xc59c280e
mov r13d, dword [0x14031d030]
xor r13d, 0x25631d11
sub r13d, eax
mov eax, dword [0x14031d038]
xor eax, 0xda9ce2ee
sub r13d, eax
sub r13d, ecx
sub r13d, 0x4c57933
xor r13d, 0x722a07ce
mov dword [rsp + 0x1e0], r13d
mov dword [rsp + 0x1d8], r13d
xor r8d, r8d
mov dword [rsp + 0x1e8], r8d
mov dword [rsp + 0x1e8], 0xb4fc449
mov eax, dword [rsp + 0x1e8]
add eax, 0xb7d2cb35
xor eax, 0x608a49d7
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x2472f8a0
xor eax, 0xbee8834f
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x61f9ee16
add eax, ecx
xor eax, 0x96540a41
add eax, 0x20f42fd9
xor eax, 0x994ed100
mov edx, dword [0x14031d030]
xor edx, 0x2520b67f
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xdadf4980
sub edx, eax
sub edx, ecx
sub edx, 0x31f6cf20
xor edx, 0x3067680
mov dword [rsp + 0x1f0], edx
mov dword [rsp + 0x1e8], edx
movsxd r9, edx
mov dword [rsp + 0x1f8], r8d
mov dword [rsp + 0x1f8], 0x430d13b9
mov eax, dword [rsp + 0x1f8]
add eax, 0x218e45b0
xor eax, 0xdb04b392
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x4aca39cf
xor eax, 0x6b861aea
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x3773f155
add eax, ecx
xor eax, 0xf5ba328d
sub eax, 0x5643ffb9
xor eax, 0x909dc5e8
lea edx, [rcx - 0x7cdf0d66]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xc486376a
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x3b79c895
add ecx, 0x32544cf0
add ecx, edx
xor ecx, 0xdc8310b2
mov dword [rsp + 0x200], ecx
mov dword [rsp + 0x1f8], ecx
movsxd r15, ecx
mov dword [rsp + 0x208], r8d
mov dword [rsp + 0x208], 0xe913c71d
mov eax, dword [rsp + 0x208]
add eax, 0x161a1235
xor eax, 0xa789a81e
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x265822cb
xor eax, 0x63281f33
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xbd802d35
add eax, ecx
xor eax, 0x4ecabd45
add eax, 0x3e4b14dd
xor eax, 0xb2303b46
lea edx, [rcx + 0x3144f8ac]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xd858669c
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x27a79963
add ecx, 0xd8956eb6
add ecx, edx
xor ecx, 0x3346ea54
mov dword [rsp + 0x210], ecx
mov dword [rsp + 0x208], ecx
movsxd r14, ecx
mov qword [rsp + 0x6f0], r8
movabs rax, 0xceee2f4710fe7cbd
mov qword [rsp + 0x6f0], rax
mov qword [rsp + 0x6f8], r8
movabs rax, 0x385c483b9a2486d
mov qword [rsp + 0x6f8], rax
movabs rcx, 0xf33a52b6a2abf983
add rcx, qword [rsp + 0x6f0]
movabs rax, 0x1ed53662530a34b0
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0x7120fb80a4b26d15
add rcx, rax
movabs rax, 0xf8f8cd97d463f047
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x87d654b8beb01fbc
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179a7ae74516f
xor rcx, rax
movabs rax, 0x5f627dc6de6a096a
sub rcx, rax
movabs rax, 0x123b3cd20fe2e310
xor rcx, rax
movabs rdx, 0xb483ce44288b0eb3
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ada8aae3a
mov r10, qword [0x14031d038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5257551c5
mov r11, qword [0x14031d030]
mov rcx, r11
xor rcx, rax
movabs rsi, 0xe0b56d900d11538f
add rsi, rdx
add rsi, rcx
movabs rax, 0x1fe04d52105a6ca2
xor rsi, rax
mov qword [rsp + 0x700], rsi
mov qword [rsp + 0x6f0], rsi
movabs rcx, 0xf33a52b6a228be03
add rcx, qword [rsp + 0x6f8]
movabs rax, 0xe3553662530a342d
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0xedf047f5b4c0939
sub rcx, rax
movabs rax, 0xf8f8cd97d4e938b5
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654b8bf624300
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a7af0a014d
xor rcx, rax
movabs rax, 0x5f627dc6deca6360
sub rcx, rax
movabs rax, 0xee3b3cd2102484ea
xor rcx, rax
movabs rax, 0x3483ce44290ab392
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ada88a14c
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b525775eb3
xor r11, rax
movabs rbx, 0xe0b56d900b026021
add rbx, rcx
add rbx, r11
movabs rax, 0xcbec8323ef16b024
xor rbx, rax
mov qword [rsp + 0x708], rbx
mov qword [rsp + 0x6f8], rbx
lea rax, [rsp + 0xb08]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0xc00]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r13d
mov r8, r15
lea rdx, [rsp + 0xfd0]
mov rcx, r14
call qword [rsp + 0xa0]
movsxd rcx, eax
and rsi, rbx
xor r13d, r13d
mov qword [rsp + 0x6f8], r13
mov qword [rsp + 0x6f0], 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 0x14018a43c
mov dword [rsp + 0x218], r13d
mov dword [rsp + 0x218], 0xcc17c6ce
mov eax, dword [rsp + 0x218]
add eax, 0xa297d735
xor eax, 0x6c8a349c
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x24b2a97c
xor eax, 0xd478631f
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x7ecb744c
add eax, ecx
xor eax, 0xae8b4891
add eax, 0x2172bb89
xor eax, 0x43ecf4d8
mov edx, dword [0x14031d030]
xor edx, 0x2575a24f
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xda8a5db0
sub edx, eax
sub edx, ecx
add edx, 0x641fd5bc
xor edx, 0x416c4950
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], 0xe3b7f648
mov eax, dword [rsp + 0x248]
add eax, 0x8398a33a
xor eax, 0x388f159d
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x160fa718
xor eax, 0xdff393ea
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xdf5edf5c
add eax, ecx
xor eax, 0x1de65fdc
sub eax, 0x794834c4
xor eax, 0x734586d0
mov edx, dword [0x14031d030]
xor edx, 0x11f19f1f
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xee0e60e0
sub edx, eax
sub edx, ecx
add edx, 0x1a80cef1
xor edx, 0xd4c8db20
mov dword [rsp + 0x60], edx
mov dword [rsp + 0x250], edx
mov dword [rsp + 0x248], edx
mov dword [rsp + 0x258], r13d
mov dword [rsp + 0x258], 0xeebfed6
mov eax, dword [rsp + 0x258]
add eax, 0xc34a4db4
xor eax, 0xe309554e
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x58af6de7
xor eax, 0xb74322c6
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xede93473
add eax, ecx
xor eax, 0xad3fb968
sub eax, 0x107f7d56
xor eax, 0xff9ab405
lea edx, [rcx + 0x1d10ece]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xd70d278a
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x28f2d875
add ecx, 0xac0d1da3
add ecx, edx
xor ecx, 0x52d38212
mov dword [rsp + 0x260], ecx
mov dword [rsp + 0x258], ecx
movsxd rax, ecx
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x850], rax
mov qword [rsp + 0x858], r13
movabs rax, 0x27bf7b1e605316c0
mov qword [rsp + 0x858], rax
mov qword [rsp + 0x860], r13
movabs rax, 0xd334326afbe51502
mov qword [rsp + 0x860], rax
movabs rcx, 0xf33a52b19a9c9783
add rcx, qword [rsp + 0x858]
movabs rax, 0xbcd5366253052ca1
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0x7120fb80b3ca9b3b
add rcx, rax
movabs rax, 0xf8f8cd9cf0938fcf
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x87d654bf93210143
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179ad6ba5dd37
xor rcx, rax
movabs rax, 0x5f627dc5fca52d62
sub rcx, rax
movabs rax, 0x223b3cd49412d48b
xor rcx, rax
movabs rdx, 0xb483ce490d620505
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ac66a70b2
mov r10, qword [0x14031d038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b539958f4d
mov r11, qword [0x14031d030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d7c18718e07
add rax, rdx
add rax, rcx
movabs rcx, 0xd40d19385c91538a
xor rax, rcx
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x868], rax
mov qword [rsp + 0x858], rax
movabs rcx, 0xf33a52b3df726c03
add rcx, qword [rsp + 0x860]
movabs rax, 0x9155366253077177
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0xedf047f5303e643
sub rcx, rax
movabs rax, 0xf8f8cd9aa2aa63fd
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654bc7eb0bf4f
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179aad521f6d5
xor rcx, rax
movabs rax, 0x5f627dc762811518
sub rcx, rax
movabs rax, 0x7e3b3cd37195c39c
xor rcx, rax
movabs rax, 0x3483ce46d86e0954
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94acf7dc804
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b5308237fb
xor r11, rax
movabs rax, 0xe0b56d8514dc7759
add rax, rcx
add rax, r11
movabs rcx, 0xfad78521c853f7ec
xor rax, rcx
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x870], rax
mov qword [rsp + 0x860], rax
movabs r15, 0xf15f2b7f5deb36ff
mov qword [rsp + 0x878], r15
movabs rdi, 0x218d5991944b7958
mov qword [rsp + 0x880], rdi
mov qword [rsp + 0x888], r13
movabs r11, 0x63c6f8babbd03205
mov qword [rsp + 0x890], r11
movabs rax, 0xce52e870a3a0d5a4
mov rcx, qword [0x14031d070]
imul rcx, rax
not rcx
movabs rdx, 0x9c390745711a635f
mov rax, qword [0x14031d060]
xor rax, rdx
and rcx, rax
mov qword [rsp + 0x898], rcx
ror rcx, 0x3d
shr rcx, 8
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x8a0], rcx
movabs rax, 0x33f8ebe758791f68
mov rbx, qword [0x14031d078]
imul rbx, rax
add rbx, rdi
movabs rax, 0x42bfa79980000000
xor rbx, rax
shr rbx, 0x1f
not rbx
mov qword [rsp + 0x8a8], rbx
mov qword [rsp + 0x8b0], rbx
movabs r9, 0xde72a66e6bb486a8
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x45
and ecx, 0x8000003f
jge 0x14018a27e
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, rbx
ror rax, cl
not rax
movabs rcx, 0xe860cecd50f72ac2
imul rax, rcx
add r9, rax
mov qword [rsp + 0x8b8], r9
mov r10, rbx
imul r10, qword [rsp + 0x70]
sub r10, r9
xor r10, r15
mov qword [rsp + 0x8c0], r10
movzx ecx, r9b
mov dword [rsp + 0x88], ecx
xor cl, 0xfa
and cl, 0xf
rol r10, cl
mov rax, r9
sub rax, qword [0x14031d078]
xor r10, rax
mov rax, r9
imul rax, rdi
xor r10, rax
xor r10, r11
mov qword [rsp + 0x8c8], r10
mov rdi, r13
mov eax, 2
dec rax
sub rax, 1
mov r15b, 0x3f
je 0x14018af94
cmp rax, 1
jne 0x14018b096
mov rdi, r9
imul rdi, rbx
movabs rax, 0x8604a58f91e892c8
add rax, r10
xor rdi, rax
mov qword [rsp + 0x8d0], rdi
ror rdi, 6
shr rdi, 0xc
not rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x878], rdi
movabs rcx, 0x83573e6f7252
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0xdef023161ec0d472
xor rdx, rax
mov qword [rsp + 0x8d8], rdx
movzx eax, r10b
movzx ecx, dil
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9668f9ead
sub rax, rbx
mov rbx, rdx
xor rbx, rax
mov qword [rsp + 0x8a8], rbx
mov rcx, rbx
movabs rax, 0x218d5991944b7958
imul rcx, rax
mov eax, 0xb7544c47
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 + 0x31d060]
and cl, 0xf
movabs r8, 0x7c85e94544b8f265
sub r8, rdi
shr r8, cl
movabs rcx, 0x8248845d03c8c
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 + 0x31d060]
imul rax, r10
mov rcx, qword [rsp + 0x70]
sub rax, rcx
xor r8, rax
mov qword [rsp + 0x880], r8
mov rdi, r13
mov qword [rsp + 0x70], rcx
mov rcx, qword [rsp + 0x58]
jmp 0x14018b0aa
mov qword [rsp + 0x710], r13
movabs rax, 0xec477e6150002e57
mov qword [rsp + 0x710], rax
mov qword [rsp + 0x718], r13
movabs rax, 0xc7e7bb6046de884c
mov qword [rsp + 0x718], rax
movabs rcx, 0xf33a52b72c18db83
add rcx, qword [rsp + 0x718]
movabs rax, 0xd53662530abe1d
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0x7120fb80a316266f
add rcx, rax
movabs rax, 0xf8f8cd9748d15abf
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x87d654b80424d2f5
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179a711b41fa7
xor rcx, rax
movabs rax, 0x5f627dc67d9e0bb2
sub rcx, rax
movabs rax, 0x23b3cd1cb2826a9
xor rcx, rax
movabs rdx, 0xb483ce43a2e026e1
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94adcb061c2
mov r10, qword [0x14031d038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5234f9e3d
mov r11, qword [0x14031d030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d9234a89697
add rdx, rax
add rdx, rcx
movabs rax, 0xecd7cd01233b073a
xor rdx, rax
mov qword [rsp + 0x720], rdx
mov qword [rsp + 0x718], rdx
movabs rcx, 0xf33a52b6d4797803
add rcx, qword [rsp + 0x710]
movabs rax, 0x9d553662530a667e
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0xedf047f5be2fb67
sub rcx, rax
movabs rax, 0xf8f8cd97a1cf3bcd
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654b87b15ae85
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a775a5ed25
xor rcx, rax
movabs rax, 0x5f627dc6d8576048
sub rcx, rax
movabs rax, 0x1e3b3cd1f6fa9564
xor rcx, rax
movabs rax, 0x3483ce43f81a2ea8
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94adb51e434
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b524ae1bcb
xor r11, rax
movabs rax, 0xe0b56d90d50c8b89
add rcx, rax
add rcx, r11
movabs rax, 0xe8af4a01f859713c
xor rcx, rax
mov qword [rsp + 0x728], rcx
mov qword [rsp + 0x710], rcx
and rdx, rcx
cmp qword [rsp + 0xb10], rdx
setne al
mov byte [rsp + 0x11a], al
mov qword [rsp + 0x718], r13
mov qword [rsp + 0x710], r13
test al, al
je 0x14018a991
mov dword [rsp + 0x730], r13d
mov dword [rsp + 0x734], 0xe8a0ef96
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x738], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x740], rax
mov qword [rsp + 0x748], rax
mov r14d, dword [rsp + 0x730]
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 0x14018a760
mov r9, qword [rsp + 0xa98]
mov qword [rsp + 0x750], r9
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov qword [rsp + 0x758], r11
mov r10d, 0x38c1858e
mov dword [rsp + 0x228], r10d
cmp r9, r11
je 0x14018a757
movsx ecx, byte [r9]
mov byte [rsp + 0xd0], cl
mov edx, ecx
mov r8d, ecx
imul r8d, ecx
add r8d, 0x31
xor r8d, 0x4764996c
mov ecx, r10d
xor ecx, edx
mov r10d, r8d
imul r10d, ecx
mov dword [rsp + 0x228], r10d
add r9, 2
mov qword [rsp + 0x750], r9
jmp 0x14018a711
cmp r10d, r14d
jne 0x14018a943
mov r10, qword [rax + 0x30]
mov qword [rsp + 0x760], r10
mov qword [rsp + 0xb20], r10
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov qword [rsp + 0x768], rcx
mov ebx, ecx
add rbx, r10
mov qword [rsp + 0xb28], rbx
shr rcx, 0x20
mov dword [rsp + 0xb30], ecx
cmp rbx, r10
je 0x14018a943
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 0x14018a943
mov r8d, dword [rbx + 0x20]
add r8, r10
mov r11d, dword [r8 + rsi*4]
add r11, r10
mov qword [rsp + 0x770], r11
mov edi, 0x38c1858e
mov dword [rsp + 0x230], edi
movsx edx, byte [r11]
mov byte [rsp + 0xd8], dl
add r11, r12
mov qword [rsp + 0x770], r11
test dl, dl
jne 0x14018a965
cmp edi, dword [rsp + 0x734]
jne 0x14018a960
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov qword [rsp + 0x778], rdx
mov eax, dword [rbx + 0x24]
add rax, r10
mov qword [rsp + 0x780], rax
movzx eax, word [rax + rsi*2]
mov r8d, dword [rdx + rax*4]
add r8, r10
mov qword [rsp + 0x788], r8
cmp r8, rbx
jbe 0x14018a953
lea rax, [rbx + rcx]
cmp r8, rax
jae 0x14018a953
mov qword [rsp + 0x790], r8
mov dword [rsp + 0x798], 0x38c1858e
mov r10d, 0x38c1858e
mov dword [rsp + 0x79c], r10d
mov r11d, r10d
mov r9d, 0x4764996c
movsx eax, byte [r8]
cmp al, 0x2e
je 0x14018a8c5
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 + 0x798], r11d
add r8, r12
mov qword [rsp + 0x790], r8
jmp 0x14018a888
add r8, r12
mov qword [rsp + 0x790], r8
movsx eax, byte [r8]
test al, al
je 0x14018a902
mov byte [rsp + 0xe8], al
mov ecx, eax
mov edx, eax
imul edx, eax
add edx, 0x31
xor edx, r9d
mov eax, r10d
xor eax, ecx
mov r10d, edx
imul r10d, eax
mov dword [rsp + 0x79c], r10d
jmp 0x14018a8c5
mov rax, qword [rsp + 0x798]
mov qword [rsp + 0x730], rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x7a0], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x7a8], rax
mov qword [rsp + 0x748], rax
mov r14d, dword [rsp + 0x730]
mov rax, qword [rax]
mov qword [rsp + 0x748], rax
jmp 0x14018a6c0
mov rcx, qword [rsp + 0xb10]
call r8
jmp 0x14018a997
jmp 0x14018a7b9
mov r8d, edx
mov r9d, edx
imul r9d, edx
add r9d, 0x31
xor r9d, 0x4764996c
mov edx, edi
xor edx, r8d
mov edi, r9d
imul edi, edx
mov dword [rsp + 0x230], edi
jmp 0x14018a7ee
mov r12d, 1
mov qword [rsp + 0x7b0], r13
movabs rax, 0xbd8d01a96ff4b0f8
mov qword [rsp + 0x7b0], rax
mov qword [rsp + 0x7b8], r13
movabs rax, 0x3a0a7d0782f2cd2f
mov qword [rsp + 0x7b8], rax
movabs rcx, 0xf33a52b62e3c1c83
add rcx, qword [rsp + 0x7b8]
movabs rax, 0x41d536625309c040
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0x7120fb80a60fbcac
add rcx, rax
movabs rax, 0xf8f8cd984aa58cbb
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654b95cbdf839
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179a83343e983
xor rcx, rax
movabs rax, 0x5f627dc6c10dc076
sub rcx, rax
movabs rax, 0xfa3b3cd24a1e750f
xor rcx, rax
movabs rdx, 0xb483ce4499cbdca8
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ad8b8eec6
mov r10, qword [0x14031d038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b527471139
mov r11, qword [0x14031d030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d8e39401f9b
add rdx, rax
add rdx, rcx
movabs rax, 0x579c07b6ebf25016
xor rdx, rax
mov qword [rsp + 0x7c0], rdx
mov qword [rsp + 0x7b8], rdx
movabs rcx, 0xf33a52b52d8d5603
add rcx, qword [rsp + 0x7b0]
movabs rax, 0x7b5536625308bf91
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0xedf047f56ee3701
sub rcx, rax
movabs rax, 0xf8f8cd994f570e55
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0xc7d654bab92b36ac
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a9580b43ed
xor rcx, rax
movabs rax, 0x5f627dc705b44740
sub rcx, rax
movabs rax, 0x2e3b3cd2ca7dddc5
xor rcx, rax
movabs rax, 0x3483ce459375dbba
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ad4b633ac
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b52b49cc53
xor r11, rax
movabs rax, 0xe0b56d8a52809301
add rcx, rax
add rcx, r11
movabs rax, 0xb5efd802c84bd0c4
xor rcx, rax
mov qword [rsp + 0x7c8], rcx
mov qword [rsp + 0x7b0], rcx
and rcx, rdx
cmp qword [rsp + 0xb08], rcx
setne al
mov byte [rsp + 0xf0], al
mov qword [rsp + 0x7b8], r13
mov qword [rsp + 0x7b0], r13
test al, al
je 0x14018aea7
mov dword [rsp + 0x7d0], r13d
mov dword [rsp + 0x7d4], 0x83298696
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x7d8], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x7e0], rax
mov qword [rsp + 0x7e8], rax
mov r14d, dword [rsp + 0x7d0]
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 0x14018acb3
mov r8, qword [rsp + 0xaa8]
mov qword [rsp + 0x7f0], r8
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov qword [rsp + 0x7f8], r10
mov r9d, 0x78a7b66a
mov dword [rsp + 0x234], r9d
cmp r8, r10
je 0x14018acaa
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 + 0x7f0], r8
jmp 0x14018ac6c
cmp r9d, r14d
jne 0x14018ae8c
mov r10, qword [rax + 0x30]
mov qword [rsp + 0x800], r10
mov qword [rsp + 0xb38], r10
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov qword [rsp + 0x808], rcx
mov ebx, ecx
add rbx, r10
mov qword [rsp + 0xb40], rbx
shr rcx, 0x20
mov dword [rsp + 0xb48], ecx
cmp rbx, r10
je 0x14018ae8c
mov esi, dword [rbx + 0x18]
mov dword [rsp + 0x238], esi
mov edx, esi
dec esi
mov dword [rsp + 0x238], esi
test edx, edx
je 0x14018ae8c
mov r8d, dword [rbx + 0x20]
add r8, r10
mov r11d, dword [r8 + rsi*4]
add r11, r10
mov qword [rsp + 0x810], r11
mov edi, 0x78a7b66a
mov dword [rsp + 0x23c], edi
mov r9d, 0x4764996c
movsx edx, byte [r11]
mov byte [rsp + 0x100], dl
add r11, r12
mov qword [rsp + 0x810], r11
test dl, dl
jne 0x14018af4d
cmp edi, dword [rsp + 0x7d4]
jne 0x14018af48
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov qword [rsp + 0x818], rdx
mov eax, dword [rbx + 0x24]
add rax, r10
mov qword [rsp + 0x820], rax
movzx eax, word [rax + rsi*2]
mov r8d, dword [rdx + rax*4]
add r8, r10
mov qword [rsp + 0x828], r8
cmp r8, rbx
jbe 0x14018ae9c
lea rax, [rbx + rcx]
cmp r8, rax
jae 0x14018ae9c
mov qword [rsp + 0x830], r8
mov dword [rsp + 0x838], 0x78a7b66a
mov r10d, 0x78a7b66a
mov dword [rsp + 0x83c], r10d
mov r11d, r10d
movsx eax, byte [r8]
cmp al, 0x2e
je 0x14018ae12
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 + 0x838], r11d
add r8, r12
mov qword [rsp + 0x830], r8
jmp 0x14018add5
add r8, r12
mov qword [rsp + 0x830], r8
movsx eax, byte [r8]
test al, al
je 0x14018ae4b
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 + 0x83c], r10d
jmp 0x14018ae12
mov rax, qword [rsp + 0x838]
mov qword [rsp + 0x7d0], rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x840], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x848], rax
mov qword [rsp + 0x7e8], rax
mov r14d, dword [rsp + 0x7d0]
mov rax, qword [rax]
mov qword [rsp + 0x7e8], rax
jmp 0x14018ac1b
mov rcx, qword [rsp + 0xb08]
call r8
mov dword [rsp + 0x240], r13d
mov dword [rsp + 0x240], 0xe1282393
mov eax, dword [rsp + 0x240]
add eax, 0x271e0036
xor eax, 0x958ab922
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x23251701
xor eax, 0x4de0217a
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x4ae757a3
add eax, ecx
xor eax, 0x176241cc
add eax, 0x7ec92f25
xor eax, 0xb9a5bc27
mov edx, dword [0x14031d030]
xor edx, 0x236389ab
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xdc9c7654
sub edx, eax
sub edx, ecx
sub edx, 0x6ccb03c
xor edx, 0x5651fe1c
mov dword [rsp + 0x298], edx
mov dword [rsp + 0x240], edx
mov dword [rsp + 0x240], r13d
jmp 0x140189df9
jmp 0x14018ad06
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 0x14018ad41
jmp 0x1401894a9
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 0x1401894de
movabs rcx, 0xaaaaaa1ab74db179
mov rbx, r10
xor rbx, rcx
movabs rcx, 0x1206ed75406d35
imul rbx, rcx
movabs rcx, 0xffff7e8a915d83a5
imul r9, rcx
movabs rcx, 0x63c7fa77b55dcea5
add rbx, rcx
add rbx, r9
mov qword [rsp + 0x8a8], rbx
movabs rax, 0x277cd7be659d6619
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 + 0x31d060]
xor r9, 0xffffffffe21867a9
mov qword [rsp + 0x8e0], r9
lea ecx, [r10 - 5]
and cl, r15b
rol r9, cl
movabs rax, 0x1442190000000000
imul r9, rax
mov qword [rsp + 0x8b8], r9
mov rcx, r9
ror rcx, 0x1b
not rcx
movabs rax, 0x9b2de6b2a9c790f8
imul rcx, rax
mov rax, rbx
sub rax, r9
lea rdx, [rcx + rax*4]
mov qword [rsp + 0x8e8], rdx
mov cl, byte [rsp + 0x70]
and cl, r15b
ror rdx, cl
movabs rax, 0x218d5991944b7958
mov r8, rdx
imul r8, rax
mov qword [rsp + 0x880], r8
mov rdi, r13
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], rax
jmp 0x14018b0a0
movabs r8, 0x218d5991944b7958
movabs rcx, 0xf15f2b7f5deb36ff
movabs rax, 0xff055d7b973b9c75
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 + 0x31d060]
not r9
imul r9, r8
imul r9, qword [rsp + 0x70]
imul r9, r10
movabs rax, 0xf5ed7e879088d6a9
xor rbx, rax
not rbx
xor r9, rbx
sub r9, rdi
mov qword [rsp + 0x910], r9
mov rcx, r9
call fcn.14015e014
mov qword [0x140321f90], rax
xor eax, eax
mov byte [rsp + 0x118], al
lea rcx, [rsp + 0x118]
call fcn.140164d34
mov dword [rsp + 0x268], r13d
mov dword [rsp + 0x268], 0xddfa2c5
mov qword [rsp + 0x918], r13
movabs rax, 0xabf26d6e6a2ce86c
mov qword [rsp + 0x918], rax
mov qword [rsp + 0x920], r13
movabs rax, 0xd40a2a1b19e0696
mov qword [rsp + 0x920], rax
movabs rcx, 0xcc5ad4ba2e0f4ba
add rcx, qword [rsp + 0x920]
movabs rax, 0x1a0b4fedad9f34e5
xor rcx, rax
mov rdi, qword [0x14031d058]
sub rcx, rdi
mov r11, qword [0x14031d050]
sub rcx, r11
movabs rax, 0x312ba68f1a4e31dc
sub rcx, rax
movabs rax, 0x7074598802e2124
xor rcx, rax
mov r10, qword [0x14031d048]
sub rcx, r10
movabs rax, 0x9829ab437ce834ba
add rcx, rax
mov rbx, qword [0x14031d040]
add rcx, rbx
movabs rax, 0xa56e8655ba37e2e6
xor rcx, rax
movabs rax, 0x2b02fde63253d8aa
sub rcx, rax
movabs rax, 0x2bc4c32cbb2063cd
xor rcx, rax
movabs rdx, 0x15ab43293b578659
add rdx, rcx
add rdx, rbx
not rdx
movabs rcx, 0xec3316b52e8b8226
mov r9, qword [0x14031d038]
mov rax, r9
xor rax, rcx
sub rdx, rax
movabs rax, 0x13cce94ad1747dd9
mov r8, qword [0x14031d030]
mov rcx, r8
xor rcx, rax
movabs rax, 0x1f4a9150c1e45c54
add rax, rdx
add rax, rcx
movabs rcx, 0x548de8c29205e036
xor rax, rcx
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x928], rax
mov qword [rsp + 0x920], rax
movabs rcx, 0xf33a52b3acf8ce03
add rcx, qword [rsp + 0x918]
movabs rax, 0xf355366253073efd
xor rcx, rax
sub rcx, rdi
sub rcx, r11
movabs rax, 0xedf047f526c7969
sub rcx, rax
movabs rax, 0xf8f8cd9ad5ede875
xor rcx, rax
sub rcx, r10
movabs rax, 0xc7d654bcc334d548
add rcx, rax
add rcx, rbx
movabs rax, 0x5a9179ab0eb4af0d
xor rcx, rax
movabs rax, 0x5f627dc78fdd9720
sub rcx, rax
movabs rax, 0x6e3b3cd38ad42669
xor rcx, rax
movabs rdx, 0x3483ce4709865402
add rdx, rcx
add rdx, rbx
not rdx
movabs rcx, 0x13cce94aceb3e18c
mov rax, r9
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5314c1e73
mov rcx, r8
xor rcx, rax
movabs rax, 0xe0b56d844a2be0e1
add rax, rdx
add rax, rcx
movabs rcx, 0x159ddc62b0ccb9e4
xor rax, rcx
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x930], rax
mov qword [rsp + 0x918], rax
mov eax, dword [rsp + 0x268]
add eax, 0x27480728
xor eax, 0x9c7cb94c
sub eax, r11d
sub eax, edi
add eax, 0x4d2498ec
xor eax, 0x85b5726c
sub eax, r10d
add eax, 0xcbae4b37
add eax, ebx
xor eax, 0xf3251e0
sub eax, 0x792f3741
xor eax, 0x8200b75e
lea ecx, [rbx - 0x3a70ba94]
add ecx, eax
not ecx
xor r9d, 0xa49d1e70
sub ecx, r9d
xor r8d, 0x5b62e18f
lea ebx, [r8 - 0x166c062a]
add ebx, ecx
xor ebx, 0x82647090
mov dword [rsp + 0x270], ebx
mov dword [rsp + 0x268], ebx
mov eax, dword [0x1403221d0]
test eax, eax
jne 0x14018b3e6
mov rdx, r13
mov qword [rsp + 0x938], rdx
jmp 0x14018b41c
mov dword [rsp + 0xb60], eax
lea rax, [rsp + 0xb50]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, dword [rsp + 0x60]
mov rcx, qword [rsp + 0xa0]
call fcn.140275ce0
mov rdx, rax
mov qword [rsp + 0x938], rax
movsxd rax, ebx
mov rcx, r13
cmp rdx, rax
setb cl
mov rdx, qword [rsp + 0x70]
and rdx, qword [rsp + 0x58]
mov rax, r13
cmp rcx, rdx
sete al
mov qword [rsp + 0x940], rax
mov qword [rsp + 0x920], r13
mov qword [rsp + 0x918], r13
mov dword [rsp + 0x268], r13d
movabs rax, 0x97816707e71ac69f
mov qword [rsp + 0x948], rax
movabs rdi, 0x3ba891cfad2132c
mov qword [rsp + 0x950], rdi
mov qword [rsp + 0x958], r13
movabs rax, 0xb84a8399e59eac8
mov qword [rsp + 0x960], rax
movabs rax, 0x30359783d92d0550
mov r8, qword [0x14031d070]
imul r8, rax
not r8
movabs rcx, 0xf47b57c66aecd780
mov rax, qword [0x14031d060]
xor rax, rcx
and r8, rax
mov qword [rsp + 0x968], r8
ror r8, 0x27
shr r8, 8
mov qword [rsp + 0x970], r8
movabs rax, 0x65e97c7d1b6f4ef0
mov r10, qword [0x14031d088]
imul r10, rax
add r10, rdi
movabs rax, 0xfeaafb77ffffffff
xor r10, rax
shr r10, 0x1f
not r10
mov qword [rsp + 0x978], r10
mov qword [rsp + 0x980], r10
movabs r9, 0xfc4576e3052decd4
lea rcx, [r10 + r9]
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xab
mov ebx, 0x8000003f
and ecx, ebx
jge 0x14018b568
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, r10
ror rax, cl
not rax
movabs rcx, 0x16b5c98195a3b040
imul rax, rcx
add r9, rax
mov qword [rsp + 0x988], r9
mov r11, r10
imul r11, r8
sub r11, r9
movabs rax, 0x97816707e71ac69f
xor r11, rax
mov qword [rsp + 0x990], r11
movzx ecx, r9b
xor ecx, 4
and ecx, 0xf
and ecx, ebx
jge 0x14018b5c0
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
rol r11, cl
mov rax, r9
sub rax, qword [0x14031d078]
xor r11, rax
mov rax, r9
imul rax, rdi
xor r11, rax
movabs rax, 0xb84a8399e59eac8
xor r11, rax
mov qword [rsp + 0x998], r11
mov rdi, r11
imul rdi, qword [0x14031d080]
and rdi, qword [0x14031d070]
xor rdi, rax
mov qword [rsp + 0x9a0], rdi
ror rdi, 8
imul rdi, r9
mov qword [rsp + 0x960], rdi
not r8
imul r8, r10
movabs rax, 0x7cd8a7de6fc55456
imul r8, rax
mov qword [rsp + 0x958], r8
imul rax, qword [0x14031d060], 0xfffffffff4b53d48
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x9a8], rax
mov al, r8b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, ebx
jge 0x14018b678
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0xa0]
ror rax, cl
add rax, r9
mov qword [rsp + 0x970], rax
not r9
imul r9, r11
imul r9, rax
movabs rax, 0x3ba891cfad2132c
imul r9, rax
movabs rax, 0xf5ed7e87983d1447
xor r10, rax
not r10
xor r9, r10
xor r8, rdi
imul r8, qword [0x14031d070]
sub r9, r8
mov qword [rsp + 0x9b0], r9
mov rcx, r9
call fcn.14015d8c4
mov qword [0x140321f78], rax
mov rcx, qword [rsp + 0x68]
and rcx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x940]
mov qword [rsp + 0x860], r13
mov qword [rsp + 0x858], r13
mov dword [rsp + 0x258], r13d
mov dword [rsp + 0x248], r13d
cmp rax, rcx
jne 0x14018b7c1
mov dword [rsp + 0x278], r13d
mov dword [rsp + 0x278], 0x63c00cc8
mov eax, dword [rsp + 0x278]
add eax, 0xd97ec134
xor eax, 0x56896b83
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x270df4be
xor eax, 0xa0b5dd78
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x8fc501ab
add eax, ecx
xor eax, 0x93ebe5aa
sub eax, 0xaea26a0
xor eax, 0x587fc8a2
lea edx, [rcx + 0x6c380a76]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xd765f958
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x289a06a7
add ecx, 0x53604f1
add ecx, edx
xor ecx, 0xa64db868
mov dword [rsp + 0x280], ecx
mov dword [rsp + 0x278], ecx
mov dword [rsp + 0x278], r13d
xor eax, eax
mov byte [rsp + 0x119], al
lea rcx, [rsp + 0x119]
call fcn.140165948
nop
jmp 0x14018b7fc
mov qword [rsp + 0x9b8], r13
movabs rax, 0x34502e921557e33c
mov qword [rsp + 0x9b8], rax
mov rax, qword [rsp + 0x9b8]
add rax, 0x6b03
movabs rcx, 0x9055366253094321
xor rax, rcx
sub rax, qword [0x14031d058]
sub rax, qword [0x14031d050]
movabs rcx, 0xedf047f5878e534
sub rax, rcx
movabs rcx, 0xec33204e7ad5bbbb
xor rax, rcx
sub rax, qword [0x14031d048]
movabs rcx, 0x16468673da1cff19
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0xec3316b5293b8eb3
xor rcx, rax
movabs rax, 0x13cce94a40a42f16
sub rcx, rax
movabs rax, 0xffd8662d614036ca
xor rcx, rax
movabs rax, 0x27be20fac49bb288
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94ad6c47146
mov rax, qword [0x14031d038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5293b8eb9
mov rcx, qword [0x14031d030]
xor rcx, rax
movabs rax, 0x13cc22b59e5d241b
add rax, rdx
add rax, rcx
movabs rcx, 0x8cb32a1e7becaf96
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 0x14018c242
movabs rax, 0xf850e182e66fc714
movabs r9, 0x2a02234b94b7c73f
movabs r10, 0xd5fddcb46b4838c1
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x68], r9
movabs rax, 0xc000000000000000
mov rdi, qword [0x14031d080]
imul rdi, rax
movabs rax, 0xd000000000000000
xor rdi, rax
mov rcx, rdi
imul rcx, r9
mov qword [rsp + 0x90], rcx
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, rdi
and r8, r9
imul r8, qword [rsi + rcx*8 + 0x31d060]
movabs rax, 0x90eb90889122c28
imul r8, rax
movabs rax, 0x5eeda2cce1dd7cf8
xor r8, rax
shr r8, 3
movabs rax, 0xffffff57d79e4fd1
mov rcx, rdi
imul rcx, rax
sub rcx, 0x1345fe7e
xor rcx, r8
xor rcx, qword [0x14031d060]
mov rax, r8
imul rax, qword [0x14031d070]
movabs rdx, 0xb9de928bde2df0f0
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x3e
shr rcx, 8
mov qword [rsp + 0x70], rcx
lea rcx, [rdi + r10]
xor rcx, 0xffffffffe0a3fbfd
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xded03034a1a35060
mov r11, qword [rsi + rcx*8 + 0x31d060]
imul r11, rax
add r11, r9
movabs rcx, 0xf87aa0c9e23a27b0
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rax, r11
xor rax, rdi
mov qword [rsp + 0x58], rax
lea rcx, [r11 + r10]
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xe1
and ecx, ebx
jge 0x14018baa3
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, 0xffffffffecba0182
mov qword [rsp + 0x58], rax
add r10, rax
mov r9, r11
imul r9, qword [rsp + 0x70]
sub r9, r10
movabs rax, 0xf850e182e66fc714
xor r9, rax
mov cl, r10b
xor cl, 0xfe
and cl, 0xf
rol r9, cl
mov rax, r10
sub rax, qword [0x14031d078]
xor r9, rax
movabs rax, 0x1484e9ec14e06cfe
imul rdx, rax
movabs rax, 0x7c7504c6b0dafe7f
add rdx, rax
xor r9, rdx
xor r9, r8
xor r9, rdi
mov rax, r9
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14018be95
sub rax, 1
je 0x14018bd4c
sub rax, 1
je 0x14018bc4a
cmp rax, 1
jne 0x14018bf55
mov rcx, r10
imul rcx, r11
movabs rax, 0xc1a72c6a2a2d6691
add rax, r9
xor rcx, rax
ror rcx, 6
shr rcx, 0xc
xor rcx, rdi
not rcx
mov qword [rsp + 0xa0], rcx
movabs rdx, 0x83573cdcfef6
add rdx, qword [0x14031d088]
movabs rax, 0xd57f59cc1c8fe6b1
xor rdx, rax
movzx eax, r9b
movzx ecx, cl
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9643c1209
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rdx, 0x2a02234b94b7c73f
imul rcx, rdx
mov eax, 0xb5e7c0e3
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 + 0x31d060]
and cl, 0xf
movabs rax, 0xc2fffe56ae640248
sub rax, qword [rsp + 0xa0]
shr rax, cl
mov qword [rsp + 0x68], rax
movabs rcx, 0xd606013cb2abe8f1
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 + 0x31d060]
imul rax, r9
sub rax, qword [rsp + 0x70]
xor qword [rsp + 0x68], rax
jmp 0x14018bf55
movabs rax, 0xaaaaaa1ab5fe3ddd
mov rcx, r9
xor rcx, rax
movabs rax, 0x1206ed77f3e191
imul rcx, rax
movabs rdx, 0xfff17ca8629c0ba1
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a93ee0f01
mov rdx, qword [rsp + 0x58]
imul rdx, rax
movabs r11, 0xa75eb94dd0f796c2
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be672eeabd
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 r10, r11
not r10
imul r10, qword [rsi + rcx*8 + 0x31d060]
xor r10, 0xffffffffe0abeb0d
lea ecx, [r9 + 0x1f]
and cl, r15b
rol r10, cl
movabs rcx, 0x2032050400000000
mov rax, qword [rsp + 0x90]
xor rax, rcx
movabs rcx, 0x7c7a7dc689ace1bc
and rax, rcx
imul r10, rax
mov rcx, r10
ror rcx, 0x14
not rcx
movabs rax, 0x9b2de6b2a309a268
imul rcx, rax
mov rax, r11
sub rax, r10
lea rax, [rcx + rax*4]
mov cl, byte [rsp + 0x70]
and cl, r15b
ror rax, cl
movabs rdx, 0x2a02234b94b7c73f
imul rax, rdx
mov qword [rsp + 0x68], rax
jmp 0x14018bf55
movabs rax, 0x7d6d4a97d716c121
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, 0xd5fddcb46b4838c0
mov rax, rdi
imul rax, rdx
movabs rdx, 0xf850e182e66fc714
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov cl, r10b
and cl, r15b
rol r8, cl
movabs rcx, 0xd5fddcb46b4838c1
add rcx, r9
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffe34b94b7c73f
mov rax, qword [rsi + rcx*8 + 0x31d060]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7e93a4bf0
or r8, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xf850e182e66fc714
imul rcx, rax
sub rcx, r10
mov rax, qword [rsp + 0x70]
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a6b8324bfd
xor rcx, rax
mov qword [rsp + 0x68], rcx
movabs rax, 0xcccccccccccccccd
mul rdi
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rdi
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, qword [rsp + 0x68]
div rcx
mov rcx, rdx
mov rdx, r9
imul rdx, r10
imul rdx, qword [rsp + 0x68]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, rdi
movabs rdi, 0x7895894776007e7
add rdi, rax
xor rdi, qword [rsp + 0x70]
mov al, r11b
add al, al
lea ecx, [rax + r11]
shl cl, 3
and cl, r15b
rol rdi, cl
not rdi
jmp 0x14018bf55
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 [0x14031d080]
mov rdx, qword [rsi + rcx*8 + 0x31d060]
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 + 0x70]
not rcx
imul rcx, r11
movabs rax, 0x7cd8a7de65c31a1c
imul rcx, rax
mov rax, r8
imul rax, rdi
mov rdi, rcx
xor rdi, rax
imul rax, qword [0x14031d060], 0xffffffffecba0182
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x90], rax
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, ebx
jge 0x14018bf33
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0x90]
ror rax, cl
movabs rcx, 0xd5fddcb46b4838c1
add rax, rcx
add rax, qword [rsp + 0x58]
mov qword [rsp + 0x70], rax
movabs rax, 0xff055d7b958810d1
mov rcx, qword [rsp + 0xa0]
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r8, rdi
imul r8, qword [rsi + rcx*8 + 0x31d060]
not r10
imul r10, r9
imul r10, qword [rsp + 0x70]
imul r10, qword [rsp + 0x68]
movabs rcx, 0xf5ed7e87923b5a0d
xor rcx, r11
not rcx
xor rcx, r10
sub rcx, r8
call fcn.1400c8e4c
mov qword [0x140321f90], rax
mov dword [rsp + 0x2a0], r13d
mov dword [rsp + 0x2a0], 0x23e6ed5b
mov eax, dword [rsp + 0x2a0]
add eax, 0xbd3dbaa8
xor eax, 0x4ffd4f42
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x349d482e
xor eax, 0xed67e81e
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xc01f460e
add eax, ecx
xor eax, 0x64261122
add eax, 0x3c78a059
xor eax, 0x9b012df0
lea edx, [rcx - 0x4c4cb62b]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xa6f4f53e
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x590b0ac1
add ecx, 0x4382df26
add ecx, edx
xor ecx, 0x87eb4fbe
mov dword [rsp + 0x2a0], ecx
movsxd rax, ecx
mov r8, qword [rsi + rax*8 + 0x321f30]
mov dword [rsp + 0x198], r13d
mov dword [rsp + 0x198], 0xa3294678
mov eax, dword [rsp + 0x198]
add eax, 0xb521d83a
xor eax, 0x6d8f4726
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
add eax, 0x157b0b79
xor eax, 0xada43a16
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x1c211fea
add eax, ecx
xor eax, 0xe565df68
sub eax, 0x6d7c3cb8
xor eax, 0xb27f6006
mov edx, dword [0x14031d030]
xor edx, 0x112b7a4b
sub edx, eax
mov eax, dword [0x14031d038]
xor eax, 0xeed485b4
sub edx, eax
sub edx, ecx
add edx, 0x119c7cd2
xor edx, 0xa936f3bc
mov dword [rsp + 0x198], edx
movsxd rax, edx
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, 0x34502e921557e33c
mov qword [rsp + 0x9b8], rax
mov rax, qword [rsp + 0x9b8]
add rax, 0x6b03
movabs rcx, 0x9055366253094321
xor rax, rcx
sub rax, qword [0x14031d058]
sub rax, qword [0x14031d050]
movabs rcx, 0xedf047f5878e534
sub rax, rcx
movabs rcx, 0xec33204e7ad5bbbb
xor rax, rcx
sub rax, qword [0x14031d048]
movabs rcx, 0x16468673da1cff19
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0xec3316b5293b8eb3
xor rcx, rax
movabs rax, 0x13cce94a40a42f16
sub rcx, rax
movabs rax, 0xffd8662d614036ca
xor rcx, rax
movabs rax, 0x27be20fac49bb288
add rax, rcx
add rdx, rax
not rdx
mov rax, qword [0x14031d038]
movabs rcx, 0x13cce94ad6c47146
xor rax, rcx
sub rdx, rax
mov rcx, qword [0x14031d030]
movabs rax, 0xec3316b5293b8eb9
xor rcx, rax
movabs rax, 0x13cc22b59e5d241b
add rax, rdx
add rax, rcx
movabs rcx, 0x8cb32a1e7becaf96
xor rax, rcx
mov qword [rsp + 0x9b8], rax
mov eax, dword [rax + r9]
mov qword [rsp + 0x9b8], r13
test eax, eax
movabs rax, 0xf850e182e66fc714
movabs r9, 0x2a02234b94b7c73f
movabs r10, 0xd5fddcb46b4838c1
jne 0x14018b93a
mov qword [rsp + 0x2f8], r13
movabs rax, 0xd63a745eabaf64c4
mov qword [rsp + 0xa0], rax
movabs rdi, 0x42c00e775995eb91
mov qword [rsp + 0x68], r13
movabs rax, 0xe26bbb03d9a3869e
movabs r11, 0xc61738acd2467e4f
mov rcx, qword [0x14031d070]
imul rcx, rax
not rcx
movabs r8, 0x39e8c7533a006cbf
mov rax, qword [0x14031d060]
xor rax, r8
and rcx, rax
ror rcx, 0x22
shr rcx, 8
mov qword [rsp + 0x90], rcx
movabs rax, 0xdc2902072174aa0
mov r8, qword [0x14031d070]
imul r8, rax
add r8, rdi
movabs rax, 0xdee8bf2cffffffff
xor r8, rax
shr r8, 0x1f
not r8
movabs r9, 0xbd3ff188a66a146f
lea rcx, [r8 + r9]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r8b
movzx ecx, byte [rsi + rcx*8 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x13
and ecx, ebx
jge 0x14018c324
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, r8
ror rax, cl
not rax
movabs rdx, 0xa34c2c3d3891f810
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x70], rcx
lea r10, [rcx + r9]
mov r9, r8
imul r9, qword [rsp + 0x90]
sub r9, r10
movabs rdx, 0xd63a745eabaf64c4
xor r9, rdx
mov cl, r10b
xor cl, 0xfc
and cl, 0xf
rol r9, cl
movabs rcx, 0xe6791d3dfab43110
imul rax, rcx
movabs rcx, 0x14018d9b1e7277df
add rax, rcx
xor r9, rax
mov rax, r10
sub rax, qword [0x14031d078]
xor r9, rax
xor r9, r11
mov rax, r9
and rax, r12
je 0x14018c695
sub rax, 1
je 0x14018c58f
sub rax, 1
je 0x14018c4be
cmp rax, 1
jne 0x14018c72f
mov rcx, r10
imul rcx, r8
movabs rax, 0x5b4dad443410e42d
add rax, r9
xor rcx, rax
ror rcx, 0x18
shr rcx, 0xc
not rcx
mov qword [rsp + 0xa0], rcx
movabs rdx, 0x83572e295808
add rdx, qword [0x14031d088]
movabs rax, 0xbdbd74f0c3586ced
xor rdx, rax
movzx eax, r9b
movzx ecx, cl
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db976c9b4fb
sub rax, r8
mov r8, rdx
xor r8, rax
mov rcx, r8
imul rcx, rdi
mov eax, 0xa7126611
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 + 0x31d060]
and cl, 0xf
movabs rdi, 0x79be239a8212649e
sub rdi, qword [rsp + 0xa0]
shr rdi, cl
movabs rax, 0xbd481610fc002b4d
mov rcx, qword [rsp + 0x70]
add rcx, rax
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 + 0x31d060]
imul rax, r9
sub rax, qword [rsp + 0x90]
xor rdi, rax
jmp 0x14018c72f
movabs rcx, 0xaaaaaa1aa70b9b2f
mov r8, r9
xor r8, rcx
movabs rcx, 0x1206ed65064763
imul r8, rcx
movabs rdx, 0xffff7e8a811ba9f3
mov rcx, qword [rsp + 0x70]
imul rcx, rdx
movabs rdx, 0xcc525c69f3cf8334
add r8, rdx
add r8, rcx
movabs rax, 0x277cd7be75db4c4f
mov rcx, r8
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r8
not r10
imul r10, qword [rsi + rcx*8 + 0x31d060]
xor r10, 0xfffffffff25e4dff
lea ecx, [r9 - 0x13]
and cl, r15b
rol r10, cl
movabs rax, 0x280a114600000000
imul r10, rax
mov rcx, r10
ror rcx, 0x36
not rcx
movabs rax, 0x9b2de6b2e8df39a0
imul rcx, rax
mov rax, r8
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x90]
and cl, r15b
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x14018c72f
movabs rax, 0x8603757a47a35e7
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, 0x29c58ba154509b3b
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r10b
and cl, r15b
rol r11, cl
movabs rcx, 0xbd3ff188a66a146f
add rcx, r9
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xe775995eb91
mov rax, qword [rsi + rcx*8 + 0x31d060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7fbcfed02
or r11, rax
mov rdi, qword [0x14031d070]
movabs rax, 0xd63a745eabaf64c4
imul rdi, rax
sub rdi, r10
mov rax, qword [rsp + 0x90]
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a6aac7ed0f
xor rdi, rax
mov rax, r9
imul rax, r10
imul rax, rdi
mov rdx, r8
sub rdx, rax
movabs rax, 0x78958946595a115
add rdx, rax
xor rdx, qword [rsp + 0x90]
movzx eax, r8b
imul ecx, eax, 0xea
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0x68], rdx
jmp 0x14018c72f
mov rcx, r9
imul rcx, qword [0x14031d080]
mov rdx, qword [0x14031d068]
and rcx, rdx
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0xf
imul r11, r10
mov rax, qword [rsp + 0x90]
not rax
imul rax, r8
movabs rcx, 0x7cd8a7de7736bcee
imul rax, rcx
mov qword [rsp + 0x68], rax
imul rcx, qword [0x14031d060], 0xffffffffe84612f0
sub rcx, rdx
mov qword [rsp + 0x90], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, ebx
jge 0x14018c70a
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0x90]
ror rax, cl
movabs rcx, 0xbd3ff188a66a146f
add rax, rcx
add rax, qword [rsp + 0x70]
mov qword [rsp + 0x90], rax
movabs rax, 0xff055d7b877db623
mov rcx, qword [rsp + 0xa0]
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 + 0x68]
imul r11, qword [rsi + rcx*8 + 0x31d060]
not r10
imul r10, r9
imul r10, qword [rsp + 0x90]
imul r10, rdi
movabs rcx, 0xf5ed7e8780cefcff
xor rcx, r8
not rcx
xor rcx, r10
sub rcx, r11
call fcn.1400c911c
mov qword [0x140321f50], rax
mov dword [rsp + 0x2a8], r13d
mov dword [rsp + 0x2a8], 0xaf0eac7f
mov eax, dword [rsp + 0x2a8]
add eax, 0x4e42fab1
xor eax, 0x9005e047
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x4e5057ee
xor eax, 0x3a1e9315
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x1f44a5a1
add eax, ecx
xor eax, 0x9ebc1418
sub eax, 0x888eca4
xor eax, 0x523a05c1
lea edx, [rcx + 0x5ea52e8c]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xc9390a3e
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x36c6f5c1
add ecx, 0xc9dbfc49
add ecx, edx
xor ecx, 0x4ac20ebe
mov dword [rsp + 0x2a8], ecx
movsxd rax, ecx
and qword [0x140322198], rax
mov dword [rsp + 0x2a8], r13d
movabs rax, 0xbb94b9970d421b4
mov qword [rsp + 0xa0], rax
movabs rax, 0xd8fdc00000000000
movabs r10, 0xf87fc68c892c2773
mov r11, qword [0x14031d070]
imul r11, rax
movabs rax, 0x4642500000000000
xor r11, rax
mov rcx, r11
imul rcx, r10
mov qword [rsp + 0x68], 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, r10
imul r9, qword [rsi + rcx*8 + 0x31d060]
movabs rax, 0xc31cd399fa69c848
imul r9, rax
shr r9, 3
movabs rax, 0x9b7e6a9909a30294
xor r9, rax
movabs rax, 0xffffff57c5481509
mov rcx, r11
imul rcx, rax
add rcx, 0x845931a
xor rcx, r9
xor rcx, qword [0x14031d060]
mov rax, r9
imul rax, qword [0x14031d070]
movabs rdx, 0xb9de928bccfbaa28
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x2a
shr rcx, 8
mov qword [rsp + 0x90], rcx
movabs rdi, 0x780397376d3d88d
lea rcx, [r11 + rdi]
xor rcx, 0xfffffffff275a125
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xb8a1a21bc17eb590
mov r8, qword [rsi + rcx*8 + 0x31d060]
imul r8, rax
sub r8, rdi
movabs rcx, 0xe3879c347d763f70
mov rax, r9
imul rax, rcx
xor r8, rax
shr r8, 0x1f
not r8
mov qword [rsp + 0x70], r8
mov rax, r8
xor rax, r11
mov qword [rsp + 0x58], rax
lea rcx, [r8 + rdi]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r8b
movzx ecx, byte [rsi + rcx*8 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x39
and ecx, ebx
jge 0x14018c9c7
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rdx, qword [rsp + 0x58]
ror rdx, cl
not rdx
imul rdx, r9
imul rax, rdx, 0x845931a
mov qword [rsp + 0x58], rax
add rdi, rax
imul r8, qword [rsp + 0x90]
sub r8, rdi
movabs rax, 0xbb94b9970d421b4
xor r8, rax
movzx ecx, dil
mov dword [rsp + 0x60], ecx
xor ecx, 6
and ecx, 0xf
and ecx, ebx
jge 0x14018ca19
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
rol r8, cl
mov rax, rdi
sub rax, qword [0x14031d078]
xor r8, rax
movabs rax, 0x8427372c83220aae
imul rdx, rax
movabs rax, 0x6d14ac615463c257
add rdx, rax
xor r8, rdx
xor r8, r9
xor r8, r11
mov rax, r8
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14018cdb2
sub rax, 1
je 0x14018cc6f
sub rax, 1
je 0x14018cb76
cmp rax, 1
jne 0x14018ce74
mov rcx, rdi
imul rcx, qword [rsp + 0x70]
movabs rax, 0x2d383e3fd4c4abf5
add rax, r8
xor rcx, rax
ror rcx, 0x12
shr rcx, 0xc
xor rcx, r11
not rcx
mov qword [rsp + 0xa0], rcx
movabs rbx, 0x83572e0aa42e
add rbx, qword [0x14031d088]
movabs rax, 0x702bc0b13c25c25
xor rbx, rax
movzx eax, cl
movzx ecx, r8b
imul ecx, eax
and cl, r15b
ror rbx, cl
shl rbx, 0xf
movabs rax, 0xf7ca7db976ea48d1
sub rax, qword [rsp + 0x70]
xor rbx, rax
mov rcx, rbx
imul rcx, r10
mov eax, 0xa7319a3b
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 + 0x31d060]
and cl, 0xf
movabs r10, 0xd9417c5d5023584c
sub r10, qword [rsp + 0xa0]
shr r10, cl
movabs rax, 0x7885dfbcc89c385
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 + 0x31d060]
imul rax, r8
sub rax, qword [rsp + 0x90]
xor r10, rax
jmp 0x14018ce79
movabs rax, 0xaaaaaa1aa7286705
mov rcx, r8
xor rcx, rax
movabs rax, 0x1206ed6525bb49
imul rcx, rax
movabs rdx, 0xfff17ca8704a5179
mov rax, r9
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a813855d9
mov rdx, qword [rsp + 0x58]
imul rdx, rax
movabs rbx, 0x29216856fd89b65e
add rbx, rcx
add rbx, rdx
movabs rax, 0x277cd7be75f8b065
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 rdi, rbx
not rdi
imul rdi, qword [rsi + rcx*8 + 0x31d060]
xor rdi, 0xfffffffff27db1d5
lea ecx, [r8 + 7]
and cl, r15b
rol rdi, cl
movabs rcx, 0xd3e5fbf96485449b
mov rax, qword [rsp + 0x68]
xor rax, rcx
movabs rcx, 0x7c7a7dc69b7abb64
and rax, rcx
imul rdi, rax
mov rcx, rdi
ror rcx, 0x2c
not rcx
movabs rax, 0x9b2de6b2e850c908
imul rcx, rax
mov rax, rbx
sub rax, rdi
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x90]
and cl, r15b
ror rdx, cl
mov rax, r10
mov r10, rdx
imul r10, rax
jmp 0x14018ce79
movabs rax, 0xfcfdd96a1d76c5ef
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, 0x780397376d3d88c
mov rax, r11
imul rax, rdx
movabs rdx, 0xbb94b9970d421b4
xor rax, rdx
not rax
shl rax, cl
xor r9, rax
mov eax, dword [rsp + 0x60]
and eax, ebx
jge 0x14018ccd1
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov cl, al
rol r9, cl
movabs rcx, 0x780397376d3d88d
add rcx, r8
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x68c892c2773
mov rax, qword [rsi + rcx*8 + 0x31d060]
imul rax, rdx
xor r9, rax
movabs rax, 0xffffc7a7fbec1128
or r9, rax
mov r10, qword [0x14031d070]
movabs rax, 0xbb94b9970d421b4
imul r10, rax
sub r10, rdi
mov rax, qword [rsp + 0x90]
sub rax, r9
xor r10, rax
movabs rax, 0xc7a7c6a6aae41125
xor r10, rax
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, r10
div rcx
mov rcx, rdx
mov rdx, r8
imul rdx, rdi
imul rdx, r10
shr rdx, cl
mov rax, qword [rsp + 0x70]
sub rax, rdx
sub rax, r11
movabs r11, 0x789589465b65d3f
add r11, rax
xor r11, qword [rsp + 0x90]
not r11
jmp 0x14018ce74
mov rax, r14
mul r9
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r9
sub rcx, rax
mov rax, r8
imul rax, qword [0x14031d080]
mov rdx, qword [rsi + rcx*8 + 0x31d060]
and rdx, rax
xor rdx, r9
and r9b, r15b
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, rdi
mov rcx, qword [rsp + 0x90]
not rcx
imul rcx, qword [rsp + 0x70]
movabs rax, 0x7cd8a7de771540c4
imul rcx, rax
mov rax, r9
imul rax, r11
mov r11, rcx
xor r11, rax
imul rax, qword [0x14031d060], 0x845931a
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x68], rax
mov al, r11b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, ebx
jge 0x14018ce52
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0x68]
ror rax, cl
movabs rcx, 0x780397376d3d88d
add rax, rcx
add rax, qword [rsp + 0x58]
mov qword [rsp + 0x90], rax
mov rbx, qword [rsp + 0x70]
movabs rax, 0xff055d7b875e4a09
mov rcx, qword [rsp + 0xa0]
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r9, r11
imul r9, qword [rsi + rcx*8 + 0x31d060]
not rdi
imul rdi, r8
imul rdi, qword [rsp + 0x90]
imul rdi, r10
movabs rcx, 0xf5ed7e8780ed00d5
xor rcx, rbx
not rcx
xor rcx, rdi
sub rcx, r9
call fcn.14015d540
mov qword [0x140321f48], rax
mov qword [rsp + 0x9c0], r13
movabs rax, 0x47afa6d50780da43
mov qword [rsp + 0x9c0], rax
mov qword [rsp + 0x9c8], r13
movabs rax, 0x6f408a9a3c440bbd
mov qword [rsp + 0x9c8], rax
movabs rcx, 0xf33a52b242c85103
add rcx, qword [rsp + 0x9c8]
movabs rax, 0x765536625305d4cc
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0xedf047f4e2de7f2
sub rcx, rax
movabs rax, 0xf8f8cd9c45c72769
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x47d654beaed9a6f6
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179acabd3fda1
xor rcx, rax
movabs rax, 0x5f627dc602d923f4
sub rcx, rax
movabs rax, 0x563b3cd43ff7b66d
xor rcx, rax
movabs rdx, 0x3483ce4869cf7d97
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ac90b1f98
mov r10, qword [0x14031d038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b536f4e067
mov r11, qword [0x14031d030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d7e9c0322ed
add rdx, rax
add rdx, rcx
movabs rax, 0xea1faabccbfeb628
xor rdx, rax
mov qword [rsp + 0x9c8], rdx
movabs rcx, 0xf33a52aa41fefc83
add rcx, qword [rsp + 0x9c0]
movabs rax, 0x21d5366252fdd403
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0x7120fb80c9d4740c
add rcx, rax
movabs rax, 0xf8f8cda46693a13b
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x7d654c98beaf129
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179b5ccb9a203
xor rcx, rax
movabs rax, 0x5f627ddfa3781ef6
sub rcx, rax
movabs rax, 0xfa3b3cd8409c66f8
xor rcx, rax
movabs rax, 0xb483ce50329350c8
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94aa907fa46
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b556f805b9
xor r11, rax
movabs rax, 0xe0b56d5eb898f31b
add rcx, rax
add rcx, r11
movabs rax, 0xfad7718d46773a96
xor rcx, rax
mov qword [rsp + 0x9c0], rcx
and rcx, rdx
mov rax, r13
cmp qword [0x1403221c8], rcx
sete al
mov qword [0x1403221c8], rax
mov qword [rsp + 0x9c8], r13
mov qword [rsp + 0x9c0], r13
movabs r11, 0xf95f490e4004f084
movabs r8, 0xf1efcd1425aa374b
mov qword [rsp + 0xa0], r8
movabs rax, 0x6d2ac00000000000
mov rbx, qword [0x14031d070]
imul rbx, rax
movabs rax, 0xa34dd00000000000
xor rbx, rax
mov qword [rsp + 0x68], rbx
mov rcx, rbx
imul rcx, r8
mov qword [rsp + 0x90], rcx
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
imul r10, qword [rsi + rcx*8 + 0x31d060]
movabs rax, 0x35f2698ca1750cd8
imul r10, rax
shr r10, 3
movabs rax, 0xec3fd6744e0dc2b7
xor r10, rax
movabs rax, 0xffffff57d57645f1
mov rcx, rbx
imul rcx, rax
sub rcx, 0x1645f38a
xor rcx, r10
xor rcx, qword [0x14031d060]
mov rax, r10
imul rax, qword [0x14031d070]
movabs rdx, 0xb9de928bdcc5fad0
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x2a
shr rcx, 8
mov qword [rsp + 0x70], rcx
movabs r8, 0xe1032ebda55c8b5
lea rcx, [rbx + r8]
xor rcx, 0xffffffffe24bf1dd
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x54148a48f7842160
mov r9, qword [rsi + rcx*8 + 0x31d060]
imul r9, rax
sub r9, r8
movabs rcx, 0x7a30bd22731b4ab0
mov rax, r10
imul rax, rcx
xor r9, rax
shr r9, 0x1f
not r9
mov qword [rsp + 0x58], r9
mov rax, r9
xor rax, rbx
mov qword [rsp + 0x60], rax
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xc1
mov edi, 0x8000003f
and ecx, edi
mov ebx, 0xffffffc0
jge 0x14018d2a3
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, qword [rsp + 0x60]
ror rax, cl
not rax
imul rax, r10
imul rcx, rax, 0xffffffffe9ba0c76
mov qword [rsp + 0x60], rcx
add r8, rcx
imul r9, qword [rsp + 0x70]
sub r9, r8
xor r9, r11
mov cl, r8b
xor cl, 0xfe
and cl, 0xf
rol r9, cl
movabs rcx, 0xf3668bc1c68b0092
imul rax, rcx
movabs rcx, 0x744991ed672b007
add rax, rcx
xor r9, rax
mov rax, r8
sub rax, qword [0x14031d078]
xor r9, rax
xor r9, r10
mov rdx, qword [rsp + 0x68]
xor r9, rdx
mov rax, r9
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14018d69e
sub rax, 1
je 0x14018d550
sub rax, 1
je 0x14018d445
cmp rax, 1
jne 0x14018d762
mov r11, r8
imul r11, qword [rsp + 0x58]
movabs rax, 0x31c0395e78cc4965
add rax, r9
xor r11, rax
ror r11, 0x12
shr r11, 0xc
xor r11, rdx
not r11
movabs rcx, 0x83573e34f4d6
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0xe92b793af7a1ce5
xor rdx, rax
movzx eax, r9b
movzx ecx, r11b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db966d41829
sub rax, qword [rsp + 0x58]
mov rcx, rdx
xor rcx, rax
mov qword [rsp + 0x58], rcx
movabs rax, 0xf1efcd1425aa374b
imul rcx, rax
mov eax, 0xb70fcac3
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 + 0x31d060]
and cl, 0xf
movabs rax, 0x4e3793b4ef4cafd4
sub rax, r11
shr rax, cl
mov qword [rsp + 0xa0], rax
movabs rcx, 0xe1857741fe182c5
add rcx, qword [rsp + 0x60]
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 + 0x31d060]
imul rax, r9
sub rax, qword [rsp + 0x70]
xor qword [rsp + 0xa0], rax
jmp 0x14018d762
movabs rax, 0xaaaaaa1ab71637fd
mov rcx, r9
xor rcx, rax
movabs rax, 0x1206ed751bebb1
imul rcx, rax
movabs rdx, 0xfff17ca860740181
mov rax, r10
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a91060521
mov rdx, qword [rsp + 0x60]
imul rdx, rax
movabs r8, 0xb98a6789c3e6d76
add r8, rcx
add r8, rdx
mov qword [rsp + 0x58], r8
movabs rax, 0x277cd7be65c6e09d
mov rcx, r8
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
not r8
imul r8, qword [rsi + rcx*8 + 0x31d060]
xor r8, 0xffffffffe243e12d
mov cl, r9b
sub cl, r12b
and cl, r15b
rol r8, cl
movabs rcx, 0x347a61c600000000
mov rax, qword [rsp + 0x90]
xor rax, rcx
movabs rcx, 0x7c7a7dc68b44eb9c
and rax, rcx
imul r8, rax
mov rcx, r8
ror rcx, 0x24
not rcx
movabs rax, 0x9b2de6b2a8a98ae8
imul rcx, rax
mov rax, qword [rsp + 0x58]
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x70]
and cl, r15b
ror rdx, cl
movabs rax, 0xf1efcd1425aa374b
imul rdx, rax
mov qword [rsp + 0xa0], rdx
jmp 0x14018d762
movabs rax, 0xac471b013b849b4b
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, 0xe1032ebda55c8b4
mov rax, qword [rsp + 0x68]
imul rax, rdx
xor rax, r11
not rax
shl rax, cl
xor r10, rax
mov cl, r8b
and cl, r15b
rol r10, cl
movabs rcx, 0xe1032ebda55c8b5
add rcx, r9
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xd1425aa374b
mov rax, qword [rsi + rcx*8 + 0x31d060]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a7ebd241d0
or r10, rax
mov rcx, qword [0x14031d070]
imul rcx, r11
sub rcx, r8
mov rax, qword [rsp + 0x70]
sub rax, r10
xor rcx, rax
movabs rax, 0xc7a7c6a6bada41dd
xor rcx, rax
mov qword [rsp + 0xa0], rcx
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x68]
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 + 0xa0]
div rcx
mov rcx, rdx
mov rdx, r9
imul rdx, r8
imul rdx, qword [rsp + 0xa0]
shr rdx, cl
mov rcx, qword [rsp + 0x58]
mov rax, rcx
sub rax, rdx
sub rax, qword [rsp + 0x68]
mov rdx, rax
movabs rax, 0x789589475880dc7
add rdx, rax
xor rdx, qword [rsp + 0x70]
movzx eax, cl
imul ecx, eax, 0xf8
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0x68], rdx
jmp 0x14018d762
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 [0x14031d080]
mov rdx, qword [rsi + rcx*8 + 0x31d060]
and rdx, rax
xor rdx, r10
and r10b, r15b
mov cl, r10b
mov r10, rdx
ror r10, cl
imul r10, r8
mov rcx, qword [rsp + 0x70]
not rcx
imul rcx, qword [rsp + 0x58]
movabs rax, 0x7cd8a7de672b103c
imul rcx, rax
mov rax, r10
imul rax, qword [rsp + 0x68]
xor rcx, rax
mov qword [rsp + 0x68], rcx
imul rax, qword [0x14031d060], 0xffffffffe9ba0c76
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x90], rax
mov al, cl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x14018d740
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, qword [rsp + 0x90]
ror rax, cl
movabs rcx, 0xe1032ebda55c8b5
add rax, rcx
add rax, qword [rsp + 0x60]
mov qword [rsp + 0x70], rax
movabs rax, 0xff055d7b97601af1
xor r11, rax
mov rax, r14
mul r11
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r11, rax
xor r10, qword [rsp + 0x68]
imul r10, qword [rsi + r11*8 + 0x31d060]
not r8
imul r8, r9
imul r8, qword [rsp + 0x70]
imul r8, qword [rsp + 0xa0]
movabs rcx, 0xf5ed7e8790d3502d
xor rcx, qword [rsp + 0x58]
not rcx
xor rcx, r8
sub rcx, r10
call fcn.14015d51c
mov qword [0x140321f38], rax
mov r11d, r13d
mov dword [rsp + 0x60], r13d
mov edi, 0xb1e12a56
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 0x14018d850
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea rcx, [r9 + rcx*2]
mov r10d, 0x976b928
cmp r9, rcx
je 0x14018d847
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 0x14018d81c
cmp r10d, r11d
jne 0x14018d93c
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 + 0xa0], rdx
shr rcx, 0x20
cmp rdx, r11
je 0x14018d937
mov r8d, dword [rdx + 0x18]
test r8d, r8d
je 0x14018d937
mov edx, dword [rdx + 0x20]
mov qword [rsp + 0x68], rdx
dec r8d
mov dword [rsp + 0x88], r8d
mov esi, r8d
lea rdx, [rdx + r8*4]
mov edx, dword [rdx + r11]
add rdx, r11
mov r9d, 0x976b928
mov r10b, byte [rdx]
add rdx, r12
mov qword [rsp + 0x90], rdx
mov dl, r10b
test r10b, r10b
mov r10d, 0x4764996c
je 0x14018d924
mov r11, qword [rsp + 0x90]
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 0x14018d8d5
mov dword [rsp + 0x80], r14d
movabs r14, 0xaaaaaaaaaaaaaaab
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0x88]
mov r9d, dword [rsp + 0x80]
cmp r9d, edi
je 0x14018d944
test r8d, r8d
mov rdx, qword [rsp + 0x68]
jne 0x14018d88f
mov r11d, dword [rsp + 0x60]
mov rax, qword [rax]
jmp 0x14018d7e9
mov r8, qword [rsp + 0xa0]
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 0x14018da14
lea rax, [r8 + rcx]
cmp r9, rax
jae 0x14018da14
mov r11d, 0x976b928
mov dword [rsp + 0x60], r11d
mov edi, r11d
mov al, byte [r9]
cmp al, 0x2e
je 0x14018d9b9
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 0x14018d990
mov dword [rsp + 0x60], r11d
add r9, r12
mov al, byte [r9]
test al, al
je 0x14018d9fe
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 0x14018d9c6
mov dword [rsp + 0x88], r11d
mov r11d, dword [rsp + 0x60]
mov edi, dword [rsp + 0x88]
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14018d93c
mov dword [rsp + 0x190], r13d
mov dword [rsp + 0x190], 0xe3233df8
mov eax, dword [rsp + 0x190]
add eax, 0x5bb974b2
xor eax, 0xa06edbe
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x5178bb5c
xor eax, 0x28723f2c
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xb17e5305
add eax, ecx
xor eax, 0x6b60f0ef
add eax, 0x3a9f9d44
xor eax, 0xfb765d0d
lea edx, [rcx + 0x588cf1e1]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xcd6ee426
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x32911bd9
add ecx, 0x3eb7e35
add ecx, edx
xor ecx, 0x7a956636
mov dword [rsp + 0x190], ecx
movsxd rax, ecx
lea rsi, [0x140000000]
mov rcx, qword [rsi + rax*8 + 0x321f30]
mov eax, dword [rsp + 0x1410]
xor rcx, rax
xor rcx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x1400]
lea rdx, [0x1403221c8]
call r9
nop
mov dword [rsp + 0x190], r13d
movabs rax, 0x977cbcc88ac6310f
mov qword [rsp + 0xa0], rax
movabs r10, 0x931ff06a71e3885
mov qword [rsp + 0x68], r10
movabs rax, 0xffc74c4cb0000000
mov r9, qword [0x14031d068]
imul r9, rax
movabs rax, 0xcd2cff6b70000000
xor r9, rax
mov qword [rsp + 0x90], 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 + 0x31d060]
movabs rax, 0x436c5c9fa0110938
imul r8, rax
shr r8, 3
movabs rax, 0x66055e1bbd405e00
xor r8, rax
movabs rax, 0xffffff57c6a3879b
mov rcx, r9
imul rcx, rax
sub rcx, 0x37e10cb8
xor rcx, r8
xor rcx, qword [0x14031d060]
mov rax, r8
imul rax, qword [0x14031d070]
movabs rdx, 0xb9de928bcf1038ba
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0xe
shr rcx, 8
mov qword [rsp + 0x70], rcx
movabs rdi, 0xf6ce00f958e1c77b
lea rcx, [r9 + rdi]
xor rcx, 0xfffffffff19e33b7
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x9e895624e8e412f0
mov r11, qword [rsi + rcx*8 + 0x31d060]
imul r11, rax
add r11, r10
movabs rcx, 0x160e5c7ff1d3132c
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xab
mov edi, 0x8000003f
and ecx, edi
jge 0x14018dc75
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, 0xffffffffc81ef348
mov qword [rsp + 0x58], rax
movabs r9, 0xf6ce00f958e1c77b
add r9, rax
mov r10, r11
imul r10, qword [rsp + 0x70]
sub r10, r9
movabs rax, 0x977cbcc88ac6310f
xor r10, rax
movzx ecx, r9b
mov dword [rsp + 0x60], ecx
xor ecx, 4
and ecx, 0xf
and ecx, edi
jge 0x14018dcd0
sub ecx, r12d
or ecx, ebx
add ecx, r12d
rol r10, cl
movabs rax, 0x795c03ae37bc2468
imul rdx, rax
movabs rax, 0x74060d8ad1a67519
sub rdx, rax
xor r10, rdx
mov rax, r9
sub rax, qword [0x14031d078]
xor r10, rax
xor r10, r8
mov rdx, qword [rsp + 0x90]
xor r10, rdx
mov rax, r10
and rax, r12
je 0x14018e0a6
sub rax, 1
je 0x14018df3a
sub rax, 1
je 0x14018de3b
cmp rax, 1
jne 0x14018e15f
mov rcx, r9
imul rcx, r11
movabs rax, 0x50de292aa7714a79
add rax, r10
xor rcx, rax
ror rcx, 0x34
shr rcx, 0xc
xor rcx, rdx
not rcx
mov qword [rsp + 0xa0], rcx
movabs rdx, 0x83572de136c0
add rdx, qword [0x14031d088]
movabs rax, 0xf64c85813e1bd141
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97501da43
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0x931ff06a71e3885
imul rcx, rax
mov eax, 0xa4da08a9
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 + 0x31d060]
and cl, 0xf
movabs rax, 0xa61bfaeb69f9e83a
sub rax, qword [rsp + 0xa0]
shr rax, cl
mov qword [rsp + 0x68], rax
movabs rcx, 0xf6d62581af403fe1
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 + 0x31d060]
imul rax, r10
sub rax, qword [rsp + 0x70]
xor qword [rsp + 0x68], rax
jmp 0x14018e15f
movabs rax, 0xaaaaaa1aa4c3f597
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed66ce29db
imul rcx, rax
movabs rdx, 0xfff17ca873a1c3eb
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a82d3c74b
mov rdx, qword [rsp + 0x58]
imul rdx, rax
movabs r11, 0x202b9760ef6ad554
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be761322f7
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 + 0x31d060]
xor r9, 0xfffffffff1962347
lea ecx, [r10 + 0x15]
and cl, r15b
rol r9, cl
movabs rcx, 0xefa7bbff676ed609
mov rax, qword [rsp + 0x78]
xor rax, rcx
movabs rcx, 0x7c7a7dc6989129f6
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 5
not rcx
movabs rax, 0x9b2de6b2e7fe8340
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x70]
and cl, r15b
ror rdx, cl
movabs rax, 0x931ff06a71e3885
imul rdx, rax
mov qword [rsp + 0x68], rdx
jmp 0x14018e15f
movabs rax, 0xc87cb39d6b67c21d
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, 0xf6ce00f958e1c77a
mov rax, qword [rsp + 0x90]
imul rax, rdx
movabs rdx, 0x977cbcc88ac6310f
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov eax, dword [rsp + 0x60]
and eax, edi
jge 0x14018dfa0
sub eax, r12d
or eax, ebx
add eax, r12d
mov cl, al
rol r8, cl
movabs rcx, 0xf6ce00f958e1c77b
add rcx, r10
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffff06a71e3885
mov rax, qword [rsi + rcx*8 + 0x31d060]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7f80783ba
or r8, rax
mov rcx, qword [0x14031d070]
movabs rax, 0x977cbcc88ac6310f
imul rcx, rax
sub rcx, r9
mov rax, qword [rsp + 0x70]
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a6a90f83b7
xor rcx, rax
mov qword [rsp + 0x68], rcx
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x90]
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 + 0x68]
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r9
imul rdx, qword [rsp + 0x68]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, qword [rsp + 0x90]
movabs rdx, 0x7895894665dcfad
add rdx, rax
xor rdx, qword [rsp + 0x70]
mov al, r11b
shl al, 3
lea ecx, [rax + r11]
add cl, cl
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0x90], rdx
jmp 0x14018e15f
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 [0x14031d080]
mov rdx, qword [rsi + rcx*8 + 0x31d060]
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 + 0x70]
not rcx
imul rcx, r11
movabs rax, 0x7cd8a7de74fed256
imul rcx, rax
mov rax, r8
imul rax, qword [rsp + 0x90]
xor rcx, rax
mov qword [rsp + 0x90], rcx
imul rdx, qword [0x14031d060], 0xffffffffc81ef348
sub rdx, qword [0x14031d068]
mov al, cl
not al
movzx ecx, al
movzx eax, byte [0x14031d068]
xor ecx, eax
and ecx, edi
jge 0x14018e145
sub ecx, r12d
or ecx, ebx
add ecx, r12d
ror rdx, cl
movabs rax, 0xf6ce00f958e1c77b
add rax, rdx
add rax, qword [rsp + 0x58]
mov qword [rsp + 0x70], rax
movabs rax, 0xff055d7b84b5d89b
mov rcx, qword [rsp + 0xa0]
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 + 0x90]
imul r8, qword [rsi + rcx*8 + 0x31d060]
not r9
imul r9, r10
imul r9, qword [rsp + 0x70]
imul r9, qword [rsp + 0x68]
movabs rcx, 0xf5ed7e8783069247
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r8
call fcn.14015d63c
mov qword [0x140321f38], rax
mov r9d, r13d
mov dword [rsp + 0x60], r13d
mov dword [rsp + 0x88], 0x8d35fd84
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 0x14018e24d
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r8 + rcx*2]
mov r10d, 0x9eeae82
jmp 0x14018e23f
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r10d
mov r10d, ecx
imul r10d, edx
add r8, 2
cmp r8, r11
jne 0x14018e21f
cmp r10d, r9d
jne 0x14018e3fa
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 + 0xa0], rdx
shr rcx, 0x20
cmp rdx, r11
je 0x14018e3fa
mov r8d, dword [rdx + 0x18]
test r8d, r8d
je 0x14018e3fa
mov r9d, dword [rdx + 0x20]
mov qword [rsp + 0x68], r9
dec r8d
mov dword [rsp + 0x80], r8d
mov edx, r8d
mov qword [rsp + 0x90], rdx
lea rdx, [r9 + r8*4]
mov edx, dword [rdx + r11]
add rdx, r11
mov r9d, 0x9eeae82
mov r10b, byte [rdx]
add rdx, r12
mov qword [rsp + 0x78], rdx
mov dl, r10b
test r10b, r10b
mov r10d, 0x4764996c
je 0x14018e316
mov r11, qword [rsp + 0x78]
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 0x14018e2d5
mov dword [rsp + 0x58], edi
mov edi, 0x8000003f
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0x80]
mov r9d, dword [rsp + 0x58]
cmp r9d, dword [rsp + 0x88]
je 0x14018e338
test r8d, r8d
mov r9, qword [rsp + 0x68]
jne 0x14018e28d
mov r9d, dword [rsp + 0x60]
jmp 0x14018e3fa
mov r9, qword [rsp + 0xa0]
mov edx, dword [r9 + 0x1c]
add rdx, r11
mov eax, dword [r9 + 0x24]
add rax, r11
mov r8, qword [rsp + 0x90]
movzx eax, word [rax + r8*2]
mov r8d, dword [rdx + rax*4]
add r8, r11
cmp r8, r9
jbe 0x14018e402
lea rax, [r9 + rcx]
cmp r8, rax
jae 0x14018e402
mov edx, 0x9eeae82
mov r9d, edx
mov dword [rsp + 0x60], edx
mov dword [rsp + 0x88], edx
mov al, byte [r8]
cmp al, 0x2e
je 0x14018e3b9
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 0x14018e392
mov dword [rsp + 0x60], r9d
add r8, r12
mov al, byte [r8]
test al, al
je 0x14018e3e9
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 0x14018e3c3
mov dword [rsp + 0x88], edx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14018e1f2
call r8
movabs rax, 0xcb5acd9c74abeabc
mov qword [rsp + 0xa0], rax
movabs rcx, 0x3c7851b73ebd99dd
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x90], r13
movabs rax, 0x123330dfc128461a
movabs r11, 0x87af1c45659cf1df
mov rdx, qword [0x14031d070]
imul rdx, rax
not rdx
movabs r8, 0x87af1c456466318b
mov rax, qword [0x14031d060]
xor rax, r8
and rdx, rax
ror rdx, 0xa
shr rdx, 8
mov qword [rsp + 0x78], rdx
movabs rax, 0xffd479a799d58688
mov r9, qword [0x14031d080]
imul r9, rax
add r9, rcx
movabs rax, 0x3195593100000000
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xc387ae48c1426623
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x37
and ecx, edi
jge 0x14018e4e3
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, r9
ror rax, cl
not rax
movabs rdx, 0xbbd42b311fac9d2c
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x70], rcx
add r8, rcx
mov r10, r9
imul r10, qword [rsp + 0x78]
sub r10, r8
movabs rdx, 0xcb5acd9c74abeabc
xor r10, rdx
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
movabs rcx, 0xfba91c4b336efafc
imul rax, rcx
movabs rcx, 0x6affc91667341737
add rax, rcx
xor r10, rax
mov rax, r8
mov rdx, qword [0x14031d078]
sub rax, rdx
xor r10, rax
xor r10, r11
mov rax, r10
and rax, r12
je 0x14018e866
sub rax, 1
je 0x14018e761
sub rax, 1
je 0x14018e68a
cmp rax, 1
jne 0x14018e8f6
mov rcx, r8
imul rcx, r9
movabs rax, 0xd7fd1df77732af5
add rax, r10
xor rcx, rax
ror rcx, 0x30
shr rcx, 0xc
not rcx
mov qword [rsp + 0xa0], rcx
movabs rdx, 0x835715948f24
add rdx, qword [0x14031d088]
movabs rax, 0xc3052b309fcdc985
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db94d7463df
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
movabs rax, 0x3c7851b73ebd99dd
imul rcx, rax
mov eax, 0x9cafb135
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 + 0x31d060]
and cl, 0xf
movabs rax, 0x68653e8d19bd7e7a
sub rax, qword [rsp + 0xa0]
shr rax, cl
mov qword [rsp + 0x68], rax
movabs rdx, 0xc38fd2d12f6e281d
mov rcx, qword [rsp + 0x70]
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 + 0x31d060]
imul rax, r10
sub rax, qword [rsp + 0x78]
xor qword [rsp + 0x68], rax
jmp 0x14018e8f6
movabs rcx, 0xaaaaaa1a9cb64c0b
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed5ebb9047
imul r9, rcx
movabs rdx, 0xffff7e8abaa67ed7
mov rcx, qword [rsp + 0x70]
imul rcx, rdx
movabs rdx, 0xdbe123f83218f494
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be4e669b6b
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 + 0x31d060]
xor r8, 0xffffffffc9e39adb
lea ecx, [r10 + 9]
and cl, r15b
rol r8, cl
movabs rax, 0x706a008020000000
imul r8, rax
mov rcx, r8
ror rcx, 0x2a
not rcx
movabs rax, 0x9b2de6b206286530
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, 0x3c7851b73ebd99dd
imul rdx, rax
mov qword [rsp + 0x68], rdx
jmp 0x14018e8f6
movabs rax, 0xdc9ef5513cce86f9
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, 0x34a532638b541543
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r8b
and cl, r15b
rol r11, cl
movabs rcx, 0xc387ae48c1426623
add rcx, r10
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x11b73ebd99dd
mov rax, qword [rsi + rcx*8 + 0x31d060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7c0723a26
or r11, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xcb5acd9c74abeabc
imul rcx, rax
sub rcx, r8
mov rax, qword [rsp + 0x78]
sub rax, r11
xor rcx, rax
movabs rax, 0xc7a7c6a6917a3a2b
xor rcx, rax
mov qword [rsp + 0x68], rcx
mov rax, r10
imul rax, r8
imul rax, rcx
mov rdx, r9
sub rdx, rax
movabs rax, 0x78958945e287631
add rdx, rax
xor rdx, qword [rsp + 0x78]
movzx eax, r9b
imul ecx, eax, 0xe
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0x90], rdx
jmp 0x14018e8f6
mov rcx, qword [0x14031d080]
imul rcx, r10
and rcx, rdx
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x1f
imul r11, r8
mov rax, qword [rsp + 0x78]
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de4c8b6bca
imul rax, rcx
mov qword [rsp + 0x90], rax
imul rcx, qword [0x14031d060], 0x1fac054
mov rdx, qword [0x14031d068]
sub rcx, rdx
mov qword [rsp + 0x78], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x14018e8d7
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, qword [rsp + 0x78]
ror rax, cl
movabs rcx, 0xc387ae48c1426623
add rax, rcx
add rax, qword [rsp + 0x70]
mov qword [rsp + 0x78], rax
movabs rax, 0xff055d7bbcc06107
mov rcx, qword [rsp + 0xa0]
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 + 0x90]
imul r11, qword [rsi + rcx*8 + 0x31d060]
not r8
imul r8, r10
imul r8, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x68]
imul rcx, r8
movabs rax, 0xf5ed7e87bb732bdb
xor r9, rax
not r9
xor rcx, r9
sub rcx, r11
call fcn.1400c8e04
mov qword [0x140321f70], rax
mov r9d, r13d
mov dword [rsp + 0x58], r13d
mov dword [rsp + 0x60], 0xdd3ed956
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 0x14018e9f0
psrldq xmm0, 8
movq r10, xmm0
movzx ecx, cx
shr rcx, 1
lea rcx, [r10 + rcx*2]
mov r11d, 0x23417092
cmp r10, rcx
je 0x14018e9e7
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 0x14018e9bc
cmp r11d, r9d
jne 0x14018eb9a
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 + 0xa0], rdx
shr rcx, 0x20
cmp rdx, r11
je 0x14018eb9a
mov r8d, dword [rdx + 0x18]
test r8d, r8d
je 0x14018eb9a
mov r9d, dword [rdx + 0x20]
mov qword [rsp + 0x68], r9
dec r8d
mov dword [rsp + 0x88], r8d
mov esi, r8d
lea rdx, [r11 + r8*4]
mov edx, dword [rdx + r9]
add rdx, r11
mov r9d, 0x23417092
mov r10b, byte [rdx]
add rdx, r12
mov qword [rsp + 0x90], rdx
mov dl, r10b
test r10b, r10b
mov r10d, 0x4764996c
je 0x14018eabd
mov r11, qword [rsp + 0x90]
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 0x14018ea76
mov dword [rsp + 0x80], edi
mov edi, 0x8000003f
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0x88]
mov r9d, dword [rsp + 0x80]
cmp r9d, dword [rsp + 0x60]
je 0x14018eadc
test r8d, r8d
mov r9, qword [rsp + 0x68]
jne 0x14018ea30
mov r9d, dword [rsp + 0x58]
jmp 0x14018eb9a
mov r9, qword [rsp + 0xa0]
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 0x14018eba2
lea rax, [r9 + rcx]
cmp r8, rax
jae 0x14018eba2
mov r9d, 0x23417092
mov dword [rsp + 0x58], r9d
mov r11d, r9d
mov dword [rsp + 0x60], r9d
mov al, byte [r8]
cmp al, 0x2e
je 0x14018eb56
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 0x14018eb2d
mov dword [rsp + 0x58], r9d
add r8, r12
mov al, byte [r8]
test al, al
je 0x14018eb89
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 0x14018eb60
mov dword [rsp + 0x60], r11d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14018e989
call r8
movabs rax, 0xd41b8d0326800364
mov qword [rsp + 0xa0], rax
movabs r10, 0xc8a4eb8e0c09e025
mov qword [rsp + 0x68], r10
mov r9, qword [0x14031d070]
shl r9, 0x3e
movabs rax, 0xf000000000000000
xor r9, rax
mov qword [rsp + 0x90], 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 + 0x31d060]
movabs rax, 0xd583797cfc74a3c0
imul r8, rax
shr r8, 3
movabs rax, 0x85c961504bb2dd3f
xor r8, rax
movabs rax, 0xffffff57bafa2ca3
mov rcx, r9
imul rcx, rax
sub rcx, 0x32fb2590
xor rcx, r8
xor rcx, qword [0x14031d060]
mov rax, r8
imul rax, qword [0x14031d070]
movabs rdx, 0xb9de928bb3499382
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x16
shr rcx, 8
mov qword [rsp + 0x70], rcx
movabs r10, 0x375b1471f3f61fdb
lea rcx, [r9 + r10]
xor rcx, 0xffffffff8dc7988f
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xa96fa66461b147a0
mov r11, qword [rsi + rcx*8 + 0x31d060]
imul r11, rax
sub r11, r10
movabs rcx, 0x21dcad1587eff5d0
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 + r10]
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x93
and ecx, edi
jge 0x14018ed2d
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, 0xffffffffcd04da70
mov qword [rsp + 0x58], rax
lea r9, [rax + r10]
mov r10, r11
imul r10, qword [rsp + 0x70]
sub r10, r9
movabs rax, 0xd41b8d0326800364
xor r10, rax
mov cl, r9b
xor cl, 0xfc
and cl, 0xf
rol r10, cl
movabs rax, 0x9a903ce5cec59230
imul rdx, rax
movabs rax, 0x7c718470fedac559
sub rdx, rax
xor r10, rdx
mov rax, r9
sub rax, qword [0x14031d078]
xor r10, rax
xor r10, r8
mov rdx, qword [rsp + 0x90]
xor r10, rdx
mov rax, r10
and rax, r12
je 0x14018f136
sub rax, 1
je 0x14018efd8
sub rax, 1
je 0x14018eed9
cmp rax, 1
jne 0x14018f1f8
mov rcx, r9
imul rcx, r11
movabs rax, 0x5220456b46f10e71
add rax, r10
xor rcx, rax
ror rcx, 0x2c
shr rcx, 0xc
xor rcx, rdx
not rcx
mov qword [rsp + 0xa0], rcx
movabs rdx, 0x835751b89d88
add rdx, qword [0x14031d088]
movabs rax, 0x37d99109e955a2d9
xor rdx, rax
movzx eax, r10b
movzx ecx, cl
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db90958717b
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0xc8a4eb8e0c09e025
imul rcx, rax
mov eax, 0xd883a391
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 + 0x31d060]
and cl, 0xf
movabs rax, 0x6adb529e6df2c21a
sub rax, qword [rsp + 0xa0]
shr rax, cl
mov qword [rsp + 0x68], rax
movabs rcx, 0x376338fa1dfdf339
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 + 0x31d060]
imul rax, r10
sub rax, qword [rsp + 0x70]
xor qword [rsp + 0x68], rax
jmp 0x14018f1f8
movabs rax, 0xaaaaaa1ad89a5eaf
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed1a9782e3
imul rcx, rax
movabs rdx, 0xfff17ca80ff868d3
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8afe8a6c73
mov rdx, qword [rsp + 0x58]
imul rdx, rax
movabs r11, 0xe6856cfde1991fd4
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be0a4a89cf
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 + 0x31d060]
xor r9, 0xffffffff8dcf887f
lea ecx, [r10 - 0x13]
and cl, r15b
rol r9, cl
movabs rcx, 0x182a7d8260000000
mov rax, qword [rsp + 0x78]
xor rax, rcx
movabs rcx, 0x7c7a7dc6e4c882ce
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0x16
not rcx
movabs rax, 0x9b2de6b316982fa0
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x70]
and cl, r15b
ror rdx, cl
movabs rax, 0xc8a4eb8e0c09e025
imul rdx, rax
mov qword [rsp + 0x68], rdx
jmp 0x14018f1f8
movabs rax, 0x4f15362c9f5d3e6d
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, 0x375b1471f3f61fda
mov rax, qword [rsp + 0x90]
imul rax, rdx
movabs rdx, 0xd41b8d0326800364
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov cl, r9b
and cl, r15b
rol r8, cl
movabs rcx, 0x375b1471f3f61fdb
add rcx, r10
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffeb8e0c09e025
mov rax, qword [rsi + rcx*8 + 0x31d060]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7845e2882
or r8, rax
mov rcx, qword [0x14031d070]
movabs rax, 0xd41b8d0326800364
imul rcx, rax
sub rcx, r9
mov rax, qword [rsp + 0x70]
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a6d556288f
xor rcx, rax
mov qword [rsp + 0x68], rcx
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x90]
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 + 0x68]
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r9
imul rdx, qword [rsp + 0x68]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, qword [rsp + 0x90]
movabs rdx, 0x78958941a046495
add rdx, rax
xor rdx, qword [rsp + 0x70]
movzx eax, r11b
imul ecx, eax, 0xea
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0x90], rdx
jmp 0x14018f1f8
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 [0x14031d080]
mov rdx, qword [rsi + rcx*8 + 0x31d060]
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 + 0x70]
not rcx
imul rcx, r11
movabs rax, 0x7cd8a7de08a7796e
imul rcx, rax
mov rax, r8
imul rax, qword [rsp + 0x90]
xor rcx, rax
mov qword [rsp + 0x90], rcx
imul rax, qword [0x14031d060], 0xffffffffcd04da70
mov rdx, qword [0x14031d068]
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 0x14018f1d9
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, qword [rsp + 0x78]
ror rax, cl
movabs rcx, 0x375b1471f3f61fdb
add rax, rcx
add rax, qword [rsp + 0x58]
mov qword [rsp + 0x70], rax
movabs rax, 0xff055d7bf8ec73a3
mov rcx, qword [rsp + 0xa0]
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 + 0x90]
imul r8, qword [rsi + rcx*8 + 0x31d060]
not r9
imul r9, r10
imul r9, qword [rsp + 0x70]
imul r9, qword [rsp + 0x68]
movabs rcx, 0xf5ed7e87ff5f397f
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r8
call fcn.14015d858
mov qword [0x140321f40], rax
mov r10d, r13d
mov dword [rsp + 0x58], r13d
mov dword [rsp + 0x60], 0x7573b056
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 0x14018f2e3
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r8 + rcx*2]
mov r9d, 0x213f157e
jmp 0x14018f2d5
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 0x14018f2b5
cmp r9d, r10d
jne 0x14018f3bf
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 + 0xa0], rdx
shr rcx, 0x20
cmp rdx, r10
je 0x14018f3ba
mov r8d, dword [rdx + 0x18]
test r8d, r8d
je 0x14018f3ba
mov r9d, dword [rdx + 0x20]
mov qword [rsp + 0x68], r9
dec r8d
mov dword [rsp + 0x88], r8d
mov edx, r8d
mov qword [rsp + 0x90], rdx
lea rdx, [r9 + r8*4]
mov r11d, dword [rdx + r10]
add r11, r10
mov edx, 0x213f157e
mov r9b, byte [r11]
mov byte [rsp + 0x50], r9b
add r11, r12
test r9b, r9b
mov r9d, 0x4764996c
je 0x14018f3a6
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 0x14018f366
mov dword [rsp + 0x80], r10d
mov r10, qword [rax + 0x30]
mov r8d, dword [rsp + 0x88]
mov edx, dword [rsp + 0x80]
cmp edx, dword [rsp + 0x60]
je 0x14018f3c7
test r8d, r8d
mov r9, qword [rsp + 0x68]
jne 0x14018f323
mov r10d, dword [rsp + 0x58]
mov rax, qword [rax]
jmp 0x14018f288
mov r11, qword [rsp + 0xa0]
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov eax, dword [r11 + 0x24]
add rax, r10
mov r8, qword [rsp + 0x90]
movzx eax, word [rax + r8*2]
mov r8d, dword [rdx + rax*4]
add r8, r10
cmp r8, r11
jbe 0x14018f48a
lea rax, [r11 + rcx]
cmp r8, rax
jae 0x14018f48a
mov eax, 0x213f157e
mov r10d, eax
mov dword [rsp + 0x58], eax
mov edx, eax
mov dword [rsp + 0x60], eax
mov al, byte [r8]
cmp al, 0x2e
je 0x14018f447
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r9d
xor ecx, r10d
mov r10d, eax
imul r10d, ecx
add r8, r12
mov al, byte [r8]
cmp al, 0x2e
jne 0x14018f420
mov dword [rsp + 0x58], r10d
add r8, r12
mov al, byte [r8]
test al, al
je 0x14018f474
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r9d
xor ecx, edx
mov edx, eax
imul edx, ecx
add r8, r12
mov al, byte [r8]
test al, al
jne 0x14018f451
mov dword [rsp + 0x60], edx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14018f3bf
xor ecx, ecx
call r8
movabs rax, 0x7549021aa1a887ca
mov qword [rsp + 0xa0], rax
movabs rcx, 0x2a16c75b27de3073
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x90], r13
movabs rax, 0x930ade9f056584a8
movabs r11, 0x4c583f0d35200e2c
mov rdx, qword [0x14031d070]
imul rdx, rax
not rdx
movabs r9, 0xb3a7c0f2bce55480
mov rax, qword [0x14031d060]
xor rax, r9
and rdx, rax
ror rdx, 0x3c
shr rdx, 8
mov qword [rsp + 0x78], rdx
movabs rax, 0x47c96b86e0e97998
mov r9, qword [0x14031d070]
imul r9, rax
add r9, rcx
movabs rax, 0x503a9df80000000
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xd5e938a4d821cf8d
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xaf
and ecx, edi
jge 0x14018f570
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, r9
ror rax, cl
not rax
mov qword [rsp + 0x70], rax
movabs rcx, 0xb2ecfca16a60fd90
imul rax, rcx
mov qword [rsp + 0x60], rax
lea r10, [rax + r8]
mov r8, r9
mov rdx, qword [rsp + 0x78]
imul r8, rdx
sub r8, r10
movabs rax, 0x7549021aa1a887ca
xor r8, rax
movzx ecx, r10b
mov dword [rsp + 0x58], ecx
and ecx, 0xf
and ecx, edi
jge 0x14018f5c8
sub ecx, r12d
or ecx, ebx
add ecx, r12d
rol r8, cl
mov rax, r10
sub rax, qword [0x14031d078]
xor r8, rax
movabs rcx, 0x1af7d961cbfce7b0
mov rax, qword [rsp + 0x70]
imul rax, rcx
movabs rcx, 0x22bd50a2e560ac57
add rax, rcx
xor r8, rax
xor r8, r11
mov rax, r8
and eax, 3
je 0x14018f915
sub rax, 1
je 0x14018f804
sub rax, 1
je 0x14018f72d
cmp rax, 1
jne 0x14018f9a7
mov rcx, r10
imul rcx, r9
movabs rax, 0xc88188317cf1d593
add rax, r8
xor rcx, rax
ror rcx, 4
shr rcx, 0xc
not rcx
mov qword [rsp + 0xa0], rcx
movabs rdx, 0x83571d7d4ebc
add rdx, qword [0x14031d088]
movabs rax, 0xd56bbddc8e47a1b3
xor rdx, rax
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9459da247
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
movabs rax, 0x2a16c75b27de3073
imul rcx, rax
mov eax, 0x944670ad
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 + 0x31d060]
and cl, 0xf
movabs rax, 0x5196e9b68ac512c4
sub rax, qword [rsp + 0xa0]
shr rax, cl
mov qword [rsp + 0x68], rax
movabs rdx, 0xd5f15d2d3ee3cfef
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, r8
imul rax, qword [rsi + rcx*8 + 0x31d060]
imul rax, r8
sub rax, qword [rsp + 0x78]
xor qword [rsp + 0x68], rax
jmp 0x14018f9a7
movabs rcx, 0xaaaaaa1a945f8d93
mov r9, r8
xor r9, rcx
movabs rcx, 0x1206ed565251df
imul r9, rcx
movabs rdx, 0xffff7e8ab24fbf4f
mov rcx, qword [rsp + 0x60]
imul rcx, rdx
movabs rdx, 0xc08c2fc63efe490f
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be468f5af3
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 + 0x31d060]
xor r10, 0xffffffffc10a5b43
lea ecx, [r8 + 0x11]
and cl, r15b
rol r10, cl
movabs rax, 0x284a6d06a0000000
imul r10, rax
mov rcx, r10
ror rcx, 4
not rcx
movabs rax, 0x9b2de6b2258f6350
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
movabs rax, 0x2a16c75b27de3073
imul rdx, rax
mov qword [rsp + 0x68], rdx
jmp 0x14018f9a7
movabs rax, 0xc7ba3d8859e54a6f
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, 0x8ab6fde55e577835
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0x58]
and eax, edi
jge 0x14018f854
sub eax, r12d
or eax, ebx
add eax, r12d
mov cl, al
rol r11, cl
movabs rcx, 0xd5e938a4d821cf8d
add rcx, r8
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x75b27de3073
mov rax, qword [rsi + rcx*8 + 0x31d060]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7c89bfbbe
or r11, rax
mov rcx, qword [0x14031d070]
movabs rax, 0x7549021aa1a887ca
imul rcx, rax
sub rcx, r10
mov rax, qword [rsp + 0x78]
sub rax, r11
xor rcx, rax
movabs rax, 0xc7a7c6a69993fbb3
xor rcx, rax
mov qword [rsp + 0x68], rcx
mov rax, r8
imul rax, r10
imul rax, rcx
mov rdx, r9
sub rdx, rax
movabs rax, 0x789589456c1b7a9
add rdx, rax
xor rdx, qword [rsp + 0x78]
movzx eax, r9b
imul ecx, eax, 0x16
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0x90], rdx
jmp 0x14018f9a7
mov rcx, r8
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d070]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x2c
imul r11, r10
mov rax, rdx
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de4462aa52
imul rax, rcx
mov qword [rsp + 0x90], rax
imul rcx, qword [0x14031d060], 0xffffffff89c55aac
mov rdx, qword [0x14031d068]
sub rcx, rdx
mov qword [rsp + 0x78], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x14018f988
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, qword [rsp + 0x78]
ror rax, cl
movabs rcx, 0xd5e938a4d821cf8d
add rax, rcx
add rax, qword [rsp + 0x60]
mov qword [rsp + 0x78], rax
movabs rax, 0xff055d7bb429a09f
mov rcx, qword [rsp + 0xa0]
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 + 0x90]
imul r11, qword [rsi + rcx*8 + 0x31d060]
not r10
imul r10, r8
imul r10, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x68]
imul rcx, r10
movabs rax, 0xf5ed7e87b39aea43
xor r9, rax
not r9
xor rcx, r9
sub rcx, r11
call fcn.14015e158
mov qword [0x140321f78], rax
movabs rax, 0x6605dccb263e11ca
mov qword [rsp + 0xa0], rax
movabs r9, 0xc1133863960ed6e9
mov qword [rsp + 0x68], r9
movabs rax, 0xf4dcd06690cda000
mov r10, qword [0x14031d070]
imul r10, rax
movabs rax, 0x756232e6f6eb7000
xor r10, rax
mov rcx, r10
imul rcx, r9
mov qword [rsp + 0x90], rcx
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r10
and r8, r9
imul r8, qword [rsi + rcx*8 + 0x31d060]
movabs rax, 0x380d3b1315ef6108
imul r8, rax
movabs rax, 0x81ac0f91b3d0c1e7
xor r8, rax
shr r8, 3
movabs rax, 0xa83a031f9b
mov rcx, r10
imul rcx, rax
sub rcx, 0xe51c5cc
xor rcx, r8
xor rcx, qword [0x14031d060]
mov rax, r8
imul rax, qword [0x14031d070]
movabs rdx, 0x46216d7433b0a0ba
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x22
shr rcx, 8
mov qword [rsp + 0x78], rcx
movabs r11, 0x3eecc79c69f12917
lea rcx, [r10 + r11]
xor rcx, 0xd3eabb7
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xa9c09fdc6d207b58
mov r9, qword [rsi + rcx*8 + 0x31d060]
imul r9, rax
sub r9, r11
movabs rcx, 0x5d3d373419a43368
mov rax, r8
imul rax, rcx
xor r9, rax
shr r9, 0x1f
not r9
mov qword [rsp + 0x70], r9
mov rax, r9
xor rax, r10
mov qword [rsp + 0x58], rax
lea rcx, [r9 + r11]
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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xab
and ecx, edi
jge 0x14018fba4
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, 0xfffffffff1ae3a34
mov qword [rsp + 0x60], rax
add r11, rax
imul r9, qword [rsp + 0x78]
sub r9, r11
movabs rax, 0x6605dccb263e11ca
xor r9, rax
movzx ecx, r11b
mov dword [rsp + 0x58], ecx
xor ecx, 4
and ecx, 0xf
and ecx, edi
jge 0x14018fbf2
sub ecx, r12d
or ecx, ebx
add ecx, r12d
rol r9, cl
movabs rax, 0x109323b843127154
imul rdx, rax
movabs rax, 0x1e0b8ceb41e66011
sub rdx, rax
xor r9, rdx
mov rax, r11
sub rax, qword [0x14031d078]
xor r9, rax
xor r9, r8
xor r9, r10
mov rax, r9
and rax, r12
je 0x14018ffbf
sub rax, 1
je 0x14018fe65
sub rax, 1
je 0x14018fd63
cmp rax, 1
jne 0x140190080
mov rdx, r11
imul rdx, qword [rsp + 0x70]
movabs rax, 0x5d1365e8f8b5f7ed
add rax, r9
xor rdx, rax
ror rdx, 0x18
shr rdx, 0xc
xor rdx, r10
not rdx
mov qword [rsp + 0xa0], rdx
movabs rcx, 0xffff7ca8d141aec0
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0xc191bd1bf3aba72d
xor rdx, rax
movzx eax, byte [rsp + 0xa0]
movzx ecx, r9b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0x835824689a14243
sub rax, qword [rsp + 0x70]
mov rcx, rdx
xor rcx, rax
mov qword [rsp + 0x70], rcx
movabs rdx, 0xc1133863960ed6e9
imul rcx, rdx
mov eax, 0xa7856f57
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 + 0x31d060]
and cl, 0xf
movabs rax, 0x93439f3f09dbb386
sub rax, qword [rsp + 0xa0]
shr rax, cl
mov qword [rsp + 0x68], rax
movabs rcx, 0x3ee4a31414f0097d
add rcx, qword [rsp + 0x60]
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 + 0x31d060]
imul rax, r9
sub rax, qword [rsp + 0x78]
xor qword [rsp + 0x68], rax
jmp 0x140190080
movabs rax, 0x555555e558636d97
mov rcx, r9
xor rcx, rax
movabs rax, 0xffedf9129a6eb1db
imul rcx, rax
movabs rdx, 0xe83578f015beb
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0x81757e735f4b
mov rdx, qword [rsp + 0x60]
imul rdx, rax
movabs r11, 0xe5c6afaacdaef208
add r11, rcx
add r11, rdx
mov qword [rsp + 0x70], r11
movabs rax, 0xd88328418ab3baf7
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
not r11
imul r11, qword [rsi + rcx*8 + 0x31d060]
xor r11, 0xd36bb47
lea ecx, [r9 + 0x15]
and cl, r15b
rol r11, cl
movabs rcx, 0x838582396431b1f6
mov rax, qword [rsp + 0x90]
and rax, rcx
movabs rcx, 0x8300000020000000
xor rax, rcx
imul r11, rax
mov rdx, r11
not rdx
movabs rax, 0x19348653455f38d0
imul rdx, rax
sub rdx, r11
add rdx, qword [rsp + 0x70]
shl rdx, 2
mov cl, byte [rsp + 0x78]
and cl, r15b
ror rdx, cl
movabs rax, 0xc1133863960ed6e9
imul rdx, rax
mov qword [rsp + 0x68], rdx
jmp 0x140190080
movabs rax, 0x96e77d8a5dfa7573
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, 0x3eecc79c69f12916
mov rax, r10
imul rax, rdx
movabs rdx, 0x6605dccb263e11ca
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov eax, dword [rsp + 0x58]
and eax, edi
jge 0x14018fec6
sub eax, r12d
or eax, ebx
add eax, r12d
mov cl, al
rol r8, cl
movabs rcx, 0x3eecc79c69f12917
add rcx, r9
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 + 0x31d060]
movabs rdx, 0xc1133863960ed6e9
imul rax, rdx
xor r8, rax
movabs rax, 0x385804a71bba
or r8, rax
mov rcx, qword [0x14031d070]
movabs rax, 0x6605dccb263e11ca
imul rcx, rax
sub rcx, r11
mov rax, qword [rsp + 0x78]
sub rax, r8
xor rcx, rax
movabs rax, 0x3858395955af1bb7
xor rcx, rax
mov qword [rsp + 0x68], rcx
movabs rax, 0xcccccccccccccccd
mul r10
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, r10
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, qword [rsp + 0x68]
div rcx
mov rcx, rdx
mov rdx, r9
imul rdx, r11
imul rdx, qword [rsp + 0x68]
shr rdx, cl
mov rcx, qword [rsp + 0x70]
mov rax, rcx
sub rax, rdx
sub rax, r10
movabs rdx, 0x78958946502a853
mov r10, rax
sub r10, rdx
xor r10, qword [rsp + 0x78]
mov al, cl
shl al, 3
add cl, al
add cl, cl
and cl, r15b
rol r10, cl
not r10
jmp 0x140190080
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 [0x14031d080]
mov rdx, qword [rsi + rcx*8 + 0x31d060]
and rdx, rax
xor rdx, r8
and r8b, r15b
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r11
mov rdx, qword [rsp + 0x78]
not rdx
imul rdx, qword [rsp + 0x70]
movabs rax, 0x83275821885e4a56
imul rdx, rax
mov rax, r8
imul rax, r10
mov r10, rdx
xor r10, rax
imul rax, qword [0x14031d060], 0xfffffffff1ae3a34
mov rdx, qword [0x14031d068]
sub rax, rdx
mov qword [rsp + 0x90], rax
mov al, r10b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x14019005e
sub ecx, r12d
or ecx, ebx
add ecx, r12d
mov rax, qword [rsp + 0x90]
ror rax, cl
movabs rcx, 0x3eecc79c69f12917
add rax, rcx
add rax, qword [rsp + 0x60]
mov qword [rsp + 0x78], rax
movabs rax, 0xfaa2847815409b
mov rcx, qword [rsp + 0xa0]
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r8, r10
imul r8, qword [rsi + rcx*8 + 0x31d060]
not r11
imul r11, r9
imul r11, qword [rsp + 0x78]
imul r11, qword [rsp + 0x68]
movabs rcx, 0xa1281787fa60a47
xor rcx, qword [rsp + 0x70]
not rcx
xor rcx, r11
sub rcx, r8
call fcn.14015d87c
mov qword [0x140321f40], rax
mov dword [rsp + 0x2c0], r13d
mov dword [rsp + 0x2c0], 0x41e1671a
mov eax, dword [rsp + 0x2c0]
add eax, 0x1b70ab2
xor eax, 0xa00693bb
sub eax, dword [0x14031d050]
sub eax, dword [0x14031d058]
sub eax, 0x506ab41e
xor eax, 0x83dcb2d4
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x2bac99e8
add eax, ecx
xor eax, 0xd20bb1d7
sub eax, 0x7cab3164
xor eax, 0x787a6221
lea edx, [rcx - 0x4fe6b505]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xcc06da7e
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x33f92581
add ecx, 0x9a79cc0c
add ecx, edx
xor ecx, 0x6b964f7e
mov dword [rsp + 0x2c0], ecx
mov rax, qword [0x140322198]
xor byte [rax], cl
mov dword [rsp + 0x2c0], r13d
mov qword [rsp + 0x9d0], r13
movabs rax, 0x39f227316fdd4b08
mov qword [rsp + 0x9d0], rax
movabs rcx, 0xf33a52b244ede983
add rcx, qword [rsp + 0x9d0]
movabs rax, 0xed536625305d6f2
xor rcx, rax
sub rcx, qword [0x14031d058]
sub rcx, qword [0x14031d050]
movabs rax, 0x7120fb80b1cba745
add rcx, rax
movabs rax, 0xf8f8cd9c4398f887
xor rcx, rax
sub rcx, qword [0x14031d048]
movabs rax, 0x87d654beabef9e74
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0x5a9179aca9611baf
xor rcx, rax
movabs rax, 0x5f627dc60f48982a
sub rcx, rax
movabs rax, 0x923b3cd43ee4d901
xor rcx, rax
movabs rax, 0xb483ce4867b8ec43
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94ac913b5fa
mov rax, qword [0x14031d038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b536ec4a05
mov rcx, qword [0x14031d030]
xor rcx, rax
movabs rax, 0xe0b56d7ea4a05acf
add rdx, rax
add rdx, rcx
movabs rax, 0xb2cd8e61e74d1e2
xor rdx, rax
mov qword [rsp + 0x9d0], rdx
mov rcx, qword [0x140322198]
xor qword [rcx + 0x68], rdx
mov qword [rsp + 0x9d0], r13
movabs rax, 0x16fce362f8024580
mov r9, qword [0x14031d070]
imul r9, rax
movabs rax, 0x6ed8a9dccb23074b
xor r9, rax
mov qword [rsp + 0xa0], r9
movabs r10, 0x1ea6f7adebd61080
mov rcx, r9
imul rcx, r10
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 + 0x31d060]
movabs rax, 0xb5d7ac627a58c83c
imul r11, rax
shr r11, 3
movabs rax, 0x72823b2c7aa97e57
xor r11, rax
mov qword [rsp + 0x68], r11
movabs rax, 0xffffff57df4f7667
mov r10, r9
imul r10, rax
sub r10, 0x1187754c
xor r10, r11
xor r10, qword [0x14031d060]
mov rax, r11
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bd6fcc946
imul rax, rcx
not rax
and r10, rax
ror r10, 0x37
shr r10, 8
movabs r8, 0xe15908521429ef80
lea rcx, [r9 + r8]
xor rcx, 0xffffffffe872c24b
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xb8d41614866f72c8
mov r13, qword [rsi + rcx*8 + 0x31d060]
imul r13, rax
movabs rax, 0x1ea6f7adebd61080
add r13, rax
movabs rcx, 0x5bf38d8be0091600
mov rax, r11
imul rax, rcx
xor r13, rax
shr r13, 0x1f
not r13
lea rcx, [r8 + 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 + 0x31d060]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x57
and ecx, edi
jge 0x140190419
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, 0xffffffffee788ab4
mov qword [rsp + 0x90], rax
add r8, rax
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
mov r9, r13
imul r9, r10
sub r9, r8
movabs rax, 0x3788f300febabb2b
xor r9, rax
rol r9, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r9, rax
movabs rax, 0x6ddb6699f3689a00
imul rdx, rax
movabs rax, 0x126c024a97104000
sub rdx, rax
xor r9, rdx
xor r9, r11
xor r9, qword [rsp + 0xa0]
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, r9
mov r14, qword [0x14031d080]
imul rax, r14
mov r11, qword [rsi + rdx*8 + 0x31d060]
and r11, rax
xor r11, qword [rsp + 0x68]
ror r11, cl
imul r11, r8
not r10
imul r10, r13
movabs rax, 0x7cd8a7de6d1223aa
imul r10, rax
mov rax, r11
imul rax, qword [rsp + 0xa0]
xor r10, rax
mov al, r10b
not al
movzx ecx, al
mov r8, qword [0x14031d068]
movzx eax, r8b
xor ecx, eax
and ecx, edi
jge 0x14019051b
sub ecx, r12d
or ecx, ebx
add ecx, r12d
imul rdx, qword [0x14031d060], 0xffffffffee788ab4
sub rdx, r8
ror rdx, cl
add rdx, qword [rsp + 0x90]
movabs rax, 0x1ea6f7adebd61080
imul rdx, rax
movabs rax, 0x126c024a97104000
sub rdx, rax
movabs rax, 0x1ea6f7adebd6107f
sub rax, qword [rsp + 0x90]
imul rdx, rax
imul rdx, r9
movabs rcx, 0xf5ed7e879aea63bb
xor rcx, r13
not rcx
xor rcx, rdx
xor r11, r10
imul r11, r14
sub rcx, r11
call fcn.14015d4f8
mov qword [0x140321f30], rax
add rsp, 0x13c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret