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

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x490
xor r12d, r12d
mov dword [rsp + 0xb8], r12d
movabs rax, 0x17a5fed800000000
mov rbx, qword [0x14033a070]
imul rbx, rax
movabs rax, 0xfe71730b00000000
xor rbx, rax
mov qword [rsp + 0x4d8], rbx
movabs rdi, 0x2735903edf32b0b8
mov rcx, rbx
imul rcx, rdi
movabs r14, 0xaaaaaaaaaaaaaaab
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r13, [0x14033a060]
mov r10, rbx
and r10, rdi
imul r10, qword [r13 + rcx*8]
movabs rax, 0x832bf5abcf661b0
imul r10, rax
shr r10, 3
movabs rax, 0x2e76fcfcd4cfc25f
xor r10, rax
movabs rax, 0xffffff57ea1d0227
mov r9, rbx
imul r9, rax
sub r9, 0x2246ea90
xor r9, r10
xor r9, qword [0x14033a060]
mov rax, r10
imul rax, qword [0x14033a070]
movabs rcx, 0xb9de928be3aebd06
imul rax, rcx
not rax
and r9, rax
ror r9, 0xf
shr r9, 8
movabs r8, 0xd8ca6fc120cd4f48
lea rcx, [rbx + r8]
xor rcx, 0xffffffffdd20b60b
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xc7bb35d1b29daf60
mov r11, qword [r13 + rcx*8]
imul r11, rax
add r11, rdi
movabs rcx, 0x87c7c85e97fb60
mov rax, r10
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rsi, r11
xor rsi, rbx
lea rcx, [r11 + r8]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x17
mov ebx, 0x8000003f
and ecx, ebx
lea r15d, [r12 + 1]
jge 0x14022706c
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rsi, cl
not rsi
imul rsi, r10
imul r8, rsi, 0xffffffffddb91570
sub r8, rdi
mov rdi, r11
imul rdi, r9
sub rdi, r8
mov rax, r8
sub rax, qword [0x14033a078]
xor rdi, rax
movabs rax, 0x312fa1495ba46880
imul rsi, rax
movabs rax, 0x2225f30a11dd8440
sub rsi, rax
xor rdi, rsi
xor rdi, r10
xor rdi, qword [rsp + 0x4d8]
movabs rax, 0x676be5eba979c2dd
xor rdi, rax
mov rax, r14
mul r10
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, r10
sub rdx, rax
mov rax, rdi
mov r14, qword [0x14033a080]
imul rax, r14
mov rsi, qword [r13 + rdx*8]
and rsi, rax
xor rsi, r10
and r10b, 0x3f
mov cl, r10b
ror rsi, cl
imul rsi, r8
not r9
imul r9, r11
movabs rax, 0x7cd8a7de584057ea
imul r9, rax
mov rax, rsi
imul rax, qword [rsp + 0x4d8]
xor r9, rax
imul r10, qword [0x14033a060], 0xffffffffddb91570
mov rdx, qword [0x14033a068]
sub r10, rdx
mov al, r9b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, ebx
jge 0x14022715e
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror r10, cl
lea rcx, [r8 + r10]
not r8
imul r8, rdi
imul rcx, r8
movabs rax, 0x2735903edf32b0b8
imul rcx, rax
movabs rax, 0xf5ed7e87afb817fb
xor r11, rax
not r11
xor rcx, r11
xor rsi, r9
imul rsi, r14
sub rcx, rsi
call fcn.1401b463c
mov qword [0x1403489e0], rax
xor eax, eax
mov byte [rsp + 0x4d8], al
mov dword [rsp + 0x238], 0x35bb407
mov dword [rsp + 0x23c], 0x65c6316b
mov dword [rsp + 0x240], 0x29b14969
mov word [rsp + 0x244], 0x9267
mov byte [rsp + 0x246], 0xb5
mov r13, r12
movabs r12, 0x13cce94adbfb7614
xor edx, edx
mov rax, r13
div r12
add dl, 0x30
mov r14b, dl
sar r14b, 7
or r14b, dl
mov sil, r14b
shl sil, 6
mov al, r14b
sar al, 2
or sil, al
mov r8b, r14b
sar r8b, 5
mov al, r14b
shl al, 3
or r8b, al
mov r10b, r14b
sar r10b, 3
mov al, r14b
shl al, 5
or r10b, al
mov dl, r14b
sar dl, 4
mov al, r14b
shl al, 4
or dl, al
mov r9b, r14b
add r9b, r9b
mov r11b, r14b
sar r11b, 7
mov bl, r14b
not bl
mov dil, byte [rsp + r13 + 0x238]
sub dil, sil
sub dil, 2
mov eax, 4
sub al, sil
xor dil, al
mov cl, r14b
shl cl, 7
mov al, r14b
sar al, 1
or cl, al
sub dil, cl
sub dil, byte [0x14033a058]
sub dil, byte [0x14033a050]
sub dil, 0x3f
add dil, r14b
add dil, sil
lea eax, [r14 + 7]
add al, sil
xor dil, al
sub dil, r14b
sub dil, r8b
sub dil, byte [0x14033a048]
sub dil, 0x50
mov rcx, qword [0x14033a040]
add dil, sil
add dil, cl
mov al, r14b
sub al, r8b
add al, dl
add al, sil
xor dil, al
mov al, r14b
sub al, dl
xor al, r14b
sub dil, al
sub dil, r10b
add dil, 0x30
add dil, r14b
mov al, r11b
or al, r9b
sub al, 0x50
add al, r10b
xor dil, al
add sil, sil
add dil, sil
sub dil, r9b
add cl, 0x51
add dil, cl
not dil
mov al, bl
xor al, byte [0x14033a038]
sub dil, al
or r11b, r14b
sub dil, r11b
mov al, r14b
xor al, byte [0x14033a030]
add dil, al
mov al, r14b
xor al, 0x40
sub dil, al
movsx eax, bl
movsx ecx, r14b
imul ecx, eax
xor cl, dil
mov byte [rsp + r13 + 0x238], cl
add r13, r15
cmp r13, 0xf
jb 0x1402271f0
lea rax, [rsp + 0x238]
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x260], 0xf
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x2e8], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x2f8], xmm1
movdqa xmm0, xmmword [0x140313c00]
movdqu xmmword [rsp + 0x2f8], xmm0
xor r12d, r12d
mov byte [rsp + 0x2e8], r12b
mov dword [rsp + 0xb8], r15d
movabs rax, 0xb55386c5c89c6429
mov qword [rsp + 0x4d8], rax
movabs r9, 0xd97384e981b1cb6b
mov qword [rsp + 0x30], r9
movabs rax, 0x230000000000000
mov rdi, qword [0x14033a088]
imul rdi, rax
movabs rax, 0xa3b0000000000000
xor rdi, rax
mov rcx, rdi
imul rcx, r9
mov qword [rsp + 0x38], rcx
movabs rsi, 0xaaaaaaaaaaaaaaab
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, rdi
and r8, r9
lea r13, [0x14033a060]
imul r8, qword [r13 + rcx*8]
movabs rax, 0x1bef18daac1c7e24
imul r8, rax
shr r8, 3
movabs rax, 0x8e520415229533d5
xor r8, rax
movabs rax, 0xffffff57fc733b17
mov rbx, rdi
imul rbx, rax
sub rbx, 0x747ace7c
xor rbx, r8
xor rbx, qword [0x14033a060]
mov rax, r8
imul rax, qword [0x14033a070]
movabs rcx, 0xb9de928bf5c08436
imul rax, rcx
not rax
and rbx, rax
ror rbx, 0x2c
shr rbx, 8
mov qword [rsp + 0x48], rbx
movabs r9, 0x268c7b167e4e3495
lea rcx, [rdi + r9]
xor rcx, 0xffffffffcb4e8f3b
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x79b2f10beec353a8
mov r11, qword [r13 + rcx*8]
imul r11, rax
sub r11, r9
movabs rcx, 0x6017eaa7188d808c
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 + r9]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x27
and ecx, 0x8000003f
lea r14d, [r12 - 0x40]
jge 0x140227540
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, qword [rsp + 0x58]
ror rax, cl
not rax
imul rax, r8
imul rdx, rax, 0xffffffff8b853184
mov qword [rsp + 0x58], rdx
add r9, rdx
mov r10, r11
imul r10, rbx
sub r10, r9
movabs rbx, 0xb55386c5c89c6429
xor r10, rbx
mov cl, r9b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
movabs rcx, 0x910b59a0af335e2c
imul rax, rcx
movabs rcx, 0x26beb4bd3e672147
add rax, rcx
xor r10, rax
mov rax, r9
sub rax, qword [0x14033a078]
xor r10, rax
xor r10, r8
xor r10, rdi
mov rax, r10
and eax, 3
je 0x14022790c
sub rax, 1
je 0x1402277d5
sub rax, 1
mov bl, 0x3f
je 0x1402276e0
cmp rax, 1
jne 0x1402279c9
mov rcx, r9
imul rcx, r11
movabs rax, 0x17eb9bc6dcfb4263
add rax, r10
xor rcx, rax
ror rcx, 0x14
shr rcx, 0xc
xor rcx, rdi
not rcx
mov qword [rsp + 0x4d8], rcx
movabs rdx, 0x835717318a34
add rdx, qword [0x14033a088]
movabs rax, 0x260efe6e22649e23
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db94fd166cf
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0xd97384e981b1cb6b
imul rcx, rax
mov eax, 0x9e0ab425
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdx, 0xd2418c63e082affc
sub rdx, qword [rsp + 0x4d8]
shr rdx, cl
mov qword [rsp + 0x30], rdx
movabs rax, 0x26949f9eeadcf97f
mov rcx, qword [rsp + 0x58]
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x48]
xor qword [rsp + 0x30], rax
jmp 0x1402279c9
movabs rax, 0xaaaaaa1a9e13491b
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed5c1e9557
imul rcx, rax
movabs r9, 0xfff17ca849717f67
mov rax, r8
xor rax, r9
sub rcx, rax
movabs rax, 0xffff7e8ab8037bc7
imul rdx, rax
movabs r11, 0x71d75abe2fd0f29a
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be4cc39e7b
mov rcx, r11
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
imul r9, qword [r13 + rcx*8]
xor r9, 0xffffffffcb469fcb
lea ecx, [r10 + 0x19]
and cl, bl
rol r9, cl
movabs rcx, 0xc7edf37bddbe6a85
mov rax, qword [rsp + 0x38]
xor rax, rcx
movabs rcx, 0x7c7a7dc6a241957a
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0x2f
not rcx
movabs rax, 0x9b2de6b20cbc7170
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x48]
and cl, bl
ror rdx, cl
movabs rax, 0xd97384e981b1cb6b
imul rdx, rax
mov qword [rsp + 0x30], rdx
jmp 0x1402279c9
movabs rax, 0x933883e2881ff4db
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, 0x268c7b167e4e3494
mov rax, rdi
imul rax, rdx
xor rax, rbx
not rax
shl rax, cl
xor r8, rax
mov cl, r9b
mov bl, 0x3f
and cl, bl
rol r8, cl
movabs rcx, 0x268c7b167e4e3495
add rcx, r10
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x4e981b1cb6b
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7c2d73f36
or r8, rax
mov rcx, qword [0x14033a070]
movabs rax, 0xb55386c5c89c6429
imul rcx, rax
sub rcx, r9
mov rax, qword [rsp + 0x48]
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a693df3f3b
xor rcx, rax
mov qword [rsp + 0x30], rcx
movabs rax, 0xcccccccccccccccd
mul rdi
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rdi
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, qword [rsp + 0x30]
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r9
imul rdx, qword [rsp + 0x30]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, rdi
movabs rdi, 0x78958945c8d7321
add rdi, rax
xor rdi, qword [rsp + 0x48]
movzx eax, r11b
imul ecx, eax, 0x1e
and cl, bl
rol rdi, cl
not rdi
jmp 0x1402279c9
mov rax, rsi
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 [0x14033a080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r8
mov bl, 0x3f
and r8b, bl
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r9
mov rcx, qword [rsp + 0x48]
not rcx
imul rcx, r11
movabs rax, 0x7cd8a7de4e2e6eda
imul rcx, rax
mov rax, r8
imul rax, rdi
mov rdi, rcx
xor rdi, rax
imul rax, qword [0x14033a060], 0xffffffff8b853184
mov rdx, qword [0x14033a068]
sub rax, rdx
mov qword [rsp + 0x38], rax
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1402279aa
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, qword [rsp + 0x38]
ror rax, cl
movabs rcx, 0x268c7b167e4e3495
add rax, rcx
add rax, qword [rsp + 0x58]
mov qword [rsp + 0x48], rax
movabs rax, 0xff055d7bbe656417
mov rcx, qword [rsp + 0x4d8]
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r8, rdi
imul r8, qword [r13 + rcx*8]
not r9
imul r9, r10
imul r9, qword [rsp + 0x48]
imul r9, qword [rsp + 0x30]
movabs rcx, 0xf5ed7e87b9d62ecb
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r8
call fcn.1401b4714
mov qword [0x1403489a0], rax
mov qword [rsp + 0x2d0], r12
mov qword [rsp + 0x2d8], r12
mov qword [rsp + 0x2e0], r12
mov r9d, r12d
mov dword [rsp + 0x4d8], r12d
mov dword [rsp + 0x70], 0x8a4cfcb8
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r10d, 0x4764996c
mov edx, 8
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, dx
test r9d, r9d
je 0x140227ace
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea rdi, [r8 + rcx*2]
mov r11d, 0xfbce065e
jmp 0x140227ac0
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, r10d
xor edx, r11d
mov r11d, ecx
imul r11d, edx
add r8, 2
cmp r8, rdi
jne 0x140227aa3
cmp r11d, r9d
jne 0x140227b8d
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 + 0x30], rdx
shr rcx, 0x20
cmp rdx, r11
je 0x140227b8d
mov r8d, dword [rdx + 0x18]
test r8d, r8d
je 0x140227b8d
mov r9d, dword [rdx + 0x20]
mov qword [rsp + 0x38], r9
dec r8d
mov dword [rsp + 0x68], r8d
mov edx, r8d
mov qword [rsp + 0x48], rdx
lea rdx, [r9 + r8*4]
mov edi, dword [rdx + r11]
add rdi, r11
mov edx, 0xfbce065e
mov r9b, byte [rdi]
add rdi, r15
test r9b, r9b
je 0x140227b75
mov r11d, edx
movsx r8d, r9b
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, r10d
mov edx, r11d
xor edx, r8d
mov r11d, r9d
imul r11d, edx
mov r9b, byte [rdi]
add rdi, r15
test r9b, r9b
jne 0x140227b39
mov dword [rsp + 0x78], r11d
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0x68]
mov edx, dword [rsp + 0x78]
cmp edx, dword [rsp + 0x70]
je 0x140227b95
test r8d, r8d
mov r9, qword [rsp + 0x38]
jne 0x140227b0b
mov r9d, dword [rsp + 0x4d8]
mov rax, qword [rax]
jmp 0x140227a72
mov r9, qword [rsp + 0x30]
mov edx, dword [r9 + 0x1c]
add rdx, r11
mov eax, dword [r9 + 0x24]
add rax, r11
mov r8, qword [rsp + 0x48]
movzx eax, word [rax + r8*2]
mov r8d, dword [rdx + rax*4]
add r8, r11
cmp r8, r9
jbe 0x140227c58
lea rax, [rcx + r9]
cmp r8, rax
jae 0x140227c58
mov r9d, 0xfbce065e
mov dword [rsp + 0x4d8], r9d
mov edx, r9d
mov dword [rsp + 0x70], edx
mov al, byte [r8]
cmp al, 0x2e
je 0x140227c15
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, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x140227beb
mov dword [rsp + 0x4d8], r9d
add r8, r15
mov al, byte [r8]
test al, al
je 0x140227c42
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, r15
mov al, byte [r8]
test al, al
jne 0x140227c1f
mov dword [rsp + 0x70], edx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x140227b8d
mov rcx, qword [rsp + 0x40]
call r8
lea r8, [rsp + 0x4d8]
mov rdx, rax
lea rcx, [rsp + 0x2d0]
call fcn.1401b2a5c
movabs rax, 0x145871a73f31fdfa
mov r10, qword [0x14033a070]
imul r10, rax
not r10
movabs rcx, 0xbe1e9f0ac413fa75
mov rax, qword [0x14033a060]
xor rax, rcx
and r10, rax
ror r10, 0x3b
shr r10, 8
movabs rax, 0x8e56c179178e9a80
mov r9, qword [0x14033a088]
imul r9, rax
movabs r8, 0x14d0a451f006f468
sub r9, r8
movabs rax, 0xd28ccd887fffffff
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x43
mov r11d, 0x8000003f
and ecx, r11d
jge 0x140227d24
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
movabs rdx, 0xec07c3c5bc3cdcc0
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x4d8], rcx
add r8, rcx
mov rdi, r9
imul rdi, r10
sub rdi, r8
movabs rcx, 0xd60d41b56b8e53bd
xor rdi, rcx
mov cl, r8b
xor cl, 0xfc
and cl, 0xf
rol rdi, cl
movabs rcx, 0xd677af20585f5200
imul rax, rcx
movabs rcx, 0x1798f4435e366a40
sub rax, rcx
xor rdi, rax
mov rax, r8
sub rax, qword [0x14033a078]
xor rdi, rax
movabs rcx, 0x41e160f507851bb5
xor rdi, rcx
mov rax, rdi
imul rax, qword [0x14033a080]
mov rdx, qword [0x14033a068]
and rax, rdx
xor rax, rcx
ror rax, 0x35
imul rax, r8
mov qword [rsp + 0x30], rax
not r10
imul r10, r9
movabs rax, 0x83275821977f8cbe
imul r10, rax
imul r8, qword [0x14033a060], 0xffffffffc396e1c0
sub r8, rdx
mov al, r10b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, r11d
jge 0x140227e07
sub ecx, r15d
or ecx, r14d
add ecx, r15d
ror r8, cl
add r8, qword [rsp + 0x4d8]
movabs rax, 0xeb2f5bae0ff90b98
imul r8, rax
movabs rax, 0x1798f4435e366a40
sub r8, rax
movabs rax, 0xeb2f5bae0ff90b97
sub rax, qword [rsp + 0x4d8]
imul r8, rax
imul r8, rdi
movabs rcx, 0xa1281786087ccaf
xor rcx, r9
not rcx
xor rcx, r8
mov rax, qword [rsp + 0x30]
xor rax, r10
imul rax, qword [0x14033a080]
sub rcx, rax
call fcn.1401b3bd4
mov qword [0x1403489d8], rax
mov r8, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x2d0]
sub r8, rcx
mov rdx, qword [rsp + 0x40]
call fcn.1402b7cf0
movabs rax, 0x986fffe16b181ff9
mov qword [rsp + 0x4d8], rax
movabs rdi, 0x6f57ae34cc739a0f
mov qword [rsp + 0x40], r12
movabs rax, 0xc4cd592883e2abde
movabs r11, 0x6c35ad5ebfdec86d
mov rcx, qword [0x14033a070]
imul rcx, rax
not rcx
movabs rdx, 0x6c35ad5eac0f1fed
mov rax, qword [0x14033a060]
xor rax, rdx
and rcx, rax
ror rcx, 0x28
shr rcx, 8
mov qword [rsp + 0x30], rcx
movabs rax, 0xb790532c9212eb00
mov r10, qword [0x14033a080]
imul r10, rax
add r10, rdi
movabs rax, 0x685c613600000000
xor r10, rax
shr r10, 0x1f
not r10
movabs r8, 0x90a851cb338c65f1
lea rcx, [r10 + r8]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x87
and ecx, 0x8000003f
jge 0x140227f72
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, r10
ror rax, cl
not rax
movabs rdx, 0xc2097045c1b4c180
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x38], rcx
lea r9, [rcx + r8]
mov r8, r10
imul r8, qword [rsp + 0x30]
sub r8, r9
movabs rdx, 0x986fffe16b181ff9
xor r8, rdx
mov cl, r9b
xor cl, 0xf8
and cl, 0xf
rol r8, cl
movabs rcx, 0x8885e702027e5680
imul rax, rcx
movabs rcx, 0x7022942c51cff31f
add rax, rcx
xor r8, rax
mov rax, r9
sub rax, qword [0x14033a078]
xor r8, rax
xor r8, r11
mov rax, r8
and eax, 3
je 0x1402282c4
sub rax, 1
je 0x1402281c9
sub rax, 1
je 0x140228100
cmp rax, 1
jne 0x140228356
mov rcx, r9
imul rcx, r10
movabs rax, 0x7b33efc336391c47
add rax, r8
xor rcx, rax
ror rcx, 0x10
shr rcx, 0xc
not rcx
mov qword [rsp + 0x4d8], rcx
movabs rdx, 0x83571f81a294
add rdx, qword [0x14033a088]
movabs rax, 0x902ad4b36716e7e7
xor rdx, rax
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db947614e6f
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
imul rcx, rdi
mov eax, 0x96ba9c85
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0xe3cd2234d7e60f78
sub rdi, qword [rsp + 0x4d8]
shr rdi, cl
movabs rax, 0x90b0765397cb523b
mov rcx, qword [rsp + 0x38]
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, qword [rsp + 0x30]
xor rdi, rax
jmp 0x140228356
movabs rcx, 0xaaaaaa1a96a361bb
mov r10, r8
xor r10, rcx
movabs rcx, 0x1206ed54aebdf7
imul r10, rcx
movabs rdx, 0xffff7e8ab0b35367
mov rcx, qword [rsp + 0x38]
imul rcx, rdx
movabs rdx, 0x94e89a36eca0dab4
add r10, rdx
add r10, rcx
movabs rax, 0x277cd7be4473b6db
mov rcx, r10
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r10
not r9
imul r9, qword [r13 + rcx*8]
xor r9, 0xffffffffc3f6b76b
lea ecx, [r8 - 7]
and cl, bl
rol r9, cl
movabs rax, 0x50187c0080000000
imul r9, rax
mov rcx, r9
ror rcx, 0x1f
not rcx
movabs rax, 0x9b2de6b22e7cd3f0
imul rcx, rax
mov rax, r10
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x30]
and cl, bl
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x140228356
movabs rax, 0x3e108de91a4085a9
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, 0x6790001e94e7e006
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r9b
and cl, bl
rol r11, cl
movabs rcx, 0x90a851cb338c65f1
add rcx, r8
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffee34cc739a0f
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7ca671796
or r11, rax
mov rdi, qword [0x14033a070]
movabs rax, 0x986fffe16b181ff9
imul rdi, rax
sub rdi, r9
mov rax, qword [rsp + 0x30]
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a69b6f179b
xor rdi, rax
mov rax, r8
imul rax, r9
imul rax, rdi
mov rdx, r10
sub rdx, rax
movabs rax, 0x7895894543d5b81
add rdx, rax
xor rdx, qword [rsp + 0x30]
movzx eax, r10b
imul ecx, eax, 0xfe
and cl, bl
rol rdx, cl
not rdx
mov qword [rsp + 0x40], rdx
jmp 0x140228356
mov rcx, qword [0x14033a080]
imul rcx, r8
mov rdx, qword [0x14033a068]
and rcx, rdx
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x2d
imul r11, r9
mov rax, qword [rsp + 0x30]
not rax
imul rax, r10
movabs rcx, 0x7cd8a7de469e467a
imul rax, rcx
mov qword [rsp + 0x40], rax
imul rcx, qword [0x14033a060], 0x13d1d780
sub rcx, rdx
mov qword [rsp + 0x30], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140228337
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, qword [rsp + 0x30]
ror rax, cl
movabs rcx, 0x90a851cb338c65f1
add rax, rcx
add rax, qword [rsp + 0x38]
mov qword [rsp + 0x30], rax
movabs rax, 0xff055d7bb6d54cb7
mov rcx, qword [rsp + 0x4d8]
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x40]
imul r11, qword [r13 + rcx*8]
not r9
imul r9, r8
imul r9, qword [rsp + 0x30]
imul r9, rdi
movabs rcx, 0xf5ed7e87b166066b
xor rcx, r10
not rcx
xor rcx, r9
sub rcx, r11
call fcn.1401b3e5c
mov qword [0x1403489a0], rax
movabs rax, 0xea437b2a73a5922
mov qword [rsp + 0x40], rax
movabs rdi, 0x74c97cfe69afae3b
movabs rax, 0xe6b041345a6d6000
mov r11, qword [0x14033a080]
imul r11, rax
movabs rax, 0x8a9dcb0ef3ed5000
xor r11, rax
mov rcx, r11
imul rcx, rdi
mov qword [rsp + 0x30], rcx
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
and r9, rdi
imul r9, qword [r13 + rcx*8]
movabs rax, 0x81eb188ed90e35dc
imul r9, rax
shr r9, 3
movabs rax, 0x453f8d0cf7b0835e
xor r9, rax
movabs rax, 0xffffff57a4834ff9
mov rcx, r11
imul rcx, rax
add rcx, 0x23b57b0e
xor rcx, r9
xor rcx, qword [0x14033a060]
mov rax, r9
imul rax, qword [0x14033a070]
movabs rdx, 0xb9de928bad30f0d8
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x12
shr rcx, 8
mov qword [rsp + 0x38], rcx
movabs r10, 0x8b368301965051c5
lea rcx, [r11 + r10]
xor rcx, 0xffffffff93befbd5
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x116b16d63e57c850
mov r8, qword [r13 + rcx*8]
imul r8, rax
add r8, rdi
movabs rcx, 0xa8b9ac104d169b58
mov rax, r9
imul rax, rcx
xor r8, rax
shr r8, 0x1f
not r8
mov qword [rsp + 0x48], r8
mov rax, r8
xor rax, r11
mov qword [rsp + 0x4d8], rax
lea rcx, [r8 + r10]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r8b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xc9
mov eax, 0x8000003f
and ecx, eax
jge 0x14022853e
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rdx, qword [rsp + 0x4d8]
ror rdx, cl
not rdx
imul rdx, r9
imul rcx, rdx, 0x23b57b0e
mov qword [rsp + 0x58], rcx
add r10, rcx
imul r8, qword [rsp + 0x38]
sub r8, r10
movabs rcx, 0xea437b2a73a5922
xor r8, rcx
movzx ecx, r10b
mov dword [rsp + 0x4d8], ecx
xor ecx, 6
and ecx, 0xf
and ecx, eax
jge 0x140228593
sub ecx, r15d
or ecx, r14d
add ecx, r15d
rol r8, cl
mov rax, r10
sub rax, qword [0x14033a078]
xor r8, rax
movabs rax, 0x5a66d0b97108e03a
imul rdx, rax
movabs rax, 0x25ae7a90113e4199
sub rdx, rax
xor r8, rdx
xor r8, r9
xor r8, r11
mov rax, r8
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14022892c
sub rax, 1
je 0x1402287db
sub rax, 1
je 0x1402286e6
cmp rax, 1
jne 0x1402289ef
mov rcx, r10
imul rcx, qword [rsp + 0x48]
movabs rax, 0x9c25c02c0f99dd9d
add rax, r8
xor rcx, rax
ror rcx, 0x2a
shr rcx, 0xc
xor rcx, r11
not rcx
mov qword [rsp + 0x40], rcx
movabs rdx, 0x83574fc1fede
add rdx, qword [0x14033a088]
movabs rax, 0x8bb40679928a8f9d
xor rdx, rax
movzx eax, cl
movzx ecx, r8b
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db917211221
sub rax, qword [rsp + 0x48]
mov rcx, rdx
xor rcx, rax
mov qword [rsp + 0x48], rcx
imul rcx, rdi
mov eax, 0xc6fac0cb
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0xb4f4cfe7faba6e94
sub rdi, qword [rsp + 0x40]
shr rdi, cl
movabs rax, 0x8b3ea789cacf01cd
mov rcx, qword [rsp + 0x58]
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, qword [rsp + 0x38]
xor rdi, rax
jmp 0x1402289ef
movabs rax, 0xaaaaaa1ac6e33df5
mov rcx, r8
xor rcx, rax
movabs rax, 0x1206ed04eee1b9
imul rcx, rax
movabs rdx, 0xfff17ca811810b89
mov rax, r9
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8ae0f30f29
mov rdx, qword [rsp + 0x58]
imul rdx, rax
movabs r10, 0x79359196a699b2b6
add r10, rcx
add r10, rdx
mov qword [rsp + 0x48], r10
movabs rax, 0x277cd7be1433ea95
mov rcx, r10
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
not r10
imul r10, qword [r13 + rcx*8]
xor r10, 0xffffffff93b6eb25
lea ecx, [r8 - 9]
and cl, bl
rol r10, cl
movabs rcx, 0x281834c2a0000000
mov rax, qword [rsp + 0x30]
xor rax, rcx
movabs rcx, 0x7c7a7dc6fab1e194
and rax, rcx
imul r10, rax
mov rcx, r10
ror rcx, 0xa
not rcx
movabs rax, 0x9b2de6b36f7da2c8
imul rcx, rax
mov rax, qword [rsp + 0x48]
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x38]
and cl, bl
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x1402289ef
movabs rax, 0x18b93674f81ab643
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, 0x8b368301965051c4
mov rax, r11
imul rax, rdx
movabs rdx, 0xea437b2a73a5922
xor rax, rdx
not rax
shl rax, cl
xor r9, rax
mov eax, dword [rsp + 0x4d8]
and eax, 0x8000003f
jge 0x140228843
sub eax, r15d
or eax, r14d
add eax, r15d
mov cl, al
rol r9, cl
movabs rcx, 0x8b368301965051c5
add rcx, r8
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffffcfe69afae3b
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r9, rax
movabs rax, 0xffffc7a79a274bd8
or r9, rax
mov rdi, qword [0x14033a070]
movabs rax, 0xea437b2a73a5922
imul rdi, rax
sub rdi, r10
mov rax, qword [rsp + 0x38]
sub rax, r9
xor rdi, rax
movabs rax, 0xc7a7c6a6cb2f4bd5
xor rdi, 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, r15
xor edx, edx
mov rax, rdi
div rcx
mov rcx, rdx
mov rdx, r8
imul rdx, r10
imul rdx, rdi
shr rdx, cl
mov rcx, qword [rsp + 0x48]
mov rax, rcx
sub rax, rdx
sub rax, r11
movabs r11, 0x7895894047d07cf
add r11, rax
xor r11, qword [rsp + 0x38]
movzx eax, cl
imul ecx, eax, 0xf0
and cl, bl
rol r11, cl
not r11
jmp 0x1402289ef
mov rax, rsi
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 [0x14033a080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r9
and r9b, bl
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r10
mov rcx, qword [rsp + 0x38]
not rcx
imul rcx, qword [rsp + 0x48]
movabs rax, 0x7cd8a7de16de1a34
imul rcx, rax
mov rax, r9
imul rax, r11
mov r11, rcx
xor r11, rax
imul rax, qword [0x14033a060], 0x23b57b0e
mov rdx, qword [0x14033a068]
sub rax, rdx
mov qword [rsp + 0x4d8], rax
mov al, r11b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1402289cd
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, qword [rsp + 0x4d8]
ror rax, cl
movabs rcx, 0x8b368301965051c5
add rax, rcx
add rax, qword [rsp + 0x58]
mov qword [rsp + 0x38], rax
movabs rax, 0xff055d7be69510f9
mov rcx, qword [rsp + 0x40]
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r9, r11
imul r9, qword [r13 + rcx*8]
not r10
imul r10, r8
imul r10, qword [rsp + 0x38]
imul r10, rdi
movabs rcx, 0xf5ed7e87e1265a25
xor rcx, qword [rsp + 0x48]
not rcx
xor rcx, r10
sub rcx, r9
call fcn.1401b394c
mov qword [0x1403489d0], rax
movabs rax, 0xfa6d7f8d8561701c
mov qword [rsp + 0x40], rax
movabs rdi, 0x617df7358cbb1f1f
movabs rax, 0x9869227d3f764000
mov r11, qword [0x14033a080]
imul r11, rax
movabs rax, 0x8a9dcdef928e1000
xor r11, rax
mov rcx, r11
imul rcx, rdi
mov qword [rsp + 0x30], rcx
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
and r9, rdi
imul r9, qword [r13 + rcx*8]
movabs rax, 0xf1ebcfc723d13148
imul r9, rax
shr r9, 3
movabs rax, 0x54d790f52ace1480
xor r9, rax
movabs rax, 0xffffff57ca9559cd
mov rcx, r11
imul rcx, rax
sub rcx, 0x3a77f62
xor rcx, r9
xor rcx, qword [0x14033a060]
mov rax, r9
imul rax, qword [0x14033a070]
movabs rdx, 0xb9de928bc326e6ec
imul rax, rdx
not rax
and rcx, rax
ror rcx, 2
shr rcx, 8
mov qword [rsp + 0x38], rcx
movabs r10, 0x9e8208ca7344e0e1
lea rcx, [r11 + r10]
xor rcx, 0xfffffffffda8ede1
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x4bac04834c1a0a48
mov r8, qword [r13 + rcx*8]
imul r8, rax
add r8, rdi
movabs rcx, 0x84261a489f4fdd90
mov rax, r9
imul rax, rcx
xor r8, rax
shr r8, 0x1f
not r8
mov qword [rsp + 0x48], r8
mov rax, r8
xor rax, r11
mov qword [rsp + 0x4d8], rax
lea rcx, [r8 + r10]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r8b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xfd
mov eax, 0x8000003f
and ecx, eax
jge 0x140228bd4
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rdx, qword [rsp + 0x4d8]
ror rdx, cl
not rdx
imul rdx, r9
imul rcx, rdx, 0xfffffffffc58809e
mov qword [rsp + 0x58], rcx
add r10, rcx
imul r8, qword [rsp + 0x38]
sub r8, r10
movabs rcx, 0xfa6d7f8d8561701c
xor r8, rcx
movzx ecx, r10b
mov dword [rsp + 0x4d8], ecx
xor ecx, 2
and ecx, 0xf
and ecx, eax
jge 0x140228c29
sub ecx, r15d
or ecx, r14d
add ecx, r15d
rol r8, cl
movabs rax, 0x4b8ecd40a1b4b522
imul rdx, rax
movabs rax, 0x74d418599ced7a3f
add rdx, rax
xor r8, rdx
mov rax, r10
sub rax, qword [0x14033a078]
xor r8, rax
xor r8, r9
xor r8, r11
mov rax, r8
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x140228fbd
sub rax, 1
je 0x140228e72
sub rax, 1
je 0x140228d81
cmp rax, 1
jne 0x140229080
mov rdx, r10
imul rdx, qword [rsp + 0x48]
movabs rax, 0xb28feca2fe2f7b2d
add rax, r8
xor rdx, rax
ror rdx, 0x3a
shr rdx, 0xc
xor rdx, r11
not rdx
mov qword [rsp + 0x40], rdx
movabs rcx, 0x835721d7e8ea
mov rdx, qword [0x14033a088]
add rdx, rcx
movabs rax, 0x9e008db21988288d
xor rdx, rax
movzx eax, r8b
movzx ecx, byte [rsp + 0x40]
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db979370415
sub rax, qword [rsp + 0x48]
mov rcx, rdx
xor rcx, rax
mov qword [rsp + 0x48], rcx
imul rcx, rdi
mov eax, 0xa8ecd6ff
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0x19c38d1413d8e998
sub rdi, qword [rsp + 0x40]
shr rdi, cl
movabs rax, 0x9e8a2d52cdad8715
mov rcx, qword [rsp + 0x58]
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, qword [rsp + 0x38]
xor rdi, rax
jmp 0x140229080
movabs rax, 0xaaaaaa1aa8f52bc1
mov rcx, r8
xor rcx, rax
movabs rax, 0x1206ed6af8f78d
imul rcx, rax
movabs rdx, 0xfff17ca87f971dbd
mov rax, r9
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a8ee5191d
mov rdx, qword [rsp + 0x58]
imul rdx, rax
movabs r10, 0xf98e8b5f4eed8b9a
add r10, rcx
add r10, rdx
mov qword [rsp + 0x48], r10
movabs rax, 0x277cd7be7a25fca1
mov rcx, r10
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
not r10
imul r10, qword [r13 + rcx*8]
xor r10, 0xfffffffffda0fd11
lea ecx, [r8 + 3]
and cl, bl
rol r10, cl
movabs rcx, 0xcfd7d3fd6b58085f
mov rax, qword [rsp + 0x30]
xor rax, rcx
movabs rcx, 0x7c7a7dc694a7f7a0
and rax, rcx
imul r10, rax
mov rcx, qword [rsp + 0x48]
sub rcx, r10
mov rax, r10
not rax
movabs rdx, 0x9b2de6b2d725fa18
imul rax, rdx
lea rdx, [rax + rcx*4]
mov cl, byte [rsp + 0x38]
and cl, bl
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x140229080
movabs rax, 0xea53dfe5f718c451
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, 0x9e8208ca7344e0e0
mov rax, r11
imul rax, rdx
movabs rdx, 0xfa6d7f8d8561701c
xor rax, rdx
not rax
shl rax, cl
xor r9, rax
mov eax, dword [rsp + 0x4d8]
and eax, 0x8000003f
jge 0x140228eda
sub eax, r15d
or eax, r14d
add eax, r15d
mov cl, al
rol r9, cl
movabs rcx, 0x9e8208ca7344e0e1
add rcx, r8
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffff7358cbb1f1f
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r9, rax
movabs rax, 0xffffc7a7f4315dec
or r9, rax
mov rdi, qword [0x14033a070]
movabs rax, 0xfa6d7f8d8561701c
imul rdi, rax
sub rdi, r10
mov rax, qword [rsp + 0x38]
sub rax, r9
xor rdi, rax
movabs rax, 0xc7a7c6a6a5395de1
xor rdi, 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, r15
xor edx, edx
mov rax, rdi
div rcx
mov rcx, rdx
mov rdx, r8
imul rdx, r10
imul rdx, rdi
shr rdx, cl
mov rcx, qword [rsp + 0x48]
mov rax, rcx
sub rax, rdx
sub rax, r11
movabs r11, 0x78958946a6b11fb
add r11, rax
xor r11, qword [rsp + 0x38]
shl cl, 2
and cl, bl
rol r11, cl
not r11
jmp 0x140229080
mov rax, rsi
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 [0x14033a080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r9
and r9b, bl
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r10
mov rdx, qword [rsp + 0x38]
not rdx
imul rdx, qword [rsp + 0x48]
movabs rax, 0x7cd8a7de78c80c00
imul rdx, rax
mov rax, r9
imul rax, r11
mov r11, rdx
xor r11, rax
imul rax, qword [0x14033a060], 0xfffffffffc58809e
mov rdx, qword [0x14033a068]
sub rax, rdx
mov qword [rsp + 0x4d8], rax
mov al, r11b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14022905e
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, qword [rsp + 0x4d8]
ror rax, cl
movabs rcx, 0x9e8208ca7344e0e1
add rax, rcx
add rax, qword [rsp + 0x58]
mov qword [rsp + 0x38], rax
movabs rax, 0xff055d7b888306cd
mov rcx, qword [rsp + 0x40]
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r9, r11
imul r9, qword [r13 + rcx*8]
not r10
imul r10, r8
imul r10, qword [rsp + 0x38]
imul r10, rdi
movabs rcx, 0xf5ed7e878f304c11
xor rcx, qword [rsp + 0x48]
not rcx
xor rcx, r10
sub rcx, r9
call fcn.1401b4390
mov qword [0x1403489a8], rax
mov dword [rsp + 0xe8], r12d
mov dword [rsp + 0xe8], 0xf51540e7
mov eax, dword [rsp + 0xe8]
add eax, 0x5072ca35
xor eax, 0x5f89e277
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
add eax, 0x25a918a3
xor eax, 0x27e60453
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x6e4cbf71
add eax, ecx
xor eax, 0xc3d8b65
add eax, 0x48b2af7d
xor eax, 0xd5020c81
lea edx, [rcx - 0x77b524c]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd941c97c
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x26be3683
add ecx, 0xc2a1f917
add ecx, edx
xor ecx, 0xff324274
mov dword [rsp + 0xe8], ecx
movsxd rax, ecx
mov qword [rsp + 0x40], rax
mov dword [rsp + 0xe8], r12d
movabs rdi, 0x1f2dd49ec2b0057d
movabs rax, 0x2b16bba2c5b7e0e0
movabs r10, 0x1560b89b9ee8952c
mov rcx, qword [0x14033a070]
imul rcx, rax
not rcx
movabs r8, 0xea9f476466c61d72
mov rax, qword [0x14033a060]
xor rax, r8
and rcx, rax
ror rcx, 0x24
shr rcx, 8
mov qword [rsp + 0x30], rcx
movabs rax, 0xcec4eff6586c1830
mov r11, qword [0x14033a070]
imul r11, rax
add r11, rdi
movabs rax, 0x2dd3734f80000000
xor r11, rax
shr r11, 0x1f
not r11
movabs r9, 0xe0d22b613d4ffa83
lea rcx, [r11 + r9]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xb9
mov eax, 0x8000003f
and ecx, eax
jge 0x14022924f
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rdx, r11
ror rdx, cl
not rdx
mov qword [rsp + 0x38], rdx
movabs r8, 0x8a95beb1568e2628
mov rcx, rdx
imul rcx, r8
mov qword [rsp + 0x48], rcx
add r9, rcx
mov r8, r11
imul r8, qword [rsp + 0x30]
sub r8, r9
movabs rdx, 0xf16c8fb8258ca416
xor r8, rdx
movzx ecx, r9b
mov dword [rsp + 0x4d8], ecx
xor ecx, 6
and ecx, 0xf
and ecx, eax
jge 0x1402292ad
sub ecx, r15d
or ecx, r14d
add ecx, r15d
rol r8, cl
movabs rcx, 0xc5b77a9c95a76988
mov rax, qword [rsp + 0x38]
imul rax, rcx
movabs rcx, 0x5da0f05b0001e0f7
add rax, rcx
xor r8, rax
mov rax, r9
sub rax, qword [0x14033a078]
xor r8, rax
xor r8, r10
mov rax, r8
and rax, r15
xor rax, 2
je 0x1402295d5
sub rax, 1
je 0x1402294da
sub rax, 1
je 0x140229407
cmp rax, 1
jne 0x14022967a
mov rcx, r9
imul rcx, r11
movabs rax, 0x536c1946b26441b
add rax, r8
xor rcx, rax
ror rcx, 0x1e
shr rcx, 0xc
not rcx
mov qword [rsp + 0x4d8], rcx
movabs rdx, 0x83572d5513ae
add rdx, qword [0x14033a088]
movabs rax, 0xe050ae195b01c9ab
xor rdx, rax
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db975b5ff51
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
imul rcx, rdi
mov eax, 0xa46e2dbb
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0x6f2adafecbededc6
sub rdi, qword [rsp + 0x4d8]
shr rdi, cl
movabs rax, 0xe0da4fe9943a57fb
mov rcx, qword [rsp + 0x48]
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, qword [rsp + 0x30]
xor rdi, rax
mov rcx, qword [rsp + 0x4d8]
jmp 0x14022967d
movabs rcx, 0xaaaaaa1aa477d085
mov r11, r8
xor r11, rcx
movabs rcx, 0x1206ed667a0cc9
imul r11, rcx
movabs rdx, 0xffff7e8a8267e259
mov rcx, qword [rsp + 0x48]
imul rcx, rdx
movabs rdx, 0xdf37447d1152c0f
add r11, rdx
add r11, rcx
movabs rax, 0x277cd7be76a707e5
mov rcx, r11
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
imul r9, qword [r13 + rcx*8]
xor r9, 0xfffffffff1220655
lea ecx, [r8 + 7]
and cl, bl
rol r9, cl
movabs rax, 0x784a694400000000
imul r9, rax
mov rcx, r9
ror rcx, 0xe
not rcx
movabs rax, 0x9b2de6b2e52e1708
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x30]
and cl, bl
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
movabs rcx, 0xf16c8fb8258ca416
jmp 0x14022967d
movabs rax, 0x2dcbddf2a683e6c9
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, 0xe937047da735be9
shl rdx, cl
mov rax, r10
mov r10, rdx
xor r10, rax
mov eax, dword [rsp + 0x4d8]
and eax, 0x8000003f
jge 0x140229531
sub eax, r15d
or eax, r14d
add eax, r15d
mov cl, al
rol r10, cl
movabs rcx, 0xe0d22b613d4ffa83
add rcx, r8
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x149ec2b0057d
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a7f8b3a6a8
or r10, rax
mov rdi, qword [0x14033a070]
movabs rcx, 0xf16c8fb8258ca416
imul rdi, rcx
sub rdi, r9
mov rax, qword [rsp + 0x30]
sub rax, r10
xor rdi, rax
movabs rax, 0xc7a7c6a6a9bba6a5
xor rdi, rax
mov rax, r8
imul rax, r9
imul rax, rdi
mov rbx, r11
sub rbx, rax
movabs rax, 0x789589466e9eabf
add rbx, rax
xor rbx, qword [rsp + 0x30]
not rbx
jmp 0x140229680
mov rcx, r8
imul rcx, qword [0x14033a080]
and rcx, qword [0x14033a080]
mov rax, r10
mov r10, rcx
xor r10, rax
ror r10, 0x2c
imul r10, r9
mov rbx, qword [rsp + 0x30]
not rbx
imul rbx, r11
movabs rax, 0x7cd8a7de744af744
imul rbx, rax
imul rax, qword [0x14033a060], 0xfffffffff82e885e
mov rdx, qword [0x14033a068]
sub rax, rdx
mov qword [rsp + 0x4d8], rax
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14022964c
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, qword [rsp + 0x4d8]
ror rax, cl
movabs rcx, 0xe0d22b613d4ffa83
add rax, rcx
add rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
movabs rcx, 0xf16c8fb8258ca416
jmp 0x140229680
mov rcx, rdx
mov rbx, r12
movabs rax, 0xff055d7b8401fd89
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r10, rbx
imul r10, qword [r13 + rcx*8]
not r9
imul r9, r8
imul r9, qword [rsp + 0x30]
imul r9, rdi
movabs rcx, 0xf5ed7e8783b2b755
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r10
call fcn.140031624
mov qword [0x1403489a0], rax
mov qword [rsp + 0x190], r12
movabs rax, 0x20f2f58621c4cbf6
mov qword [rsp + 0x190], rax
mov qword [rsp + 0x118], r12
movabs rax, 0x341d0b1c632408da
mov qword [rsp + 0x118], rax
movabs rcx, 0xf33a52b610cf2c03
add rcx, qword [rsp + 0x118]
movabs rax, 0x515536625309a2d3
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f5997fc83
sub rcx, rax
movabs rax, 0xf8f8cd98688830fd
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0xc7d654b984af58af
add rcx, rax
mov rdi, qword [0x14033a040]
add rcx, rdi
movabs rax, 0x5a9179a854d42bd5
xor rcx, rax
movabs rax, 0x5f627dc6c6084a18
sub rcx, rax
movabs rax, 0x7e3b3cd258d5d8b6
xor rcx, rax
movabs rdx, 0x3483ce44b66ad294
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ad8433b04
mov r10, qword [0x14033a038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b527bcc4fb
mov r11, qword [0x14033a030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d8de316f259
add rdx, rax
add rdx, rcx
movabs rax, 0x26d62b267609ecec
xor rdx, rax
mov qword [rsp + 0x118], rdx
movabs rcx, 0xf33a52b66c00ae83
add rcx, qword [rsp + 0x190]
movabs rax, 0xd3d536625309fe05
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80a5566ef6
add rcx, rax
movabs rax, 0xf8f8cd980be9e873
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x7d654b908e5a40a
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a7eccfb2fb
xor rcx, rax
movabs rax, 0x5f627dc6f4af8e3e
sub rcx, rax
movabs rax, 0x6a3b3cd22b3a3dea
xor rcx, rax
movabs rax, 0xb483ce445db7aaa6
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ad9b0010e
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b5264ffef1
xor r11, rax
movabs rax, 0xe0b56d8f3147c263
add rcx, rax
add rcx, r11
movabs rax, 0x351b23d1f70ee22e
xor rcx, rax
mov qword [rsp + 0x190], rcx
mov rax, qword [rsp + 0x2d8]
sub rax, qword [rsp + 0x2d0]
and rcx, rdx
mov qword [rsp + 0x118], r12
mov qword [rsp + 0x190], r12
cmp rax, rcx
je 0x14022b52c
movabs rax, 0xe49e0dba2dd884cf
mov qword [rsp + 0x30], rax
movabs rdi, 0x9cb8d47ce8a030a6
mov qword [rsp + 0x38], r12
movabs rax, 0x4436741660c70b58
movabs r11, 0x63910ee8e3f00d14
mov rcx, qword [0x14033a070]
imul rcx, rax
not rcx
movabs rdx, 0x9c6ef1171e4c4aac
mov rax, qword [0x14033a060]
xor rax, rdx
and rcx, rax
ror rcx, 9
shr rcx, 8
mov qword [rsp + 0x48], rcx
movabs rax, 0x802eb34dc05ce8f0
mov r9, qword [0x14033a088]
imul r9, rax
movabs r8, 0x63472b83175fcf5a
sub r9, r8
movabs rax, 0xbcded5000000000
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xcf
mov ebx, 0x8000003f
and ecx, ebx
jge 0x1402299e6
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
mov qword [rsp + 0x58], rax
movabs rcx, 0x3c0e2bdc6d9f260
imul rax, rcx
mov qword [rsp + 0x78], rax
lea r10, [rax + r8]
mov r8, r9
mov rdx, qword [rsp + 0x48]
imul r8, rdx
sub r8, r10
movabs rax, 0xe49e0dba2dd884cf
xor r8, rax
movzx ecx, r10b
mov dword [rsp + 0x4d8], ecx
and ecx, 0xf
and ecx, ebx
jge 0x140229a42
sub ecx, r15d
or ecx, r14d
add ecx, r15d
rol r8, cl
movabs rcx, 0xcfb14eb64ac52a40
mov rax, qword [rsp + 0x58]
imul rax, rcx
movabs rcx, 0x423b32c64741545c
add rax, rcx
xor r8, rax
mov rax, r10
sub rax, qword [0x14033a078]
xor r8, rax
xor r8, r11
mov rax, r8
and eax, 2
je 0x140229d63
sub rax, 1
je 0x140229c55
sub rax, 1
mov bl, 0x3f
je 0x140229b8c
cmp rax, 1
jne 0x140229dfb
mov rcx, r10
imul rcx, r9
movabs rax, 0xc2c4b46df95d9aa6
add rax, r8
xor rcx, rax
ror rcx, 0x30
shr rcx, 0xc
not rcx
mov qword [rsp + 0x30], rcx
movabs rdx, 0x835721ca87dc
add rdx, qword [0x14033a088]
movabs rax, 0x63c5aefb7d8e6806
xor rdx, rax
movzx eax, cl
movzx ecx, r8b
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9792a6b27
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rdi
mov eax, 0xa8f1b9cd
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0xabc0f8364b3977a1
sub rdi, qword [rsp + 0x30]
shr rdi, cl
movabs rax, 0x634f500b71d5985c
mov rcx, qword [rsp + 0x78]
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, qword [rsp + 0x48]
xor rdi, rax
jmp 0x140229dfb
movabs rcx, 0xaaaaaa1aa8e844f3
mov r9, r8
xor r9, rcx
movabs rcx, 0x1206ed6ae598bf
imul r9, rcx
movabs rdx, 0xffff7e8a8ef8762f
mov rcx, qword [rsp + 0x78]
imul rcx, rdx
movabs rdx, 0x3c0e527a31d8841a
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be7a389393
mov rcx, r9
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r9
not r10
imul r10, qword [r13 + rcx*8]
xor r10, 0xfffffffffdbd9223
lea ecx, [r8 - 0xf]
and cl, bl
rol r10, cl
movabs rax, 0x38406d4600000000
imul r10, rax
mov rcx, r10
ror rcx, 0x21
not rcx
movabs rax, 0x9b2de6b2d75046d0
imul rcx, rax
mov rax, r9
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x48]
and cl, bl
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x140229dfb
movabs rax, 0x95496474bacb4c44
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, 0x1b61f245d2277b30
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0x4d8]
and eax, ebx
jge 0x140229ca9
sub eax, r15d
or eax, r14d
add eax, r15d
mov cl, al
rol r11, cl
movabs rcx, 0x63472b83175fcf5a
add rcx, r8
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x147ce8a030a6
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7f42c32de
or r11, rax
mov rdi, qword [0x14033a070]
movabs rax, 0xe49e0dba2dd884cf
imul rdi, rax
sub rdi, r10
mov rax, qword [rsp + 0x48]
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a6a52432d3
xor rdi, rax
mov rax, r8
imul rax, r10
imul rax, rdi
mov rdx, r9
sub rdx, rax
movabs rax, 0x78958946a767ec9
add rdx, rax
xor rdx, qword [rsp + 0x48]
movzx eax, r9b
imul ecx, eax, 0xf6
mov bl, 0x3f
and cl, bl
rol rdx, cl
not rdx
mov qword [rsp + 0x38], rdx
jmp 0x140229dfb
mov rcx, r8
imul rcx, qword [0x14033a080]
and rcx, qword [0x14033a060]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x14
imul r11, r10
mov rax, rdx
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de78d56332
imul rax, rcx
mov qword [rsp + 0x38], rax
imul rcx, qword [0x14033a060], 0xfffffffffdbc47b8
mov rdx, qword [0x14033a068]
sub rcx, rdx
mov qword [rsp + 0x4d8], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, ebx
jge 0x140229dd7
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, qword [rsp + 0x4d8]
ror rax, cl
movabs rcx, 0x63472b83175fcf5a
add rax, rcx
add rax, qword [rsp + 0x78]
mov qword [rsp + 0x48], rax
mov bl, 0x3f
movabs rax, 0xff055d7b889e69ff
mov rcx, qword [rsp + 0x30]
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x38]
imul r11, qword [r13 + rcx*8]
not r10
imul r10, r8
imul r10, qword [rsp + 0x48]
imul r10, rdi
movabs rcx, 0xf5ed7e878f2d2323
xor rcx, r9
not rcx
xor rcx, r10
sub rcx, r11
call fcn.1401b331c
mov qword [0x140348990], rax
movabs rax, 0xf961c9b594a07733
mov qword [rsp + 0x4d8], rax
movabs rdi, 0xb5f4cb17d083b295
mov qword [rsp + 0x30], r12
movabs rax, 0x6a78fddc1b812d90
movabs r11, 0x8a491aadfb180c7f
mov rcx, qword [0x14033a070]
imul rcx, rax
not rcx
movabs r8, 0x75b6e55202d0ade9
mov rax, qword [0x14033a060]
xor rax, r8
and rcx, rax
ror rcx, 0x14
shr rcx, 8
mov qword [rsp + 0x38], rcx
movabs rax, 0x63acdec15a70ad20
mov r9, qword [0x14033a070]
imul r9, rax
movabs r8, 0x4a0b34e82f7c4d6b
sub r9, r8
movabs rax, 0xe6863251ffffffff
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x61
and ecx, 0x8000003f
jge 0x140229f38
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rdx, r9
ror rdx, cl
not rdx
movabs rcx, 0x16ab8f4d8a2b316a
mov rax, rdx
imul rax, rcx
mov qword [rsp + 0x48], rax
add r8, rax
mov r10, r9
imul r10, qword [rsp + 0x38]
sub r10, r8
movabs rax, 0xf961c9b594a07733
xor r10, rax
mov cl, r8b
xor cl, 0xfe
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x14033a078]
xor r10, rax
movabs rax, 0x85879cf9dcbd76b2
imul rdx, rax
movabs rax, 0x1cc0aab861118ab9
sub rdx, rax
xor r10, rdx
xor r10, r11
mov rax, r10
and rax, r15
xor rax, 2
je 0x14022a28f
sub rax, 1
je 0x14022a192
sub rax, 1
je 0x14022a0c9
cmp rax, 1
jne 0x14022a325
mov rcx, r8
imul rcx, r9
movabs rax, 0x83a4403d107fb7db
add rax, r10
xor rcx, rax
ror rcx, 0x2e
shr rcx, 0xc
not rcx
mov qword [rsp + 0x4d8], rcx
movabs rdx, 0x83572dd04476
add rdx, qword [0x14033a088]
movabs rax, 0x4a89b19049b7299b
xor rdx, rax
movzx eax, r10b
movzx ecx, cl
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97530a889
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rdi
mov eax, 0xa4eb7a63
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0xa3206740205bf29e
sub rdi, qword [rsp + 0x4d8]
shr rdi, cl
movabs rax, 0x4a13597085eb581b
mov rcx, qword [rsp + 0x48]
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x38]
xor rdi, rax
jmp 0x14022a325
movabs rcx, 0xaaaaaa1aa4f2875d
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed66ff5b11
imul r9, rcx
movabs rdx, 0xffff7e8a82e2b581
mov rcx, qword [rsp + 0x48]
imul rcx, rdx
movabs rdx, 0xdd1d5bd2792fa20e
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be7622503d
mov rcx, r9
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xfffffffff1a7518d
lea ecx, [r10 + 0x1f]
and cl, bl
rol r8, cl
movabs rax, 0x4c6a710080000000
imul r8, rax
mov rcx, r8
ror rcx, 0x33
not rcx
movabs rax, 0x9b2de6b2e73b4868
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x38]
and cl, bl
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x14022a325
movabs rax, 0xd64a7de6a407e225
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, 0x69e364a6b5f88cc
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r8b
and cl, bl
rol r11, cl
movabs rcx, 0x4a0b34e82f7c4d6b
add rcx, r10
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xb17d083b295
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7f836f170
or r11, rax
mov rdi, qword [0x14033a070]
movabs rax, 0xf961c9b594a07733
imul rdi, rax
sub rdi, r8
mov rax, qword [rsp + 0x38]
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a6a93ef17d
xor rdi, rax
mov rax, r10
imul rax, r8
imul rax, rdi
mov rdx, r9
sub rdx, rax
movabs rax, 0x7895894666cbd67
add rdx, rax
xor rdx, qword [rsp + 0x38]
mov al, r9b
add al, al
lea ecx, [rax + r9]
shl cl, 3
and cl, bl
rol rdx, cl
not rdx
mov qword [rsp + 0x30], rdx
jmp 0x14022a325
mov rcx, r10
imul rcx, qword [0x14033a080]
and rcx, qword [0x14033a088]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x3f
imul r11, r8
mov rax, qword [rsp + 0x38]
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de74cfa09c
imul rax, rcx
mov qword [rsp + 0x30], rax
imul rcx, qword [0x14033a060], 0xfffffffff9c8a196
mov rdx, qword [0x14033a068]
sub rcx, rdx
mov qword [rsp + 0x38], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14022a306
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, qword [rsp + 0x38]
ror rax, cl
movabs rcx, 0x4a0b34e82f7c4d6b
add rax, rcx
add rax, qword [rsp + 0x48]
mov qword [rsp + 0x38], rax
movabs rax, 0xff055d7b8484aa51
mov rcx, qword [rsp + 0x4d8]
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x30]
imul r11, qword [r13 + rcx*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x38]
imul r8, rdi
movabs rcx, 0xf5ed7e878337e08d
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1401b32f8
mov qword [0x1403489c0], rax
mov dword [rsp + 0x108], r12d
mov dword [rsp + 0x108], 0x79f2d3f7
mov eax, dword [rsp + 0x108]
add eax, 0x2a28f30
xor eax, 0x248494a7
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
add eax, 0x35928954
xor eax, 0x8aed8044
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x216ce790
add eax, ecx
xor eax, 0x18ff0eb7
add eax, 0xbfb54a5
xor eax, 0x54149885
lea edx, [rcx + 0x2134371c]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xc40a8890
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x3bf5776f
add ecx, 0xb66bc496
add ecx, edx
xor ecx, 0xc7dc2670
mov dword [rsp + 0x108], ecx
movsxd r8, ecx
mov dword [rsp + 0x108], r12d
mov rcx, qword [rsp + 0x2d8]
mov rax, rcx
mov rdx, qword [rsp + 0x2d0]
sub rax, rdx
cmp r8, rax
jae 0x14022a534
mov r13, qword [rsp + 0x40]
mov dword [rsp + 0x80], r12d
mov dword [rsp + 0x80], 0x5fc08817
mov eax, dword [rsp + 0x80]
add eax, 0x731084b6
xor eax, 0x1a0b0515
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x5dbec08c
xor eax, 0xbdd2e8
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x23cfa4c7
add eax, ecx
xor eax, 0xc0c1a2aa
sub eax, 0x6ae86af9
xor eax, 0x6faa1a53
mov edx, dword [0x14033a030]
xor edx, 0x2233bf99
sub edx, eax
mov eax, dword [0x14033a038]
xor eax, 0xddcc4066
sub edx, eax
sub edx, ecx
sub edx, 0xbf5f149
xor edx, 0x537096f6
mov dword [rsp + 0x80], edx
mov rax, qword [rsp + 0x2d0]
movzx ecx, byte [rax + r8]
movsxd rax, edx
add rax, r8
imul rcx, rax
imul rcx, r8
not rcx
xor r13, rcx
mov dword [rsp + 0x80], r12d
add r8, r15
mov rcx, qword [rsp + 0x2d8]
mov rax, rcx
mov rdx, qword [rsp + 0x2d0]
sub rax, rdx
cmp r8, rax
jb 0x14022a450
mov qword [rsp + 0x40], r13
lea r13, [0x14033a060]
sub rcx, rdx
mov rax, qword [rsp + 0x40]
imul rax, rcx
mov qword [rsp + 0x40], rax
movabs rax, 0xd8d4a0c70180d55
mov qword [rsp + 0x30], rax
movabs r9, 0xaadb2e53e452953f
mov qword [rsp + 0x38], r9
movabs rax, 0x862708ee7c0eb000
mov r11, qword [0x14033a068]
imul r11, rax
movabs rax, 0x8a9dcda4e6371000
xor r11, rax
mov rcx, r11
imul rcx, r9
mov qword [rsp + 0x48], rcx
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
and r8, r9
imul r8, qword [r13 + rcx*8]
movabs rax, 0xb6179b1bd8bc7266
imul r8, rax
shr r8, 3
movabs rax, 0x8288e1dfe4ab0862
xor r8, rax
movabs rax, 0xffffff57ce22125d
mov rcx, r11
imul rcx, rax
add rcx, 0x19ad8ce
xor rcx, r8
xor rcx, qword [0x14033a060]
mov rax, r8
imul rax, qword [0x14033a070]
movabs rdx, 0xb9de928bc791ad7c
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x32
shr rcx, 8
mov qword [rsp + 0x58], rcx
movabs r9, 0x5524d1ac1bad6ac1
lea rcx, [r11 + r9]
xor rcx, 0xfffffffff91fa671
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xb8a09c32c1afa868
mov rdi, qword [r13 + rcx*8]
imul rdi, rax
sub rdi, r9
movabs rcx, 0x866189c23b9f03ac
mov rax, r8
imul rax, rcx
xor rdi, rax
shr rdi, 0x1f
not rdi
mov rax, rdi
xor rax, r11
mov qword [rsp + 0x4d8], rax
lea rcx, [rdi + r9]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, dil
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x6d
mov eax, 0x8000003f
and ecx, eax
jge 0x14022a6c3
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rdx, qword [rsp + 0x4d8]
ror rdx, cl
not rdx
imul rdx, r8
imul rcx, rdx, 0x19ad8ce
mov qword [rsp + 0x78], rcx
lea r10, [rcx + r9]
mov r9, rdi
imul r9, qword [rsp + 0x58]
sub r9, r10
movabs rcx, 0xd8d4a0c70180d55
xor r9, rcx
movzx ecx, r10b
mov dword [rsp + 0x4d8], ecx
xor ecx, 2
and ecx, 0xf
and ecx, eax
jge 0x14022a71c
sub ecx, r15d
or ecx, r14d
add ecx, r15d
rol r9, cl
movabs rax, 0x9dd1bc6a6f4740b2
imul rdx, rax
movabs rax, 0x736360a9d4a19a7f
add rdx, rax
xor r9, rdx
mov rax, r10
sub rax, qword [0x14033a078]
xor r9, rax
xor r9, r8
xor r9, r11
mov rax, r9
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14022aac9
sub rax, 1
je 0x14022a971
sub rax, 1
je 0x14022a877
cmp rax, 1
jne 0x14022ab7b
mov rcx, r10
imul rcx, rdi
movabs rax, 0x72bcbbf71afed41d
add rax, r9
xor rcx, rax
ror rcx, 0xa
shr rcx, 0xc
xor rcx, r11
not rcx
mov qword [rsp + 0x30], rcx
movabs rdx, 0x83572560a37a
add rdx, qword [0x14033a088]
movabs rax, 0x55a654d475d6e93d
xor rdx, rax
movzx eax, cl
movzx ecx, r9b
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97d804f85
sub rax, rdi
mov rdi, rdx
xor rdi, rax
mov rcx, rdi
movabs rax, 0xaadb2e53e452953f
imul rcx, rax
mov eax, 0xac5b9d6f
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rax, 0x6a06f93445663938
sub rax, qword [rsp + 0x30]
shr rax, cl
mov qword [rsp + 0x38], rax
movabs rcx, 0x552cf6347a8d5865
add rcx, qword [rsp + 0x78]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [r13 + rcx*8]
imul rax, r9
sub rax, qword [rsp + 0x58]
xor qword [rsp + 0x38], rax
jmp 0x14022ab7b
movabs rax, 0xaaaaaa1aac426051
mov rcx, r9
xor rcx, rax
movabs rax, 0x1206ed6e4fbc1d
imul rcx, rax
movabs rdx, 0xfff17ca87b20562d
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a8a52528d
mov rdx, qword [rsp + 0x78]
imul rdx, rax
movabs rdi, 0x7bc1fe5590d9f0da
add rdi, rcx
add rdi, rdx
movabs rax, 0x277cd7be7e92b731
mov rcx, rdi
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, rdi
not r10
imul r10, qword [r13 + rcx*8]
xor r10, 0xfffffffff917b681
lea ecx, [r9 + 0x13]
and cl, bl
rol r10, cl
movabs rcx, 0xf3fdfe7d6fef43cf
mov rax, qword [rsp + 0x48]
xor rax, rcx
movabs rcx, 0x7c7a7dc69010bc30
and rax, rcx
imul r10, rax
mov rcx, r10
ror rcx, 0x19
not rcx
movabs rax, 0x9b2de6b2c5f8d458
imul rcx, rax
mov rax, rdi
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x58]
and cl, bl
ror rdx, cl
movabs rax, 0xaadb2e53e452953f
imul rdx, rax
mov qword [rsp + 0x38], rdx
jmp 0x14022ab7b
movabs rax, 0x3bae4286d399cc21
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, 0x5524d1ac1bad6ac0
mov rax, r11
imul rax, rdx
movabs rdx, 0xd8d4a0c70180d55
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov eax, dword [rsp + 0x4d8]
and eax, 0x8000003f
jge 0x14022a9d9
sub eax, r15d
or eax, r14d
add eax, r15d
mov cl, al
rol r8, cl
movabs rcx, 0x5524d1ac1bad6ac1
add rcx, r9
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffee53e452953f
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7f086167c
or r8, rax
mov rcx, qword [0x14033a070]
movabs rax, 0xd8d4a0c70180d55
imul rcx, rax
sub rcx, r10
mov rax, qword [rsp + 0x58]
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a6a18e1671
xor rcx, rax
mov qword [rsp + 0x38], 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, r15
xor edx, edx
mov rax, qword [rsp + 0x38]
div rcx
mov rcx, rdx
mov rdx, r9
imul rdx, r10
imul rdx, qword [rsp + 0x38]
shr rdx, cl
mov rax, rdi
sub rax, rdx
sub rax, r11
movabs r11, 0x78958946edc5a6b
add r11, rax
xor r11, qword [rsp + 0x58]
mov al, dil
shl al, 2
lea ecx, [rax + rdi]
shl cl, 2
and cl, bl
rol r11, cl
not r11
jmp 0x14022ab7b
mov rax, rsi
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 [0x14033a080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r8
and r8b, bl
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r10
mov rcx, qword [rsp + 0x58]
not rcx
imul rcx, rdi
movabs rax, 0x7cd8a7de7c7f4790
imul rcx, rax
mov rax, r8
imul rax, r11
mov r11, rcx
xor r11, rax
imul rdx, qword [0x14033a060], 0x19ad8ce
sub rdx, qword [0x14033a068]
mov al, r11b
not al
movzx ecx, al
movzx eax, byte [0x14033a068]
xor ecx, eax
and ecx, 0x8000003f
jge 0x14022ab61
sub ecx, r15d
or ecx, r14d
add ecx, r15d
ror rdx, cl
movabs rax, 0x5524d1ac1bad6ac1
add rax, rdx
add rax, qword [rsp + 0x78]
mov qword [rsp + 0x58], rax
movabs rax, 0xff055d7b8c344d5d
mov rcx, qword [rsp + 0x30]
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r8, r11
imul r8, qword [r13 + rcx*8]
not r10
imul r10, r9
imul r10, qword [rsp + 0x58]
imul r10, qword [rsp + 0x38]
movabs rcx, 0xf5ed7e878b870781
xor rcx, rdi
not rcx
xor rcx, r10
sub rcx, r8
call fcn.1400317f8
mov qword [0x1403489e8], rax
movabs rax, 0xaf64000000000000
mov r8, qword [0x14033a060]
imul r8, rax
movabs rax, 0x2c5f000000000000
xor r8, rax
mov qword [rsp + 0x4d8], r8
movabs rdi, 0x211d64b782912bb4
mov rcx, r8
imul rcx, rdi
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r11, r8
and r11, rdi
imul r11, qword [r13 + rcx*8]
movabs rax, 0x9d3491114dc9c6c0
imul r11, rax
shr r11, 3
movabs rax, 0x8c6bf79620efaa35
xor r11, rax
movabs rax, 0xffffff57c6eb5d73
mov r9, r8
imul r9, rax
sub r9, 0x6249a40
xor r9, r11
xor r9, qword [0x14033a060]
mov rax, r11
imul rax, qword [0x14033a070]
movabs rcx, 0xb9de928bcf58e252
imul rax, rcx
not rax
and r9, rax
ror r9, 0x17
shr r9, 8
movabs rcx, 0xdee29b487d6ed44c
add rcx, r8
xor rcx, 0xfffffffff1d6e95f
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x340184319f91b280
mov r10, qword [r13 + rcx*8]
imul r10, rax
add r10, rdi
movabs rcx, 0x906afdf6ca96bd90
mov rax, r11
imul rax, rcx
xor r10, rax
shr r10, 0x1f
not r10
mov qword [rsp + 0x30], r10
mov rdi, r10
xor rdi, r8
movabs rcx, 0xdee29b487d6ed44c
add rcx, r10
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x43
mov r8d, 0x8000003f
and ecx, r8d
jge 0x14022ad4e
sub ecx, r15d
or ecx, r14d
add ecx, r15d
ror rdi, cl
not rdi
imul rdi, r11
imul rax, rdi, 0xfffffffff9db65c0
movabs rcx, 0x211d64b782912bb4
sub rax, rcx
mov qword [rsp + 0x38], rax
imul r10, r9
sub r10, rax
sub rax, qword [0x14033a078]
xor r10, rax
movabs rax, 0x9332aa23aa1acb00
imul rdi, rax
movabs rax, 0x58ef21f2a6a20970
add rdi, rax
xor r10, rdi
xor r10, r11
xor r10, qword [rsp + 0x4d8]
movabs rax, 0xd7c1efadf1cfcb1d
xor r10, rax
mov rax, rsi
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 [0x14033a080]
mov rdi, qword [r13 + rdx*8]
and rdi, rax
xor rdi, r11
and r11b, bl
mov cl, r11b
ror rdi, cl
mov r11, qword [rsp + 0x38]
imul rdi, r11
not r9
imul r9, qword [rsp + 0x30]
movabs rax, 0x7cd8a7de74b608be
imul r9, rax
mov rax, rdi
imul rax, qword [rsp + 0x4d8]
xor r9, rax
imul rax, qword [0x14033a060], 0xfffffffff9db65c0
mov rdx, qword [0x14033a068]
sub rax, rdx
mov qword [rsp + 0x4d8], rax
mov al, r9b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, r8d
jge 0x14022ae55
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, qword [rsp + 0x4d8]
ror rax, cl
add rax, r11
not r11
imul r11, r10
imul r11, rax
movabs rax, 0x211d64b782912bb4
imul r11, rax
movabs rcx, 0xf5ed7e87834e48af
xor rcx, qword [rsp + 0x30]
not rcx
xor rcx, r11
xor rdi, r9
imul rdi, qword [0x14033a070]
sub rcx, rdi
call fcn.1401b3d18
mov qword [0x1403489b0], rax
movabs rdi, 0x6704d34f3d1d67d9
movabs r10, 0x94ff900e4ec406a
mov qword [rsp + 0x4d8], r10
movabs rax, 0xafa82f3fda000000
mov r8, qword [0x14033a080]
imul r8, rax
movabs rax, 0xdcda9dfe9b000000
xor r8, rax
mov qword [rsp + 0x30], r8
mov rcx, r8
imul rcx, r10
mov qword [rsp + 0x38], rcx
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r8
and r9, r10
imul r9, qword [r13 + rcx*8]
movabs rax, 0xf79ec31847097f80
imul r9, rax
movabs rax, 0x6af641c3c7fbc368
xor r9, rax
shr r9, 3
movabs rax, 0xffffff57cef18fb7
mov rcx, r8
imul rcx, rax
sub rcx, 0xe6eb480
xor rcx, r9
xor rcx, qword [0x14033a060]
mov rax, r9
imul rax, qword [0x14033a070]
movabs rdx, 0xb9de928bc7423096
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0xd
shr rcx, 8
mov qword [rsp + 0x48], rcx
movabs rcx, 0xf6b006ff1b13bf96
add rcx, r8
xor rcx, 0xfffffffff9cc3b9b
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x891a3c76502f7300
mov r11, qword [r13 + rcx*8]
imul r11, rax
add r11, r10
movabs rcx, 0xd1b9abea0bcff68
mov rax, r9
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rax, r11
xor rax, r8
mov qword [rsp + 0x58], rax
movabs r8, 0xf6b006ff1b13bf96
lea rcx, [r11 + r8]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x87
and ecx, 0x8000003f
jge 0x14022b034
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rdx, qword [rsp + 0x58]
ror rdx, cl
not rdx
imul rdx, r9
imul rax, rdx, 0xfffffffff1914b80
mov qword [rsp + 0x58], rax
add r8, rax
mov r10, r11
imul r10, qword [rsp + 0x48]
sub r10, r8
xor r10, rdi
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x14033a078]
xor r10, rax
movabs rax, 0x1207958df3094300
imul rdx, rax
movabs rax, 0x68901f3c5c5ad41c
add rdx, rax
xor r10, rdx
xor r10, r9
mov rdx, qword [rsp + 0x30]
xor r10, rdx
mov rax, r10
and eax, 2
je 0x14022b408
sub rax, 1
je 0x14022b2c6
sub rax, 1
je 0x14022b1c9
cmp rax, 1
jne 0x14022b4c6
mov rdi, r8
imul rdi, r11
movabs rax, 0x16a933e258ffea3a
add rax, r10
xor rdi, rax
ror rdi, 0x34
shr rdi, 0xc
xor rdi, rdx
not rdi
movabs rcx, 0x835725b33e94
mov rdx, qword [0x14033a088]
add rdx, rcx
movabs rax, 0xf632838775bba182
xor rdx, rax
movzx eax, dil
movzx ecx, r10b
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97d53d26f
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0x94ff900e4ec406a
imul rcx, rax
mov eax, 0xac880085
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rax, 0x449927bf7a0bb515
sub rax, rdi
shr rax, cl
mov qword [rsp + 0x4d8], rax
movabs rcx, 0xf6b82b8779202fe0
add rcx, qword [rsp + 0x58]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x48]
xor qword [rsp + 0x4d8], rax
jmp 0x14022b4c6
movabs rax, 0xaaaaaa1aac91fdbb
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed6e9c21f7
imul rcx, rax
movabs rdx, 0xfff17ca87bf3cbc7
mov rax, r9
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a8a81cf67
mov rdx, qword [rsp + 0x58]
imul rdx, rax
movabs r11, 0x32fafb29cdf42ec1
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be7e412adb
mov rcx, r11
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0xfffffffff9c42b6b
lea ecx, [r10 - 7]
and cl, bl
rol r8, cl
movabs rcx, 0x1858510480000000
mov rax, qword [rsp + 0x38]
xor rax, rcx
movabs rcx, 0x7c7a7dc690c321da
and rax, rcx
imul r8, rax
mov rcx, r8
ror rcx, 0x3f
not rcx
movabs rax, 0x9b2de6b2c6b6a3f0
imul rcx, rax
mov rax, r11
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x48]
and cl, bl
ror rdx, cl
movabs rax, 0x94ff900e4ec406a
imul rdx, rax
mov qword [rsp + 0x4d8], rdx
jmp 0x14022b4c6
movabs rax, 0x214559ad7630747c
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, 0xf6b006ff1b13bf95
mov rax, qword [rsp + 0x30]
imul rax, rdx
xor rax, rdi
not rax
shl rax, cl
xor r9, rax
mov cl, r8b
and cl, bl
rol r9, cl
movabs rcx, 0xf6b006ff1b13bf96
add rcx, r10
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffff900e4ec406a
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r9, rax
movabs rax, 0xffffc7a7f0558b96
or r9, rax
mov rcx, qword [0x14033a070]
imul rcx, rdi
sub rcx, r8
mov rax, qword [rsp + 0x48]
sub rax, r9
xor rcx, rax
movabs rax, 0xc7a7c6a6a15d8b9b
xor rcx, rax
mov qword [rsp + 0x4d8], rcx
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x30]
mul rcx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, qword [rsp + 0x4d8]
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r8
imul rdx, qword [rsp + 0x4d8]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, qword [rsp + 0x30]
movabs rdx, 0x78958946e0fc781
add rdx, rax
xor rdx, qword [rsp + 0x48]
movzx eax, r11b
imul ecx, eax, 0xfe
and cl, bl
rol rdx, cl
not rdx
mov qword [rsp + 0x30], rdx
jmp 0x14022b4c6
mov rax, rsi
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 [0x14033a080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r9
and r9b, bl
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r8
mov rcx, qword [rsp + 0x48]
not rcx
imul rcx, r11
movabs rax, 0x7cd8a7de7cacda7a
imul rcx, rax
mov rax, r9
imul rax, qword [rsp + 0x30]
xor rcx, rax
mov qword [rsp + 0x30], rcx
imul rax, qword [0x14033a060], 0xfffffffff1914b80
mov rdx, qword [0x14033a068]
sub rax, rdx
mov qword [rsp + 0x38], rax
mov al, cl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14022b4a7
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, qword [rsp + 0x38]
ror rax, cl
movabs rcx, 0xf6b006ff1b13bf96
add rax, rcx
add rax, qword [rsp + 0x58]
mov qword [rsp + 0x48], rax
movabs rax, 0xff055d7b8ce7d0b7
xor rdi, rax
mov rax, rsi
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rdi, rax
xor r9, qword [rsp + 0x30]
imul r9, qword [r13 + rdi*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x48]
imul r8, qword [rsp + 0x4d8]
movabs rcx, 0xf5ed7e878b549a6b
xor rcx, r11
not rcx
xor rcx, r8
sub rcx, r9
call fcn.140090f10
mov qword [0x1403489e0], rax
jmp 0x14022b52e
mov bl, 0x3f
mov r8, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x4d0]
xor r8, qword [rdx + 0x60]
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x120], r12
movabs rax, 0x5ca8372e8db0254f
mov qword [rsp + 0x120], rax
movabs rcx, 0xf33a52bde9fdd503
add rcx, qword [rsp + 0x120]
movabs rax, 0xfa55366253117c02
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f7123887e
sub rcx, rax
movabs rax, 0xf8f8cd906ff4cd59
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x47d654aedd608248
add rcx, rax
mov rdx, qword [0x14033a040]
add rcx, rdx
movabs rax, 0x5a91799f611af311
xor rcx, rax
movabs rax, 0x5f627dbcf7186d04
sub rcx, rax
movabs rax, 0x363b3cce6bffbac1
xor rcx, rax
movabs rax, 0x3483ce3d142c7033
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94af7a7f5a8
mov rax, qword [0x14033a038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b508580a57
mov rcx, qword [0x14033a030]
xor rcx, rax
movabs r11, 0xe0b56dada77448fd
add r11, rdx
add r11, rcx
movabs rax, 0x9e97b7586b6d0c18
xor r11, rax
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x120], r11
movabs rax, 0xcd7e8a131b72d1b0
mov rdi, r8
xor rdi, rax
movabs rax, 0xd8bf5a4070914a03
imul rdi, rax
mov rcx, r8
imul rcx, r8
and ecx, 7
ror rdi, 6
shr rdi, cl
xor rdi, r8
movabs rcx, 0x35df4c3560940b57
mov rax, r8
imul rax, rcx
ror rax, 0x19
imul rax, rdi
movabs rcx, 0xcda93000005ed71c
xor rax, rcx
mov qword [rsp + 0x38], rax
mov r10, rax
not r10
mov rax, r10
imul rax, rdi
xor edx, edx
div r11
mov r9, r10
imul r9, qword [r13 + rdx*8]
imul r9, rdi
movabs rax, 0x5b0f4e711a5e0555
xor r9, rax
mov cl, r10b
shl cl, 3
add cl, r10b
shl cl, 2
shl r9, cl
mov qword [rsp + 0x48], r9
mov rax, r9
imul rax, r10
mov qword [rsp + 0x58], rax
xor edx, edx
div r11
mov r8, r9
and r8, r10
imul r8, qword [r13 + rdx*8]
mov rcx, qword [rsp + 0x40]
imul r8, rcx
imul r8, rdi
movabs rax, 0xcf1d0a019f7220a7
xor r8, rax
shr r8, 3
mov rax, rcx
imul rax, r10
xor r8, rax
mov qword [rsp + 0x68], r8
movabs rax, 0xca2818fa0e327479
mov rdx, r9
imul rdx, rax
add rdx, rcx
xor rdx, r8
xor rdx, qword [0x14033a060]
mov rax, r8
imul rax, qword [0x14033a070]
movabs rcx, 0x8c0975260781cb58
imul rax, rcx
not rax
and rdx, rax
movzx eax, r10b
mov dword [rsp + 0x4d8], eax
xor eax, 0xa9
and eax, 0x8000003f
jge 0x14022b796
sub eax, r15d
or eax, r14d
add eax, r15d
mov cl, al
ror rdx, cl
shr rdx, 8
mov qword [rsp + 0x70], rdx
mov rax, r9
sub rax, r10
movabs rcx, 0xca281852390fc055
xor rax, rcx
xor edx, edx
div r11
mov r11, qword [rsp + 0x40]
imul r11, qword [r13 + rdx*8]
movabs rax, 0xc77290bd76914b18
imul r11, rax
add r11, r10
mov rax, r8
imul rax, r10
imul rax, rdi
shl rax, 2
xor r11, rax
shr r11, 0x1f
not r11
mov r9, r11
xor r9, qword [rsp + 0x48]
mov rax, r11
sub rax, r10
xor edx, edx
div qword [rsp + 0x30]
movzx eax, r11b
movzx ecx, byte [r13 + rdx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x49
mov eax, 0x8000003f
and ecx, eax
jge 0x14022b82b
sub ecx, r15d
or ecx, r14d
add ecx, r15d
ror r9, cl
not r9
imul r9, qword [rsp + 0x40]
imul r9, r8
sub r9, r10
mov rdx, r11
imul rdx, qword [rsp + 0x70]
sub rdx, r9
xor rdx, rdi
movzx ecx, r9b
mov dword [rsp + 0x78], ecx
xor ecx, 6
and ecx, 0xf
and ecx, eax
jge 0x14022b868
sub ecx, r15d
or ecx, r14d
add ecx, r15d
rol rdx, cl
mov rax, r9
sub rax, qword [0x14033a078]
xor rdx, rax
mov rax, r9
imul rax, r10
xor rdx, rax
xor rdx, r8
xor rdx, qword [rsp + 0x48]
mov qword [rsp + 0x60], rdx
mov rax, rdx
and rax, r10
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14022bbea
sub rax, 1
je 0x14022bac0
sub rax, 1
je 0x14022b9d3
cmp rax, 1
jne 0x14022bc8e
movabs rcx, 0xb9703bca616e6a79
mov rax, r10
imul rax, rcx
mov rdi, rdx
sub rdi, rax
mov rax, r9
imul rax, r11
xor rdi, rax
mov eax, dword [rsp + 0x4d8]
and eax, 0x3c
xor eax, 0x52
and eax, 0x8000003f
jge 0x14022b8fe
sub eax, r15d
or eax, r14d
add eax, r15d
mov cl, al
ror rdi, cl
shr rdi, 0xc
xor rdi, qword [rsp + 0x48]
not rdi
movabs rcx, 0x35d764fae570c55e
mov rdx, qword [0x14033a088]
add rdx, rcx
xor rdx, qword [rsp + 0x38]
movabs rax, 0x355562d5ae6be5d9
xor rdx, rax
movzx eax, byte [rsp + 0x60]
movzx ecx, dil
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xc21d9a14bd9029a1
sub rax, r11
mov r11, rdx
xor r11, rax
mov rax, r11
imul rax, r10
movabs rcx, 0x35d7e7ad6c4bfb4b
add rax, rcx
xor edx, edx
div qword [rsp + 0x30]
mov cl, byte [r13 + rdx*8]
and cl, 0xf
movabs rax, 0xc30b6ed02820d6a9
imul r10, rax
sub r10, rdi
movabs rax, 0x5bae6d2b696ed3a1
add r10, rax
shr r10, cl
movabs rax, 0x35dfc3259ecf8b88
add rax, r9
xor edx, edx
div qword [rsp + 0x30]
mov rax, qword [rsp + 0x60]
imul rax, qword [r13 + rdx*8]
imul rax, qword [rsp + 0x60]
sub rax, qword [rsp + 0x70]
xor r10, rax
jmp 0x14022bc8e
movabs rax, 0x9f7d4db76c520675
mov r11, rdx
xor r11, rax
movabs rax, 0x35c5e140ae5fda39
imul r11, rax
movabs rcx, 0xca269b05bb303009
mov rax, r8
xor rax, rcx
sub r11, rax
lea rax, [r9 + 1]
movabs rcx, 0xca2899274a4234a9
imul rax, rcx
add r11, rax
movabs rcx, 0x12ab3013be82d115
mov rax, r11
xor rax, rcx
xor edx, edx
div qword [rsp + 0x30]
mov r9, r11
not r9
imul r9, qword [r13 + rdx*8]
movabs rax, 0xca2818523907d0a5
xor r9, rax
mov cl, byte [rsp + 0x60]
sub cl, 9
and cl, bl
rol r9, cl
mov rax, rdi
not rax
shl rax, 0x1d
xor rax, qword [rsp + 0x58]
movabs rcx, 0x49ad9a6b5000da14
and rax, rcx
imul r9, rax
movzx ecx, dil
xor ecx, 0x28
and ecx, 0x8000003f
jge 0x14022ba8d
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
movabs rcx, 0x131c9e01716e5332
imul rax, rcx
sub rax, r9
add rax, r11
shl rax, 2
mov cl, byte [rsp + 0x70]
and cl, bl
ror rax, cl
imul r10, rax
jmp 0x14022bc8e
mov rax, r10
imul rax, r10
shr rax, 2
not rax
imul rax, r10
imul rdx, rax
mov qword [rsp + 0x60], rdx
movabs rax, 0xd79435e50d79435f
mul rdx
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, byte [rsp + 0x60]
sub cl, dl
mov rax, qword [rsp + 0x48]
imul rax, qword [rsp + 0x38]
xor rax, rdi
not rax
shl rax, cl
xor r8, rax
mov eax, dword [rsp + 0x78]
and eax, 0x8000003f
jge 0x14022bb23
sub eax, r15d
or eax, r14d
add eax, r15d
mov cl, al
rol r8, cl
mov rax, qword [rsp + 0x60]
sub rax, r10
xor edx, edx
div qword [rsp + 0x30]
imul r10, qword [r13 + rdx*8]
xor r8, r10
movabs rax, 0xca28200a30967058
or r8, rax
mov r10, rdi
imul r10, qword [0x14033a070]
sub r10, r9
mov rax, qword [rsp + 0x70]
sub rax, r8
xor r10, rax
movabs rax, 0xf270210b619e7055
xor r10, rax
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x48]
mul rcx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, r10
div rcx
mov rcx, rdx
mov rdx, qword [rsp + 0x60]
imul rdx, r9
imul rdx, r10
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, qword [rsp + 0x48]
movabs rdx, 0x325ebf39aecc3c4f
add rdx, rax
xor rdx, qword [rsp + 0x70]
movzx eax, r11b
imul ecx, eax, 0xf0
and cl, bl
rol rdx, cl
not rdx
mov qword [rsp + 0x48], rdx
jmp 0x14022bc8e
xor edx, edx
mov rax, r8
div qword [rsp + 0x30]
mov rax, qword [rsp + 0x60]
imul rax, qword [0x14033a080]
mov r8, qword [r13 + rdx*8]
and r8, rax
mov rcx, qword [rsp + 0x68]
xor r8, rcx
and cl, bl
ror r8, cl
imul r8, r9
mov rcx, qword [rsp + 0x70]
not rcx
imul rcx, r11
movabs rax, 0x490f4073bc6f21b4
imul rcx, rax
mov rax, r8
imul rax, qword [rsp + 0x48]
xor rcx, rax
mov qword [rsp + 0x48], rcx
mov rax, qword [rsp + 0x40]
imul rax, qword [0x14033a060]
mov rdx, qword [0x14033a068]
sub rax, rdx
mov qword [rsp + 0x70], rax
mov al, cl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14022bc7e
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, qword [rsp + 0x70]
ror rax, cl
add rax, r9
mov qword [rsp + 0x70], rax
movabs rax, 0xcad2bad64c242b79
xor rax, rdi
xor edx, edx
div qword [rsp + 0x30]
xor r8, qword [rsp + 0x48]
imul r8, qword [r13 + rdx*8]
not r9
imul r9, qword [rsp + 0x60]
imul r9, qword [rsp + 0x70]
imul r9, r10
movabs rax, 0xc03a992a4b9761a5
xor r11, rax
not r11
xor r9, r11
sub r9, r8
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x120], r12
movabs rax, 0x58d7d92120e17387
mov qword [rsp + 0x4d8], rax
movabs rdi, 0xb865992c791f70af
mov qword [rsp + 0x40], r12
movabs rax, 0x8eade5c75e224aca
movabs r11, 0x42891f82bda235ed
mov rcx, qword [0x14033a070]
imul rcx, rax
not rcx
movabs r8, 0x42891f82bfd1f7d1
mov rax, qword [0x14033a060]
xor rax, r8
and rcx, rax
ror rcx, 0x2c
shr rcx, 8
mov qword [rsp + 0x30], rcx
movabs rax, 0xa62f7cc2e19a24e8
mov r9, qword [0x14033a060]
imul r9, rax
movabs r8, 0x479a66d386e08f51
sub r9, r8
movabs rax, 0xe0fbfecbffffffff
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xa3
and ecx, 0x8000003f
jge 0x14022bdbf
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rdx, r9
ror rdx, cl
not rdx
movabs rcx, 0xaf3aeaa372593d8c
mov rax, rdx
imul rax, rcx
mov qword [rsp + 0x38], rax
lea r10, [rax + r8]
mov r8, r9
imul r8, qword [rsp + 0x30]
sub r8, r10
movabs rax, 0x58d7d92120e17387
xor r8, rax
mov cl, r10b
xor cl, 0xfc
and cl, 0xf
rol r8, cl
mov rax, r10
sub rax, qword [0x14033a078]
xor r8, rax
movabs rax, 0x20202eb7d5e252b4
imul rdx, rax
movabs rax, 0x151b59761604685f
add rdx, rax
xor r8, rdx
xor r8, r11
mov rax, r8
and eax, 3
je 0x14022c10e
sub rax, 1
je 0x14022c016
sub rax, 1
je 0x14022bf4d
cmp rax, 1
jne 0x14022c1a4
mov rcx, r10
imul rcx, r9
movabs rax, 0xa2d12079dc83883
add rax, r8
xor rcx, rax
ror rcx, 0x14
shr rcx, 0xc
not rcx
mov qword [rsp + 0x4d8], rcx
movabs rdx, 0x83570c1372b8
add rdx, qword [0x14033a088]
movabs rax, 0x4718e3abc1e8dd63
xor rdx, rax
movzx eax, cl
movzx ecx, r8b
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db954f39e4b
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rdi
mov eax, 0x85284ca1
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0xc61a8eb089c73118
sub rdi, qword [rsp + 0x4d8]
shr rdi, cl
movabs rax, 0x47a28b5bfe8ccbbf
mov rcx, qword [rsp + 0x38]
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, qword [rsp + 0x30]
xor rdi, rax
jmp 0x14022c1a4
movabs rcx, 0xaaaaaa1a8531b19f
mov r9, r8
xor r9, rcx
movabs rcx, 0x1206ed473c6dd3
imul r9, rcx
movabs rdx, 0xffff7e8aa3218343
mov rcx, qword [rsp + 0x38]
imul rcx, rdx
movabs rdx, 0x9ef9c09df5bcc668
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be57e166ff
mov rcx, r9
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r9
not r10
imul r10, qword [r13 + rcx*8]
xor r10, 0xffffffffd064674f
lea ecx, [r8 + 0x1d]
and cl, bl
rol r10, cl
movabs rax, 0x5862518600000000
imul r10, rax
mov rcx, r10
ror rcx, 5
not rcx
movabs rax, 0x9b2de6b260379360
imul rcx, rax
mov rax, r9
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x30]
and cl, bl
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x14022c1a4
movabs rax, 0xf07ddf41c673e5b9
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, 0xa72826dedf1e8c78
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r10b
and cl, bl
rol r11, cl
movabs rcx, 0x479a66d386e08f51
add rcx, r8
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x192c791f70af
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7d9f5c7b2
or r11, rax
mov rdi, qword [0x14033a070]
movabs rax, 0x58d7d92120e17387
imul rdi, rax
sub rdi, r10
mov rax, qword [rsp + 0x30]
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a688fdc7bf
xor rdi, rax
mov rax, r8
imul rax, r10
imul rax, rdi
mov rdx, r9
sub rdx, rax
movabs rax, 0x789589447af8ba5
add rdx, rax
xor rdx, qword [rsp + 0x30]
movzx eax, r9b
imul ecx, eax, 0x1a
and cl, bl
rol rdx, cl
not rdx
mov qword [rsp + 0x40], rdx
jmp 0x14022c1a4
mov rcx, r8
imul rcx, qword [0x14033a080]
and rcx, qword [0x14033a078]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x2d
imul r11, r10
mov rax, qword [rsp + 0x30]
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de550c965e
imul rax, rcx
mov qword [rsp + 0x40], rax
imul rcx, qword [0x14033a060], 0x273c23c
mov rdx, qword [0x14033a068]
sub rcx, rdx
mov qword [rsp + 0x30], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14022c185
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, qword [rsp + 0x30]
ror rax, cl
movabs rcx, 0x479a66d386e08f51
add rax, rcx
add rax, qword [rsp + 0x38]
mov qword [rsp + 0x30], rax
movabs rax, 0xff055d7ba5479c93
mov rcx, qword [rsp + 0x4d8]
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, qword [rsp + 0x40]
imul r11, qword [r13 + rcx*8]
not r10
imul r10, r8
imul r10, qword [rsp + 0x30]
imul r10, rdi
movabs rcx, 0xf5ed7e87a2f4d64f
xor rcx, r9
not rcx
xor rcx, r10
sub rcx, r11
call fcn.1401b3bb0
mov qword [0x1403489c8], rax
mov qword [rsp + 0x128], r12
movabs rax, 0x162ef61b515e7c4b
mov qword [rsp + 0x128], rax
movabs rcx, 0xf33a52ba221e3983
add rcx, qword [rsp + 0x128]
movabs rax, 0x5ed53662530db422
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb809a341655
add rcx, rax
movabs rax, 0xf8f8cd9446f3e747
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x87d654b3ff3089dc
add rcx, rax
mov rdx, qword [0x14033a040]
add rcx, rdx
movabs rax, 0x5a9179a3b116006f
xor rcx, rax
movabs rax, 0x5f627dc3c9e2c26a
sub rcx, rax
movabs rax, 0x123b3cd0500dc77e
xor rcx, rax
movabs rax, 0xb483ce40c194ee73
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94ae888773a
mov rax, qword [0x14033a038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5177788c5
mov rcx, qword [0x14033a030]
xor rcx, rax
movabs rax, 0xe0b56d9e78d85c8f
add rdx, rax
add rdx, rcx
movabs rax, 0xa09ef45512508fa2
xor rdx, rax
mov qword [rsp + 0x128], rdx
mov qword [rsp + 0x128], r12
mov qword [rsp + 0x130], r12
movabs rax, 0x97590fdd0dc1a1d4
mov qword [rsp + 0x130], rax
movabs rcx, 0xf33a52a3c7527403
add rcx, qword [rsp + 0x130]
movabs rax, 0x9955366252f75957
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f22bb865b
sub rcx, rax
movabs rax, 0xf8f8cdaafb2adbdd
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0xc7d654d257702473
add rcx, rax
mov rdx, qword [0x14033a040]
add rcx, rdx
movabs rax, 0x5a9179bd30a66db5
xor rcx, rax
movabs rax, 0x5f627de327a98f38
sub rcx, rax
movabs rax, 0x3e3b3cdb7e26809c
xor rcx, rax
movabs rax, 0x3483ce567fe5218c
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94a8f1d4824
mov rax, qword [0x14033a038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b570e2b7db
mov rcx, qword [0x14033a030]
xor rcx, rax
movabs r8, 0xe0b56d44743e1779
add r8, rdx
add r8, rcx
movabs rax, 0x40921ff3cc6672cc
xor r8, rax
mov qword [rsp + 0x4d8], r8
mov qword [rsp + 0x130], r8
xorps xmm0, xmm0
movups xmmword [rsp + 0x308], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x318], xmm1
movdqa xmm0, xmmword [0x140313c00]
movdqu xmmword [rsp + 0x318], xmm0
mov byte [rsp + 0x308], r12b
mov dword [rsp + 0xb8], 3
mov dword [rsp + 0x84], r12d
mov dword [rsp + 0x84], 0x100a0dfd
mov eax, dword [rsp + 0x84]
add eax, 0x5bf60db5
xor eax, 0xa309edfa
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x5a797127
xor eax, 0x1c34b3c5
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x1eac1151
add eax, ecx
xor eax, 0xff1bd267
add eax, 0x4f8d81ab
xor eax, 0xb3400ea6
lea edx, [rcx + 0x6d52010d]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd96fd68a
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x26902975
add ecx, 0xf0dccca5
add ecx, edx
xor ecx, 0x73192712
mov dword [rsp + 0x84], ecx
movsxd rax, ecx
mov dword [rsp + 0x84], r12d
cmp r8, rax
jbe 0x14022c6dd
mov dword [rsp + 0x88], r12d
mov dword [rsp + 0x88], 0x683b0a79
mov eax, dword [rsp + 0x88]
add eax, 0x50813330
xor eax, 0xc884e285
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
add eax, 0x34a8ed68
xor eax, 0x3bd761b4
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xb7b92ff2
add eax, ecx
xor eax, 0xc02d1ba7
sub eax, 0x3b452f0b
xor eax, 0xd22d790
lea edx, [rcx - 0x2a895668]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xc5420320
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x3abdfcdf
add ecx, 0xeedbd727
add ecx, edx
xor ecx, 0x5e3438e0
mov dword [rsp + 0x88], ecx
movsxd rdx, ecx
imul rdx, r8
lea rcx, [rsp + 0x308]
call fcn.14001fb50
nop
mov dword [rsp + 0x88], r12d
mov rdi, r12
cmp qword [rsp + 0x4d8], r12
jbe 0x14022c6dd
mov rsi, qword [rsp + 0x4d8]
mov cl, byte [rsp + rdi + 0x60]
mov al, cl
shr al, 4
cmp al, 0xa
sbb dl, dl
and dl, 0xf9
add al, 0x37
add dl, al
mov byte [rsp + 0x4d8], dl
and cl, 0xf
cmp cl, 0xa
sbb al, al
and al, 0xf9
add cl, 0x37
add al, cl
mov byte [rsp + 0x4d9], al
lea rcx, [rsp + 0x308]
call fcn.14000c0f8
mov dword [rsp + 0x8c], r12d
mov dword [rsp + 0x8c], 0x7f66742a
mov eax, dword [rsp + 0x8c]
add eax, 0x1960e0b6
xor eax, 0x760aab65
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x5cb1b1a0
xor eax, 0x5bd43578
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x9d8d8fe5
add eax, ecx
xor eax, 0x270df9ba
add eax, 0x7c021577
xor eax, 0xbc84b9d0
mov edx, dword [0x14033a030]
xor edx, 0x239a7e29
sub edx, eax
mov eax, dword [0x14033a038]
xor eax, 0xdc6581d6
sub edx, eax
sub edx, ecx
add edx, 0x34a8f1a2
xor edx, 0x9ee51f46
mov dword [rsp + 0x8c], edx
movsxd rdx, edx
mov dl, byte [rsp + rdx + 0x4d8]
lea rcx, [rsp + 0x308]
call fcn.14000c0f8
nop
mov dword [rsp + 0x8c], r12d
add rdi, r15
cmp rdi, rsi
jb 0x14022c5dc
movabs rsi, 0xaaaaaaaaaaaaaaab
mov dword [rsp + 0xb8], r12d
lea rdx, [rsp + 0x308]
cmp qword [rsp + 0x320], 0xf
cmova rdx, qword [rsp + 0x308]
mov r8, qword [rsp + 0x318]
lea rcx, [rsp + 0x2e8]
call fcn.14001f730
nop
lea rcx, [rsp + 0x308]
call fcn.14000bb68
nop
mov qword [rsp + 0x130], r12
mov qword [rsp + 0x138], r12
movabs rax, 0x17fb65e0e858eac5
mov qword [rsp + 0x138], rax
movabs rcx, 0xcc5ad43a21a16ba
add rcx, qword [rsp + 0x138]
movabs rax, 0x3c0b4fedad97341e
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x312ba68f024bdd42
sub rcx, rax
movabs rax, 0x70745a0a0f81a9c
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x9829ab4e59f62713
add rcx, rax
mov rdx, qword [0x14033a040]
add rcx, rdx
movabs rax, 0xa56e865edb1ab81e
xor rcx, rax
movabs rax, 0x2b02fde3cfe4ebb2
sub rcx, rax
movabs rax, 0x1bc4c330bbc3d904
xor rcx, rax
movabs rax, 0x15ab43310418f447
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0xec3316b50e8866ae
mov rax, qword [0x14033a038]
xor rax, rcx
sub rdx, rax
movabs rax, 0x13cce94af1779951
mov rcx, qword [0x14033a030]
xor rcx, rax
movabs rdi, 0x1f4a91325e8580dc
add rdi, rdx
add rdi, rcx
movabs rax, 0x5b1e9b56a7687b0e
xor rdi, rax
mov qword [rsp + 0x138], rdi
xorps xmm0, xmm0
movups xmmword [rsp + 0x328], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x338], xmm1
movdqa xmm0, xmmword [0x140313c00]
movdqu xmmword [rsp + 0x338], xmm0
mov byte [rsp + 0x328], r12b
mov dword [rsp + 0xb8], 4
mov dword [rsp + 0x90], r12d
mov dword [rsp + 0x90], 0x100a0dfd
mov eax, dword [rsp + 0x90]
add eax, 0x5bf60db5
xor eax, 0xa309edfa
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x5a797127
xor eax, 0x1c34b3c5
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x1eac1151
add eax, ecx
xor eax, 0xff1bd267
add eax, 0x4f8d81ab
xor eax, 0xb3400ea6
lea edx, [rcx + 0x6d52010d]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd96fd68a
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x26902975
add ecx, 0xf0dccca5
add ecx, edx
xor ecx, 0x73192712
mov dword [rsp + 0x90], ecx
movsxd rax, ecx
mov dword [rsp + 0x90], r12d
cmp rdi, rax
jbe 0x14022cad5
mov dword [rsp + 0x94], r12d
mov dword [rsp + 0x94], 0x683b0a79
mov eax, dword [rsp + 0x94]
add eax, 0x50813330
xor eax, 0xc884e285
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
add eax, 0x34a8ed68
xor eax, 0x3bd761b4
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xb7b92ff2
add eax, ecx
xor eax, 0xc02d1ba7
sub eax, 0x3b452f0b
xor eax, 0xd22d790
lea edx, [rcx - 0x2a895668]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xc5420320
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x3abdfcdf
add ecx, 0xeedbd727
add ecx, edx
xor ecx, 0x5e3438e0
mov dword [rsp + 0x94], ecx
movsxd rdx, ecx
imul rdx, rdi
lea rcx, [rsp + 0x328]
call fcn.14001fb50
nop
mov dword [rsp + 0x94], r12d
test rdi, rdi
je 0x14022cad5
mov r13, r12
mov cl, byte [rsp + r13 + 0x60]
mov al, cl
shr al, 4
cmp al, 0xa
sbb dl, dl
and dl, 0xf9
add al, 0x37
add dl, al
mov byte [rsp + 0x4d8], dl
and cl, 0xf
cmp cl, 0xa
sbb al, al
and al, 0xf9
add cl, 0x37
add al, cl
mov byte [rsp + 0x4d9], al
lea rcx, [rsp + 0x328]
call fcn.14000c0f8
mov dword [rsp + 0x98], r12d
mov dword [rsp + 0x98], 0x7f66742a
mov eax, dword [rsp + 0x98]
add eax, 0x1960e0b6
xor eax, 0x760aab65
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x5cb1b1a0
xor eax, 0x5bd43578
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x9d8d8fe5
add eax, ecx
xor eax, 0x270df9ba
add eax, 0x7c021577
xor eax, 0xbc84b9d0
mov edx, dword [0x14033a030]
xor edx, 0x239a7e29
sub edx, eax
mov eax, dword [0x14033a038]
xor eax, 0xdc6581d6
sub edx, eax
sub edx, ecx
add edx, 0x34a8f1a2
xor edx, 0x9ee51f46
mov dword [rsp + 0x98], edx
movsxd rdx, edx
mov dl, byte [rsp + rdx + 0x4d8]
lea rcx, [rsp + 0x328]
call fcn.14000c0f8
nop
mov dword [rsp + 0x98], r12d
add r13, r15
cmp r13, rdi
jb 0x14022c9d6
lea r13, [0x14033a060]
mov dword [rsp + 0xb8], r12d
lea rdx, [rsp + 0x328]
cmp qword [rsp + 0x340], 0xf
cmova rdx, qword [rsp + 0x328]
mov r8, qword [rsp + 0x338]
lea rcx, [rsp + 0x2e8]
call fcn.14001f730
nop
lea rcx, [rsp + 0x328]
call fcn.14000bb68
nop
mov qword [rsp + 0x138], r12
movabs rax, 0xf60eafe660000000
movabs r9, 0x369e1a1a61293de9
mov r11, qword [0x14033a070]
imul r11, rax
movabs rax, 0xc81f744130000000
xor r11, rax
mov rcx, r11
imul rcx, r9
mov qword [rsp + 0x60], rcx
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
and r8, r9
imul r8, qword [r13 + rcx*8]
movabs rax, 0x9328e44fd6415808
imul r8, rax
shr r8, 3
movabs rax, 0xe3aea0c8fe0fb690
xor r8, rax
movabs rax, 0xffffff57959b353f
mov rcx, r11
imul rcx, rax
sub rcx, 0x2f20c234
xor rcx, r8
xor rcx, qword [0x14033a060]
mov rax, r8
imul rax, qword [0x14033a070]
movabs rdx, 0xb9de928b9c288a1e
imul rax, rdx
not rax
and rcx, rax
ror rcx, 6
shr rcx, 8
mov qword [rsp + 0x40], rcx
movabs r10, 0xc961e5e59ed6c217
lea rcx, [r11 + r10]
xor rcx, 0xffffffffa2a68113
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xa9178dda8dc71058
mov rdi, qword [r13 + rcx*8]
imul rdi, rax
add rdi, r9
movabs rcx, 0xfaf1613d83abf998
mov rax, r8
imul rax, rcx
xor rdi, rax
shr rdi, 0x1f
not rdi
mov r9, rdi
xor r9, r11
lea rcx, [rdi + r10]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, dil
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xf
mov edx, 0x8000003f
and ecx, edx
jge 0x14022cc85
sub ecx, r15d
or ecx, r14d
add ecx, r15d
ror r9, cl
not r9
imul r9, r8
mov qword [rsp + 0x30], r9
imul rax, r9, 0xffffffffd0df3dcc
mov qword [rsp + 0x38], rax
add r10, rax
mov r9, rdi
imul r9, qword [rsp + 0x40]
sub r9, r10
movabs rax, 0x77036f24cb42ad76
xor r9, rax
movzx ecx, r10b
mov dword [rsp + 0x4d8], ecx
and ecx, 0xf
and ecx, edx
jge 0x14022ccd7
sub ecx, r15d
or ecx, r14d
add ecx, r15d
rol r9, cl
movabs rcx, 0xfcf7fd7d7e94daac
mov rax, qword [rsp + 0x30]
imul rax, rcx
movabs rcx, 0x68fd11c8a6521ef
add rax, rcx
xor r9, rax
mov rax, r10
sub rax, qword [0x14033a078]
xor r9, rax
xor r9, r8
xor r9, r11
mov rax, r9
and rax, r15
je 0x14022d08b
sub rax, 1
je 0x14022cf24
sub rax, 1
je 0x14022ce2c
cmp rax, 1
jne 0x14022d13c
mov r14, r10
imul r14, rdi
movabs rax, 0x9b8632ec7f54a0a9
add rax, r9
xor r14, rax
ror r14, 0x3c
shr r14, 0xc
xor r14, r11
not r14
movabs rcx, 0x83577ed9841c
mov rdx, qword [0x14033a088]
add rdx, rcx
movabs rax, 0xc9e3609dab146689
xor rdx, rax
movzx eax, r14b
movzx ecx, r9b
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9263968e7
sub rax, rdi
mov rdi, rdx
xor rdi, rax
mov rcx, rdi
movabs rax, 0x369e1a1a61293de9
imul rcx, rax
mov eax, 0xf7e2ba0d
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rbx, 0xb5083998087dce6e
sub rbx, r14
shr rbx, cl
movabs rax, 0xc96a0a6da43d8cd9
mov rcx, qword [rsp + 0x38]
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [r13 + rcx*8]
imul rax, r9
sub rax, qword [rsp + 0x40]
xor rbx, rax
jmp 0x14022d150
movabs rax, 0xaaaaaa1af7fb4733
mov rcx, r9
xor rcx, rax
movabs rax, 0x1206ed35f69b7f
imul rcx, rax
movabs rdx, 0xfff17ca82099714f
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8ad1eb75ef
mov rdx, qword [rsp + 0x38]
imul rdx, rax
movabs rdi, 0xd2222781353c2c68
add rdi, rcx
add rdi, rdx
movabs rax, 0x277cd7be252b9053
mov rcx, rdi
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, rdi
not r10
imul r10, qword [r13 + rcx*8]
xor r10, 0xffffffffa2ae91e3
lea ecx, [r9 - 0xf]
and cl, bl
rol r10, cl
movabs rcx, 0xe797aa79345664ad
mov rax, qword [rsp + 0x60]
xor rax, rcx
movabs rcx, 0x7c7a7dc6cba99b52
and rax, rcx
imul r10, rax
mov rcx, r10
ror rcx, 0x18
not rcx
movabs rax, 0x9b2de6b3ab1c49d0
imul rcx, rax
mov rax, rdi
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x40]
and cl, bl
ror rdx, cl
movabs rax, 0x369e1a1a61293de9
mov rbx, rdx
imul rbx, rax
jmp 0x14022d146
movabs rax, 0x25c6c17e3a7b46f3
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, 0xc961e5e59ed6c216
mov rax, r11
imul rax, rdx
movabs rdx, 0x77036f24cb42ad76
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov eax, dword [rsp + 0x4d8]
and eax, 0x8000003f
jge 0x14022cf8c
sub eax, r15d
or eax, r14d
add eax, r15d
mov cl, al
rol r8, cl
movabs rcx, 0xc961e5e59ed6c217
add rcx, r9
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x1a1a61293de9
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7ab3f311e
or r8, rax
mov rcx, qword [0x14033a070]
movabs rax, 0x77036f24cb42ad76
imul rcx, rax
sub rcx, r10
mov rax, qword [rsp + 0x40]
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a6fa373113
xor rcx, rax
mov qword [rsp + 0x4d8], 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, r15
xor edx, edx
mov rax, qword [rsp + 0x4d8]
div rcx
mov rcx, rdx
mov rdx, r9
imul rdx, r10
imul rdx, qword [rsp + 0x4d8]
shr rdx, cl
mov rax, rdi
sub rax, rdx
sub rax, r11
movabs r11, 0x789589435657d09
add r11, rax
xor r11, qword [rsp + 0x40]
movzx eax, dil
imul ecx, eax, 0xf6
and cl, bl
rol r11, cl
not r11
mov rbx, qword [rsp + 0x4d8]
jmp 0x14022d146
mov rax, rsi
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 [0x14033a080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r8
and r8b, bl
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r10
mov rcx, qword [rsp + 0x40]
not rcx
imul rcx, rdi
movabs rax, 0x7cd8a7de27c660f2
imul rcx, rax
mov rax, r8
imul rax, r11
mov r11, rcx
xor r11, rax
imul rbx, qword [0x14033a060], 0xffffffffd0df3dcc
mov rdx, qword [0x14033a068]
sub rbx, rdx
mov al, r11b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14022d122
sub ecx, r15d
or ecx, r14d
add ecx, r15d
ror rbx, cl
movabs rax, 0xc961e5e59ed6c217
add rax, rbx
add rax, qword [rsp + 0x38]
mov qword [rsp + 0x40], rax
movabs rbx, 0x369e1a1a61293de9
movabs r14, 0x77036f24cb42ad76
movabs rax, 0xff055d7bd78d6a3f
xor r14, rax
mov rax, rsi
mul r14
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r14, rax
xor r8, r11
imul r8, qword [r13 + r14*8]
not r10
imul r10, r9
imul r10, qword [rsp + 0x40]
imul r10, rbx
movabs rcx, 0xf5ed7e87d03e20e3
xor rcx, rdi
not rcx
xor rcx, r10
sub rcx, r8
call fcn.1401b4738
mov qword [0x1403489b8], rax
lea rcx, [rsp + 0x2d0]
call fcn.1400c249c
xor r8d, r8d
mov byte [rsp + 0x4d8], r8b
lea rdx, [rsp + 0x2e8]
lea rcx, [rsp + 0x348]
call fcn.1401b28fc
nop
lea rcx, [rsp + 0x368]
call fcn.140081bbc
nop
lea rdx, [rsp + 0x388]
mov rcx, rax
call fcn.140234240
nop
lea rdx, [rsp + 0x3a8]
mov rcx, rax
call fcn.140234240
nop
lea rcx, [rsp + 0x388]
call fcn.1400525ec
nop
lea rcx, [rsp + 0x368]
call fcn.1400525ec
xor eax, eax
mov byte [rsp + 0x4d8], al
lea rdx, [rsp + 0x448]
lea rcx, [rsp + 0x4d8]
call fcn.1401dd290
mov r13, rax
mov qword [rsp + 0x4d8], rax
mov r14, r12
mov r12d, 0x6afe
xor edx, edx
mov rax, r14
movabs rcx, 0x13cce94adbfb7614
div rcx
lea esi, [rdx + 0x30]
ror si, 8
movzx edi, si
shr di, 0xa
movzx eax, si
shl ax, 6
or di, ax
movzx ebx, di
ror bx, 8
movzx r8d, si
shr r8w, 0xd
movzx eax, si
shl ax, 3
or r8w, ax
movzx r10d, si
shr r10w, 0xb
movzx eax, si
shl ax, 5
or r10w, ax
movzx edx, si
shr dx, 0xc
movzx eax, si
shl ax, 4
or dx, ax
movzx r11d, si
not r11w
movzx ecx, si
ror cx, 1
movzx r9d, word [r13 + r14*2]
sub r9w, di
add r9w, r12w
mov eax, 0x9204
sub ax, di
xor r9w, ax
sub r9w, word [0x14033a058]
sub r9w, word [0x14033a050]
add r9w, si
add r9w, bx
sub r9w, cx
mov eax, 0x6fc1
add r9w, ax
lea eax, [rdi + rsi]
mov ecx, 0x2d07
add ax, cx
xor r9w, ax
sub r9w, si
sub r9w, r8w
sub r9w, word [0x14033a048]
add r9w, r10w
add r9w, di
mov rcx, qword [0x14033a040]
add r9w, cx
movzx eax, si
ror ax, 3
sub r9w, ax
sub r9w, 0x50
movzx eax, dx
sub ax, r8w
add ax, si
add ax, di
xor r9w, ax
movzx eax, si
sub ax, dx
xor ax, si
sub r9w, ax
sub r9w, r10w
add r9w, si
mov eax, 0x4230
add r9w, ax
movzx eax, si
ror ax, 7
mov edx, 0x4050
sub r10w, dx
add ax, r10w
xor r9w, ax
movzx edx, si
xor dx, word [0x14033a030]
sub dx, r9w
movzx eax, r11w
xor ax, word [0x14033a038]
sub dx, ax
mov eax, 0x7100
add eax, esi
mov r8d, 0x2440
xor ax, r8w
sub dx, ax
mov eax, 0x9d7
add eax, esi
add ax, ax
add dx, ax
sub dx, di
sub dx, cx
sub dx, bx
movzx eax, si
ror ax, 8
sub dx, ax
movzx eax, si
movzx ecx, r11w
imul ecx, eax
xor cx, dx
mov word [r13 + r14*2], cx
add r14, r15
cmp r14, 0x1e
jb 0x14022d258
xor r12d, r12d
mov rax, qword [rsp + 0x4d8]
mov qword [rsp + 0x268], rax
mov qword [rsp + 0x270], 0x3c
mov rax, qword [rsp + 0x268]
mov qword [rsp + 0x60], rax
xor r8d, r8d
mov byte [rsp + 0x4d8], r8b
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x3c8]
call fcn.1401b28a0
nop
lea r8, [rsp + 0x3c8]
lea rdx, [rsp + 0x3a8]
lea rcx, [rsp + 0x3e8]
call fcn.140069a1c
lea ebx, [r12 + 8]
mov dword [rsp + 0xb8], ebx
lea rcx, [rsp + 0x3c8]
call fcn.1400525ec
nop
mov rcx, qword [rsp + 0x268]
test rcx, rcx
je 0x14022d4be
mov eax, r12d
cmp qword [rsp + 0x270], r12
jbe 0x14022d4be
mov byte [rax + rcx], r12b
add rax, r15
cmp rax, qword [rsp + 0x270]
jae 0x14022d4be
mov rcx, qword [rsp + 0x268]
jmp 0x14022d4a3
lea rcx, [rsp + 0x3a8]
call fcn.1400525ec
lea r8, [rsp + 0x348]
lea rdx, [rsp + 0x3e8]
lea rcx, [rsp + 0x408]
call fcn.140069a1c
nop
and ebx, 0xfffffff7
mov dword [rsp + 0xb8], ebx
lea rcx, [rsp + 0x3e8]
call fcn.1400525ec
nop
lea rcx, [rsp + 0x348]
call fcn.1400525ec
and ebx, 0xfffffffe
mov dword [rsp + 0xb8], ebx
lea rcx, [rsp + 0x2e8]
call fcn.14000bb68
nop
mov rcx, qword [rsp + 0x258]
test rcx, rcx
je 0x14022d55b
mov rax, r12
cmp qword [rsp + 0x260], r12
jbe 0x14022d55b
mov byte [rax + rcx], r12b
add rax, r15
cmp rax, qword [rsp + 0x260]
jae 0x14022d55b
mov rcx, qword [rsp + 0x258]
jmp 0x14022d540
mov qword [rsp + 0x60], r12
mov dword [rsp + 0x9c], r12d
mov dword [rsp + 0x9c], 0x87fac15a
mov eax, dword [rsp + 0x9c]
add eax, 0xce39e36
xor eax, 0x338a9ee8
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
add eax, 0x2373c627
xor eax, 0x68836d02
sub eax, dword [0x14033a048]
mov rdx, qword [0x14033a040]
add eax, 0x6e8197aa
add eax, edx
xor eax, 0x354cd994
add eax, 0x7b951bcd
xor eax, 0xd6c3befa
mov ebx, dword [0x14033a030]
xor ebx, 0x23cc7333
sub ebx, eax
mov eax, dword [0x14033a038]
xor eax, 0xdc338ccc
sub ebx, eax
sub ebx, edx
add ebx, 0x761c1cea
xor ebx, 0x1d14b0a4
mov qword [rsp + 0x40], rbx
mov dword [rsp + 0x9c], ebx
mov qword [rsp + 0x60], rbx
mov dword [rsp + 0x9c], r12d
xor eax, eax
mov byte [rsp + 0x4d8], al
mov dword [rsp + 0x110], 0x69498eba
mov eax, 0x7c6
mov word [rsp + 0x114], ax
mov r13, r12
mov ebx, 0x6fc1
mov r12d, 0x6afe
xor edx, edx
mov rax, r13
movabs rcx, 0x13cce94adbfb7614
div rcx
lea r14d, [rdx + 0x30]
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 r8d, r14w
shr r8w, 0xd
movzx eax, r14w
shl ax, 3
or r8w, ax
movzx r10d, r14w
shr r10w, 0xb
movzx eax, r14w
shl ax, 5
or r10w, ax
movzx edx, r14w
shr dx, 0xc
movzx eax, r14w
shl ax, 4
or dx, ax
movzx r11d, r14w
not r11w
movzx ecx, r14w
ror cx, 1
movzx r9d, word [rsp + r13*2 + 0x110]
sub r9w, si
add r9w, r12w
mov eax, 0x9204
sub ax, si
xor r9w, ax
sub r9w, word [0x14033a058]
sub r9w, word [0x14033a050]
add r9w, r14w
add r9w, di
sub r9w, cx
add r9w, bx
lea eax, [rsi + r14]
mov ecx, 0x2d07
add ax, cx
xor r9w, ax
sub r9w, word [0x14033a048]
sub r9w, r14w
sub r9w, r8w
mov rcx, qword [0x14033a040]
add r9w, cx
add r9w, r10w
add r9w, si
movzx eax, r14w
ror ax, 3
sub r9w, ax
sub r9w, 0x50
movzx eax, r14w
sub ax, r8w
add ax, dx
add ax, si
xor r9w, ax
movzx eax, r14w
sub ax, dx
xor ax, r14w
sub r9w, ax
sub r9w, r10w
add r9w, r14w
mov eax, 0x4230
add r9w, ax
movzx eax, r14w
ror ax, 7
mov edx, 0x4050
sub r10w, dx
add ax, r10w
xor r9w, ax
movzx edx, r14w
xor dx, word [0x14033a030]
sub dx, r9w
mov eax, 0x7100
add eax, r14d
mov r8d, 0x2440
xor ax, r8w
sub dx, ax
movzx eax, r11w
xor ax, word [0x14033a038]
sub dx, ax
mov eax, 0x9d7
add eax, r14d
add ax, ax
add dx, ax
sub dx, cx
sub dx, di
sub dx, si
movzx eax, r14w
ror ax, 8
sub dx, ax
movzx eax, r11w
movzx ecx, r14w
imul ecx, eax
xor cx, dx
mov word [rsp + r13*2 + 0x110], cx
add r13, r15
cmp r13, 3
jb 0x14022d62e
mov rbx, qword [rsp + 0x40]
xor r12d, r12d
lea r13, [0x14033a060]
lea rax, [rsp + 0x110]
mov qword [rsp + 0x278], rax
mov qword [rsp + 0x280], 6
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x40], rax
lea rdx, [rsp + 0x428]
lea rcx, [rsp + 0x408]
call fcn.1400699cc
mov qword [rsp + 0x30], rax
cmp qword [rax + 0x18], 7
jbe 0x14022d854
mov rax, qword [rax]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x140], r12
movabs rax, 0x689a86557b76cf29
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], r12
movabs rax, 0xc7ef4fd8b329cc76
mov qword [rsp + 0x148], rax
movabs rcx, 0xf33a52b6a906cd03
add rcx, qword [rsp + 0x148]
movabs rax, 0xf2553662530a3b0b
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f5b60a366
sub rcx, rax
movabs rax, 0xf8f8cd97cdefb179
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x47d654b8b60fd5a4
add rcx, rax
mov rsi, qword [0x14033a040]
add rcx, rsi
movabs rax, 0x5a9179a7a734b831
xor rcx, rax
movabs rax, 0x5f627dc6dac73ee4
sub rcx, rax
movabs rax, 0x763b3cd20cb54679
xor rcx, rax
movabs rdx, 0x3483ce44225cb6fb
add rdx, rcx
add rdx, rsi
not rdx
movabs rcx, 0x13cce94adaa41988
mov r10, qword [0x14033a038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5255be677
mov rdi, qword [0x14033a030]
mov rcx, rdi
xor rcx, rax
movabs rax, 0xe0b56d90269414dd
add rdx, rax
add rdx, rcx
movabs rax, 0x335edf68cc900e38
xor rdx, rax
mov qword [rsp + 0x148], rdx
movabs rcx, 0xf33a52b60a5dca83
add rcx, qword [rsp + 0x140]
movabs rax, 0xefd5366253099c62
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80a67b57a2
add rcx, rax
movabs rax, 0xf8f8cd986f135803
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x7d654b98d6e4088
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85c2d7f0b
xor rcx, rax
movabs rax, 0x5f627dc6ca95ec6e
sub rcx, rax
movabs rax, 0x8a3b3cd25c0ebd02
xor rcx, rax
movabs rax, 0xb483ce44bcaf1a6a
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad829757e
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527d68a81
xor rdi, rax
movabs rax, 0xe0b56d8dc9359e53
add rcx, rax
add rcx, rdi
movabs rax, 0xd105d0e1af8e207e
xor rcx, rax
mov qword [rsp + 0x140], rcx
and rcx, rdx
cmp rbx, rcx
setne al
mov qword [rsp + 0x148], r12
mov qword [rsp + 0x140], r12
test al, al
je 0x14022dd20
mov esi, r12d
mov eax, 0x1f793282
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x4d8], eax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r13d, 8
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, r13w
test esi, esi
je 0x14022db02
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x88753da6
jmp 0x14022daf4
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, r11
jne 0x14022dace
cmp r10d, esi
jne 0x14022dc62
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov rcx, qword [rcx + r11 + 0x88]
mov edi, ecx
add rdi, r11
shr rcx, 0x20
cmp rdi, r11
je 0x14022dc62
mov r14d, dword [rdi + 0x18]
test r14d, r14d
je 0x14022dc62
mov r9d, dword [rdi + 0x20]
mov r8d, dword [rsp + 0x4d8]
dec r14d
mov edx, r14d
mov qword [rsp + 0x38], rdx
lea rdx, [r11 + r14*4]
mov ebx, dword [rdx + r9]
add rbx, r11
mov edx, 0x88753da6
mov r9b, byte [rbx]
add rbx, r15
mov r10d, 0x4764996c
test r9b, r9b
je 0x14022dbab
mov r11d, edx
movsx r8d, r9b
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, r10d
mov edx, r11d
xor edx, r8d
mov r11d, r9d
imul r11d, edx
mov r9b, byte [rbx]
add rbx, r15
test r9b, r9b
jne 0x14022db6c
mov dword [rsp + 0x68], r11d
mov r11, qword [rax + 0x30]
mov edx, dword [rsp + 0x68]
mov r8d, dword [rsp + 0x4d8]
cmp edx, r8d
je 0x14022dbbe
test r14d, r14d
mov r9d, dword [rdi + 0x20]
jne 0x14022db3d
jmp 0x14022dc62
mov edx, dword [rdi + 0x1c]
add rdx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
mov r8, qword [rsp + 0x38]
movzx eax, word [rax + r8*2]
mov r8d, dword [rdx + rax*4]
add r8, r11
cmp r8, rdi
jbe 0x14022dc6a
lea rax, [rcx + rdi]
cmp r8, rax
jae 0x14022dc6a
mov esi, 0x88753da6
mov r11d, esi
mov dword [rsp + 0x4d8], esi
jmp 0x14022dc16
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r10d
xor ecx, esi
mov esi, eax
imul esi, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x14022dbfe
add r8, r15
mov al, byte [r8]
test al, al
je 0x14022dc51
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r10d
xor ecx, r11d
mov r11d, eax
imul r11d, ecx
add r8, r15
mov al, byte [r8]
test al, al
jne 0x14022dc27
mov dword [rsp + 0x4d8], r11d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14022daa2
mov rcx, qword [rsp + 0x60]
call r8
mov dword [rsp + 0xa0], r12d
mov dword [rsp + 0xa0], 0x914d6307
mov eax, dword [rsp + 0xa0]
add eax, 0x23fbc9b4
xor eax, 0x5f08b600
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x56d1825b
xor eax, 0x590ee0d6
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xc62848a1
add eax, ecx
xor eax, 0x62f547f8
sub eax, 0xb90f4a6
xor eax, 0x6f46f07a
lea edx, [rcx - 0x633b92ce]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd48fed7a
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x2b701285
add ecx, 0x2c53d310
add ecx, edx
xor ecx, 0xf0d8f462
mov dword [rsp + 0xa0], ecx
movsxd rax, ecx
mov qword [rsp + 0x60], rax
mov dword [rsp + 0xa0], r12d
lea r13, [0x14033a060]
jmp 0x14022dd28
mov dword [rsp + 0x78], 0x1f793282
mov edi, r12d
mov dword [rsp + 0x68], 0x235d14
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 edi, edi
je 0x14022dd9e
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x66d64d92
jmp 0x14022dd90
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x14022dd70
cmp r9d, edi
jne 0x14022de5e
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov ebx, ecx
add rbx, r10
shr rcx, 0x20
cmp rbx, r10
je 0x14022de5e
mov esi, dword [rbx + 0x18]
test esi, esi
je 0x14022de5e
mov r9d, dword [rbx + 0x20]
mov r8d, dword [rsp + 0x68]
dec esi
mov edx, esi
mov qword [rsp + 0x38], rdx
lea rdx, [r9 + rsi*4]
mov r11d, dword [rdx + r10]
add r11, r10
mov edx, 0x66d64d92
mov r9b, byte [r11]
mov byte [rsp + 0x4d8], r9b
add r11, r15
mov r14d, 0x31
test r9b, r9b
mov r9d, 0x4764996c
je 0x14022de4d
mov r10d, edx
mov dl, byte [rsp + 0x4d8]
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, r14d
xor edx, r9d
xor r8d, r10d
mov r10d, edx
imul r10d, r8d
mov dl, byte [r11]
add r11, r15
test dl, dl
jne 0x14022de16
mov dword [rsp + 0x70], r10d
mov r10, qword [rax + 0x30]
mov edx, dword [rsp + 0x70]
mov r8d, dword [rsp + 0x68]
cmp edx, r8d
je 0x14022de66
test esi, esi
mov r9d, dword [rbx + 0x20]
jne 0x14022ddd4
mov rax, qword [rax]
jmp 0x14022dd44
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov eax, dword [rbx + 0x24]
add rax, r10
mov r8, qword [rsp + 0x38]
movzx eax, word [rax + r8*2]
mov r8d, dword [rdx + rax*4]
add r8, r10
cmp r8, rbx
jbe 0x14022df05
lea rax, [rcx + rbx]
cmp r8, rax
jae 0x14022df05
mov edi, 0x66d64d92
mov r10d, edi
mov dword [rsp + 0x68], edi
jmp 0x14022deb7
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, r14d
xor eax, r9d
xor ecx, edi
mov edi, eax
imul edi, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x14022de9f
add r8, r15
mov al, byte [r8]
test al, al
je 0x14022deef
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, r14d
xor eax, r9d
xor ecx, r10d
mov r10d, eax
imul r10d, ecx
add r8, r15
mov al, byte [r8]
test al, al
jne 0x14022dec8
mov dword [rsp + 0x68], r10d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14022de5e
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x30]
call r8
mov rbx, rax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x150], r12
movabs rax, 0x689a86557b76cf29
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], r12
movabs rax, 0xc7ef4fd8b329cc76
mov qword [rsp + 0x158], rax
movabs rcx, 0xf33a52b6a906cd03
add rcx, qword [rsp + 0x158]
movabs rax, 0xf2553662530a3b0b
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f5b60a366
sub rcx, rax
movabs rax, 0xf8f8cd97cdefb179
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x47d654b8b60fd5a4
add rcx, rax
mov rsi, qword [0x14033a040]
add rcx, rsi
movabs rax, 0x5a9179a7a734b831
xor rcx, rax
movabs rax, 0x5f627dc6dac73ee4
sub rcx, rax
movabs rax, 0x763b3cd20cb54679
xor rcx, rax
movabs rdx, 0x3483ce44225cb6fb
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033a038]
mov rax, r10
movabs rcx, 0x13cce94adaa41988
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033a030]
mov rcx, r11
movabs rax, 0xec3316b5255be677
xor rcx, rax
movabs rax, 0xe0b56d90269414dd
add rdx, rax
add rdx, rcx
movabs rax, 0x335edf68cc900e38
xor rdx, rax
mov qword [rsp + 0x158], rdx
movabs rcx, 0xf33a52b60a5dca83
add rcx, qword [rsp + 0x150]
movabs rax, 0xefd5366253099c62
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80a67b57a2
add rcx, rax
movabs rax, 0xf8f8cd986f135803
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x7d654b98d6e4088
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85c2d7f0b
xor rcx, rax
movabs rax, 0x5f627dc6ca95ec6e
sub rcx, rax
movabs rax, 0x8a3b3cd25c0ebd02
xor rcx, rax
movabs rax, 0xb483ce44bcaf1a6a
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad829757e
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527d68a81
xor r11, rax
movabs rax, 0xe0b56d8dc9359e53
add rcx, rax
add rcx, r11
movabs rax, 0xd105d0e1af8e207e
xor rcx, rax
mov qword [rsp + 0x150], rcx
and rcx, rdx
cmp rbx, rcx
setne dil
mov qword [rsp + 0x158], r12
mov qword [rsp + 0x150], r12
lea rcx, [rsp + 0x428]
call fcn.1400525ec
nop
mov rcx, qword [rsp + 0x278]
test rcx, rcx
je 0x14022e17a
mov rax, r12
cmp qword [rsp + 0x280], r12
jbe 0x14022e17a
mov byte [rax + rcx], r12b
add rax, r15
cmp rax, qword [rsp + 0x280]
jae 0x14022e17a
mov rcx, qword [rsp + 0x278]
jmp 0x14022e15f
test dil, dil
je 0x140231fb0
mov qword [rsp + 0x160], r12
movabs r14, 0x689a86557b76cf29
mov qword [rsp + 0x160], r14
mov qword [rsp + 0x168], r12
movabs rax, 0xc7ef4fd8b329cc76
mov qword [rsp + 0x168], rax
movabs rcx, 0xf33a52b6a906cd03
add rcx, qword [rsp + 0x168]
movabs rax, 0xf2553662530a3b0b
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f5b60a366
sub rcx, rax
movabs rax, 0xf8f8cd97cdefb179
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x47d654b8b60fd5a4
add rcx, rax
mov rsi, qword [0x14033a040]
add rcx, rsi
movabs rax, 0x5a9179a7a734b831
xor rcx, rax
movabs rax, 0x5f627dc6dac73ee4
sub rcx, rax
movabs rax, 0x763b3cd20cb54679
xor rcx, rax
movabs rdx, 0x3483ce44225cb6fb
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033a038]
mov rax, r10
movabs rcx, 0x13cce94adaa41988
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033a030]
mov rcx, r11
movabs rax, 0xec3316b5255be677
xor rcx, rax
movabs rax, 0xe0b56d90269414dd
add rdx, rax
add rdx, rcx
movabs rax, 0x335edf68cc900e38
xor rdx, rax
mov qword [rsp + 0x168], rdx
movabs rcx, 0xf33a52b60a5dca83
add rcx, qword [rsp + 0x160]
movabs rax, 0xefd5366253099c62
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80a67b57a2
add rcx, rax
movabs rax, 0xf8f8cd986f135803
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x7d654b98d6e4088
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85c2d7f0b
xor rcx, rax
movabs rax, 0x5f627dc6ca95ec6e
sub rcx, rax
movabs rax, 0x8a3b3cd25c0ebd02
xor rcx, rax
movabs rax, 0xb483ce44bcaf1a6a
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad829757e
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527d68a81
xor r11, rax
movabs rax, 0xe0b56d8dc9359e53
add rcx, rax
add rcx, r11
movabs rax, 0xd105d0e1af8e207e
xor rcx, rax
mov qword [rsp + 0x160], rcx
and rcx, rdx
cmp rbx, rcx
setne al
mov qword [rsp + 0x168], r12
mov qword [rsp + 0x160], r12
test al, al
jne 0x14022e44b
mov dword [rsp + 0xa4], r12d
mov dword [rsp + 0xa4], 0x194ee5d4
mov eax, dword [rsp + 0xa4]
add eax, 0xa4cdc135
xor eax, 0x568a36d2
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
add eax, 0x24ac07be
xor eax, 0xd239a177
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x7bcb4529
add eax, ecx
xor eax, 0xac05c9a9
add eax, 0x2226cd61
xor eax, 0xf2d1ee29
mov edx, dword [0x14033a030]
xor edx, 0x256ccaa7
sub edx, eax
mov eax, dword [0x14033a038]
xor eax, 0xda933558
sub edx, eax
sub edx, ecx
add edx, 0x6f29057e
xor edx, 0xf73f3c68
mov dword [rsp + 0xa4], edx
mov dword [rsp + 0xa4], r12d
movabs r14, 0xaaaaaaaaaaaaaaab
jmp 0x14022f8d1
mov qword [rsp + 0x170], r12
mov qword [rsp + 0x170], r14
mov qword [rsp + 0x178], r12
movabs rax, 0xc7ef4fd8b329cc76
mov qword [rsp + 0x178], rax
movabs rcx, 0xf33a52b6a906cd03
add rcx, qword [rsp + 0x178]
movabs rax, 0xf2553662530a3b0b
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f5b60a366
sub rcx, rax
movabs rax, 0xf8f8cd97cdefb179
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x47d654b8b60fd5a4
add rcx, rax
mov rsi, qword [0x14033a040]
add rcx, rsi
movabs rax, 0x5a9179a7a734b831
xor rcx, rax
movabs rax, 0x5f627dc6dac73ee4
sub rcx, rax
movabs rax, 0x763b3cd20cb54679
xor rcx, rax
movabs rdx, 0x3483ce44225cb6fb
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033a038]
mov rax, r10
movabs rcx, 0x13cce94adaa41988
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033a030]
mov rcx, r11
movabs rax, 0xec3316b5255be677
xor rcx, rax
movabs rax, 0xe0b56d90269414dd
add rdx, rax
add rdx, rcx
movabs rax, 0x335edf68cc900e38
xor rdx, rax
mov qword [rsp + 0x178], rdx
movabs rcx, 0xf33a52b60a5dca83
add rcx, qword [rsp + 0x170]
movabs rax, 0xefd5366253099c62
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80a67b57a2
add rcx, rax
movabs rax, 0xf8f8cd986f135803
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x7d654b98d6e4088
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85c2d7f0b
xor rcx, rax
movabs rax, 0x5f627dc6ca95ec6e
sub rcx, rax
movabs rax, 0x8a3b3cd25c0ebd02
xor rcx, rax
movabs rax, 0xb483ce44bcaf1a6a
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad829757e
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527d68a81
xor r11, rax
movabs rax, 0xe0b56d8dc9359e53
add rcx, rax
add rcx, r11
movabs rax, 0xd105d0e1af8e207e
xor rcx, rax
mov qword [rsp + 0x170], rcx
and rcx, rdx
cmp rbx, rcx
setne al
mov qword [rsp + 0x178], r12
mov qword [rsp + 0x170], r12
test al, al
jne 0x14022e71d
mov dword [rsp + 0xa8], r12d
mov dword [rsp + 0xa8], 0xd1729c3c
mov eax, dword [rsp + 0xa8]
add eax, 0x59e5cdb5
xor eax, 0x6309ebea
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x5a734067
xor eax, 0x1e4d34c5
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x21792031
add eax, ecx
xor eax, 0x1765b67
add eax, 0x4e21b4ab
xor eax, 0xb4483f28
lea edx, [rcx + 0x6f53cf4d]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd967958a
sub edx, eax
mov eax, dword [0x14033a030]
xor eax, 0x26986a75
add eax, 0xe8d38ba5
add eax, edx
xor eax, 0x86327c12
mov dword [rsp + 0x4d8], eax
mov dword [rsp + 0xa8], eax
mov dword [rsp + 0xa8], r12d
mov dword [rsp + 0x68], 0x7f5d390e
movabs r14, 0xaaaaaaaaaaaaaaab
jmp 0x14022e917
mov edi, r12d
mov eax, 0x7f5d390e
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x70], eax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
movabs r14, 0xaaaaaaaaaaaaaaab
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, 8
test edi, edi
je 0x14022e7a8
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x796b6ff2
jmp 0x14022e79a
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, r11
jne 0x14022e774
cmp r10d, edi
jne 0x14022e85e
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov ebx, ecx
add rbx, r10
shr rcx, 0x20
cmp rbx, r10
je 0x14022e85e
mov esi, dword [rbx + 0x18]
test esi, esi
je 0x14022e85e
mov r9d, dword [rbx + 0x20]
mov r8d, dword [rsp + 0x70]
dec esi
mov edx, esi
mov qword [rsp + 0x40], rdx
lea rdx, [r10 + rsi*4]
mov r11d, dword [rdx + r9]
add r11, r10
mov edx, 0x796b6ff2
mov r9b, byte [r11]
mov byte [rsp + 0x4d8], r9b
add r11, r15
test r9b, r9b
mov r9d, 0x4764996c
je 0x14022e851
mov r10d, edx
mov dl, byte [rsp + 0x4d8]
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, r15
test dl, dl
jne 0x14022e81a
mov dword [rsp + 0x58], r10d
mov r10, qword [rax + 0x30]
mov edx, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x70]
cmp edx, r8d
je 0x14022e866
test esi, esi
mov r9d, dword [rbx + 0x20]
jne 0x14022e7de
mov rax, qword [rax]
jmp 0x14022e748
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov eax, dword [rbx + 0x24]
add rax, r10
mov r8, qword [rsp + 0x40]
movzx eax, word [rax + r8*2]
mov r8d, dword [rdx + rax*4]
add r8, r10
cmp r8, rbx
jbe 0x14022e905
lea rax, [rcx + rbx]
cmp r8, rax
jae 0x14022e905
mov edi, 0x796b6ff2
mov r11d, edi
mov dword [rsp + 0x70], edi
jmp 0x14022e8b7
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r9d
xor ecx, edi
mov edi, eax
imul edi, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x14022e89f
add r8, r15
mov al, byte [r8]
test al, al
je 0x14022e8ef
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r9d
xor ecx, r11d
mov r11d, eax
imul r11d, ecx
add r8, r15
mov al, byte [r8]
test al, al
jne 0x14022e8c8
mov dword [rsp + 0x70], r11d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14022e85e
mov rbx, qword [rsp + 0x60]
mov rcx, rbx
call r8
mov dword [rsp + 0x4d8], eax
mov dword [rsp + 0xb4], r12d
mov dword [rsp + 0xb4], 0xa27c4e36
mov eax, dword [rsp + 0xb4]
add eax, 0x519bf435
xor eax, 0x8989e3a0
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
add eax, 0x25a59d25
xor eax, 0x26b835ab
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x6cb95eee
add eax, ecx
xor eax, 0xaea977d
add eax, 0x480db2b5
xor eax, 0x846d6e37
lea edx, [rcx - 0x89c5c26]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd9466e24
sub edx, eax
mov eax, dword [0x14033a030]
xor eax, 0x26b991db
add eax, 0xc74afe3f
add eax, edx
xor eax, 0xb3a69ccc
mov dword [rsp + 0x58], eax
mov dword [rsp + 0xb4], eax
mov dword [rsp + 0xac], r12d
mov dword [rsp + 0xac], 0x6c37a152
mov eax, dword [rsp + 0xac]
add eax, 0x6b08
xor eax, 0x5cd77d
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x5335f8c2
xor eax, 0x2c844c4e
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xd2389c68
add eax, ecx
xor eax, 0xdaea1f46
add eax, 0x710a6181
xor eax, 0xf6a393e9
lea edx, [rcx + 0xdaa3579]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0x2515e0ae
sub edx, eax
mov eax, dword [0x14033a030]
xor eax, 0xdaea1f51
add eax, 0xccec4c15
add eax, edx
xor eax, 0xed2d290e
mov dword [rsp + 0x70], eax
mov dword [rsp + 0xac], eax
mov qword [rsp + 0x180], r12
movabs rax, 0x689a86557b76cf29
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x188], r12
movabs rax, 0xc7ef4fd8b329cc76
mov qword [rsp + 0x188], rax
movabs rcx, 0xf33a52b6a906cd03
add rcx, qword [rsp + 0x188]
movabs rax, 0xf2553662530a3b0b
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f5b60a366
sub rcx, rax
movabs rax, 0xf8f8cd97cdefb179
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x47d654b8b60fd5a4
add rcx, rax
mov rsi, qword [0x14033a040]
add rcx, rsi
movabs rax, 0x5a9179a7a734b831
xor rcx, rax
movabs rax, 0x5f627dc6dac73ee4
sub rcx, rax
movabs rax, 0x763b3cd20cb54679
xor rcx, rax
movabs rdx, 0x3483ce44225cb6fb
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033a038]
mov rax, r10
movabs rcx, 0x13cce94adaa41988
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033a030]
mov rcx, r11
movabs rax, 0xec3316b5255be677
xor rcx, rax
movabs rax, 0xe0b56d90269414dd
add rdx, rax
add rdx, rcx
movabs rax, 0x335edf68cc900e38
xor rdx, rax
mov qword [rsp + 0x188], rdx
movabs rcx, 0xf33a52b60a5dca83
add rcx, qword [rsp + 0x180]
movabs rax, 0xefd5366253099c62
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80a67b57a2
add rcx, rax
movabs rax, 0xf8f8cd986f135803
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x7d654b98d6e4088
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85c2d7f0b
xor rcx, rax
movabs rax, 0x5f627dc6ca95ec6e
sub rcx, rax
movabs rax, 0x8a3b3cd25c0ebd02
xor rcx, rax
movabs rax, 0xb483ce44bcaf1a6a
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad829757e
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527d68a81
xor r11, rax
movabs rax, 0xe0b56d8dc9359e53
add rcx, rax
add rcx, r11
movabs rax, 0xd105d0e1af8e207e
xor rcx, rax
mov qword [rsp + 0x180], rcx
and rcx, rdx
cmp rbx, rcx
setne al
mov qword [rsp + 0x188], r12
mov qword [rsp + 0x180], r12
test al, al
jne 0x14022ed11
mov dword [rsp + 0xb0], r12d
mov dword [rsp + 0xb0], 0xa8c94fa5
mov eax, dword [rsp + 0xb0]
add eax, 0x26beb1b5
xor eax, 0x4709b8c3
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x59d9cb13
xor eax, 0x5240ed35
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x66e8b6b3
add eax, ecx
xor eax, 0x3bcef757
add eax, 0x3a72cdfb
xor eax, 0xaddd6661
lea edx, [rcx - 0x5eeb2677]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd89af91a
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x276506e5
add ecx, 0x1b6cc734
add ecx, edx
xor ecx, 0xa1b97042
mov dword [rsp + 0xb0], ecx
mov dword [rsp + 0xb0], r12d
mov dword [rsp + 0x48], 0xf3696d86
jmp 0x14022ef00
mov esi, r12d
mov eax, 0xf3696d86
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x38], eax
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 esi, esi
je 0x14022ed92
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x7f077de4
jmp 0x14022ed84
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, r11
jne 0x14022ed5e
cmp r10d, esi
jne 0x14022ee44
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov rcx, qword [rcx + r11 + 0x88]
mov edi, ecx
add rdi, r11
shr rcx, 0x20
cmp rdi, r11
je 0x14022ee44
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x14022ee44
mov r9d, dword [rdi + 0x20]
dec r8d
mov dword [rsp + 0x30], r8d
mov edx, r8d
mov qword [rsp + 0x50], rdx
lea rdx, [r9 + r8*4]
mov ebx, dword [rdx + r11]
add rbx, r11
mov edx, 0x7f077de4
mov r9b, byte [rbx]
add rbx, r15
mov r10d, 0x4764996c
test r9b, r9b
je 0x14022ee35
mov r11d, edx
movsx r8d, r9b
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, r10d
mov edx, r11d
xor edx, r8d
mov r11d, r9d
imul r11d, edx
mov r9b, byte [rbx]
add rbx, r15
test r9b, r9b
jne 0x14022edf9
mov dword [rsp + 0x40], r11d
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0x30]
mov edx, dword [rsp + 0x40]
cmp edx, dword [rsp + 0x38]
je 0x14022ee4c
test r8d, r8d
mov r9d, dword [rdi + 0x20]
jne 0x14022edc5
mov rax, qword [rax]
jmp 0x14022ed32
mov edx, dword [rdi + 0x1c]
add rdx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
mov r8, qword [rsp + 0x50]
movzx eax, word [rax + r8*2]
mov r9d, dword [rdx + rax*4]
add r9, r11
cmp r9, rdi
jbe 0x14022eeeb
lea rax, [rcx + rdi]
cmp r9, rax
jae 0x14022eeeb
mov esi, 0x7f077de4
mov r11d, esi
mov dword [rsp + 0x38], esi
jmp 0x14022ee9d
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r10d
xor ecx, esi
mov esi, eax
imul esi, ecx
add r9, r15
mov al, byte [r9]
cmp al, 0x2e
jne 0x14022ee85
add r9, r15
mov al, byte [r9]
test al, al
je 0x14022eed5
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r10d
xor ecx, r11d
mov r11d, eax
imul r11d, ecx
add r9, r15
mov al, byte [r9]
test al, al
jne 0x14022eeae
mov dword [rsp + 0x38], r11d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14022ee44
mov r8d, dword [rsp + 0x58]
mov edx, dword [rsp + 0x70]
mov rbx, qword [rsp + 0x60]
mov rcx, rbx
call r9
nop
mov dword [rsp + 0xac], r12d
mov dword [rsp + 0xb4], r12d
mov qword [rsp + 0x198], r12
movabs rax, 0x689a86557b76cf29
mov qword [rsp + 0x198], rax
mov qword [rsp + 0x1a0], r12
movabs rax, 0xc7ef4fd8b329cc76
mov qword [rsp + 0x1a0], rax
movabs rcx, 0xf33a52b6a906cd03
add rcx, qword [rsp + 0x1a0]
movabs rax, 0xf2553662530a3b0b
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f5b60a366
sub rcx, rax
movabs rax, 0xf8f8cd97cdefb179
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x47d654b8b60fd5a4
add rcx, rax
mov rsi, qword [0x14033a040]
add rcx, rsi
movabs rax, 0x5a9179a7a734b831
xor rcx, rax
movabs rax, 0x5f627dc6dac73ee4
sub rcx, rax
movabs rax, 0x763b3cd20cb54679
xor rcx, rax
movabs rdx, 0x3483ce44225cb6fb
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033a038]
mov rax, r10
movabs rcx, 0x13cce94adaa41988
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033a030]
mov rcx, r11
movabs rax, 0xec3316b5255be677
xor rcx, rax
movabs rax, 0xe0b56d90269414dd
add rdx, rax
add rdx, rcx
movabs rax, 0x335edf68cc900e38
xor rdx, rax
mov qword [rsp + 0x1a0], rdx
movabs rcx, 0xf33a52b60a5dca83
add rcx, qword [rsp + 0x198]
movabs rax, 0xefd5366253099c62
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80a67b57a2
add rcx, rax
movabs rax, 0xf8f8cd986f135803
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x7d654b98d6e4088
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85c2d7f0b
xor rcx, rax
movabs rax, 0x5f627dc6ca95ec6e
sub rcx, rax
movabs rax, 0x8a3b3cd25c0ebd02
xor rcx, rax
movabs rax, 0xb483ce44bcaf1a6a
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad829757e
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527d68a81
xor r11, rax
movabs rax, 0xe0b56d8dc9359e53
add rcx, rax
add rcx, r11
movabs rax, 0xd105d0e1af8e207e
xor rcx, rax
mov qword [rsp + 0x198], rcx
and rcx, rdx
cmp rbx, rcx
setne al
mov qword [rsp + 0x1a0], r12
mov qword [rsp + 0x198], r12
test al, al
jne 0x14022f1d7
mov dword [rsp + 0xbc], r12d
mov dword [rsp + 0xbc], 0xd1729c3c
mov eax, dword [rsp + 0xbc]
add eax, 0x59e5cdb5
xor eax, 0x6309ebea
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x5a734067
xor eax, 0x1e4d34c5
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x21792031
add eax, ecx
xor eax, 0x1765b67
add eax, 0x4e21b4ab
xor eax, 0xb4483f28
lea edx, [rcx + 0x6f53cf4d]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd967958a
sub edx, eax
mov eax, dword [0x14033a030]
xor eax, 0x26986a75
add eax, 0xe8d38ba5
add eax, edx
xor eax, 0x86327c12
mov dword [rsp + 0x40], eax
mov dword [rsp + 0xbc], eax
mov dword [rsp + 0xbc], r12d
jmp 0x14022f3b0
mov esi, r12d
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 esi, esi
je 0x14022f24b
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x796b6ff2
jmp 0x14022f23d
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, r11
jne 0x14022f217
cmp r10d, esi
jne 0x14022f2fd
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov rcx, qword [rcx + r11 + 0x88]
mov edi, ecx
add rdi, r11
shr rcx, 0x20
cmp rdi, r11
je 0x14022f2fd
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x14022f2fd
mov r9d, dword [rdi + 0x20]
dec r8d
mov dword [rsp + 0x40], r8d
mov edx, r8d
mov qword [rsp + 0x50], rdx
lea rdx, [r11 + r8*4]
mov ebx, dword [rdx + r9]
add rbx, r11
mov edx, 0x796b6ff2
mov r9b, byte [rbx]
add rbx, r15
mov r10d, 0x4764996c
test r9b, r9b
je 0x14022f2ee
mov r11d, edx
movsx r8d, r9b
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, r10d
mov edx, r11d
xor edx, r8d
mov r11d, r9d
imul r11d, edx
mov r9b, byte [rbx]
add rbx, r15
test r9b, r9b
jne 0x14022f2b2
mov dword [rsp + 0x30], r11d
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0x40]
mov edx, dword [rsp + 0x30]
cmp edx, dword [rsp + 0x68]
je 0x14022f305
test r8d, r8d
mov r9d, dword [rdi + 0x20]
jne 0x14022f27e
mov rax, qword [rax]
jmp 0x14022f1eb
mov edx, dword [rdi + 0x1c]
add rdx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
mov r8, qword [rsp + 0x50]
movzx eax, word [rax + r8*2]
mov r8d, dword [rdx + rax*4]
add r8, r11
cmp r8, rdi
jbe 0x14022f3a1
lea rax, [rcx + rdi]
cmp r8, rax
jae 0x14022f3a1
mov eax, 0x796b6ff2
mov esi, eax
mov edx, eax
mov dword [rsp + 0x68], eax
jmp 0x14022f357
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r10d
xor ecx, esi
mov esi, eax
imul esi, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x14022f33f
add r8, r15
mov al, byte [r8]
test al, al
je 0x14022f38b
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, r15
mov al, byte [r8]
test al, al
jne 0x14022f368
mov dword [rsp + 0x68], edx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14022f2fd
mov rbx, qword [rsp + 0x60]
mov rcx, rbx
call r8
mov dword [rsp + 0x40], eax
mov dword [rsp + 0xc0], r12d
mov dword [rsp + 0xc0], 0x94b83677
mov eax, dword [rsp + 0xc0]
add eax, 0xa2cbb9b5
xor eax, 0x4f0a34d0
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x5b4df22b
xor eax, 0xd443b115
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xbe850657
add eax, ecx
xor eax, 0xae501a37
add eax, 0x21a7479b
xor eax, 0x2fd301f9
mov edx, dword [0x14033a030]
xor edx, 0x2574d2c5
sub edx, eax
mov eax, dword [0x14033a038]
xor eax, 0xda8b2d3a
sub edx, eax
sub edx, ecx
sub edx, 0x1adb596c
xor edx, 0x387b61a2
mov dword [rsp + 0x30], edx
mov dword [rsp + 0xc0], edx
mov qword [rsp + 0x1a8], r12
movabs rax, 0x689a86557b76cf29
mov qword [rsp + 0x1a8], rax
mov qword [rsp + 0x1b0], r12
movabs rax, 0xc7ef4fd8b329cc76
mov qword [rsp + 0x1b0], rax
movabs rcx, 0xf33a52b6a906cd03
add rcx, qword [rsp + 0x1b0]
movabs rax, 0xf2553662530a3b0b
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f5b60a366
sub rcx, rax
movabs rax, 0xf8f8cd97cdefb179
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x47d654b8b60fd5a4
add rcx, rax
mov rsi, qword [0x14033a040]
add rcx, rsi
movabs rax, 0x5a9179a7a734b831
xor rcx, rax
movabs rax, 0x5f627dc6dac73ee4
sub rcx, rax
movabs rax, 0x763b3cd20cb54679
xor rcx, rax
movabs rdx, 0x3483ce44225cb6fb
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033a038]
mov rax, r10
movabs rcx, 0x13cce94adaa41988
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033a030]
mov rcx, r11
movabs rax, 0xec3316b5255be677
xor rcx, rax
movabs rax, 0xe0b56d90269414dd
add rdx, rax
add rdx, rcx
movabs rax, 0x335edf68cc900e38
xor rdx, rax
mov qword [rsp + 0x1b0], rdx
movabs rcx, 0xf33a52b60a5dca83
add rcx, qword [rsp + 0x1a8]
movabs rax, 0xefd5366253099c62
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80a67b57a2
add rcx, rax
movabs rax, 0xf8f8cd986f135803
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x7d654b98d6e4088
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85c2d7f0b
xor rcx, rax
movabs rax, 0x5f627dc6ca95ec6e
sub rcx, rax
movabs rax, 0x8a3b3cd25c0ebd02
xor rcx, rax
movabs rax, 0xb483ce44bcaf1a6a
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad829757e
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527d68a81
xor r11, rax
movabs rax, 0xe0b56d8dc9359e53
add rcx, rax
add rcx, r11
movabs rax, 0xd105d0e1af8e207e
xor rcx, rax
mov qword [rsp + 0x1a8], rcx
and rcx, rdx
cmp rbx, rcx
setne al
mov qword [rsp + 0x1b0], r12
mov qword [rsp + 0x1a8], r12
test al, al
jne 0x14022f707
mov dword [rsp + 0xc4], r12d
mov dword [rsp + 0xc4], 0xa8c94fa5
mov eax, dword [rsp + 0xc4]
add eax, 0x26beb1b5
xor eax, 0x4709b8c3
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x59d9cb13
xor eax, 0x5240ed35
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x66e8b6b3
add eax, ecx
xor eax, 0x3bcef757
add eax, 0x3a72cdfb
xor eax, 0xaddd6661
lea edx, [rcx - 0x5eeb2677]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd89af91a
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x276506e5
add ecx, 0x1b6cc734
add ecx, edx
xor ecx, 0xa1b97042
mov dword [rsp + 0xc4], ecx
mov dword [rsp + 0xc4], r12d
jmp 0x14022f8c5
mov edi, r12d
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 edi, edi
je 0x14022f775
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x7f077de4
jmp 0x14022f767
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x14022f747
cmp r9d, edi
jne 0x14022f80c
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov rcx, qword [rcx + r11 + 0x88]
mov ebx, ecx
add rbx, r11
shr rcx, 0x20
cmp rbx, r11
je 0x14022f80c
mov esi, dword [rbx + 0x18]
test esi, esi
je 0x14022f80c
mov r8d, dword [rbx + 0x20]
dec esi
mov edx, esi
mov qword [rsp + 0x50], rdx
lea rdx, [r8 + rsi*4]
mov r9d, dword [rdx + r11]
add r9, r11
mov edx, 0x7f077de4
mov r8b, byte [r9]
add r9, r15
mov r10d, 0x4764996c
test r8b, r8b
je 0x14022f7fe
mov r11d, edx
movsx r8d, r8b
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, r10d
xor r8d, r11d
mov r11d, edx
imul r11d, r8d
mov r8b, byte [r9]
add r9, r15
test r8b, r8b
jne 0x14022f7cb
mov dword [rsp + 0x38], r11d
mov r11, qword [rax + 0x30]
mov edx, dword [rsp + 0x38]
cmp edx, dword [rsp + 0x48]
je 0x14022f814
test esi, esi
mov r8d, dword [rbx + 0x20]
jne 0x14022f79e
mov rax, qword [rax]
jmp 0x14022f71b
mov edx, dword [rbx + 0x1c]
add rdx, r11
mov eax, dword [rbx + 0x24]
add rax, r11
mov r8, qword [rsp + 0x50]
movzx eax, word [rax + r8*2]
mov r9d, dword [rdx + rax*4]
add r9, r11
cmp r9, rbx
jbe 0x14022f8b0
lea rax, [rcx + rbx]
cmp r9, rax
jae 0x14022f8b0
mov eax, 0x7f077de4
mov edi, eax
mov edx, eax
mov dword [rsp + 0x48], eax
jmp 0x14022f866
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r10d
xor ecx, edi
mov edi, eax
imul edi, ecx
add r9, r15
mov al, byte [r9]
cmp al, 0x2e
jne 0x14022f84e
add r9, r15
mov al, byte [r9]
test al, al
je 0x14022f89a
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 r9, r15
mov al, byte [r9]
test al, al
jne 0x14022f877
mov dword [rsp + 0x48], edx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14022f80c
mov r8d, dword [rsp + 0x30]
mov edx, dword [rsp + 0x4d8]
mov rcx, qword [rsp + 0x60]
call r9
nop
mov dword [rsp + 0xc0], r12d
mov edx, dword [rsp + 0x40]
movsxd rax, edx
mov qword [rsp + 0x50], rax
movabs rdi, 0x6626a28a64bf726a
mov rsi, r12
movabs rax, 0xed79f761893b9f90
movabs r11, 0xcc8999418492f532
mov rcx, qword [0x14033a070]
imul rcx, rax
not rcx
movabs rdx, 0x337666be5c90ce4c
mov rax, qword [0x14033a060]
xor rax, rdx
and rcx, rax
ror rcx, 0x13
shr rcx, 8
mov qword [rsp + 0x40], rcx
movabs rax, 0x63535f753fcf8870
mov r10, qword [0x14033a078]
imul r10, rax
add r10, rdi
movabs rax, 0xe3db6251ffffffff
xor r10, rax
shr r10, 0x1f
not r10
movabs r8, 0x99d95d759b408d96
lea rcx, [r10 + r8]
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x19
mov ebx, 0x8000003f
and ecx, ebx
jge 0x14022f99f
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r10
ror rax, cl
not rax
mov qword [rsp + 0x30], rax
movabs rcx, 0x57d79aa3393b349c
imul rax, rcx
mov qword [rsp + 0x38], rax
add r8, rax
mov r9, r10
mov rdx, qword [rsp + 0x40]
imul r9, rdx
sub r9, r8
movabs rax, 0xf14b732d58f03367
xor r9, rax
movzx ecx, r8b
mov dword [rsp + 0x4d8], ecx
xor ecx, 6
and ecx, 0xf
and ecx, ebx
jge 0x14022f9fd
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r9, cl
mov rax, r8
sub rax, qword [0x14033a078]
xor r9, rax
movabs rcx, 0xcca29ee340554098
mov rax, qword [rsp + 0x30]
imul rax, rcx
movabs rcx, 0x7dac5d2942b16c1c
add rax, rcx
xor r9, rax
xor r9, r11
mov rax, r9
not rax
and eax, 2
je 0x14022fd18
sub rax, 1
je 0x14022fc10
sub rax, 1
je 0x14022fb45
cmp rax, 1
jne 0x14022fdac
mov rbx, r8
imul rbx, r10
movabs rax, 0x154dfde34ebf3906
add rax, r9
xor rbx, rax
ror rbx, 0x2a
shr rbx, 0xc
not rbx
movabs rcx, 0x83570df0bd0e
mov rdx, qword [0x14033a088]
add rdx, rcx
movabs rax, 0x995bd80dddab101c
xor rdx, rax
movzx eax, bl
movzx ecx, r9b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9551051f1
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
imul rcx, rdi
mov eax, 0x84cb831b
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 [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0x4363d8d5a229010b
sub rdi, rbx
shr rdi, cl
movabs rax, 0x99e181fe1190816e
mov rcx, qword [rsp + 0x38]
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 [r13 + rcx*8]
imul rax, r9
sub rax, qword [rsp + 0x40]
xor rdi, rax
jmp 0x14022fdb6
movabs rcx, 0xaaaaaa1a84d27e25
mov r10, r9
xor r10, rcx
movabs rcx, 0x1206ed46dfa269
imul r10, rcx
movabs rdx, 0xffff7e8aa2c24cf9
mov rcx, qword [rsp + 0x38]
imul rcx, rdx
movabs rdx, 0x20f6117c2f1dce74
add r10, rdx
add r10, rcx
movabs rax, 0x277cd7be5602a945
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 [r13 + rcx*8]
xor r8, 0xffffffffd187a8f5
lea ecx, [r9 - 0x19]
and cl, 0x3f
rol r8, cl
movabs rax, 0x5460798200000000
imul r8, rax
mov rcx, r8
ror rcx, 0x1f
not rcx
movabs rax, 0x9b2de6b267b8ad88
imul rcx, rax
mov rax, r10
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x40]
and cl, 0x3f
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x14022fdac
movabs rax, 0x10131e1469605c7c
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, 0xeb48cd2a70fcc98
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0x4d8]
and eax, ebx
jge 0x14022fc64
sub eax, r15d
or eax, 0xffffffc0
add eax, r15d
mov cl, al
rol r11, cl
movabs rcx, 0x99d95d759b408d96
add rcx, r9
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffe28a64bf726a
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7d8160808
or r11, rax
mov rdi, qword [0x14033a070]
movabs rbx, 0xf14b732d58f03367
imul rdi, rbx
sub rdi, r8
mov rax, qword [rsp + 0x40]
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a6891e0805
xor rdi, rax
mov rax, r9
imul rax, r8
imul rax, rdi
mov rsi, r10
sub rsi, rax
movabs rax, 0x7895894464c441f
add rsi, rax
xor rsi, qword [rsp + 0x40]
movzx eax, r10b
imul ecx, eax, 0xe0
and cl, 0x3f
rol rsi, cl
not rsi
jmp 0x14022fdb6
mov rcx, r9
imul rcx, qword [0x14033a080]
and rcx, qword [0x14033a080]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x32
imul r11, r8
mov rsi, rdx
not rsi
imul rsi, r10
movabs rax, 0x7cd8a7de54ef59e4
imul rsi, rax
imul rax, qword [0x14033a060], 0xffffffffd8023b7e
mov rdx, qword [0x14033a068]
sub rax, rdx
mov qword [rsp + 0x4d8], rax
mov al, sil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, ebx
jge 0x14022fd8a
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x4d8]
ror rax, cl
movabs rcx, 0x99d95d759b408d96
add rax, rcx
add rax, qword [rsp + 0x38]
mov qword [rsp + 0x40], rax
movabs rbx, 0xf14b732d58f03367
movabs rax, 0xff055d7ba4a45329
xor rbx, rax
mov rax, r14
mul rbx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rbx, rax
xor r11, rsi
imul r11, qword [r13 + rbx*8]
not r8
imul r8, r9
imul r8, qword [rsp + 0x40]
imul r8, rdi
movabs rcx, 0xf5ed7e87a31719f5
xor rcx, r10
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1401b3364
mov qword [0x1403489a8], rax
mov ebx, r12d
mov dword [rsp + 0x40], 0xa8c5ed8e
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, 8
test ebx, ebx
je 0x14022fe89
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x53fb4098
jmp 0x14022fe7b
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x14022fe5b
cmp r9d, ebx
jne 0x14022ff3f
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov r11d, ecx
add r11, r10
shr rcx, 0x20
cmp r11, r10
je 0x14022ff3f
mov edi, dword [r11 + 0x18]
test edi, edi
je 0x14022ff3f
mov r9d, dword [r11 + 0x20]
mov r8d, dword [rsp + 0x40]
dec edi
mov edx, edi
mov qword [rsp + 0x38], rdx
lea rdx, [r9 + rdi*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov edx, 0x53fb4098
mov sil, byte [r9]
mov byte [rsp + 0x4d8], sil
add r9, r15
test sil, sil
mov esi, 0x4764996c
je 0x14022ff32
mov r10d, edx
mov dl, byte [rsp + 0x4d8]
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, esi
xor r8d, r10d
mov r10d, edx
imul r10d, r8d
mov dl, byte [r9]
add r9, r15
test dl, dl
jne 0x14022fefc
mov dword [rsp + 0x30], r10d
mov r10, qword [rax + 0x30]
mov edx, dword [rsp + 0x30]
mov r8d, dword [rsp + 0x40]
cmp edx, r8d
je 0x14022ff47
test edi, edi
mov r9d, dword [r11 + 0x20]
jne 0x14022fec1
mov rax, qword [rax]
jmp 0x14022fe2f
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov eax, dword [r11 + 0x24]
add rax, r10
mov r8, qword [rsp + 0x38]
movzx eax, word [rax + r8*2]
mov r9d, dword [rdx + rax*4]
add r9, r10
cmp r9, r11
jbe 0x14022ffe6
lea rax, [rcx + r11]
cmp r9, rax
jae 0x14022ffe6
mov ebx, 0x53fb4098
mov r10d, ebx
mov dword [rsp + 0x40], ebx
jmp 0x14022ff99
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, esi
xor ecx, ebx
mov ebx, eax
imul ebx, ecx
add r9, r15
mov al, byte [r9]
cmp al, 0x2e
jne 0x14022ff82
add r9, r15
mov al, byte [r9]
test al, al
je 0x14022ffd0
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, esi
xor ecx, r10d
mov r10d, eax
imul r10d, ecx
add r9, r15
mov al, byte [r9]
test al, al
jne 0x14022ffaa
mov dword [rsp + 0x40], r10d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14022ff3f
mov qword [rsp + 0x1b8], r12
movabs rax, 0x3dd75005d2d325d
mov qword [rsp + 0x1b8], rax
movabs rcx, 0xcc5ad497e08fa3a
add rcx, qword [rsp + 0x1b8]
movabs rax, 0x1f8b4fedad9d100d
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x4ed45970ec205613
add rcx, rax
movabs rax, 0x707459aad997b8e
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x5829ab4665eb6143
add rcx, rax
mov rdx, qword [0x14033a040]
add rcx, rdx
movabs rax, 0xa56e86582c3e3ca0
xor rcx, rax
movabs rax, 0x2b02fde7b46174c0
sub rcx, rax
movabs rax, 0xffc4c32dcd9d87cd
xor rcx, rax
movabs rax, 0x95ab432b512d98ff
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0xec3316b525f8223c
mov rax, qword [0x14033a038]
xor rax, rcx
sub rdx, rax
movabs rax, 0x13cce94ada07ddc3
mov rcx, qword [0x14033a030]
xor rcx, rax
movabs r8, 0x1f4a9149c5b0d26a
add r8, rdx
add r8, rcx
movabs rax, 0x7380860b2933dfb4
xor r8, rax
mov qword [rsp + 0x1b8], r8
mov dword [rsp + 0xc8], r12d
mov dword [rsp + 0xc8], 0x4c489293
mov eax, dword [rsp + 0xc8]
add eax, 0x73fa57ae
xor eax, 0xed0305fe
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x45c17e05
xor eax, 0x1fd058a4
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x7e923ee8
add eax, ecx
xor eax, 0xdfb6ee07
add eax, 0x352ec5a1
xor eax, 0xd7752988
lea edx, [rcx + 0x24f5d51a]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xbdcfe7b2
sub edx, eax
mov eax, dword [0x14033a030]
xor eax, 0x4230184d
add eax, 0x758e05b1
add edx, eax
xor edx, 0xeaa1608a
mov dword [rsp + 0xc8], edx
mov rcx, qword [rsp + 0x4d0]
call r9
nop
mov dword [rsp + 0xc8], r12d
mov qword [rsp + 0x1b8], r12
mov qword [rsp + 0x1c0], r12
movabs rax, 0x689a86557b76cf29
mov qword [rsp + 0x1c0], rax
mov qword [rsp + 0x1c8], r12
movabs rax, 0xc7ef4fd8b329cc76
mov qword [rsp + 0x1c8], rax
movabs rcx, 0xf33a52b6a906cd03
add rcx, qword [rsp + 0x1c8]
movabs rax, 0xf2553662530a3b0b
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f5b60a366
sub rcx, rax
movabs rax, 0xf8f8cd97cdefb179
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x47d654b8b60fd5a4
add rcx, rax
mov rdi, qword [0x14033a040]
add rcx, rdi
movabs rax, 0x5a9179a7a734b831
xor rcx, rax
movabs rax, 0x5f627dc6dac73ee4
sub rcx, rax
movabs rax, 0x763b3cd20cb54679
xor rcx, rax
movabs rdx, 0x3483ce44225cb6fb
add rdx, rcx
add rdx, rdi
not rdx
mov r10, qword [0x14033a038]
mov rax, r10
movabs rcx, 0x13cce94adaa41988
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033a030]
mov rcx, r11
movabs rax, 0xec3316b5255be677
xor rcx, rax
movabs rax, 0xe0b56d90269414dd
add rdx, rax
add rdx, rcx
movabs rax, 0x335edf68cc900e38
xor rdx, rax
mov qword [rsp + 0x1c8], rdx
movabs rcx, 0xf33a52b60a5dca83
add rcx, qword [rsp + 0x1c0]
movabs rax, 0xefd5366253099c62
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80a67b57a2
add rcx, rax
movabs rax, 0xf8f8cd986f135803
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x7d654b98d6e4088
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a85c2d7f0b
xor rcx, rax
movabs rax, 0x5f627dc6ca95ec6e
sub rcx, rax
movabs rax, 0x8a3b3cd25c0ebd02
xor rcx, rax
movabs rax, 0xb483ce44bcaf1a6a
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ad829757e
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527d68a81
xor r11, rax
movabs rax, 0xe0b56d8dc9359e53
add rcx, rax
add rcx, r11
movabs rax, 0xd105d0e1af8e207e
xor rcx, rax
mov qword [rsp + 0x1c0], rcx
and rcx, rdx
mov rbx, qword [rsp + 0x60]
mov qword [rsp + 0x40], rbx
cmp rbx, rcx
setne al
mov qword [rsp + 0x1c8], r12
mov qword [rsp + 0x1c0], r12
test al, al
jne 0x14023046e
mov dword [rsp + 0xcc], r12d
mov dword [rsp + 0xcc], 0x7df5cca4
mov eax, dword [rsp + 0xcc]
add eax, 0x484acf35
xor eax, 0x6489da4f
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
add eax, 0x25c19094
xor eax, 0x302e9f3f
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xf95f04a8
add eax, ecx
xor eax, 0x158b25b1
add eax, 0x42f491a9
xor eax, 0xb1164b40
lea edx, [rcx + 0x7390d7]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd9212990
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x26ded66f
add ecx, 0xa2232dab
add ecx, edx
xor ecx, 0x48ff6570
mov dword [rsp + 0xcc], ecx
mov dword [rsp + 0xcc], r12d
jmp 0x140230715
mov edi, r12d
mov dword [rsp + 0x40], 0xf806469e
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 edi, edi
je 0x1402304e6
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0xcfa258
jmp 0x1402304d8
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, esi
mov ecx, r10d
xor ecx, edx
mov r10d, r8d
imul r10d, ecx
add r9, 2
cmp r9, r11
jne 0x1402304b6
cmp r10d, edi
jne 0x1402305b2
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov rcx, qword [rcx + r11 + 0x88]
mov ebx, ecx
add rbx, r11
shr rcx, 0x20
cmp rbx, r11
je 0x1402305b2
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x1402305b2
mov r10d, dword [rbx + 0x20]
mov r9d, dword [rsp + 0x40]
dec r8d
mov dword [rsp + 0x30], r8d
mov edx, r8d
mov qword [rsp + 0x48], rdx
lea rdx, [r11 + r8*4]
mov r10d, dword [rdx + r10]
add r10, r11
mov edx, 0xcfa258
mov r8b, byte [r10]
mov byte [rsp + 0x4d8], r8b
add r10, r15
test r8b, r8b
mov r8d, dword [rsp + 0x30]
je 0x1402305a0
mov r11d, edx
mov dl, byte [rsp + 0x4d8]
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, esi
mov edx, r11d
xor edx, r8d
mov r11d, r9d
imul r11d, edx
mov dl, byte [r10]
add r10, r15
test dl, dl
jne 0x140230560
mov dword [rsp + 0x38], r11d
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0x30]
mov edx, dword [rsp + 0x38]
mov r9d, dword [rsp + 0x40]
cmp edx, r9d
je 0x1402305ba
test r8d, r8d
mov r10d, dword [rbx + 0x20]
jne 0x14023051e
mov rax, qword [rax]
jmp 0x14023048a
mov edx, dword [rbx + 0x1c]
add rdx, r11
mov eax, dword [rbx + 0x24]
add rax, r11
mov r8, qword [rsp + 0x48]
movzx eax, word [rax + r8*2]
mov r10d, dword [rdx + rax*4]
add r10, r11
cmp r10, rbx
jbe 0x140230657
lea rax, [rcx + rbx]
cmp r10, rax
jae 0x140230657
mov edi, 0xcfa258
mov r11d, edi
mov dword [rsp + 0x40], edi
jmp 0x14023060a
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, esi
xor ecx, edi
mov edi, eax
imul edi, ecx
add r10, r15
mov al, byte [r10]
cmp al, 0x2e
jne 0x1402305f3
add r10, r15
mov al, byte [r10]
test al, al
je 0x140230641
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, esi
xor ecx, r11d
mov r11d, eax
imul r11d, ecx
add r10, r15
mov al, byte [r10]
test al, al
jne 0x14023061b
mov dword [rsp + 0x40], r11d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x1402305b2
mov dword [rsp + 0xd0], r12d
mov dword [rsp + 0xd0], 0x499aaac3
mov eax, dword [rsp + 0xd0]
add eax, 0x490ff835
xor eax, 0x8d89db14
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
add eax, 0x25bf4119
xor eax, 0x2f66619b
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x78536380
add eax, ecx
xor eax, 0x14aa42ed
add eax, 0x41bf65c5
xor eax, 0x68b3b097
lea edx, [rcx - 0x4c340a]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd9243e34
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x26dbc1cb
add ecx, 0xa5391e4f
add ecx, edx
xor ecx, 0x711e873c
mov dword [rsp + 0xd0], ecx
movsxd rdx, ecx
mov rbx, qword [rsp + 0x60]
mov qword [rsp + 0x40], rbx
mov r9, rbx
mov r8, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x4d0]
call r10
nop
mov dword [rsp + 0xd0], r12d
mov dword [rsp + 0xd4], r12d
mov dword [rsp + 0xd4], 0x655f4c39
mov eax, dword [rsp + 0xd4]
add eax, 0x7d5108ae
xor eax, 0x9e030f55
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x45dd8218
xor eax, 0x16544ce0
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xf1e511a4
add eax, ecx
xor eax, 0xd5100c23
add eax, 0x337ef515
xor eax, 0x4ac98653
lea edx, [rcx + 0x1be082f1]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xbdf54276
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x420abd89
add ecx, 0x9ad06bf5
add ecx, edx
xor ecx, 0xbeedaf26
mov dword [rsp + 0xd4], ecx
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x4d0]
mov byte [rax + rdx], cl
mov dword [rsp + 0xd4], r12d
mov qword [rsp + 0x1d0], r12
movabs rax, 0x689a86557b76cf29
mov qword [rsp + 0x1d0], rax
mov qword [rsp + 0x1d8], r12
movabs rax, 0xc7ef4fd8b329cc76
mov qword [rsp + 0x1d8], rax
movabs rcx, 0xf33a52b6a906cd03
add rcx, qword [rsp + 0x1d8]
movabs rax, 0xf2553662530a3b0b
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f5b60a366
sub rcx, rax
movabs rax, 0xf8f8cd97cdefb179
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x47d654b8b60fd5a4
add rcx, rax
mov rsi, qword [0x14033a040]
add rcx, rsi
movabs rax, 0x5a9179a7a734b831
xor rcx, rax
movabs rax, 0x5f627dc6dac73ee4
sub rcx, rax
movabs rax, 0x763b3cd20cb54679
xor rcx, rax
movabs rdx, 0x3483ce44225cb6fb
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033a038]
mov rax, r10
movabs rcx, 0x13cce94adaa41988
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033a030]
mov rcx, r11
movabs rax, 0xec3316b5255be677
xor rcx, rax
movabs rax, 0xe0b56d90269414dd
add rdx, rax
add rdx, rcx
movabs rax, 0x335edf68cc900e38
xor rdx, rax
mov qword [rsp + 0x1d8], rdx
movabs rcx, 0xf33a52b60a5dca83
add rcx, qword [rsp + 0x1d0]
movabs rax, 0xefd5366253099c62
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80a67b57a2
add rcx, rax
movabs rax, 0xf8f8cd986f135803
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x7d654b98d6e4088
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85c2d7f0b
xor rcx, rax
movabs rax, 0x5f627dc6ca95ec6e
sub rcx, rax
movabs rax, 0x8a3b3cd25c0ebd02
xor rcx, rax
movabs rax, 0xb483ce44bcaf1a6a
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad829757e
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527d68a81
xor r11, rax
movabs rax, 0xe0b56d8dc9359e53
add rcx, rax
add rcx, r11
movabs rax, 0xd105d0e1af8e207e
xor rcx, rax
mov qword [rsp + 0x1d0], rcx
and rcx, rdx
cmp rbx, rcx
setne al
mov qword [rsp + 0x1d8], r12
mov qword [rsp + 0x1d0], r12
test al, al
je 0x140230c7d
mov edi, r12d
mov dword [rsp + 0x40], 0x1f793282
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r14d, 8
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, r14w
test edi, edi
je 0x140230a62
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x88753da6
jmp 0x140230a54
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x140230a34
cmp r9d, edi
jne 0x140230b18
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov ebx, ecx
add rbx, r10
shr rcx, 0x20
cmp rbx, r10
je 0x140230b18
mov esi, dword [rbx + 0x18]
test esi, esi
je 0x140230b18
mov r9d, dword [rbx + 0x20]
mov r8d, dword [rsp + 0x40]
dec esi
mov edx, esi
mov qword [rsp + 0x38], rdx
lea rdx, [r9 + rsi*4]
mov r11d, dword [rdx + r10]
add r11, r10
mov edx, 0x88753da6
mov r9b, byte [r11]
mov byte [rsp + 0x4d8], r9b
add r11, r15
test r9b, r9b
mov r9d, 0x4764996c
je 0x140230b0b
mov r10d, edx
mov dl, byte [rsp + 0x4d8]
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, r15
test dl, dl
jne 0x140230ad4
mov dword [rsp + 0x30], r10d
mov r10, qword [rax + 0x30]
mov edx, dword [rsp + 0x30]
mov r8d, dword [rsp + 0x40]
cmp edx, r8d
je 0x140230b20
test esi, esi
mov r9d, dword [rbx + 0x20]
jne 0x140230a98
mov rax, qword [rax]
jmp 0x140230a08
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov eax, dword [rbx + 0x24]
add rax, r10
mov r8, qword [rsp + 0x38]
movzx eax, word [rax + r8*2]
mov r8d, dword [rdx + rax*4]
add r8, r10
cmp r8, rbx
jbe 0x140230bc1
lea rax, [rcx + rbx]
cmp r8, rax
jae 0x140230bc1
mov eax, 0x88753da6
mov edi, eax
mov r10d, eax
mov dword [rsp + 0x40], eax
jmp 0x140230b73
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r9d
xor ecx, edi
mov edi, eax
imul edi, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x140230b5b
add r8, r15
mov al, byte [r8]
test al, al
je 0x140230bab
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, r15
mov al, byte [r8]
test al, al
jne 0x140230b84
mov dword [rsp + 0x40], r10d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x140230b18
mov rcx, qword [rsp + 0x60]
call r8
mov dword [rsp + 0xd8], r12d
mov dword [rsp + 0xd8], 0x914d6307
mov eax, dword [rsp + 0xd8]
add eax, 0x23fbc9b4
xor eax, 0x5f08b600
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x56d1825b
xor eax, 0x590ee0d6
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xc62848a1
add eax, ecx
xor eax, 0x62f547f8
sub eax, 0xb90f4a6
xor eax, 0x6f46f07a
lea edx, [rcx - 0x633b92ce]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd48fed7a
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x2b701285
add ecx, 0x2c53d310
add ecx, edx
xor ecx, 0xf0d8f462
mov dword [rsp + 0xd8], ecx
movsxd rbx, ecx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x60], rbx
mov dword [rsp + 0xd8], r12d
movabs r14, 0xaaaaaaaaaaaaaaab
movabs rax, 0x341ad163d1f6c5aa
mov qword [rsp + 0x4d8], rax
movabs rsi, 0x13dbc77816216ad7
mov qword [rsp + 0x30], r12
movabs rax, 0xe64946e7ef83ddba
movabs r11, 0xa73f4c244a346e6f
mov rcx, qword [0x14033a070]
imul rcx, rax
not rcx
shr rcx, 8
movabs rdx, 0x58c0b3db93832e00
mov rax, qword [0x14033a060]
xor rax, rdx
shr rax, 8
and rcx, rax
mov qword [rsp + 0x38], rcx
movabs rax, 0xd216b512d5efa08
mov r9, qword [0x14033a080]
imul r9, rax
add r9, rsi
movabs rax, 0xb1227f34ffffffff
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xec243887e9de9529
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 [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xf7
mov edi, 0x8000003f
and ecx, edi
jge 0x140230d5a
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
movabs rdx, 0x6a4426300a44982c
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x48], rcx
add r8, rcx
mov r10, r9
imul r10, qword [rsp + 0x38]
sub r10, r8
movabs rdx, 0x341ad163d1f6c5aa
xor r10, rdx
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
movabs rcx, 0x1834b7246c4a04f4
imul rax, rcx
movabs rcx, 0x6b322e49ac04c091
sub rax, rcx
xor r10, rax
mov rax, r8
sub rax, qword [0x14033a078]
xor r10, rax
xor r10, r11
mov rax, r10
and eax, 3
je 0x1402310ad
sub rax, 1
je 0x140230fb3
sub rax, 1
je 0x140230ee8
cmp rax, 1
jne 0x14023113f
mov rcx, r8
imul rcx, r9
movabs rax, 0xe9f9e12a0a7445df
add rax, r10
xor rcx, rax
ror rcx, 0x38
shr rcx, 0xc
not rcx
mov qword [rsp + 0x4d8], rcx
movabs rdx, 0x83570e65b4e4
add rdx, qword [0x14033a088]
movabs rax, 0xeca6bdffaca0014f
xor rdx, rax
movzx eax, cl
movzx ecx, r10b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db95685581f
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rsi
mov eax, 0x875e8af5
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 [r13 + rcx*8]
and cl, 0xf
movabs rsi, 0x765210082fb17c70
sub rsi, qword [rsp + 0x4d8]
shr rsi, cl
movabs rax, 0xec2c5d105fb98f63
mov rcx, qword [rsp + 0x48]
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x38]
xor rsi, rax
jmp 0x14023113f
movabs rcx, 0xaaaaaa1a874777cb
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed454aab87
imul r9, rcx
movabs rdx, 0xffff7e8aa1574517
mov rcx, qword [rsp + 0x48]
imul rcx, rdx
movabs rdx, 0x5c3210cb026888ee
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be5597a0ab
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 [r13 + rcx*8]
xor r8, 0xffffffffd212a11b
lea ecx, [r10 + 9]
and cl, 0x3f
rol r8, cl
movabs rax, 0x4402542a0000000
imul r8, rax
mov rcx, r8
ror rcx, 0x3c
not rcx
movabs rax, 0x9b2de6b269ec8a30
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x38]
and cl, 0x3f
ror rdx, cl
mov rax, rsi
mov rsi, rdx
imul rsi, rax
jmp 0x14023113f
movabs rax, 0x35b7ee17414c3eed
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, 0xcbe52e9c2e093a55
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r8b
and cl, 0x3f
rol r11, cl
movabs rcx, 0xec243887e9de9529
add rcx, r10
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x77816216ad7
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7db8301e6
or r11, rax
mov rsi, qword [0x14033a070]
movabs rax, 0x341ad163d1f6c5aa
imul rsi, rax
sub rsi, r8
mov rax, qword [rsp + 0x38]
sub rax, r11
xor rsi, rax
movabs rax, 0xc7a7c6a68a8b01eb
xor rsi, rax
mov rax, r10
imul rax, r8
imul rax, rsi
mov rdx, r9
sub rdx, rax
movabs rax, 0x789589445d94df1
add rdx, rax
xor rdx, qword [rsp + 0x38]
movzx eax, r9b
imul ecx, eax, 0xe
and cl, 0x3f
rol rdx, cl
not rdx
mov qword [rsp + 0x30], rdx
jmp 0x14023113f
mov rcx, qword [0x14033a080]
imul rcx, r10
and rcx, qword [0x14033a088]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x2f
imul r11, r8
mov rax, qword [rsp + 0x38]
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de577a500a
imul rax, rcx
mov qword [rsp + 0x30], rax
imul rcx, qword [0x14033a060], 0xffffffffd9b74094
mov rdx, qword [0x14033a068]
sub rcx, rdx
mov qword [rsp + 0x38], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x140231120
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x38]
ror rax, cl
movabs rcx, 0xec243887e9de9529
add rax, rcx
add rax, qword [rsp + 0x48]
mov qword [rsp + 0x38], rax
movabs rax, 0xff055d7ba7315ac7
mov rcx, qword [rsp + 0x4d8]
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 + 0x30]
imul r11, qword [r13 + rcx*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x38]
imul r8, rsi
movabs rcx, 0xf5ed7e87a082101b
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1401b32b0
mov qword [0x1403489a0], rax
mov dword [rsp + 0xdc], r12d
mov dword [rsp + 0xdc], 0x4c3f3d1a
mov eax, dword [rsp + 0xdc]
add eax, 0x6ff43eb8
xor eax, 0xd40d01f8
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x63b56bba
xor eax, 0xfbe689fe
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x710885ca
add eax, ecx
xor eax, 0x7c4de280
sub eax, 0x422b853
xor eax, 0xa1285634
mov edx, dword [0x14033a030]
xor edx, 0x1a4030b1
sub edx, eax
mov eax, dword [0x14033a038]
xor eax, 0xe5bfcf4e
sub edx, eax
sub edx, ecx
sub edx, 0x21b9fa6d
xor edx, 0x8ffcf4ee
mov dword [rsp + 0xdc], edx
movsxd rax, edx
mov qword [rsp + 0x30], rax
mov dword [rsp + 0xdc], r12d
cmp rax, qword [rsp + 0x50]
jae 0x140231a87
movabs rcx, 0x1ae7dd924893442d
movabs rdx, 0xe262927f471e6d8e
movabs rax, 0x13d8a57bd80df0cc
movabs r8, 0x1d9d6d80b8e19272
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0x50], rcx
mov rsi, rdx
mov qword [rsp + 0x38], r12
mov r10, rax
movabs rax, 0xe09dcd917739a3e8
mov rcx, qword [0x14033a070]
imul rcx, rax
not rcx
movabs rdx, 0x13d8a57bc57680b4
mov rax, qword [0x14033a060]
xor rax, rdx
and rcx, rax
ror rcx, 0x21
shr rcx, 8
mov qword [rsp + 0x48], rcx
movabs rax, 0x7915736eb21c2070
mov r9, qword [0x14033a068]
imul r9, rax
sub r9, r8
movabs rax, 0x235bff1c00000000
xor r9, rax
shr r9, 0x1f
not r9
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 [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xf
and ecx, edi
jge 0x14023132b
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
mov qword [rsp + 0x58], rax
movabs rcx, 0x9fee238d2de61fa0
imul rax, rcx
mov qword [rsp + 0x68], rax
lea r11, [rax + r8]
mov r8, r9
mov rdx, qword [rsp + 0x48]
imul r8, rdx
sub r8, r11
movabs rax, 0x1ae7dd924893442d
xor r8, rax
movzx ecx, r11b
mov dword [rsp + 0x4d8], ecx
and ecx, 0xf
and ecx, edi
jge 0x140231387
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r8, cl
mov rax, r11
sub rax, qword [0x14033a078]
xor r8, rax
movabs rcx, 0xcbf3f8f785dcaac0
mov rax, qword [rsp + 0x58]
imul rax, rcx
movabs rcx, 0xe5f70b95fd5c53c
add rax, rcx
xor r8, rax
movabs rcx, 0x13d8a57bd80df0cc
xor r8, rcx
mov rax, r8
and eax, 2
je 0x1402316cd
sub rax, 1
je 0x1402315bc
sub rax, 1
je 0x1402314e9
cmp rax, 1
jne 0x14023174e
mov rdi, r11
imul rdi, r9
movabs rax, 0x535e60d1410dba0e
add rax, r8
xor rdi, rax
ror rdi, 0x18
shr rdi, 0xc
not rdi
mov qword [rsp + 0x50], rdi
movabs rcx, 0x83574136b71c
mov rdx, qword [0x14033a088]
add rdx, rcx
movabs rax, 0x1d1fe8f8b2cc05ee
xor rdx, rax
movzx eax, r8b
movzx ecx, dil
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db919d65be7
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
movabs rax, 0xe262927f471e6d8e
imul rcx, rax
mov eax, 0xc80d890d
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 [r13 + rcx*8]
and cl, 0xf
movabs rsi, 0x84794f48ff53e179
sub rsi, rdi
shr rsi, cl
movabs rax, 0x1da59208f36b8c34
mov rcx, qword [rsp + 0x68]
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 [r13 + rcx*8]
imul rax, r8
mov rdi, qword [rsp + 0x48]
sub rax, rdi
xor rsi, rax
jmp 0x140231753
movabs rcx, 0xaaaaaa1ac8147433
mov r9, r8
xor r9, rcx
movabs rcx, 0x1206ed0a19a87f
imul r9, rcx
movabs rdx, 0xffff7e8aee0446ef
mov rcx, qword [rsp + 0x68]
imul rcx, rdx
movabs rdx, 0x44dfb991b4f378da
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be1ac4a353
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 r11, r9
not r11
imul r11, qword [r13 + rcx*8]
xor r11, 0xffffffff9d41a2e3
lea ecx, [r8 - 0xf]
and cl, 0x3f
rol r11, cl
movabs rax, 0x3468154240000000
imul r11, rax
mov rcx, r11
ror rcx, 3
not rcx
movabs rax, 0x9b2de6b354a085d0
imul rcx, rax
mov rax, r9
sub rax, r11
lea rsi, [rcx + rax*4]
mov rdi, qword [rsp + 0x48]
mov cl, dil
and cl, 0x3f
ror rsi, cl
movabs rax, 0xe262927f471e6d8e
imul rsi, rax
jmp 0x140231753
movabs rax, 0xa80cf00a34870f44
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 r10, 0xe518226db76cbbd2
shl r10, cl
movabs rax, 0x13d8a57bd80df0cc
xor r10, rax
mov eax, dword [rsp + 0x4d8]
and eax, edi
jge 0x140231614
sub eax, r15d
or eax, 0xffffffc0
add eax, r15d
mov cl, al
rol r10, cl
movabs rcx, 0x1d9d6d80b8e19272
add rcx, r8
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x127f471e6d8e
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a794d0021e
or r10, rax
mov rsi, qword [0x14033a070]
movabs rax, 0x1ae7dd924893442d
imul rsi, rax
sub rsi, r11
mov rax, qword [rsp + 0x48]
sub rax, r10
xor rsi, rax
movabs rax, 0xc7a7c6a6c5d80213
xor rsi, rax
mov rax, r8
imul rax, r11
imul rax, rsi
mov rdx, r9
sub rdx, rax
movabs rax, 0x78958940a8a4e09
add rdx, rax
xor rdx, qword [rsp + 0x48]
movzx eax, r9b
imul ecx, eax, 0xf6
and cl, 0x3f
rol rdx, cl
not rdx
mov qword [rsp + 0x38], rdx
jmp 0x14023174e
mov r10, r8
imul r10, qword [0x14033a080]
and r10, qword [0x14033a070]
xor r10, rcx
ror r10, 0xc
imul r10, r11
mov rax, rdx
not rax
imul rax, r9
movabs rcx, 0x7cd8a7de182953f2
imul rax, rcx
mov qword [rsp + 0x38], rax
imul rdx, qword [0x14033a060], 0x1d7b7078
sub rdx, qword [0x14033a068]
not al
movzx ecx, al
movzx eax, byte [0x14033a068]
xor ecx, eax
and ecx, edi
jge 0x140231734
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdx, cl
movabs rax, 0x1d9d6d80b8e19272
add rax, rdx
add rax, qword [rsp + 0x68]
mov qword [rsp + 0x48], rax
mov rdi, qword [rsp + 0x48]
movabs rax, 0xff055d7be862593f
mov rcx, qword [rsp + 0x50]
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r10, qword [rsp + 0x38]
imul r10, qword [r13 + rcx*8]
not r11
imul r11, r8
imul r11, rdi
imul r11, rsi
movabs rcx, 0xf5ed7e87efd113e3
xor rcx, r9
not rcx
xor rcx, r11
sub rcx, r10
call fcn.1401b4588
mov qword [0x1403489c8], rax
mov dword [rsp + 0xe0], r12d
mov dword [rsp + 0xe0], 0xcb9c90c9
mov dword [rsp + 0xe4], r12d
mov dword [rsp + 0xe4], 0xb7359240
mov eax, dword [rsp + 0xe4]
add eax, 0x558aabad
xor eax, 0x4101e78f
mov r11, qword [0x14033a058]
sub eax, r11d
mov r9, qword [0x14033a050]
sub eax, r9d
sub eax, 0x42662f01
xor eax, 0x42b9c355
mov r8, qword [0x14033a048]
sub eax, r8d
mov rsi, qword [0x14033a040]
add eax, 0x362d4e3
add eax, esi
xor eax, 0x266e4e38
add eax, 0x6ce987b1
xor eax, 0xc6b5f305
lea ecx, [rsi + 0x3b907367]
add ecx, eax
not ecx
mov r10, qword [0x14033a038]
mov eax, r10d
xor eax, 0xb9562902
sub ecx, eax
mov rdx, qword [0x14033a030]
mov edi, edx
xor edi, 0x46a9d6fd
add edi, 0xf7559efd
add edi, ecx
xor edi, 0xcec032fa
mov dword [rsp + 0xe4], edi
mov eax, dword [rsp + 0xe0]
add eax, 0x6b0c
xor eax, 0x60ea62
sub eax, r11d
sub eax, r9d
sub eax, 0x5f6ea956
xor eax, 0x1c38b630
sub eax, r8d
add eax, 0xe48da540
add eax, esi
xor eax, 0xca9e8927
add eax, 0x60becb62
xor eax, 0xf682fcbb
lea ecx, [rsi + 0x2a2e7c22]
add ecx, eax
not ecx
xor r10d, 0x356176c8
sub ecx, r10d
xor edx, 0xca9e8937
lea eax, [rdx + 0x3d3821bf]
add eax, ecx
xor eax, 0xbff18cf8
mov dword [rsp + 0xe0], eax
movsxd r8, eax
mov r11, qword [rsp + 0x30]
xor r8, r11
add rdi, r11
imul r8, rdi
mov dword [rsp + 0xfc], r12d
mov dword [rsp + 0xfc], 0xb2245636
mov eax, dword [rsp + 0xfc]
add eax, 0x588c7aae
xor eax, 0x1002ea91
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x456f346e
xor eax, 0x3babed18
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x23cde065
add eax, ecx
xor eax, 0xff003e1b
add eax, 0x2aa6fd5d
xor eax, 0xcd2cf377
lea edx, [rcx + 0x3fa3b10f]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xbd62303e
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x429dcfc1
add ecx, 0x768da3d
add ecx, edx
xor ecx, 0xbe0e80be
mov dword [rsp + 0xfc], ecx
movsxd rax, ecx
mov rcx, r11
sub rcx, rax
mov rax, qword [rsp + 0x4d0]
xor byte [rcx + rax], r8b
mov dword [rsp + 0xfc], r12d
mov dword [rsp + 0xe4], r12d
mov dword [rsp + 0xe0], r12d
mov dword [rsp + 0xec], r12d
mov dword [rsp + 0xec], 0xfa879ef8
mov eax, dword [rsp + 0xec]
add eax, 0x4aa31c3e
xor eax, 0xb192dca7
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
add eax, 0xaba87ad
xor eax, 0x9ccf102
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x3eb02816
add eax, ecx
xor eax, 0xcede6dd3
add eax, 0x669bbb5b
xor eax, 0xc7a211fa
mov edx, dword [0x14033a030]
xor edx, 0x2d5753b
sub edx, eax
mov eax, dword [0x14033a038]
xor eax, 0xfd2a8ac4
sub edx, eax
sub edx, ecx
sub edx, 0x2dddab67
xor edx, 0xc74d8f2c
mov dword [rsp + 0xec], edx
movsxd rax, edx
add r11, rax
mov qword [rsp + 0x30], r11
mov dword [rsp + 0xec], r12d
cmp r11, rbx
mov edi, 0x8000003f
movabs rax, 0x13d8a57bd80df0cc
movabs rcx, 0x1ae7dd924893442d
movabs rdx, 0xe262927f471e6d8e
movabs r8, 0x1d9d6d80b8e19272
jb 0x14023127b
mov rbx, qword [rsp + 0x40]
mov dword [rsp + 0xf0], r12d
mov dword [rsp + 0xf0], 0x7530a523
mov eax, dword [rsp + 0xf0]
add eax, 0x82ff063e
xor eax, 0x9b931503
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
add eax, 0xa1173ef
xor eax, 0xd08f975a
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xf22f63f3
add eax, ecx
xor eax, 0x8e9596eb
add eax, 0x764beb73
xor eax, 0x5b725a1b
mov edx, dword [0x14033a030]
xor edx, 0x1f40593
sub edx, eax
mov eax, dword [0x14033a038]
xor eax, 0xfe0bfa6c
sub edx, eax
sub edx, ecx
sub edx, 0x147d2d24
xor edx, 0x37b4e804
mov dword [rsp + 0xf0], edx
movsxd rax, edx
mov qword [rsp + 0x4d0], rax
mov dword [rsp + 0xf0], r12d
mov qword [rsp + 0x1e0], r12
movabs rax, 0x689a86557b76cf29
mov qword [rsp + 0x1e0], rax
mov qword [rsp + 0x1e8], r12
movabs rax, 0xc7ef4fd8b329cc76
mov qword [rsp + 0x1e8], rax
movabs rcx, 0xf33a52b6a906cd03
add rcx, qword [rsp + 0x1e8]
movabs rax, 0xf2553662530a3b0b
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f5b60a366
sub rcx, rax
movabs rax, 0xf8f8cd97cdefb179
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x47d654b8b60fd5a4
add rcx, rax
mov rsi, qword [0x14033a040]
add rcx, rsi
movabs rax, 0x5a9179a7a734b831
xor rcx, rax
movabs rax, 0x5f627dc6dac73ee4
sub rcx, rax
movabs rax, 0x763b3cd20cb54679
xor rcx, rax
movabs rdx, 0x3483ce44225cb6fb
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033a038]
mov rax, r10
movabs rcx, 0x13cce94adaa41988
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033a030]
mov rcx, r11
movabs rax, 0xec3316b5255be677
xor rcx, rax
movabs rax, 0xe0b56d90269414dd
add rdx, rax
add rdx, rcx
movabs rax, 0x335edf68cc900e38
xor rdx, rax
mov qword [rsp + 0x1e8], rdx
movabs rcx, 0xf33a52b60a5dca83
add rcx, qword [rsp + 0x1e0]
movabs rax, 0xefd5366253099c62
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80a67b57a2
add rcx, rax
movabs rax, 0xf8f8cd986f135803
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x7d654b98d6e4088
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85c2d7f0b
xor rcx, rax
movabs rax, 0x5f627dc6ca95ec6e
sub rcx, rax
movabs rax, 0x8a3b3cd25c0ebd02
xor rcx, rax
movabs rax, 0xb483ce44bcaf1a6a
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad829757e
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527d68a81
xor r11, rax
movabs rax, 0xe0b56d8dc9359e53
add rcx, rax
add rcx, r11
movabs rax, 0xd105d0e1af8e207e
xor rcx, rax
mov qword [rsp + 0x1e0], rcx
and rcx, rdx
cmp rbx, rcx
setne al
mov qword [rsp + 0x1e8], r12
mov qword [rsp + 0x1e0], r12
test al, al
je 0x140231f88
mov edi, r12d
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 edi, edi
je 0x140231dbf
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x88753da6
jmp 0x140231db1
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, r11
jne 0x140231d8b
cmp r10d, edi
jne 0x140231ed3
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov rcx, qword [rcx + r9 + 0x88]
mov ebx, ecx
add rbx, r9
shr rcx, 0x20
cmp rbx, r9
je 0x140231ed3
mov esi, dword [rbx + 0x18]
test esi, esi
je 0x140231ed3
mov edx, dword [rbx + 0x20]
dec esi
lea rdx, [rdx + rsi*4]
mov r11d, dword [rdx + r9]
add r11, r9
mov r14d, 0x88753da6
mov r10d, 0x4764996c
mov dl, byte [r11]
add r11, r15
test dl, dl
je 0x140231e2f
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, r10d
xor r8d, r14d
mov r14d, edx
imul r14d, r8d
jmp 0x140231e08
cmp r14d, dword [rsp + 0x78]
je 0x140231e42
test esi, esi
mov edx, dword [rbx + 0x20]
jne 0x140231def
jmp 0x140231ed3
mov edx, dword [rbx + 0x1c]
add rdx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + rsi*2]
mov r8d, dword [rdx + rax*4]
add r8, r9
cmp r8, rbx
jbe 0x140231edb
lea rax, [rcx + rbx]
cmp r8, rax
jae 0x140231edb
mov eax, 0x88753da6
mov edi, eax
mov edx, eax
mov dword [rsp + 0x78], eax
jmp 0x140231e8e
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r10d
xor ecx, edi
mov edi, eax
imul edi, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x140231e76
add r8, r15
mov al, byte [r8]
test al, al
je 0x140231ec2
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, r15
mov al, byte [r8]
test al, al
jne 0x140231e9f
mov dword [rsp + 0x78], edx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140231d5f
mov rcx, qword [rsp + 0x60]
call r8
mov dword [rsp + 0xf4], r12d
mov dword [rsp + 0xf4], 0x914d6307
mov eax, dword [rsp + 0xf4]
add eax, 0x23fbc9b4
xor eax, 0x5f08b600
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x56d1825b
xor eax, 0x590ee0d6
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xc62848a1
add eax, ecx
xor eax, 0x62f547f8
sub eax, 0xb90f4a6
xor eax, 0x6f46f07a
lea edx, [rcx - 0x633b92ce]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd48fed7a
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x2b701285
add ecx, 0x2c53d310
add ecx, edx
xor ecx, 0xf0d8f462
mov dword [rsp + 0xf4], ecx
movsxd rax, ecx
mov qword [rsp + 0x60], rax
mov dword [rsp + 0xf4], r12d
lea rcx, [rsp + 0x408]
call fcn.1400525ec
mov rax, qword [rsp + 0x4d0]
add rsp, 0x490
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov qword [rsp + 0x1f0], r12
movabs rax, 0x689a86557b76cf29
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], r12
movabs rax, 0xc7ef4fd8b329cc76
mov qword [rsp + 0x1f8], rax
movabs rcx, 0xf33a52b6a906cd03
add rcx, qword [rsp + 0x1f8]
movabs rax, 0xf2553662530a3b0b
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f5b60a366
sub rcx, rax
movabs rax, 0xf8f8cd97cdefb179
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x47d654b8b60fd5a4
add rcx, rax
mov rsi, qword [0x14033a040]
add rcx, rsi
movabs rax, 0x5a9179a7a734b831
xor rcx, rax
movabs rax, 0x5f627dc6dac73ee4
sub rcx, rax
movabs rax, 0x763b3cd20cb54679
xor rcx, rax
movabs rdx, 0x3483ce44225cb6fb
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033a038]
mov rax, r10
movabs rcx, 0x13cce94adaa41988
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033a030]
mov rcx, r11
movabs rax, 0xec3316b5255be677
xor rcx, rax
movabs rax, 0xe0b56d90269414dd
add rdx, rax
add rdx, rcx
movabs rax, 0x335edf68cc900e38
xor rdx, rax
mov qword [rsp + 0x1f8], rdx
movabs rcx, 0xf33a52b60a5dca83
add rcx, qword [rsp + 0x1f0]
movabs rax, 0xefd5366253099c62
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80a67b57a2
add rcx, rax
movabs rax, 0xf8f8cd986f135803
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x7d654b98d6e4088
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85c2d7f0b
xor rcx, rax
movabs rax, 0x5f627dc6ca95ec6e
sub rcx, rax
movabs rax, 0x8a3b3cd25c0ebd02
xor rcx, rax
movabs rax, 0xb483ce44bcaf1a6a
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad829757e
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527d68a81
xor r11, rax
movabs rax, 0xe0b56d8dc9359e53
add rcx, rax
add rcx, r11
movabs rax, 0xd105d0e1af8e207e
xor rcx, rax
mov qword [rsp + 0x1f0], rcx
and rcx, rdx
cmp rbx, rcx
setne al
mov qword [rsp + 0x1f8], r12
mov qword [rsp + 0x1f0], r12
test al, al
je 0x140232460
mov esi, r12d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r13d, 8
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, r13w
test esi, esi
je 0x14023224d
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x88753da6
jmp 0x14023223f
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, r14d
xor r8d, 0x4764996c
mov ecx, r10d
xor ecx, edx
mov r10d, r8d
imul r10d, ecx
add r9, 2
cmp r9, r11
jne 0x14023221a
cmp r10d, esi
jne 0x1402323a4
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov rcx, qword [rcx + r11 + 0x88]
mov edi, ecx
add rdi, r11
shr rcx, 0x20
cmp rdi, r11
je 0x1402323a4
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x1402323a4
mov r9d, dword [rdi + 0x20]
dec r8d
mov dword [rsp + 0x4d8], r8d
mov edx, r8d
mov qword [rsp + 0x50], rdx
lea rdx, [r11 + r8*4]
mov ebx, dword [rdx + r9]
add rbx, r11
mov edx, 0x88753da6
mov r9b, byte [rbx]
add rbx, r15
mov r10d, 0x4764996c
test r9b, r9b
je 0x1402322f5
mov r11d, edx
movsx r8d, r9b
mov r9d, r8d
imul r9d, r8d
add r9d, r14d
xor r9d, r10d
mov edx, r11d
xor edx, r8d
mov r11d, r9d
imul r11d, edx
mov r9b, byte [rbx]
add rbx, r15
test r9b, r9b
jne 0x1402322b7
mov dword [rsp + 0x40], r11d
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0x4d8]
mov edx, dword [rsp + 0x40]
cmp edx, dword [rsp + 0x78]
je 0x14023230d
test r8d, r8d
mov r9d, dword [rdi + 0x20]
jne 0x140232280
jmp 0x1402323a4
mov edx, dword [rdi + 0x1c]
add rdx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
mov r8, qword [rsp + 0x50]
movzx eax, word [rax + r8*2]
mov r8d, dword [rdx + rax*4]
add r8, r11
cmp r8, rdi
jbe 0x1402323ac
lea rax, [rcx + rdi]
cmp r8, rax
jae 0x1402323ac
mov eax, 0x88753da6
mov esi, eax
mov edx, eax
mov dword [rsp + 0x78], eax
jmp 0x14023235f
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, r14d
xor eax, r10d
xor ecx, esi
mov esi, eax
imul esi, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x140232347
add r8, r15
mov al, byte [r8]
test al, al
je 0x140232393
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, r14d
xor eax, r10d
xor ecx, edx
mov edx, eax
imul edx, ecx
add r8, r15
mov al, byte [r8]
test al, al
jne 0x140232370
mov dword [rsp + 0x78], edx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x1402321ee
mov rcx, qword [rsp + 0x60]
call r8
mov dword [rsp + 0xf8], r12d
mov dword [rsp + 0xf8], 0x914d6307
mov eax, dword [rsp + 0xf8]
add eax, 0x23fbc9b4
xor eax, 0x5f08b600
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x56d1825b
xor eax, 0x590ee0d6
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xc62848a1
add eax, ecx
xor eax, 0x62f547f8
sub eax, 0xb90f4a6
xor eax, 0x6f46f07a
lea edx, [rcx - 0x633b92ce]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd48fed7a
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x2b701285
add ecx, 0x2c53d310
add ecx, edx
xor ecx, 0xf0d8f462
mov dword [rsp + 0xf8], ecx
movsxd rax, ecx
mov qword [rsp + 0x60], rax
mov dword [rsp + 0xf8], r12d
lea r13, [0x14033a060]
lea rcx, [rsp + 0x408]
call fcn.1400525ec
mov edi, r12d
mov esi, 0x90e71b8e
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 edi, edi
je 0x1402324e0
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0xe7e7e262
jmp 0x1402324d2
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, r14d
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x1402324b2
cmp r9d, edi
jne 0x14023259e
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov ebx, ecx
add rbx, r10
shr rcx, 0x20
cmp rbx, r10
je 0x14023259e
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x14023259e
mov r9d, dword [rbx + 0x20]
dec r8d
mov dword [rsp + 0x40], r8d
mov edx, r8d
mov qword [rsp + 0x50], rdx
lea rdx, [r9 + r8*4]
mov r11d, dword [rdx + r10]
add r11, r10
mov edx, 0xe7e7e262
mov r9b, byte [r11]
mov byte [rsp + 0x4d8], r9b
add r11, r15
test r9b, r9b
mov r9d, 0x4764996c
je 0x14023258d
mov r10d, edx
mov dl, byte [rsp + 0x4d8]
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, r14d
xor edx, r9d
xor r8d, r10d
mov r10d, edx
imul r10d, r8d
mov dl, byte [r11]
add r11, r15
test dl, dl
jne 0x140232556
mov dword [rsp + 0x30], r10d
mov r10, qword [rax + 0x30]
mov r8d, dword [rsp + 0x40]
mov edx, dword [rsp + 0x30]
cmp edx, esi
je 0x1402325a6
test r8d, r8d
mov r9d, dword [rbx + 0x20]
jne 0x140232513
mov rax, qword [rax]
jmp 0x140232486
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov eax, dword [rbx + 0x24]
add rax, r10
mov r8, qword [rsp + 0x50]
movzx eax, word [rax + r8*2]
mov r8d, dword [rdx + rax*4]
add r8, r10
cmp r8, rbx
jbe 0x140232630
lea rax, [rcx + rbx]
cmp r8, rax
jae 0x140232630
mov edi, 0xe7e7e262
mov esi, edi
jmp 0x1402325f2
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, r14d
xor eax, r9d
xor ecx, edi
mov edi, eax
imul edi, ecx
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x1402325da
jmp 0x140232610
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, r14d
xor eax, r9d
xor ecx, esi
mov esi, eax
imul esi, ecx
add r8, r15
mov al, byte [r8]
test al, al
jne 0x1402325fb
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14023259e
mov dword [rsp + 0x10c], r12d
mov dword [rsp + 0x10c], 0x3661f7f6
mov eax, dword [rsp + 0x10c]
add eax, 0xed8f4be
xor eax, 0x8a12a0dd
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x749219dc
xor eax, 0x46864120
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xcfd910b4
add eax, ecx
xor eax, 0x131102e1
add eax, 0x5c92c759
xor eax, 0x2189040b
mov edx, dword [0x14033a030]
xor edx, 0x3c49dd9
sub edx, eax
mov eax, dword [0x14033a038]
xor eax, 0xfc3b6226
sub edx, eax
sub edx, ecx
add edx, 0x27e2ae0e
xor edx, 0xd09f8036
mov dword [rsp + 0x10c], edx
movsxd rcx, edx
call r8
mov qword [rsp + 0x200], rax
mov dword [rsp + 0x10c], r12d
movabs rbx, 0xf246a4dd780818fc
mov qword [rsp + 0x50], rbx
movabs rdi, 0x24f3731df9fdd7ef
mov rsi, r12
movabs rax, 0xe75b040c1c4ba358
movabs r11, 0xcb5093e947a5164a
mov rcx, qword [0x14033a070]
imul rcx, rax
not rcx
movabs r8, 0x34af6c16c574e844
mov rax, qword [0x14033a060]
xor rax, r8
and rcx, rax
ror rcx, 0x22
shr rcx, 8
mov qword [rsp + 0x60], rcx
movabs rax, 0xcde6ab43a6275ae8
mov r10, qword [0x14033a070]
imul r10, rax
add r10, rdi
movabs rax, 0xe09b8ddcffffffff
xor r10, rax
shr r10, 0x1f
not r10
movabs r9, 0xdb0c8ce206022811
lea rcx, [r10 + 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, r10b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x2d
mov eax, 0x8000003f
and ecx, eax
jge 0x1402327b2
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, r10
ror rdx, cl
not rdx
mov qword [rsp + 0x40], rdx
movabs r8, 0x159c8a67d8ea40c
mov rcx, rdx
imul rcx, r8
mov qword [rsp + 0x30], rcx
lea r8, [rcx + r9]
mov r9, r10
mov rdx, qword [rsp + 0x60]
imul r9, rdx
sub r9, r8
xor r9, rbx
movzx ecx, r8b
mov dword [rsp + 0x4d8], ecx
xor ecx, 2
and ecx, 0xf
and ecx, eax
jge 0x14023280a
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r9, cl
movabs rcx, 0x9b3df3c5cfcd3b34
mov rax, qword [rsp + 0x40]
imul rax, rcx
movabs rcx, 0x30a290168d76aedf
add rax, rcx
xor r9, rax
mov rax, r8
sub rax, qword [0x14033a078]
xor r9, rax
xor r9, r11
mov rax, r9
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x140232b1c
sub rax, 1
je 0x140232a21
sub rax, 1
mov bl, 0x3f
je 0x140232958
cmp rax, 1
jne 0x140232ba6
mov rcx, r8
imul rcx, r10
movabs rax, 0x9070475dc740f9ed
add rax, r9
xor rcx, rax
ror rcx, 0x1a
shr rcx, 0xc
not rcx
mov qword [rsp + 0x50], rcx
movabs rdx, 0xffff7ca8c6d5df3a
add rdx, qword [0x14033a088]
movabs rax, 0x2471f6658bccd7ad
xor rdx, rax
movzx eax, r9b
movzx ecx, cl
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0x83582469e3533c5
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
imul rcx, rdi
mov eax, 0xb0111ed1
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 [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0x21a32237374f2828
sub rdi, qword [rsp + 0x50]
shr rdi, cl
movabs rax, 0xdb046859c36cb9f5
mov rcx, qword [rsp + 0x30]
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 [r13 + rcx*8]
imul rax, r9
sub rax, qword [rsp + 0x60]
xor rdi, rax
jmp 0x140232ba6
movabs rcx, 0x555555e54ff71c11
mov r10, r9
xor r10, rcx
movabs rcx, 0xffedf9128dfac05d
imul r10, rcx
movabs rdx, 0x817569e72ecd
mov rcx, qword [rsp + 0x30]
imul rcx, rdx
movabs rdx, 0x88970defddfb1643
add r10, rdx
add r10, rcx
movabs rax, 0xd88328419d27cb71
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 [r13 + rcx*8]
xor r8, 0x1aa2cac1
lea ecx, [r9 + 0x13]
and cl, bl
rol r8, cl
movabs rax, 0x84802060000000
imul r8, rax
mov rdx, r8
ror rdx, 0x30
not rdx
movabs rax, 0x1934865352cb4956
imul rdx, rax
sub rdx, r8
add rdx, r10
shl rdx, 2
mov cl, byte [rsp + 0x60]
and cl, bl
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x140232ba6
movabs rax, 0xa19f15c9e28500d9
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, 0xdb95b2287f7e703
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0x4d8]
and eax, 0x8000003f
jge 0x140232a78
sub eax, r15d
or eax, 0xffffffc0
add eax, r15d
mov cl, al
rol r11, cl
movabs rcx, 0xdb0c8ce206022811
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 [r13 + rcx*8]
imul rax, rdi
xor r11, rax
movabs rax, 0x385813336a3c
or r11, rax
mov rdi, qword [0x14033a070]
imul rdi, rbx
sub rdi, r8
mov rax, qword [rsp + 0x60]
sub rax, r11
xor rdi, rax
movabs rax, 0x38583959423b6a31
xor rdi, rax
mov rax, r9
imul rax, r8
imul rax, rdi
mov rsi, r10
sub rsi, rax
movabs rax, 0x78958947296d9d5
sub rsi, rax
xor rsi, qword [rsp + 0x60]
mov al, r10b
shl al, 2
lea ecx, [rax + r10]
shl cl, 2
mov bl, 0x3f
and cl, bl
rol rsi, cl
not rsi
jmp 0x140232ba6
mov rcx, r9
imul rcx, qword [0x14033a080]
and rcx, qword [0x14033a070]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0xa
imul r11, r8
mov rsi, rdx
not rsi
imul rsi, r10
movabs rax, 0x832758219fca3bd0
imul rsi, rax
imul rbx, qword [0x14033a060], 0xffffffff82d1fe0e
mov rdx, qword [0x14033a068]
sub rbx, rdx
mov al, sil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140232b8a
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rbx, cl
movabs rax, 0xdb0c8ce206022811
add rax, rbx
add rax, qword [rsp + 0x30]
mov qword [rsp + 0x60], rax
mov bl, 0x3f
movabs rax, 0xfaa2846f81311d
mov rcx, qword [rsp + 0x50]
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, rsi
imul r11, qword [r13 + rcx*8]
not r8
imul r8, r9
imul r8, qword [rsp + 0x60]
imul r8, rdi
movabs rcx, 0xa12817868327bc1
xor rcx, r10
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1401b3d3c
mov qword [0x1403489b8], rax
mov rax, qword gs:[8]
mov qword [0x14035b330], rax
xor eax, eax
mov byte [rsp + 0x4d8], al
lea rcx, [rsp + 0x4d8]
call fcn.14020c530
xor eax, eax
mov byte [rsp + 0x4d8], al
lea rcx, [rsp + 0x4d8]
call fcn.14020fdc4
nop
jmp 0x140232c62
movabs rax, 0x5bb3fd013cbde527
mov qword [rsp + 0x4d8], rax
movabs r9, 0x760b3bd75fd728bd
mov qword [rsp + 0x4e0], r9
movabs rax, 0xd70c145cb0000000
mov rdi, qword [0x14033a068]
imul rdi, rax
movabs rax, 0xcb883903f0000000
xor rdi, rax
mov rcx, rdi
imul rcx, r9
mov qword [rsp + 0x50], 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 [r13 + rcx*8]
movabs rax, 0x811e2d00050431a4
imul r8, rax
shr r8, 3
movabs rax, 0x645b37267d122b75
xor r8, rax
movabs rax, 0xffffff57acefe113
mov rsi, rdi
imul rsi, rax
add rsi, 0x1bac6fbc
xor rsi, r8
xor rsi, qword [0x14033a060]
mov rax, r8
imul rax, qword [0x14033a070]
movabs rcx, 0xb9de928ba55c5e32
imul rax, rcx
not rax
and rsi, rax
ror rsi, 0x3e
shr rsi, 8
movabs r10, 0x89f4c428a028d743
lea rcx, [rdi + r10]
xor rcx, 0xffffffff9bd2553f
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xfb0193a6cdbd57e8
mov r11, qword [r13 + rcx*8]
imul r11, rax
add r11, r9
movabs rcx, 0x7bdb9eb5c305172c
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rax, r11
xor rax, rdi
mov qword [rsp + 0x60], 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 [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x23
and ecx, 0x8000003f
jge 0x140232ddd
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, qword [rsp + 0x60]
ror rdx, cl
not rdx
imul rdx, r8
imul rax, rdx, 0x1bac6fbc
mov qword [rsp + 0x60], rax
add r10, rax
mov r9, r11
imul r9, rsi
sub r9, r10
movabs rax, 0x5bb3fd013cbde527
xor r9, rax
mov cl, r10b
xor cl, 0xfc
and cl, 0xf
rol r9, cl
mov rax, r10
sub rax, qword [0x14033a078]
xor r9, rax
movabs rax, 0x7b026a93faa7ddcc
imul rdx, rax
movabs rax, 0x84cf087b9f19b89
sub rdx, rax
xor r9, rdx
xor r9, r8
xor r9, rdi
mov rax, r9
and rax, r15
je 0x1402331bc
sub rax, 1
je 0x140233078
sub rax, 1
je 0x140232f7c
cmp rax, 1
jne 0x140233264
mov rcx, r10
imul rcx, r11
movabs rax, 0xc1174f081e4cb6f9
add rax, r9
xor rcx, rax
ror rcx, 4
shr rcx, 0xc
xor rcx, rdi
not rcx
mov qword [rsp + 0x4d8], rcx
movabs rdx, 0x835747ad5038
add rdx, qword [0x14033a088]
movabs rax, 0x89764150ac9ea7f1
xor rdx, rax
movzx eax, r9b
movzx ecx, cl
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db91f4dbccb
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0x760b3bd75fd728bd
imul rcx, rax
mov eax, 0xce966e21
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 [r13 + rcx*8]
and cl, 0xf
movabs rax, 0x187d3a8c4109c5c2
sub rax, qword [rsp + 0x4d8]
shr rax, cl
mov qword [rsp + 0x4e0], rax
movabs rcx, 0x89fce8b0dc3af631
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 [r13 + rcx*8]
imul rax, r9
sub rax, rsi
xor qword [rsp + 0x4e0], rax
jmp 0x140233264
movabs rax, 0xaaaaaa1ace8f931f
mov rcx, r9
xor rcx, rax
movabs rax, 0x1206ed0c824f53
imul rcx, rax
movabs rdx, 0xfff17ca819eda563
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8ae89fa1c3
mov rdx, qword [rsp + 0x60]
imul rdx, rax
movabs r11, 0x43e2f6c701b9bccc
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be1c5f447f
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 [r13 + rcx*8]
xor r10, 0xffffffff9bda45cf
lea ecx, [r9 + 0x1d]
and cl, bl
rol r10, cl
movabs rcx, 0xdbedc37b0d22b081
mov rax, qword [rsp + 0x50]
xor rax, rcx
movabs rcx, 0x7c7a7dc6f2dd4f7e
and rax, rcx
imul r10, rax
mov rcx, r10
ror rcx, 0x25
not rcx
movabs rax, 0x9b2de6b34ecf1960
imul rcx, rax
mov rax, r11
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, sil
and cl, bl
ror rdx, cl
movabs rax, 0x760b3bd75fd728bd
imul rdx, rax
mov qword [rsp + 0x4e0], rdx
jmp 0x140233264
movabs rax, 0x5a761f61d86f9269
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, 0x89f4c428a028d742
mov rax, rdi
imul rax, rdx
movabs rdx, 0x5bb3fd013cbde527
xor rax, rdx
not rax
shl rax, cl
xor r8, rax
mov cl, r10b
and cl, bl
rol r8, cl
movabs rcx, 0x89f4c428a028d743
add rcx, r9
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffffbd75fd728bd
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7924be532
or r8, rax
mov rcx, qword [0x14033a070]
movabs rax, 0x5bb3fd013cbde527
imul rcx, rax
sub rcx, r10
mov rax, rsi
sub rax, r8
xor rcx, rax
movabs rax, 0xc7a7c6a6c343e53f
xor rcx, rax
mov qword [rsp + 0x4e0], rcx
movabs rax, 0xcccccccccccccccd
mul rdi
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rdi
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, qword [rsp + 0x4e0]
div rcx
mov rcx, rdx
mov rdx, r9
imul rdx, r10
imul rdx, qword [rsp + 0x4e0]
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, rdi
movabs rdi, 0x78958940c11a925
add rdi, rax
xor rdi, rsi
movzx eax, r11b
imul ecx, eax, 0x1a
and cl, bl
rol rdi, cl
not rdi
jmp 0x140233264
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 [0x14033a080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r8
and r8b, bl
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r10
not rsi
imul rsi, r11
movabs rax, 0x7cd8a7de1eb2b4de
imul rsi, rax
mov rax, r8
imul rax, rdi
mov rdi, rsi
xor rdi, rax
imul rdx, qword [0x14033a060], 0x1bac6fbc
mov rsi, qword [0x14033a068]
sub rdx, rsi
mov al, dil
not al
movzx ecx, al
movzx eax, sil
xor ecx, eax
and ecx, 0x8000003f
jge 0x14023324f
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdx, cl
movabs rsi, 0x89f4c428a028d743
add rsi, rdx
add rsi, qword [rsp + 0x60]
movabs rax, 0xff055d7beef9be13
mov rcx, qword [rsp + 0x4d8]
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 [r13 + rcx*8]
not r10
imul r10, r9
imul r10, rsi
imul r10, qword [rsp + 0x4e0]
movabs rcx, 0xf5ed7e87e94af4cf
xor rcx, r11
not rcx
xor rcx, r10
sub rcx, r8
call fcn.1401b45f4
mov qword [0x1403489d0], rax
xor eax, eax
mov byte [rsp + 0x4e0], al
lea rcx, [rsp + 0x4e0]
call fcn.140216164
lea rax, [rsp + 0x200]
mov qword [rsp + 0x228], rax
lea rcx, [rsp + 0x228]
call fcn.1402221f0
movabs rdi, 0x6473be87ae4b5f91
movabs rsi, 0x7851dc1ed7a00a4a
movabs rax, 0x63d52549ea000000
mov r8, qword [0x14033a080]
imul r8, rax
movabs rax, 0x23279cfc8b000000
xor r8, rax
mov qword [rsp + 0x4d8], r8
mov rcx, r8
imul rcx, rsi
mov qword [rsp + 0x50], rcx
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r8
and r9, rsi
imul r9, qword [r13 + rcx*8]
movabs rax, 0x26404ce0c3c55df0
imul r9, rax
shr r9, 3
movabs rax, 0xdcd98d1375253a4f
xor r9, rax
movabs rax, 0xa833f08da7
mov rcx, r8
imul rcx, rax
sub rcx, 0x6f779910
xor rcx, r9
xor rcx, qword [0x14033a060]
mov rax, r9
imul rax, qword [0x14033a070]
movabs rdx, 0x46216d743a433286
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x3d
shr rcx, 8
mov qword [rsp + 0x60], rcx
movabs r10, 0x87ae23e1285ff5b6
lea rcx, [r8 + r10]
xor rcx, 0x4cd398b
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x25ecb3fd03254e60
mov r11, qword [r13 + rcx*8]
imul r11, rax
add r11, rsi
movabs rcx, 0xfbadad8f549527a8
mov rax, r9
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov rax, r11
xor rax, r8
mov qword [rsp + 0x40], 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 [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x97
and ecx, 0x8000003f
jge 0x14023347a
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, qword [rsp + 0x40]
ror rdx, cl
not rdx
imul rdx, r9
imul rax, rdx, 0xffffffff908866f0
mov qword [rsp + 0x40], rax
lea r8, [rax + r10]
mov r10, r11
imul r10, qword [rsp + 0x60]
sub r10, r8
xor r10, rdi
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x14033a078]
xor r10, rax
movabs rax, 0xdc7f2f5901732160
imul rdx, rax
movabs rax, 0x33a3cead28e9dd64
sub rdx, rax
xor r10, rdx
xor r10, r9
mov rdx, qword [rsp + 0x4d8]
xor r10, rdx
mov rax, r10
and eax, 2
je 0x140233825
sub rax, 1
je 0x1402336f0
sub rax, 1
je 0x1402335ff
cmp rax, 1
jne 0x1402338e9
mov rdi, r8
imul rdi, r11
movabs rax, 0xd71f14e6eef8cbba
add rax, r10
xor rdi, rax
ror rdi, 4
shr rdi, 0xc
xor rdi, rdx
not rdi
movabs rcx, 0xffff7ca8d8b23c84
mov rdx, qword [0x14033a088]
add rdx, rcx
movabs rax, 0x78d35966bbf6e9b2
xor rdx, rax
movzx eax, r10b
movzx ecx, dil
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0x83582468052d07f
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
imul rcx, rsi
mov eax, 0xae76fd6b
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 [r13 + rcx*8]
and cl, 0xf
movabs rsi, 0xa809431b194888e5
sub rsi, rdi
shr rsi, cl
movabs rax, 0x87a5ff58cb6d6810
mov rcx, qword [rsp + 0x40]
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x60]
xor rsi, rax
jmp 0x1402338e9
movabs rax, 0x555555e55190ffab
mov rcx, r10
xor rcx, rax
movabs rax, 0xffedf912939d23e7
imul rcx, rax
movabs rdx, 0xe835786f2c9d7
mov rax, r9
xor rax, rdx
sub rcx, rax
movabs rax, 0x81757780cd77
mov rdx, qword [rsp + 0x40]
imul rdx, rax
movabs r11, 0xedb349d488dec311
add r11, rcx
add r11, rdx
movabs rax, 0xd8832841834028cb
mov rcx, r11
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
not r8
imul r8, qword [r13 + rcx*8]
xor r8, 0x4c5297b
lea ecx, [r10 - 0x17]
and cl, bl
rol r8, cl
movabs rcx, 0x204800940000000
mov rax, qword [rsp + 0x50]
xor rax, rcx
movabs rcx, 0x838582396dc223ca
and rax, rcx
imul r8, rax
mov rdx, r8
ror rdx, 0x27
not rdx
movabs rax, 0x193486534cacaaec
imul rdx, rax
sub rdx, r8
add rdx, r11
shl rdx, 2
mov cl, byte [rsp + 0x60]
and cl, bl
ror rdx, cl
mov rax, rsi
mov rsi, rdx
imul rsi, rax
jmp 0x1402338e9
movabs rax, 0x1fda0c43142ffbfc
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, 0x87ae23e1285ff5b5
mov rax, qword [rsp + 0x4d8]
imul rax, rdx
xor rax, rdi
not rax
shl rax, cl
xor r9, rax
mov cl, r8b
and cl, bl
rol r9, cl
movabs rcx, 0x87ae23e1285ff5b6
add rcx, r10
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, qword [r13 + rcx*8]
imul rax, rsi
xor r9, rax
movabs rax, 0x38580d548986
or r9, rax
mov rsi, qword [0x14033a070]
imul rsi, rdi
sub rsi, r8
mov rax, qword [rsp + 0x60]
sub rax, r9
xor rsi, rax
movabs rax, 0x385839595c5c898b
xor rsi, rax
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x4d8]
mul rcx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
sub rcx, rax
or rcx, r15
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r8
imul rdx, rsi
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, qword [rsp + 0x4d8]
movabs rcx, 0x78958946cf13a6f
mov rdx, rax
sub rdx, rcx
xor rdx, qword [rsp + 0x60]
movzx eax, r11b
imul ecx, eax, 0xee
and cl, bl
rol rdx, cl
not rdx
mov qword [rsp + 0x4d8], rdx
jmp 0x1402338e9
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 [0x14033a080]
mov rdx, qword [r13 + rcx*8]
and rdx, rax
xor rdx, r9
and r9b, bl
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r8
mov rcx, qword [rsp + 0x60]
not rcx
imul rcx, r11
movabs rax, 0x8327582181add86a
imul rcx, rax
mov rax, r9
imul rax, qword [rsp + 0x4d8]
xor rcx, rax
mov qword [rsp + 0x4d8], rcx
imul rax, qword [0x14033a060], 0xffffffff908866f0
mov rdx, qword [0x14033a068]
sub rax, rdx
mov qword [rsp + 0x50], rax
mov al, cl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1402338ca
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x50]
ror rax, cl
movabs rcx, 0x87ae23e1285ff5b6
add rax, rcx
add rax, qword [rsp + 0x40]
mov qword [rsp + 0x60], rax
movabs rax, 0xfaa28471e6d2a7
xor rdi, rax
mov rax, r14
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rdi, rax
xor r9, qword [rsp + 0x4d8]
imul r9, qword [r13 + rdi*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x60]
imul r8, rsi
movabs rcx, 0xa1281787655987b
xor rcx, r11
not rcx
xor rcx, r8
sub rcx, r9
call fcn.1401b3d84
mov qword [0x1403489b0], rax
mov esi, r12d
mov dword [rsp + 0x40], 0xf0ffeae2
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r14d, 8
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, r14w
test esi, esi
je 0x1402339c7
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0xe76a6a66
jmp 0x1402339b9
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x140233999
cmp r9d, esi
jne 0x140233b21
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov edi, ecx
add rdi, r10
shr rcx, 0x20
cmp rdi, r10
je 0x140233b21
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x140233b21
mov r9d, dword [rdi + 0x20]
dec r8d
mov dword [rsp + 0x30], r8d
mov edx, r8d
mov qword [rsp + 0x50], rdx
lea rdx, [r9 + r8*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov edx, 0xe76a6a66
mov r11b, byte [r9]
mov byte [rsp + 0x4d8], r11b
add r9, r15
test r11b, r11b
mov r11d, 0x4764996c
je 0x140233a74
mov r10d, edx
mov dl, byte [rsp + 0x4d8]
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, r11d
xor r8d, r10d
mov r10d, edx
imul r10d, r8d
mov dl, byte [r9]
add r9, r15
test dl, dl
jne 0x140233a3d
mov dword [rsp + 0x38], r10d
mov r10, qword [rax + 0x30]
mov r8d, dword [rsp + 0x30]
mov edx, dword [rsp + 0x38]
cmp edx, dword [rsp + 0x40]
je 0x140233a8c
test r8d, r8d
mov r9d, dword [rdi + 0x20]
jne 0x1402339fa
jmp 0x140233b21
mov edx, dword [rdi + 0x1c]
add rdx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
mov r8, qword [rsp + 0x50]
movzx eax, word [rax + r8*2]
mov r9d, dword [rdx + rax*4]
add r9, r10
cmp r9, rdi
jbe 0x140233b29
lea rax, [rcx + rdi]
cmp r9, rax
jae 0x140233b29
mov edx, 0xe76a6a66
mov esi, edx
mov dword [rsp + 0x40], edx
jmp 0x140233adc
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r11d
xor ecx, esi
mov esi, eax
imul esi, ecx
add r9, r15
mov al, byte [r9]
cmp al, 0x2e
jne 0x140233ac4
add r9, r15
mov al, byte [r9]
test al, al
je 0x140233b10
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r11d
xor ecx, edx
mov edx, eax
imul edx, ecx
add r9, r15
mov al, byte [r9]
test al, al
jne 0x140233aed
mov dword [rsp + 0x40], edx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14023396d
mov qword [rsp + 0x230], r12
movabs rax, 0x490631b118de2f4b
mov qword [rsp + 0x230], rax
movabs rcx, 0xf33a52b829851083
add rcx, qword [rsp + 0x230]
movabs rax, 0x35d53662530bbb89
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80a01de1d0
add rcx, rax
movabs rax, 0xf8f8cd96476f74eb
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x7d654b6ac247103
add rcx, rax
mov rdx, qword [0x14033a040]
add rcx, rdx
movabs rax, 0x5a9179a5f0a4b333
xor rcx, rax
movabs rax, 0x5f627dc46ca67946
sub rcx, rax
movabs rax, 0x5a3b3cd14c6a20c7
xor rcx, rax
movabs rax, 0xb483ce42ac61e754
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94ae0a61296
mov rax, qword [0x14033a038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b51f59ed69
mov rcx, qword [0x14033a030]
xor rcx, rax
movabs r8, 0xe0b56d962e8f1beb
add r8, rdx
add r8, rcx
movabs rax, 0x16283fba83787d86
xor r8, rax
mov qword [rsp + 0x230], r8
mov rdx, qword [rsp + 0x200]
mov rcx, qword [rsp + 0x4d0]
call r9
nop
mov qword [rsp + 0x230], r12
movabs rdi, 0xd8b5eff1634fbfb1
mov rsi, r12
movabs rax, 0x8930724ccd44aff0
movabs r11, 0x2552b3b6667608f4
mov rcx, qword [0x14033a070]
imul rcx, rax
not rcx
movabs r8, 0x2552b3b67256922a
mov rax, qword [0x14033a060]
xor rax, r8
and rcx, rax
ror rcx, 0x2c
shr rcx, 8
mov qword [rsp + 0x4d8], rcx
movabs rax, 0xda54af3cbaccbec8
mov r10, qword [0x14033a060]
imul r10, rax
movabs r8, 0x274a100e9cb0404f
sub r10, r8
movabs rax, 0xcb67fea57fffffff
xor r10, rax
shr r10, 0x1f
not 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
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xbd
mov edx, 0x8000003f
and ecx, edx
jge 0x140233d24
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r10
ror rax, cl
not rax
mov qword [rsp + 0x50], rax
movabs rcx, 0xd4a199440a3e8b98
imul rax, rcx
mov qword [rsp + 0x60], rax
add r8, rax
mov r9, r10
imul r9, qword [rsp + 0x4d8]
sub r9, r8
movabs rax, 0x59bf00c327bb5c2
xor r9, rax
movzx ecx, r8b
mov dword [rsp + 0x4d0], ecx
xor ecx, 2
and ecx, 0xf
and ecx, edx
jge 0x140233d82
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r9, cl
mov rax, r8
sub rax, qword [0x14033a078]
xor r9, rax
movabs rcx, 0x2cb667109b4cec18
mov rax, qword [rsp + 0x50]
imul rax, rcx
movabs rcx, 0x351bcfa33b38679f
add rax, rcx
xor r9, rax
xor r9, r11
mov rax, r9
and rax, r15
xor rax, 2
je 0x1402340a6
sub rax, 1
je 0x140233f9a
sub rax, 1
je 0x140233ece
cmp rax, 1
jne 0x140234136
mov r15, r8
imul r15, r10
movabs rax, 0x4cbac03cee2da583
add rax, r9
xor r15, rax
ror r15, 0x16
shr r15, 0xc
not r15
movabs rcx, 0x83575d7709aa
mov rdx, qword [0x14033a088]
add rdx, rcx
movabs rax, 0x27c895768adc6963
xor rdx, rax
movzx eax, r15b
movzx ecx, r9b
imul ecx, eax
and cl, bl
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db90597e555
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
imul rcx, rdi
mov eax, 0xd44c37bf
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 [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0xf63588b4c2d0bca2
sub rdi, r15
shr rdi, cl
movabs rax, 0x27523496c37887c3
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [r13 + rcx*8]
imul rax, r9
sub rax, qword [rsp + 0x4d8]
xor rdi, rax
jmp 0x140234140
movabs rcx, 0xaaaaaa1ad455ca81
mov r10, r9
xor r10, rcx
movabs rcx, 0x1206ed165816cd
imul r10, rcx
movabs rcx, 0xffff7e8af245f85d
mov rdx, qword [rsp + 0x60]
imul rdx, rcx
movabs rcx, 0x453b11683aa2e907
add r10, rcx
add r10, rdx
movabs rax, 0x277cd7be06851de1
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 [r13 + rcx*8]
xor r8, 0xffffffff81001c51
lea ecx, [r9 + 3]
and cl, bl
rol r8, cl
movabs rax, 0x78300946a0000000
imul r8, rax
mov rcx, r8
ror rcx, 0x1e
not rcx
movabs rax, 0x9b2de6b325a67f18
imul rcx, rax
mov rax, r10
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x4d8]
and cl, bl
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x140234136
movabs rax, 0x7d62e758151c41b7
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, 0xfa640ff3cd844a3d
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0x4d0]
and eax, 0x8000003f
jge 0x140233ff1
sub eax, r15d
or eax, 0xffffffc0
add eax, r15d
mov cl, al
rol r11, cl
movabs rcx, 0x274a100e9cb0404f
add rcx, r9
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffeff1634fbfb1
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a78891bcac
or r11, rax
mov rdi, qword [0x14033a070]
movabs r15, 0x59bf00c327bb5c2
imul rdi, r15
sub rdi, r8
mov rax, qword [rsp + 0x4d8]
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a6d999bca1
xor rdi, rax
mov rax, r9
imul rax, r8
imul rax, rdi
mov rsi, r10
sub rsi, rax
movabs rax, 0x789589416cbf0bb
add rsi, rax
xor rsi, qword [rsp + 0x4d8]
mov cl, r10b
shl cl, 2
and cl, bl
rol rsi, cl
not rsi
jmp 0x140234140
mov rcx, r9
imul rcx, qword [0x14033a080]
and rcx, qword [0x14033a080]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x34
imul r11, r8
mov rsi, qword [rsp + 0x4d8]
not rsi
imul rsi, r10
movabs rax, 0x7cd8a7de0468ed40
imul rsi, rax
imul rbx, qword [0x14033a060], 0x14209ade
mov rdx, qword [0x14033a068]
sub rbx, rdx
mov al, sil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140234119
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rbx, cl
movabs rax, 0x274a100e9cb0404f
add rax, rbx
add rax, qword [rsp + 0x60]
mov qword [rsp + 0x4d8], rax
movabs r15, 0x59bf00c327bb5c2
movabs rax, 0xff055d7bf423e78d
xor r15, rax
mov rax, r14
mul r15
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r15, rax
xor r11, rsi
imul r11, qword [r13 + r15*8]
not r8
imul r8, r9
imul r8, qword [rsp + 0x4d8]
imul r8, rdi
movabs rcx, 0xf5ed7e87f390ad51
xor rcx, r10
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1401b45d0
mov qword [0x1403489b0], rax
mov dword [rsp + 0x104], r12d
mov dword [rsp + 0x104], 0xe9555475
mov eax, dword [rsp + 0x104]
add eax, 0xa7051a3e
xor eax, 0xaf933909
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
add eax, 0x9a561b3
xor eax, 0xabf96b0a
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xc14923cd
add eax, ecx
xor eax, 0x657ea81b
sub eax, 0x7f406d3d
xor eax, 0xa96e2fea
mov edx, dword [0x14033a030]
xor edx, 0x163ed43
sub edx, eax
mov eax, dword [0x14033a038]
xor eax, 0xfe9c12bc
sub edx, eax
sub edx, ecx
sub edx, 0x60cb1ae0
xor edx, 0x1ae4f334
mov dword [rsp + 0x104], edx
movsxd rax, edx
mov dword [rsp + 0x104], r12d
jmp 0x140231f9d