Function at 0x14022a90c
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 [0x14033e070]
imul rbx, rax
movabs rax, 0xfe71730b00000000
xor rbx, rax
mov qword [rsp + 0x4d8], rbx
movabs rdi, 0x2735903edf32b0b8
mov rcx, rbx
imul rcx, rdi
movabs rsi, 0xaaaaaaaaaaaaaaab
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r13, [0x14033e060]
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 [0x14033e060]
mov rax, r10
imul rax, qword [0x14033e070]
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, rsi
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 rax, r11
xor rax, rbx
mov qword [rsp + 0x4e0], rax
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, 0x17
mov ebx, 0x8000003f
and ecx, ebx
lea r15d, [r12 + 1]
lea r14d, [r12 - 0x40]
jge 0x14022aab1
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rdx, qword [rsp + 0x4e0]
ror rdx, cl
not rdx
imul rdx, r10
imul r8, rdx, 0xffffffffddb91570
sub r8, rdi
mov rdi, r11
imul rdi, r9
sub rdi, r8
mov rax, r8
sub rax, qword [0x14033e078]
xor rdi, rax
movabs rax, 0x312fa1495ba46880
imul rdx, rax
movabs rax, 0x2225f30a11dd8440
sub rdx, rax
xor rdi, rdx
xor rdi, r10
xor rdi, qword [rsp + 0x4d8]
movabs rax, 0x676be5eba979c2dd
xor rdi, rax
mov rax, rsi
mul r10
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, r10
sub rdx, rax
mov rax, rdi
imul rax, qword [0x14033e080]
mov rdx, qword [r13 + rdx*8]
and rdx, rax
xor rdx, r10
and r10b, 0x3f
mov cl, r10b
ror rdx, cl
imul rdx, r8
mov qword [rsp + 0x4e0], rdx
not r9
imul r9, r11
movabs rax, 0x7cd8a7de584057ea
imul r9, rax
mov rax, rdx
imul rax, qword [rsp + 0x4d8]
xor r9, rax
imul r10, qword [0x14033e060], 0xffffffffddb91570
mov rdx, qword [0x14033e068]
sub r10, rdx
mov al, r9b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, ebx
jge 0x14022abb0
sub ecx, r15d
or ecx, r14d
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
mov rax, qword [rsp + 0x4e0]
xor rax, r9
imul rax, qword [0x14033e080]
sub rcx, rax
call fcn.1401b8068
mov qword [0x14034c9e0], rax
xor eax, eax
mov byte [rsp + 0x4d8], al
mov dword [rsp + 0x238], 0xf06f455f
mov dword [rsp + 0x23c], 0x6c98661d
mov dword [rsp + 0x240], 0xba15a83d
mov word [rsp + 0x244], 0x6ff9
mov byte [rsp + 0x246], 0x17
mov r13, r12
movabs rsi, 0x13cce94adbce3bb0
xor edx, edx
mov rax, r13
div rsi
add dl, 0x37
mov dil, dl
sar dil, 7
or dil, dl
mov bl, dil
shl bl, 6
mov al, dil
sar al, 2
or bl, al
mov r8b, dil
sar r8b, 5
mov al, dil
shl al, 3
or r8b, al
mov r9b, dil
sar r9b, 3
mov al, dil
shl al, 5
or r9b, al
mov dl, dil
sar dl, 4
mov al, dil
shl al, 4
or dl, al
mov r10b, dil
not r10b
mov cl, dil
ror cl, 1
mov r11b, byte [rsp + r13 + 0x238]
sub r11b, bl
sub r11b, 2
mov eax, 4
sub al, bl
xor r11b, al
sub r11b, byte [0x14033e058]
sub r11b, byte [0x14033e050]
add r11b, bl
add r11b, dil
sub r11b, cl
sub r11b, 0x3f
lea eax, [rbx + 7]
add al, dil
xor r11b, al
sub r11b, r8b
sub r11b, dil
sub r11b, byte [0x14033e048]
sub r11b, 0x50
mov rcx, qword [0x14033e040]
add r11b, bl
add r11b, cl
mov al, dl
sub al, r8b
add al, bl
add al, dil
xor r11b, al
mov al, dil
sub al, dl
xor al, dil
sub r11b, al
sub r11b, r9b
add r11b, 0x30
add r11b, dil
mov al, dil
ror al, 7
sub r9b, 0x50
add al, r9b
xor r11b, al
sub bl, dil
add bl, bl
add r11b, bl
add cl, 0x51
add r11b, cl
not r11b
mov al, dil
sar al, 7
or al, dil
sub r11b, al
mov al, r10b
xor al, byte [0x14033e038]
sub r11b, al
mov al, dil
xor al, byte [0x14033e030]
add r11b, al
mov al, dil
xor al, 0x40
sub r11b, al
movsx eax, r10b
movsx ecx, dil
imul ecx, eax
xor cl, r11b
mov byte [rsp + r13 + 0x238], cl
add r13, r15
cmp r13, 0xf
jb 0x14022ac4e
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 [0x140316bd0]
movdqu xmmword [rsp + 0x2f8], xmm0
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 [0x14033e088]
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, [0x14033e060]
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 [0x14033e060]
mov rax, r8
imul rax, qword [0x14033e070]
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
jge 0x14022af86
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 [0x14033e078]
xor r10, rax
xor r10, r8
xor r10, rdi
mov rax, r10
and eax, 3
je 0x14022b352
sub rax, 1
je 0x14022b21b
sub rax, 1
mov bl, 0x3f
je 0x14022b126
cmp rax, 1
jne 0x14022b40f
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 [0x14033e088]
movabs rax, 0x260efe6e22649e23
xor rdx, rax
movzx eax, r10b
movzx ecx, cl
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 0x14022b40f
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 0x14022b40f
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 [0x14033e070]
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 0x14022b40f
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 [0x14033e080]
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 [0x14033e060], 0xffffffff8b853184
mov rdx, qword [0x14033e068]
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 0x14022b3f0
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.1401b8140
mov qword [0x14034c9a0], 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 + 0x68], 0x676450b8
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 0x14022b514
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea rdi, [r8 + rcx*2]
mov r11d, 0xd1e4c35e
jmp 0x14022b506
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 0x14022b4e9
cmp r11d, r9d
jne 0x14022b5d3
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 0x14022b5d3
mov r8d, dword [rdx + 0x18]
test r8d, r8d
je 0x14022b5d3
mov r9d, dword [rdx + 0x20]
mov qword [rsp + 0x38], r9
dec r8d
mov dword [rsp + 0x70], r8d
mov edx, r8d
mov qword [rsp + 0x48], rdx
lea rdx, [r9 + r8*4]
mov edi, dword [rdx + r11]
add rdi, r11
mov edx, 0xd1e4c35e
mov r9b, byte [rdi]
add rdi, r15
test r9b, r9b
je 0x14022b5bb
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 0x14022b57f
mov dword [rsp + 0x78], r11d
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0x70]
mov edx, dword [rsp + 0x78]
cmp edx, dword [rsp + 0x68]
je 0x14022b5db
test r8d, r8d
mov r9, qword [rsp + 0x38]
jne 0x14022b551
mov r9d, dword [rsp + 0x4d8]
mov rax, qword [rax]
jmp 0x14022b4b8
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 0x14022b69e
lea rax, [r9 + rcx]
cmp r8, rax
jae 0x14022b69e
mov r9d, 0xd1e4c35e
mov dword [rsp + 0x4d8], r9d
mov edx, r9d
mov dword [rsp + 0x68], edx
mov al, byte [r8]
cmp al, 0x2e
je 0x14022b65b
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 0x14022b631
mov dword [rsp + 0x4d8], r9d
add r8, r15
mov al, byte [r8]
test al, al
je 0x14022b688
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 0x14022b665
mov dword [rsp + 0x68], edx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14022b5d3
mov rcx, qword [rsp + 0x40]
call r8
lea r8, [rsp + 0x4d8]
mov rdx, rax
lea rcx, [rsp + 0x2d0]
call fcn.1401b64ac
movabs rax, 0x145871a73f31fdfa
mov r10, qword [0x14033e070]
imul r10, rax
not r10
movabs rcx, 0xbe1e9f0ac413fa75
mov rax, qword [0x14033e060]
xor rax, rcx
and r10, rax
ror r10, 0x3b
shr r10, 8
movabs rax, 0x8e56c179178e9a80
mov r9, qword [0x14033e088]
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 0x14022b76a
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rdx, r9
ror rdx, cl
not rdx
movabs rcx, 0xec07c3c5bc3cdcc0
mov rax, rdx
imul rax, rcx
mov qword [rsp + 0x4d8], rax
add r8, rax
mov rdi, r9
imul rdi, r10
sub rdi, r8
movabs rax, 0xd60d41b56b8e53bd
xor rdi, rax
mov cl, r8b
xor cl, 0xfc
and cl, 0xf
rol rdi, cl
mov rax, r8
sub rax, qword [0x14033e078]
xor rdi, rax
movabs rax, 0xd677af20585f5200
imul rdx, rax
movabs rax, 0x1798f4435e366a40
sub rdx, rax
xor rdi, rdx
movabs rcx, 0x41e160f507851bb5
xor rdi, rcx
mov rax, rdi
imul rax, qword [0x14033e080]
mov rdx, qword [0x14033e068]
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 [0x14033e060], 0xffffffffc396e1c0
sub r8, rdx
mov al, r10b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, r11d
jge 0x14022b84d
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 [0x14033e080]
sub rcx, rax
call fcn.1401b7600
mov qword [0x14034c9d8], rax
mov r8, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x2d0]
sub r8, rcx
mov rdx, qword [rsp + 0x40]
call fcn.1402bb070
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 [0x14033e070]
imul rcx, rax
not rcx
movabs rdx, 0x6c35ad5eac0f1fed
mov rax, qword [0x14033e060]
xor rax, rdx
and rcx, rax
ror rcx, 0x28
shr rcx, 8
mov qword [rsp + 0x30], rcx
movabs rax, 0xb790532c9212eb00
mov r10, qword [0x14033e080]
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 0x14022b9b8
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rdx, r10
ror rdx, cl
not rdx
movabs rcx, 0xc2097045c1b4c180
mov rax, rdx
imul rax, rcx
mov qword [rsp + 0x38], rax
lea r9, [rax + r8]
mov r8, r10
imul r8, qword [rsp + 0x30]
sub r8, r9
movabs rax, 0x986fffe16b181ff9
xor r8, rax
mov cl, r9b
xor cl, 0xf8
and cl, 0xf
rol r8, cl
mov rax, r9
sub rax, qword [0x14033e078]
xor r8, rax
movabs rax, 0x8885e702027e5680
imul rdx, rax
movabs rax, 0x7022942c51cff31f
add rdx, rax
xor r8, rdx
xor r8, r11
mov rax, r8
and eax, 3
je 0x14022bd0a
sub rax, 1
je 0x14022bc0f
sub rax, 1
je 0x14022bb46
cmp rax, 1
jne 0x14022bd9c
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 [0x14033e088]
movabs rax, 0x902ad4b36716e7e7
xor rdx, rax
movzx eax, cl
movzx ecx, r8b
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 0x14022bd9c
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 0x14022bd9c
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 [0x14033e070]
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 0x14022bd9c
mov rcx, qword [0x14033e080]
imul rcx, r8
mov rdx, qword [0x14033e068]
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 [0x14033e060], 0x13d1d780
sub rcx, rdx
mov qword [rsp + 0x30], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14022bd7d
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.1401b7888
mov qword [0x14034c9a0], rax
movabs rax, 0xea437b2a73a5922
mov qword [rsp + 0x40], rax
movabs rdi, 0x74c97cfe69afae3b
movabs rax, 0xe6b041345a6d6000
mov r11, qword [0x14033e080]
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 [0x14033e060]
mov rax, r9
imul rax, qword [0x14033e070]
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 0x14022bf84
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 0x14022bfd9
sub ecx, r15d
or ecx, r14d
add ecx, r15d
rol r8, cl
mov rax, r10
sub rax, qword [0x14033e078]
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 0x14022c372
sub rax, 1
je 0x14022c221
sub rax, 1
je 0x14022c12c
cmp rax, 1
jne 0x14022c435
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 [0x14033e088]
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 0x14022c435
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 0x14022c435
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 0x14022c289
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 [0x14033e070]
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 0x14022c435
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 [0x14033e080]
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 [0x14033e060], 0x23b57b0e
mov rdx, qword [0x14033e068]
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 0x14022c413
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.1401b7378
mov qword [0x14034c9d0], rax
movabs rax, 0xfa6d7f8d8561701c
mov qword [rsp + 0x40], rax
movabs rdi, 0x617df7358cbb1f1f
movabs rax, 0x9869227d3f764000
mov r11, qword [0x14033e080]
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 [0x14033e060]
mov rax, r9
imul rax, qword [0x14033e070]
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 0x14022c61a
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 0x14022c66f
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 [0x14033e078]
xor r8, rax
xor r8, r9
xor r8, r11
mov rax, r8
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14022ca03
sub rax, 1
je 0x14022c8b8
sub rax, 1
je 0x14022c7c7
cmp rax, 1
jne 0x14022cac6
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 [0x14033e088]
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 0x14022cac6
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 0x14022cac6
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 0x14022c920
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 [0x14033e070]
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 0x14022cac6
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 [0x14033e080]
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 [0x14033e060], 0xfffffffffc58809e
mov rdx, qword [0x14033e068]
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 0x14022caa4
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.1401b7dbc
mov qword [0x14034c9a8], rax
mov dword [rsp + 0xe8], r12d
mov dword [rsp + 0xe8], 0x3a4bff4a
mov eax, dword [rsp + 0xe8]
add eax, 0x5d219b35
xor eax, 0x3089ef26
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x25830c30
xor eax, 0x1b04780f
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xdd1572be
add eax, ecx
xor eax, 0xfdc62501
add eax, 0x4fe39919
xor eax, 0x46aa3e8a
lea edx, [rcx - 0x13d15b95]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd97484c0
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x268b7b3f
add ecx, 0xf591f85b
add ecx, edx
xor ecx, 0x13b4eb40
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 [0x14033e070]
imul rcx, rax
not rcx
movabs r8, 0xea9f476466c61d72
mov rax, qword [0x14033e060]
xor rax, r8
and rcx, rax
ror rcx, 0x24
shr rcx, 8
mov qword [rsp + 0x30], rcx
movabs rax, 0xcec4eff6586c1830
mov r11, qword [0x14033e070]
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 0x14022cc95
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 0x14022ccf3
sub ecx, r15d
or ecx, r14d
add ecx, r15d
rol r8, cl
mov rax, r9
sub rax, qword [0x14033e078]
xor r8, rax
movabs rcx, 0xc5b77a9c95a76988
mov rax, qword [rsp + 0x38]
imul rax, rcx
movabs rcx, 0x5da0f05b0001e0f7
add rax, rcx
xor r8, rax
xor r8, r10
mov rax, r8
and rax, r15
xor rax, 2
je 0x14022d01b
sub rax, 1
je 0x14022cf20
sub rax, 1
je 0x14022ce4d
cmp rax, 1
jne 0x14022d0c0
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 [0x14033e088]
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 0x14022d0c3
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 0x14022d0c3
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 0x14022cf77
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 [0x14033e070]
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 0x14022d0c6
mov rcx, r8
imul rcx, qword [0x14033e080]
and rcx, qword [0x14033e080]
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 [0x14033e060], 0xfffffffff82e885e
mov rdx, qword [0x14033e068]
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 0x14022d092
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 0x14022d0c6
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.1400315c0
mov qword [0x14034c9a0], rax
mov qword [rsp + 0x190], r12
movabs rax, 0xd99b9b08049c4f3f
mov qword [rsp + 0x190], rax
mov qword [rsp + 0x118], r12
movabs rax, 0xfff3d469b6be2701
mov qword [rsp + 0x118], rax
movabs rcx, 0xf33a52b61d9e1903
add rcx, qword [rsp + 0x118]
movabs rax, 0x3e5536625309afa2
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f59be694a
sub rcx, rax
movabs rax, 0xf8f8cd985b860849
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x47d654b9734c75fa
add rcx, rax
mov rdi, qword [0x14033e040]
add rcx, rdi
movabs rax, 0x5a9179a846382581
xor rcx, rax
movabs rax, 0x5f627dc6bd00db14
sub rcx, rax
movabs rax, 0x163b3cd2526dfbbf
xor rcx, rax
movabs rdx, 0x3483ce44a9f58e0f
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ad87676b8
mov r10, qword [0x14033e038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b527898947
mov r11, qword [0x14033e030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d8df685da0d
add rdx, rax
add rdx, rcx
movabs rax, 0xe753652cfedb6508
xor rdx, rax
mov qword [rsp + 0x118], rdx
movabs rcx, 0xf33a52b661539783
add rcx, qword [rsp + 0x190]
movabs rax, 0xbcd536625309f358
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a576763b
add rcx, rax
movabs rax, 0xf8f8cd9816c1b3cf
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x87d654b9176398c3
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a7f8fd2137
xor rcx, rax
movabs rax, 0x5f627dc6ab714162
sub rcx, rax
movabs rax, 0x223b3cd230911ed3
xor rcx, rax
movabs rax, 0xb483ce44681a0605
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ad9854cb2
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b5267ab34d
xor r11, rax
movabs rax, 0xe0b56d8f066ab207
add rcx, rax
add rcx, r11
movabs rax, 0x25037a5e9a8c878a
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 0x14022ef72
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 [0x14033e070]
imul rcx, rax
not rcx
movabs rdx, 0x9c6ef1171e4c4aac
mov rax, qword [0x14033e060]
xor rax, rdx
and rcx, rax
ror rcx, 9
shr rcx, 8
mov qword [rsp + 0x48], rcx
movabs rax, 0x802eb34dc05ce8f0
mov r9, qword [0x14033e088]
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 0x14022d42c
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 0x14022d488
sub ecx, r15d
or ecx, r14d
add ecx, r15d
rol r8, cl
mov rax, r10
sub rax, qword [0x14033e078]
xor r8, rax
movabs rcx, 0xcfb14eb64ac52a40
mov rax, qword [rsp + 0x58]
imul rax, rcx
movabs rcx, 0x423b32c64741545c
add rax, rcx
xor r8, rax
xor r8, r11
mov rax, r8
and eax, 2
je 0x14022d7a9
sub rax, 1
je 0x14022d69b
sub rax, 1
mov bl, 0x3f
je 0x14022d5d2
cmp rax, 1
jne 0x14022d841
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 [0x14033e088]
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 0x14022d841
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 0x14022d841
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 0x14022d6ef
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 [0x14033e070]
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 0x14022d841
mov rcx, r8
imul rcx, qword [0x14033e080]
and rcx, qword [0x14033e060]
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 [0x14033e060], 0xfffffffffdbc47b8
mov rdx, qword [0x14033e068]
sub rcx, rdx
mov qword [rsp + 0x4d8], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, ebx
jge 0x14022d81d
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.1401b6d48
mov qword [0x14034c990], 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 [0x14033e070]
imul rcx, rax
not rcx
movabs r8, 0x75b6e55202d0ade9
mov rax, qword [0x14033e060]
xor rax, r8
and rcx, rax
ror rcx, 0x14
shr rcx, 8
mov qword [rsp + 0x38], rcx
movabs rax, 0x63acdec15a70ad20
mov r9, qword [0x14033e070]
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 0x14022d97e
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 [0x14033e078]
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 0x14022dcd5
sub rax, 1
je 0x14022dbd8
sub rax, 1
je 0x14022db0f
cmp rax, 1
jne 0x14022dd6b
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 [0x14033e088]
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 0x14022dd6b
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 0x14022dd6b
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 [0x14033e070]
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 0x14022dd6b
mov rcx, r10
imul rcx, qword [0x14033e080]
and rcx, qword [0x14033e088]
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 [0x14033e060], 0xfffffffff9c8a196
mov rdx, qword [0x14033e068]
sub rcx, rdx
mov qword [rsp + 0x38], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14022dd4c
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.1401b6d24
mov qword [0x14034c9c0], rax
mov dword [rsp + 0x108], r12d
mov dword [rsp + 0x108], 0x34607bda
mov eax, dword [rsp + 0x108]
add eax, 0xff1b630
xor eax, 0x4b84a1f6
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x356a9bdf
xor eax, 0x7d691ca8
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x8f5bf61f
add eax, ecx
xor eax, 0x9d0c63b
add eax, 0x155c6b29
xor eax, 0x156c9a8c
lea edx, [rcx + 0x14423a2d]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xc43fc52c
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x3bc03ad3
add ecx, 0xeb9b9d32
add ecx, edx
xor ecx, 0x383b7b44
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 0x14022df7a
mov r13, qword [rsp + 0x40]
mov dword [rsp + 0x80], r12d
mov dword [rsp + 0x80], 0x3f0f6114
mov eax, dword [rsp + 0x80]
add eax, 0x7e43e1b6
xor eax, 0x770b1048
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x5de05aa3
xor eax, 0xf55da874
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x949b6c0a
add eax, ecx
xor eax, 0xb3fb0c96
add eax, 0x53b7b1bb
xor eax, 0x82101238
mov edx, dword [0x14033e030]
xor edx, 0x2206f225
sub edx, eax
mov eax, dword [0x14033e038]
xor eax, 0xddf90dda
sub edx, eax
sub edx, ecx
add edx, 0x2bab45a0
xor edx, 0xcb331482
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 0x14022de96
mov qword [rsp + 0x40], r13
lea r13, [0x14033e060]
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 [0x14033e068]
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 [0x14033e060]
mov rax, r8
imul rax, qword [0x14033e070]
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 0x14022e109
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 0x14022e162
sub ecx, r15d
or ecx, r14d
add ecx, r15d
rol r9, cl
mov rax, r10
sub rax, qword [0x14033e078]
xor r9, rax
movabs rax, 0x9dd1bc6a6f4740b2
imul rdx, rax
movabs rax, 0x736360a9d4a19a7f
add rdx, rax
xor r9, rdx
xor r9, r8
xor r9, r11
mov rax, r9
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14022e50f
sub rax, 1
je 0x14022e3b7
sub rax, 1
je 0x14022e2bd
cmp rax, 1
jne 0x14022e5c1
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 [0x14033e088]
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 0x14022e5c1
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 0x14022e5c1
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 0x14022e41f
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 [0x14033e070]
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 0x14022e5c1
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 [0x14033e080]
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 [0x14033e060], 0x19ad8ce
sub rdx, qword [0x14033e068]
mov al, r11b
not al
movzx ecx, al
movzx eax, byte [0x14033e068]
xor ecx, eax
and ecx, 0x8000003f
jge 0x14022e5a7
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.140031794
mov qword [0x14034c9e8], rax
movabs rax, 0xaf64000000000000
mov r8, qword [0x14033e060]
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 [0x14033e060]
mov rax, r11
imul rax, qword [0x14033e070]
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 0x14022e794
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 [0x14033e078]
xor r10, rax
movabs rax, 0x9332aa23aa1acb00
imul rdi, rax
movabs rax, 0x58ef21f2a6a20970
add rdi, rax
xor r10, rdi
xor r10, qword [rsp + 0x4d8]
xor r10, r11
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 [0x14033e080]
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 [0x14033e060], 0xfffffffff9db65c0
mov rdx, qword [0x14033e068]
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 0x14022e89b
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 [0x14033e070]
sub rcx, rdi
call fcn.1401b7744
mov qword [0x14034c9b0], rax
movabs rdi, 0x6704d34f3d1d67d9
movabs r10, 0x94ff900e4ec406a
mov qword [rsp + 0x4d8], r10
movabs rax, 0xafa82f3fda000000
mov r8, qword [0x14033e080]
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 [0x14033e060]
mov rax, r9
imul rax, qword [0x14033e070]
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 0x14022ea7a
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 [0x14033e078]
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 0x14022ee4e
sub rax, 1
je 0x14022ed0c
sub rax, 1
je 0x14022ec0f
cmp rax, 1
jne 0x14022ef0c
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 [0x14033e088]
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 0x14022ef0c
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 0x14022ef0c
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 [0x14033e070]
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 0x14022ef0c
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 [0x14033e080]
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 [0x14033e060], 0xfffffffff1914b80
mov rdx, qword [0x14033e068]
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 0x14022eeed
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.1400915ec
mov qword [0x14034c9e0], rax
jmp 0x14022ef74
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, 0x3ce041b1c1ce80ac
mov qword [rsp + 0x120], rax
movabs rcx, 0xf33a52bde4ae7003
add rcx, qword [rsp + 0x120]
movabs rax, 0x95553662531176b3
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f71139a4f
sub rcx, rax
movabs rax, 0xf8f8cd9075596fed
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0xc7d654aee495c7e1
add rcx, rax
mov rdx, qword [0x14033e040]
add rcx, rdx
movabs rax, 0x5a91799f67298245
xor rcx, rax
movabs rax, 0x5f627dbcf9110228
sub rcx, rax
movabs rax, 0x5e3b3cce6ea797bc
xor rcx, rax
movabs rax, 0x3483ce3d1956a970
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94af792b814
mov rax, qword [0x14033e038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5086d47eb
mov rcx, qword [0x14033e030]
xor rcx, rax
movabs r11, 0xe0b56dad92237769
add r11, rdx
add r11, rcx
movabs rax, 0x70ffcfd7f540865c
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, rdi
imul rax, r10
xor edx, edx
div r11
mov r9, rdi
imul r9, qword [r13 + rdx*8]
imul r9, r10
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 + 0x70], r8
movabs rax, 0xca2818fa0e327479
mov rdx, r9
imul rdx, rax
add rdx, rcx
xor rdx, r8
xor rdx, qword [0x14033e060]
mov rax, r8
imul rax, qword [0x14033e070]
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 0x14022f1dc
sub eax, r15d
or eax, r14d
add eax, r15d
mov cl, al
ror rdx, cl
shr rdx, 8
mov qword [rsp + 0x68], 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, rdi
imul rax, r8
imul rax, r10
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 0x14022f271
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 + 0x68]
sub rdx, r9
xor rdx, rdi
movzx ecx, r9b
mov dword [rsp + 0x78], ecx
xor ecx, 6
and ecx, 0xf
and ecx, eax
jge 0x14022f2ae
sub ecx, r15d
or ecx, r14d
add ecx, r15d
rol rdx, cl
mov rax, r9
sub rax, qword [0x14033e078]
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 0x14022f62d
sub rax, 1
je 0x14022f506
sub rax, 1
je 0x14022f419
cmp rax, 1
jne 0x14022f6d1
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 0x14022f344
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 [0x14033e088]
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 + 0x68]
xor r10, rax
jmp 0x14022f6d1
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 0x14022f4d3
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 + 0x68]
and cl, bl
ror rax, cl
imul r10, rax
jmp 0x14022f6d1
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 rax, qword [rsp + 0x60]
mov cl, al
sub cl, dl
mov rdx, qword [rsp + 0x38]
imul rdx, qword [rsp + 0x48]
xor rdx, rdi
not rdx
shl rdx, cl
xor r8, rdx
mov ecx, dword [rsp + 0x78]
and ecx, 0x8000003f
jge 0x14022f56d
sub ecx, r15d
or ecx, r14d
add ecx, r15d
rol r8, cl
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 [0x14033e070]
sub r10, r9
mov rax, qword [rsp + 0x68]
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 + 0x68]
movzx eax, r11b
imul ecx, eax, 0xf0
and cl, bl
rol rdx, cl
not rdx
mov qword [rsp + 0x48], rdx
jmp 0x14022f6d1
xor edx, edx
mov rax, r8
div qword [rsp + 0x30]
mov rax, qword [rsp + 0x60]
imul rax, qword [0x14033e080]
mov r8, qword [r13 + rdx*8]
and r8, rax
mov rcx, qword [rsp + 0x70]
xor r8, rcx
and cl, bl
ror r8, cl
imul r8, r9
mov rcx, qword [rsp + 0x68]
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 [0x14033e060]
mov rdx, qword [0x14033e068]
sub rax, rdx
mov qword [rsp + 0x68], rax
mov al, cl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14022f6c1
sub ecx, r15d
or ecx, r14d
add ecx, r15d
mov rax, qword [rsp + 0x68]
ror rax, cl
add rax, r9
mov qword [rsp + 0x68], 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 + 0x68]
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 [0x14033e070]
imul rcx, rax
not rcx
movabs r8, 0x42891f82bfd1f7d1
mov rax, qword [0x14033e060]
xor rax, r8
and rcx, rax
ror rcx, 0x2c
shr rcx, 8
mov qword [rsp + 0x30], rcx
movabs rax, 0xa62f7cc2e19a24e8
mov r9, qword [0x14033e060]
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 0x14022f802
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 [0x14033e078]
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 0x14022fb51
sub rax, 1
je 0x14022fa59
sub rax, 1
je 0x14022f990
cmp rax, 1
jne 0x14022fbe7
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 [0x14033e088]
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 0x14022fbe7
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 0x14022fbe7
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 [0x14033e070]
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 0x14022fbe7
mov rcx, r8
imul rcx, qword [0x14033e080]
and rcx, qword [0x14033e078]
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 [0x14033e060], 0x273c23c
mov rdx, qword [0x14033e068]
sub rcx, rdx
mov qword [rsp + 0x30], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14022fbc8
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.1401b75dc
mov qword [0x14034c9c8], rax
mov qword [rsp + 0x128], r12
movabs rax, 0x1adae4c9868e3d4
mov qword [rsp + 0x128], rax
movabs rcx, 0xf33a52ba2f4f0c83
add rcx, qword [rsp + 0x128]
movabs rax, 0x31d53662530dc153
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb809a0c83dc
add rcx, rax
movabs rax, 0xf8f8cd94398e50fb
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x7d654b3ed48c371
add rcx, rax
mov rdx, qword [0x14033e040]
add rcx, rdx
movabs rax, 0x5a9179a3a20a4fc3
xor rcx, rax
movabs rax, 0x5f627dc3ef4a5036
sub rcx, rax
movabs rax, 0x7a3b3cd04974f477
xor rcx, rax
movabs rax, 0xb483ce40b4c07138
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94ae8bd3a86
mov rax, qword [0x14033e038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b51742c579
mov rcx, qword [0x14033e030]
xor rcx, rax
movabs rax, 0xe0b56d9ead9073db
add rdx, rax
add rdx, rcx
movabs rax, 0xed1dcf4ac005c756
xor rdx, rax
mov qword [rsp + 0x128], rdx
mov qword [rsp + 0x128], r12
mov qword [rsp + 0x130], r12
movabs rax, 0xe6b3cebd313b15a3
mov qword [rsp + 0x130], rax
movabs rcx, 0xf33a52a3ca01d103
add rcx, qword [rsp + 0x130]
movabs rax, 0xf655366252f75c06
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f22c39472
sub rcx, rax
movabs rax, 0xf8f8cdaaf870c169
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x47d654d253cb19b6
add rcx, rax
mov rdx, qword [0x14033e040]
add rcx, rdx
movabs rax, 0x5a9179bd2d9667a1
xor rcx, rax
movabs rax, 0x5f627de32796b9f4
sub rcx, rax
movabs rax, 0x563b3cdb7ccebca1
xor rcx, rax
movabs rax, 0x3483ce567d489017
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94a8f280598
mov rax, qword [0x14033e038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b570d7fa67
mov rcx, qword [0x14033e030]
xor rcx, rax
movabs r8, 0xe0b56d447f0448ed
add r8, rdx
add r8, rcx
movabs rax, 0x84936e53e138b028
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 [0x140316bd0]
movdqu xmmword [rsp + 0x318], xmm0
mov byte [rsp + 0x308], r12b
mov dword [rsp + 0xb8], 3
mov dword [rsp + 0x84], r12d
mov dword [rsp + 0x84], 0x4d388ac0
mov eax, dword [rsp + 0x84]
add eax, 0x56a738b5
xor eax, 0xce09e8ab
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x5a6984a8
xor eax, 0x2198c419
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xa5e09372
add eax, ecx
xor eax, 0x529bd5b
add eax, 0x4d2e90d7
xor eax, 0x5de7a39d
lea edx, [rcx + 0x727bae3a]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd95a9b36
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x26a564c9
add ecx, 0xdbce4551
add ecx, edx
xor ecx, 0x1a92f566
mov dword [rsp + 0x84], ecx
movsxd rax, ecx
mov dword [rsp + 0x84], r12d
cmp r8, rax
jbe 0x140230120
mov dword [rsp + 0x88], r12d
mov dword [rsp + 0x88], 0x3aafa1f2
mov eax, dword [rsp + 0x88]
add eax, 0x5dd41230
xor eax, 0xa784efd8
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x3480f4cb
xor eax, 0x2e4f3738
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x25a3323d
add eax, ecx
xor eax, 0xb0fa954b
sub eax, 0x2be26327
xor eax, 0xe78fd79
lea edx, [rcx - 0x377ef14f]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xc5774e9c
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x3a88b163
add ecx, 0x245e96a3
add ecx, edx
xor ecx, 0xf55d4254
mov dword [rsp + 0x88], ecx
movsxd rdx, ecx
imul rdx, r8
lea rcx, [rsp + 0x308]
call fcn.14001fa50
nop
mov dword [rsp + 0x88], r12d
mov rdi, r12
cmp qword [rsp + 0x4d8], r12
jbe 0x140230120
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.14000c0f4
mov dword [rsp + 0x8c], r12d
mov dword [rsp + 0x8c], 0xd29c49d5
mov eax, dword [rsp + 0x8c]
add eax, 0x143385b6
xor eax, 0x1b0aa638
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x5ca2298f
xor eax, 0x611645e4
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x2494a0ec
add eax, ecx
xor eax, 0x2cf5b586
add eax, 0x78d4394b
xor eax, 0x971b90bb
mov edx, dword [0x14033e030]
xor edx, 0x23af3395
sub edx, eax
mov eax, dword [0x14033e038]
xor eax, 0xdc50cc6a
sub edx, eax
sub edx, ecx
add edx, 0x1ad7b2b3
xor edx, 0x8e3617b2
mov dword [rsp + 0x8c], edx
movsxd rdx, edx
mov dl, byte [rsp + rdx + 0x4d8]
lea rcx, [rsp + 0x308]
call fcn.14000c0f4
nop
mov dword [rsp + 0x8c], r12d
add rdi, r15
cmp rdi, rsi
jb 0x14023001f
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.14001f630
nop
lea rcx, [rsp + 0x308]
call fcn.14000bb58
nop
mov qword [rsp + 0x130], r12
mov qword [rsp + 0x138], r12
movabs rax, 0x8c24c7ddceda02ce
mov qword [rsp + 0x138], rax
movabs rcx, 0xcc5ad43af4b2fba
add rcx, qword [rsp + 0x138]
movabs rax, 0x550b4fedad97414f
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x312ba68f0273708d
sub rcx, rax
movabs rax, 0x70745a093923d38
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x1829ab4e480e01a4
add rcx, rax
mov rdx, qword [0x14033e040]
add rcx, rdx
movabs rax, 0xa56e865ecc0eb79a
xor rcx, rax
movabs rax, 0x2b02fde3cd4ed976
sub rcx, rax
movabs rax, 0x53c4c330b52ae2fb
xor rcx, rax
movabs rax, 0x15ab4330f74432f6
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0xec3316b50ebd2b12
mov rax, qword [0x14033e038]
xor rax, rcx
sub rdx, rax
movabs rax, 0x13cce94af142d4ed
mov rcx, qword [0x14033e030]
xor rcx, rax
movabs rdi, 0x1f4a91329380b140
add rdi, rdx
add rdi, rcx
movabs rax, 0x5ee1ad58596fc7aa
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 [0x140316bd0]
movdqu xmmword [rsp + 0x338], xmm0
mov byte [rsp + 0x328], r12b
mov dword [rsp + 0xb8], 4
mov dword [rsp + 0x90], r12d
mov dword [rsp + 0x90], 0x4d388ac0
mov eax, dword [rsp + 0x90]
add eax, 0x56a738b5
xor eax, 0xce09e8ab
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x5a6984a8
xor eax, 0x2198c419
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xa5e09372
add eax, ecx
xor eax, 0x529bd5b
add eax, 0x4d2e90d7
xor eax, 0x5de7a39d
lea edx, [rcx + 0x727bae3a]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd95a9b36
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x26a564c9
add ecx, 0xdbce4551
add ecx, edx
xor ecx, 0x1a92f566
mov dword [rsp + 0x90], ecx
movsxd rax, ecx
mov dword [rsp + 0x90], r12d
cmp rdi, rax
jbe 0x140230518
mov dword [rsp + 0x94], r12d
mov dword [rsp + 0x94], 0x3aafa1f2
mov eax, dword [rsp + 0x94]
add eax, 0x5dd41230
xor eax, 0xa784efd8
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x3480f4cb
xor eax, 0x2e4f3738
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x25a3323d
add eax, ecx
xor eax, 0xb0fa954b
sub eax, 0x2be26327
xor eax, 0xe78fd79
lea edx, [rcx - 0x377ef14f]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xc5774e9c
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x3a88b163
add ecx, 0x245e96a3
add ecx, edx
xor ecx, 0xf55d4254
mov dword [rsp + 0x94], ecx
movsxd rdx, ecx
imul rdx, rdi
lea rcx, [rsp + 0x328]
call fcn.14001fa50
nop
mov dword [rsp + 0x94], r12d
test rdi, rdi
je 0x140230518
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.14000c0f4
mov dword [rsp + 0x98], r12d
mov dword [rsp + 0x98], 0xd29c49d5
mov eax, dword [rsp + 0x98]
add eax, 0x143385b6
xor eax, 0x1b0aa638
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x5ca2298f
xor eax, 0x611645e4
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x2494a0ec
add eax, ecx
xor eax, 0x2cf5b586
add eax, 0x78d4394b
xor eax, 0x971b90bb
mov edx, dword [0x14033e030]
xor edx, 0x23af3395
sub edx, eax
mov eax, dword [0x14033e038]
xor eax, 0xdc50cc6a
sub edx, eax
sub edx, ecx
add edx, 0x1ad7b2b3
xor edx, 0x8e3617b2
mov dword [rsp + 0x98], edx
movsxd rdx, edx
mov dl, byte [rsp + rdx + 0x4d8]
lea rcx, [rsp + 0x328]
call fcn.14000c0f4
nop
mov dword [rsp + 0x98], r12d
add r13, r15
cmp r13, rdi
jb 0x140230419
lea r13, [0x14033e060]
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.14001f630
nop
lea rcx, [rsp + 0x328]
call fcn.14000bb58
nop
mov qword [rsp + 0x138], r12
movabs rax, 0xf60eafe660000000
movabs r9, 0x369e1a1a61293de9
mov r11, qword [0x14033e070]
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 [0x14033e060]
mov rax, r8
imul rax, qword [0x14033e070]
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 0x1402306c8
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 0x14023071a
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 [0x14033e078]
xor r9, rax
xor r9, r8
xor r9, r11
mov rax, r9
and rax, r15
je 0x140230ace
sub rax, 1
je 0x140230967
sub rax, 1
je 0x14023086f
cmp rax, 1
jne 0x140230b7f
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 [0x14033e088]
add rdx, rcx
movabs rax, 0xc9e3609dab146689
xor rdx, rax
movzx eax, r9b
movzx ecx, r14b
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 0x140230b93
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 0x140230b89
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 0x1402309cf
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 [0x14033e070]
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 0x140230b89
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 [0x14033e080]
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 [0x14033e060], 0xffffffffd0df3dcc
mov rdx, qword [0x14033e068]
sub rbx, rdx
mov al, r11b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140230b65
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.1401b8164
mov qword [0x14034c9b8], rax
lea rcx, [rsp + 0x2d0]
call fcn.1400c2b3c
xor r8d, r8d
mov byte [rsp + 0x4d8], r8b
lea rdx, [rsp + 0x2e8]
lea rcx, [rsp + 0x348]
call fcn.1401b634c
nop
lea rcx, [rsp + 0x368]
call fcn.1400822cc
nop
lea rdx, [rsp + 0x388]
mov rcx, rax
call fcn.140237d0c
nop
lea rdx, [rsp + 0x3a8]
mov rcx, rax
call fcn.140237d0c
nop
lea rcx, [rsp + 0x388]
call fcn.140052e0c
nop
lea rcx, [rsp + 0x368]
call fcn.140052e0c
xor eax, eax
mov byte [rsp + 0x4d8], al
lea rdx, [rsp + 0x448]
lea rcx, [rsp + 0x4d8]
call fcn.1401e0ca0
mov r13, rax
mov qword [rsp + 0x4d8], rax
mov r14, r12
mov r12d, 0x6afe
xor edx, edx
mov rax, r14
movabs rcx, 0x13cce94adbce3bb0
div rcx
lea esi, [rdx + 0x37]
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 [0x14033e058]
sub r9w, word [0x14033e050]
add r9w, si
add r9w, bx
sub r9w, cx
mov eax, 0x6fc1
add r9w, ax
lea eax, [rsi + rdi]
mov ecx, 0x2d07
add ax, cx
xor r9w, ax
sub r9w, r8w
sub r9w, si
sub r9w, word [0x14033e048]
add r9w, di
mov rcx, qword [0x14033e040]
add r9w, cx
add r9w, r10w
movzx eax, si
ror ax, 3
sub r9w, ax
sub r9w, 0x50
movzx eax, di
sub ax, r8w
add ax, si
add ax, dx
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 [0x14033e030]
sub dx, r9w
movzx eax, r11w
xor ax, word [0x14033e038]
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, r11w
movzx ecx, si
imul ecx, eax
xor cx, dx
mov word [r13 + r14*2], cx
add r14, r15
cmp r14, 0x1e
jb 0x140230c9b
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.1401b62f0
nop
lea r8, [rsp + 0x3c8]
lea rdx, [rsp + 0x3a8]
lea rcx, [rsp + 0x3e8]
call fcn.14006a1f8
lea ebx, [r12 + 8]
mov dword [rsp + 0xb8], ebx
lea rcx, [rsp + 0x3c8]
call fcn.140052e0c
nop
mov rcx, qword [rsp + 0x268]
test rcx, rcx
je 0x140230f01
mov eax, r12d
cmp qword [rsp + 0x270], r12
jbe 0x140230f01
mov byte [rax + rcx], r12b
add rax, r15
cmp rax, qword [rsp + 0x270]
jae 0x140230f01
mov rcx, qword [rsp + 0x268]
jmp 0x140230ee6
lea rcx, [rsp + 0x3a8]
call fcn.140052e0c
lea r8, [rsp + 0x348]
lea rdx, [rsp + 0x3e8]
lea rcx, [rsp + 0x408]
call fcn.14006a1f8
nop
and ebx, 0xfffffff7
mov dword [rsp + 0xb8], ebx
lea rcx, [rsp + 0x3e8]
call fcn.140052e0c
nop
lea rcx, [rsp + 0x348]
call fcn.140052e0c
and ebx, 0xfffffffe
mov dword [rsp + 0xb8], ebx
lea rcx, [rsp + 0x2e8]
call fcn.14000bb58
nop
mov rcx, qword [rsp + 0x258]
test rcx, rcx
je 0x140230f9e
mov rax, r12
cmp qword [rsp + 0x260], r12
jbe 0x140230f9e
mov byte [rax + rcx], r12b
add rax, r15
cmp rax, qword [rsp + 0x260]
jae 0x140230f9e
mov rcx, qword [rsp + 0x258]
jmp 0x140230f83
mov qword [rsp + 0x60], r12
mov dword [rsp + 0x9c], r12d
mov dword [rsp + 0x9c], 0xd52dfc69
mov eax, dword [rsp + 0x9c]
add eax, 0x1b0c736
xor eax, 0x5c8a93b5
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x23955eac
xor eax, 0x73e30f5e
sub eax, dword [0x14033e048]
mov rdx, qword [0x14033e040]
add eax, 0xfdb51a83
add eax, edx
xor eax, 0x4212d6d0
add eax, 0x735543c9
xor eax, 0x945d8411
mov ebx, dword [0x14033e030]
xor ebx, 0x23f93e8f
sub ebx, eax
mov eax, dword [0x14033e038]
xor eax, 0xdc06c170
sub ebx, eax
sub ebx, edx
add ebx, 0x3e41826f
xor ebx, 0x8f2d90
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], 0x3b73cc93
mov eax, 0xf436
mov word [rsp + 0x114], ax
mov r13, r12
mov ebx, 0x6fc1
mov r12d, 0x6afe
xor edx, edx
mov rax, r13
movabs rcx, 0x13cce94adbce3bb0
div rcx
lea r14d, [rdx + 0x37]
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 [0x14033e058]
sub r9w, word [0x14033e050]
add r9w, di
add r9w, r14w
sub r9w, cx
add r9w, bx
lea eax, [rsi + r14]
mov ecx, 0x2d07
add ax, cx
xor r9w, ax
sub r9w, word [0x14033e048]
sub r9w, r14w
sub r9w, r8w
mov rcx, qword [0x14033e040]
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 [0x14033e030]
sub dx, r9w
mov eax, 0x7100
add eax, r14d
mov r8d, 0x2440
xor ax, r8w
sub dx, ax
movzx eax, r11w
xor ax, word [0x14033e038]
sub dx, ax
mov eax, 0x9d7
add eax, r14d
add ax, ax
add dx, ax
sub dx, di
sub dx, cx
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 0x140231071
mov rbx, qword [rsp + 0x40]
xor r12d, r12d
lea r13, [0x14033e060]
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.14006a1a8
mov qword [rsp + 0x30], rax
cmp qword [rax + 0x18], 7
jbe 0x140231297
mov rax, qword [rax]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x140], r12
movabs rax, 0x971194003ddfa6c8
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], r12
movabs rax, 0x5a7c49d4f2d36d01
mov qword [rsp + 0x148], rax
movabs rcx, 0xf33a52b6a4557803
add rcx, qword [rsp + 0x148]
movabs rax, 0x9d553662530a365a
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f5b528f67
sub rcx, rax
movabs rax, 0xf8f8cd97d2b3cbcd
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0xc7d654b8bc6e8c85
add rcx, rax
mov rsi, qword [0x14033e040]
add rcx, rsi
movabs rax, 0x5a9179a7ac8efd25
xor rcx, rax
movabs rax, 0x5f627dc6de33d048
sub rcx, rax
movabs rax, 0x1e3b3cd20f0e1684
xor rcx, rax
movabs rdx, 0x3483ce4426ed32a8
add rdx, rcx
add rdx, rsi
not rdx
movabs rcx, 0x13cce94ada915434
mov r10, qword [0x14033e038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5256eabcb
mov rdi, qword [0x14033e030]
mov rcx, rdi
xor rcx, rax
movabs rax, 0xe0b56d9013bdfb89
add rdx, rax
add rdx, rcx
movabs rax, 0x5f6beabc16d4813c
xor rdx, rax
mov qword [rsp + 0x148], rdx
movabs rcx, 0xf33a52b6070e9b83
add rcx, qword [rsp + 0x140]
movabs rax, 0xc0d5366253099913
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a685452f
add rcx, rax
movabs rax, 0xf8f8cd98726fc3bf
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x87d654b991ec3cd5
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85ff3d0a7
xor rcx, rax
movabs rax, 0x5f627dc6ccb972b2
sub rcx, rax
movabs rax, 0x23b3cd25db66efb
xor rcx, rax
movabs rax, 0xb483ce44bfe71f21
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad81c38c2
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527e3c73d
xor rdi, rax
movabs rax, 0xe0b56d8dbc2ba597
add rcx, rax
add rcx, rdi
movabs rax, 0xa4f17fa950de543a
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 0x14023176d
mov esi, r12d
mov eax, 0x30c2d282
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 0x140231545
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0xdafd07a6
jmp 0x140231537
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 0x140231511
cmp r10d, esi
jne 0x1402316af
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 0x1402316af
mov r14d, dword [rdi + 0x18]
test r14d, r14d
je 0x1402316af
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, 0xdafd07a6
mov r9b, byte [rbx]
add rbx, r15
mov r10d, 0x4764996c
test r9b, r9b
je 0x1402315ee
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 0x1402315af
mov dword [rsp + 0x70], r11d
mov r11, qword [rax + 0x30]
mov edx, dword [rsp + 0x70]
mov r8d, dword [rsp + 0x4d8]
cmp edx, r8d
je 0x140231601
test r14d, r14d
mov r9d, dword [rdi + 0x20]
jne 0x140231580
jmp 0x1402316af
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 0x1402316b7
lea rax, [rdi + rcx]
cmp r8, rax
jae 0x1402316b7
mov eax, 0xdafd07a6
mov esi, eax
mov r11d, eax
mov dword [rsp + 0x4d8], eax
jmp 0x140231661
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r10d
mov eax, esi
xor eax, ecx
mov esi, edx
imul esi, eax
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x140231647
add r8, r15
mov al, byte [r8]
test al, al
je 0x14023169e
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r10d
mov eax, r11d
xor eax, ecx
mov r11d, edx
imul r11d, eax
add r8, r15
mov al, byte [r8]
test al, al
jne 0x140231672
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 0x1402314e5
mov rcx, qword [rsp + 0x60]
call r8
mov dword [rsp + 0xa0], r12d
mov dword [rsp + 0xa0], 0xcfaa3248
mov eax, dword [rsp + 0xa0]
add eax, 0x2ea89cb4
xor eax, 0x3208c0ad
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x56f188d4
xor eax, 0x4e375a8a
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x37aab036
add eax, ecx
xor eax, 0x56c8274c
sub eax, 0x4f07a5a
xor eax, 0xd1f03193
lea edx, [rcx - 0x6d9dac09]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd4baa0c6
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x2b455f39
add ecx, 0x56f3d25c
add ecx, edx
xor ecx, 0x36954616
mov dword [rsp + 0xa0], ecx
movsxd rax, ecx
mov qword [rsp + 0x60], rax
mov dword [rsp + 0xa0], r12d
lea r13, [0x14033e060]
jmp 0x140231775
mov dword [rsp + 0x78], 0x30c2d282
mov edi, r12d
mov dword [rsp + 0x70], 0x346dfd14
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 0x1402317eb
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0xa4eb792
jmp 0x1402317dd
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 0x1402317bd
cmp r9d, edi
jne 0x1402318ab
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 0x1402318ab
mov esi, dword [rbx + 0x18]
test esi, esi
je 0x1402318ab
mov r9d, dword [rbx + 0x20]
mov r8d, dword [rsp + 0x70]
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, 0xa4eb792
mov r9b, byte [r11]
mov byte [rsp + 0x4d8], r9b
add r11, r15
mov r14d, 0x31
test r9b, r9b
mov r9d, 0x4764996c
je 0x14023189a
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 0x140231863
mov dword [rsp + 0x68], r10d
mov r10, qword [rax + 0x30]
mov edx, dword [rsp + 0x68]
mov r8d, dword [rsp + 0x70]
cmp edx, r8d
je 0x1402318b3
test esi, esi
mov r9d, dword [rbx + 0x20]
jne 0x140231821
mov rax, qword [rax]
jmp 0x140231791
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 0x14023195a
lea rax, [rbx + rcx]
cmp r8, rax
jae 0x14023195a
mov edi, 0xa4eb792
mov r10d, edi
mov dword [rsp + 0x70], edi
jmp 0x14023190a
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, r14d
xor edx, r9d
mov eax, edi
xor eax, ecx
mov edi, edx
imul edi, eax
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x1402318f0
add r8, r15
mov al, byte [r8]
test al, al
je 0x140231944
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, r14d
xor edx, r9d
mov eax, r10d
xor eax, ecx
mov r10d, edx
imul r10d, eax
add r8, r15
mov al, byte [r8]
test al, al
jne 0x14023191b
mov dword [rsp + 0x70], r10d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x1402318ab
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, 0x971194003ddfa6c8
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], r12
movabs rax, 0x5a7c49d4f2d36d01
mov qword [rsp + 0x158], rax
movabs rcx, 0xf33a52b6a4557803
add rcx, qword [rsp + 0x158]
movabs rax, 0x9d553662530a365a
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f5b528f67
sub rcx, rax
movabs rax, 0xf8f8cd97d2b3cbcd
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0xc7d654b8bc6e8c85
add rcx, rax
mov rsi, qword [0x14033e040]
add rcx, rsi
movabs rax, 0x5a9179a7ac8efd25
xor rcx, rax
movabs rax, 0x5f627dc6de33d048
sub rcx, rax
movabs rax, 0x1e3b3cd20f0e1684
xor rcx, rax
movabs rdx, 0x3483ce4426ed32a8
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033e038]
mov rax, r10
movabs rcx, 0x13cce94ada915434
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033e030]
mov rcx, r11
movabs rax, 0xec3316b5256eabcb
xor rcx, rax
movabs rax, 0xe0b56d9013bdfb89
add rdx, rax
add rdx, rcx
movabs rax, 0x5f6beabc16d4813c
xor rdx, rax
mov qword [rsp + 0x158], rdx
movabs rcx, 0xf33a52b6070e9b83
add rcx, qword [rsp + 0x150]
movabs rax, 0xc0d5366253099913
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a685452f
add rcx, rax
movabs rax, 0xf8f8cd98726fc3bf
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x87d654b991ec3cd5
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85ff3d0a7
xor rcx, rax
movabs rax, 0x5f627dc6ccb972b2
sub rcx, rax
movabs rax, 0x23b3cd25db66efb
xor rcx, rax
movabs rax, 0xb483ce44bfe71f21
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad81c38c2
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527e3c73d
xor r11, rax
movabs rax, 0xe0b56d8dbc2ba597
add rcx, rax
add rcx, r11
movabs rax, 0xa4f17fa950de543a
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.140052e0c
nop
mov rcx, qword [rsp + 0x278]
test rcx, rcx
je 0x140231bcf
mov rax, r12
cmp qword [rsp + 0x280], r12
jbe 0x140231bcf
mov byte [rax + rcx], r12b
add rax, r15
cmp rax, qword [rsp + 0x280]
jae 0x140231bcf
mov rcx, qword [rsp + 0x278]
jmp 0x140231bb4
test dil, dil
je 0x140235a57
mov qword [rsp + 0x160], r12
movabs r14, 0x971194003ddfa6c8
mov qword [rsp + 0x160], r14
mov qword [rsp + 0x168], r12
movabs rax, 0x5a7c49d4f2d36d01
mov qword [rsp + 0x168], rax
movabs rcx, 0xf33a52b6a4557803
add rcx, qword [rsp + 0x168]
movabs rax, 0x9d553662530a365a
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f5b528f67
sub rcx, rax
movabs rax, 0xf8f8cd97d2b3cbcd
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0xc7d654b8bc6e8c85
add rcx, rax
mov rsi, qword [0x14033e040]
add rcx, rsi
movabs rax, 0x5a9179a7ac8efd25
xor rcx, rax
movabs rax, 0x5f627dc6de33d048
sub rcx, rax
movabs rax, 0x1e3b3cd20f0e1684
xor rcx, rax
movabs rdx, 0x3483ce4426ed32a8
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033e038]
mov rax, r10
movabs rcx, 0x13cce94ada915434
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033e030]
mov rcx, r11
movabs rax, 0xec3316b5256eabcb
xor rcx, rax
movabs rax, 0xe0b56d9013bdfb89
add rdx, rax
add rdx, rcx
movabs rax, 0x5f6beabc16d4813c
xor rdx, rax
mov qword [rsp + 0x168], rdx
movabs rcx, 0xf33a52b6070e9b83
add rcx, qword [rsp + 0x160]
movabs rax, 0xc0d5366253099913
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a685452f
add rcx, rax
movabs rax, 0xf8f8cd98726fc3bf
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x87d654b991ec3cd5
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85ff3d0a7
xor rcx, rax
movabs rax, 0x5f627dc6ccb972b2
sub rcx, rax
movabs rax, 0x23b3cd25db66efb
xor rcx, rax
movabs rax, 0xb483ce44bfe71f21
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad81c38c2
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527e3c73d
xor r11, rax
movabs rax, 0xe0b56d8dbc2ba597
add rcx, rax
add rcx, r11
movabs rax, 0xa4f17fa950de543a
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 0x140231ea0
mov dword [rsp + 0xa4], r12d
mov dword [rsp + 0xa4], 0xf7e2fb03
mov eax, dword [rsp + 0xa4]
add eax, 0xa99ea435
xor eax, 0x398a3ba3
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x249d9515
xor eax, 0xcd557aeb
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xf541b906
add eax, ecx
xor eax, 0xa68786bd
add eax, 0x25b05375
xor eax, 0xd8695622
mov edx, dword [0x14033e030]
xor edx, 0x2559871b
sub edx, eax
mov eax, dword [0x14033e038]
xor eax, 0xdaa678e4
sub edx, eax
sub edx, ecx
sub edx, 0x78d0fe2b
xor edx, 0xd492fc0c
mov dword [rsp + 0xa4], edx
mov dword [rsp + 0xa4], r12d
movabs r14, 0xaaaaaaaaaaaaaaab
jmp 0x140233346
mov qword [rsp + 0x170], r12
mov qword [rsp + 0x170], r14
mov qword [rsp + 0x178], r12
movabs rax, 0x5a7c49d4f2d36d01
mov qword [rsp + 0x178], rax
movabs rcx, 0xf33a52b6a4557803
add rcx, qword [rsp + 0x178]
movabs rax, 0x9d553662530a365a
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f5b528f67
sub rcx, rax
movabs rax, 0xf8f8cd97d2b3cbcd
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0xc7d654b8bc6e8c85
add rcx, rax
mov rsi, qword [0x14033e040]
add rcx, rsi
movabs rax, 0x5a9179a7ac8efd25
xor rcx, rax
movabs rax, 0x5f627dc6de33d048
sub rcx, rax
movabs rax, 0x1e3b3cd20f0e1684
xor rcx, rax
movabs rdx, 0x3483ce4426ed32a8
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033e038]
mov rax, r10
movabs rcx, 0x13cce94ada915434
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033e030]
mov rcx, r11
movabs rax, 0xec3316b5256eabcb
xor rcx, rax
movabs rax, 0xe0b56d9013bdfb89
add rdx, rax
add rdx, rcx
movabs rax, 0x5f6beabc16d4813c
xor rdx, rax
mov qword [rsp + 0x178], rdx
movabs rcx, 0xf33a52b6070e9b83
add rcx, qword [rsp + 0x170]
movabs rax, 0xc0d5366253099913
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a685452f
add rcx, rax
movabs rax, 0xf8f8cd98726fc3bf
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x87d654b991ec3cd5
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85ff3d0a7
xor rcx, rax
movabs rax, 0x5f627dc6ccb972b2
sub rcx, rax
movabs rax, 0x23b3cd25db66efb
xor rcx, rax
movabs rax, 0xb483ce44bfe71f21
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad81c38c2
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527e3c73d
xor r11, rax
movabs rax, 0xe0b56d8dbc2ba597
add rcx, rax
add rcx, r11
movabs rax, 0xa4f17fa950de543a
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 0x140232172
mov dword [rsp + 0xa8], r12d
mov dword [rsp + 0xa8], 0x63de667f
mov eax, dword [rsp + 0xa8]
add eax, 0x54b678b5
xor eax, 0xe09e6bb
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x5a63b268
xor eax, 0x23914719
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xa882e012
add eax, ecx
xor eax, 0x760585b
add eax, 0x49b0e3d7
xor eax, 0x5ee01323
lea edx, [rcx + 0x745ed8fa]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd952d836
sub edx, eax
mov eax, dword [0x14033e030]
xor eax, 0x26ad27c9
add eax, 0xd4037a51
add eax, edx
xor eax, 0x6179fc66
mov dword [rsp + 0x4d8], eax
mov dword [rsp + 0xa8], eax
mov dword [rsp + 0xa8], r12d
mov dword [rsp + 0x70], 0x2bd70f0e
movabs r14, 0xaaaaaaaaaaaaaaab
jmp 0x140232370
mov edi, r12d
mov eax, 0x2bd70f0e
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x68], 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 0x1402321f7
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x23633cf2
jmp 0x1402321e9
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 0x1402321c9
cmp r9d, edi
jne 0x1402322ad
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 0x1402322ad
mov esi, dword [rbx + 0x18]
test esi, esi
je 0x1402322ad
mov r9d, dword [rbx + 0x20]
mov r8d, dword [rsp + 0x68]
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, 0x23633cf2
mov r9b, byte [r11]
mov byte [rsp + 0x4d8], r9b
add r11, r15
test r9b, r9b
mov r9d, 0x4764996c
je 0x1402322a0
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 0x140232269
mov dword [rsp + 0x58], r10d
mov r10, qword [rax + 0x30]
mov edx, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x68]
cmp edx, r8d
je 0x1402322b5
test esi, esi
mov r9d, dword [rbx + 0x20]
jne 0x14023222d
mov rax, qword [rax]
jmp 0x14023219d
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 0x14023235e
lea rax, [rbx + rcx]
cmp r8, rax
jae 0x14023235e
mov eax, 0x23633cf2
mov edi, eax
mov r10d, eax
mov dword [rsp + 0x68], eax
jmp 0x14023230e
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r9d
mov eax, edi
xor eax, ecx
mov edi, edx
imul edi, eax
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x1402322f4
add r8, r15
mov al, byte [r8]
test al, al
je 0x140232348
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r9d
mov eax, r10d
xor eax, ecx
mov r10d, edx
imul r10d, eax
add r8, r15
mov al, byte [r8]
test al, al
jne 0x14023231f
mov dword [rsp + 0x68], r10d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x1402322ad
mov rbx, qword [rsp + 0x60]
mov rcx, rbx
call r8
mov dword [rsp + 0x4d8], eax
mov dword [rsp + 0xb4], r12d
mov dword [rsp + 0xb4], 0xac4e7faf
mov eax, dword [rsp + 0xb4]
add eax, 0x5cc95135
xor eax, 0xe689eecd
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x2584150e
xor eax, 0x1b5e2337
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xdd8d4b31
add eax, ecx
xor eax, 0xfe2ad969
add eax, 0x4fddc821
xor eax, 0x96d6664c
lea edx, [rcx - 0x137b7b9b]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd9732398
sub edx, eax
mov eax, dword [0x14033e030]
xor eax, 0x268cdc67
add eax, 0xf42f2fb3
add eax, edx
xor eax, 0x7709f228
mov dword [rsp + 0x58], eax
mov dword [rsp + 0xb4], eax
mov dword [rsp + 0xac], r12d
mov dword [rsp + 0xac], 0x67a7f555
mov eax, dword [rsp + 0xac]
add eax, 0x6b08
xor eax, 0x5cda30
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x533e120d
xor eax, 0x2c797fea
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xd244c259
add eax, ecx
xor eax, 0xdadf52e2
add eax, 0x70ff9505
xor eax, 0xf6a37e50
lea edx, [rcx + 0xdbd1b28]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0x2520ad12
sub edx, eax
mov eax, dword [0x14033e030]
xor eax, 0xdadf52ed
add eax, 0xccf91879
add eax, edx
xor eax, 0xed5dfdaa
mov dword [rsp + 0x68], eax
mov dword [rsp + 0xac], eax
mov qword [rsp + 0x180], r12
movabs rax, 0x971194003ddfa6c8
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x188], r12
movabs rax, 0x5a7c49d4f2d36d01
mov qword [rsp + 0x188], rax
movabs rcx, 0xf33a52b6a4557803
add rcx, qword [rsp + 0x188]
movabs rax, 0x9d553662530a365a
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f5b528f67
sub rcx, rax
movabs rax, 0xf8f8cd97d2b3cbcd
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0xc7d654b8bc6e8c85
add rcx, rax
mov rsi, qword [0x14033e040]
add rcx, rsi
movabs rax, 0x5a9179a7ac8efd25
xor rcx, rax
movabs rax, 0x5f627dc6de33d048
sub rcx, rax
movabs rax, 0x1e3b3cd20f0e1684
xor rcx, rax
movabs rdx, 0x3483ce4426ed32a8
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033e038]
mov rax, r10
movabs rcx, 0x13cce94ada915434
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033e030]
mov rcx, r11
movabs rax, 0xec3316b5256eabcb
xor rcx, rax
movabs rax, 0xe0b56d9013bdfb89
add rdx, rax
add rdx, rcx
movabs rax, 0x5f6beabc16d4813c
xor rdx, rax
mov qword [rsp + 0x188], rdx
movabs rcx, 0xf33a52b6070e9b83
add rcx, qword [rsp + 0x180]
movabs rax, 0xc0d5366253099913
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a685452f
add rcx, rax
movabs rax, 0xf8f8cd98726fc3bf
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x87d654b991ec3cd5
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85ff3d0a7
xor rcx, rax
movabs rax, 0x5f627dc6ccb972b2
sub rcx, rax
movabs rax, 0x23b3cd25db66efb
xor rcx, rax
movabs rax, 0xb483ce44bfe71f21
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad81c38c2
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527e3c73d
xor r11, rax
movabs rax, 0xe0b56d8dbc2ba597
add rcx, rax
add rcx, r11
movabs rax, 0xa4f17fa950de543a
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 0x14023276a
mov dword [rsp + 0xb0], r12d
mov dword [rsp + 0xb0], 0xae25c78
mov eax, dword [rsp + 0xb0]
add eax, 0x2bed94b5
xor eax, 0x2a09bdf2
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x59e957bc
xor eax, 0x4cfd4ea9
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xdfdf9190
add eax, ecx
xor eax, 0x35e57c6b
add eax, 0x3e4b43c7
xor eax, 0x9345cb6a
lea edx, [rcx - 0x63f5c142]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd8afb4a6
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x27504b59
add ecx, 0x2ffb0ec0
add ecx, edx
xor ecx, 0x8ce26fb6
mov dword [rsp + 0xb0], ecx
mov dword [rsp + 0xb0], r12d
mov dword [rsp + 0x48], 0xfdee4186
jmp 0x140232959
mov esi, r12d
mov eax, 0xfdee4186
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 0x1402327eb
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x16039a24
jmp 0x1402327dd
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 0x1402327b7
cmp r10d, esi
jne 0x14023289d
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 0x14023289d
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x14023289d
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, 0x16039a24
mov r9b, byte [rbx]
add rbx, r15
mov r10d, 0x4764996c
test r9b, r9b
je 0x14023288e
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 0x140232852
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 0x1402328a5
test r8d, r8d
mov r9d, dword [rdi + 0x20]
jne 0x14023281e
mov rax, qword [rax]
jmp 0x14023278b
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 0x140232944
lea rax, [rcx + rdi]
cmp r9, rax
jae 0x140232944
mov esi, 0x16039a24
mov r11d, esi
mov dword [rsp + 0x38], esi
jmp 0x1402328f6
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 0x1402328de
add r9, r15
mov al, byte [r9]
test al, al
je 0x14023292e
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 0x140232907
mov dword [rsp + 0x38], r11d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14023289d
mov r8d, dword [rsp + 0x58]
mov edx, dword [rsp + 0x68]
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, 0x971194003ddfa6c8
mov qword [rsp + 0x198], rax
mov qword [rsp + 0x1a0], r12
movabs rax, 0x5a7c49d4f2d36d01
mov qword [rsp + 0x1a0], rax
movabs rcx, 0xf33a52b6a4557803
add rcx, qword [rsp + 0x1a0]
movabs rax, 0x9d553662530a365a
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f5b528f67
sub rcx, rax
movabs rax, 0xf8f8cd97d2b3cbcd
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0xc7d654b8bc6e8c85
add rcx, rax
mov rsi, qword [0x14033e040]
add rcx, rsi
movabs rax, 0x5a9179a7ac8efd25
xor rcx, rax
movabs rax, 0x5f627dc6de33d048
sub rcx, rax
movabs rax, 0x1e3b3cd20f0e1684
xor rcx, rax
movabs rdx, 0x3483ce4426ed32a8
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033e038]
mov rax, r10
movabs rcx, 0x13cce94ada915434
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033e030]
mov rcx, r11
movabs rax, 0xec3316b5256eabcb
xor rcx, rax
movabs rax, 0xe0b56d9013bdfb89
add rdx, rax
add rdx, rcx
movabs rax, 0x5f6beabc16d4813c
xor rdx, rax
mov qword [rsp + 0x1a0], rdx
movabs rcx, 0xf33a52b6070e9b83
add rcx, qword [rsp + 0x198]
movabs rax, 0xc0d5366253099913
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a685452f
add rcx, rax
movabs rax, 0xf8f8cd98726fc3bf
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x87d654b991ec3cd5
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85ff3d0a7
xor rcx, rax
movabs rax, 0x5f627dc6ccb972b2
sub rcx, rax
movabs rax, 0x23b3cd25db66efb
xor rcx, rax
movabs rax, 0xb483ce44bfe71f21
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad81c38c2
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527e3c73d
xor r11, rax
movabs rax, 0xe0b56d8dbc2ba597
add rcx, rax
add rcx, r11
movabs rax, 0xa4f17fa950de543a
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 0x140232c30
mov dword [rsp + 0xbc], r12d
mov dword [rsp + 0xbc], 0x63de667f
mov eax, dword [rsp + 0xbc]
add eax, 0x54b678b5
xor eax, 0xe09e6bb
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x5a63b268
xor eax, 0x23914719
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xa882e012
add eax, ecx
xor eax, 0x760585b
add eax, 0x49b0e3d7
xor eax, 0x5ee01323
lea edx, [rcx + 0x745ed8fa]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd952d836
sub edx, eax
mov eax, dword [0x14033e030]
xor eax, 0x26ad27c9
add eax, 0xd4037a51
add eax, edx
xor eax, 0x6179fc66
mov dword [rsp + 0x40], eax
mov dword [rsp + 0xbc], eax
mov dword [rsp + 0xbc], r12d
jmp 0x140232e16
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 0x140232ca4
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x23633cf2
jmp 0x140232c96
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 0x140232c70
cmp r10d, esi
jne 0x140232d56
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 0x140232d56
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x140232d56
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, 0x23633cf2
mov r9b, byte [rbx]
add rbx, r15
mov r10d, 0x4764996c
test r9b, r9b
je 0x140232d47
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 0x140232d0b
mov dword [rsp + 0x30], r11d
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0x40]
mov edx, dword [rsp + 0x30]
cmp edx, dword [rsp + 0x70]
je 0x140232d5e
test r8d, r8d
mov r9d, dword [rdi + 0x20]
jne 0x140232cd7
mov rax, qword [rax]
jmp 0x140232c44
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 0x140232e07
lea rax, [rdi + rcx]
cmp r8, rax
jae 0x140232e07
mov eax, 0x23633cf2
mov esi, eax
mov r9d, eax
mov dword [rsp + 0x70], eax
jmp 0x140232db7
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r10d
mov eax, esi
xor eax, ecx
mov esi, edx
imul esi, eax
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x140232d9d
add r8, r15
mov al, byte [r8]
test al, al
je 0x140232df1
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r10d
mov eax, r9d
xor eax, ecx
mov r9d, edx
imul r9d, eax
add r8, r15
mov al, byte [r8]
test al, al
jne 0x140232dc8
mov dword [rsp + 0x70], r9d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x140232d56
mov rbx, qword [rsp + 0x60]
mov rcx, rbx
call r8
mov dword [rsp + 0x40], eax
mov dword [rsp + 0xc0], r12d
mov dword [rsp + 0xc0], 0x3ffd4b00
mov eax, dword [rsp + 0xc0]
add eax, 0xaf988cb5
xor eax, 0x220a419d
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x5b7458a4
xor eax, 0xc743aac9
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x2d24fdec
add eax, ecx
xor eax, 0x9fb6798b
add eax, 0x1ec7b9e7
xor eax, 0x916c3212
mov edx, dword [0x14033e030]
xor edx, 0x25419f79
sub edx, eax
mov eax, dword [0x14033e038]
xor eax, 0xdabe6086
sub edx, eax
sub edx, ecx
add edx, 0x24bc5f1b
xor edx, 0x81f4d956
mov dword [rsp + 0x30], edx
mov dword [rsp + 0xc0], edx
mov qword [rsp + 0x1a8], r12
movabs rax, 0x971194003ddfa6c8
mov qword [rsp + 0x1a8], rax
mov qword [rsp + 0x1b0], r12
movabs rax, 0x5a7c49d4f2d36d01
mov qword [rsp + 0x1b0], rax
movabs rcx, 0xf33a52b6a4557803
add rcx, qword [rsp + 0x1b0]
movabs rax, 0x9d553662530a365a
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f5b528f67
sub rcx, rax
movabs rax, 0xf8f8cd97d2b3cbcd
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0xc7d654b8bc6e8c85
add rcx, rax
mov rsi, qword [0x14033e040]
add rcx, rsi
movabs rax, 0x5a9179a7ac8efd25
xor rcx, rax
movabs rax, 0x5f627dc6de33d048
sub rcx, rax
movabs rax, 0x1e3b3cd20f0e1684
xor rcx, rax
movabs rdx, 0x3483ce4426ed32a8
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033e038]
mov rax, r10
movabs rcx, 0x13cce94ada915434
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033e030]
mov rcx, r11
movabs rax, 0xec3316b5256eabcb
xor rcx, rax
movabs rax, 0xe0b56d9013bdfb89
add rdx, rax
add rdx, rcx
movabs rax, 0x5f6beabc16d4813c
xor rdx, rax
mov qword [rsp + 0x1b0], rdx
movabs rcx, 0xf33a52b6070e9b83
add rcx, qword [rsp + 0x1a8]
movabs rax, 0xc0d5366253099913
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a685452f
add rcx, rax
movabs rax, 0xf8f8cd98726fc3bf
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x87d654b991ec3cd5
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85ff3d0a7
xor rcx, rax
movabs rax, 0x5f627dc6ccb972b2
sub rcx, rax
movabs rax, 0x23b3cd25db66efb
xor rcx, rax
movabs rax, 0xb483ce44bfe71f21
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad81c38c2
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527e3c73d
xor r11, rax
movabs rax, 0xe0b56d8dbc2ba597
add rcx, rax
add rcx, r11
movabs rax, 0xa4f17fa950de543a
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 0x14023316d
mov dword [rsp + 0xc4], r12d
mov dword [rsp + 0xc4], 0xae25c78
mov eax, dword [rsp + 0xc4]
add eax, 0x2bed94b5
xor eax, 0x2a09bdf2
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x59e957bc
xor eax, 0x4cfd4ea9
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xdfdf9190
add eax, ecx
xor eax, 0x35e57c6b
add eax, 0x3e4b43c7
xor eax, 0x9345cb6a
lea edx, [rcx - 0x63f5c142]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd8afb4a6
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x27504b59
add ecx, 0x2ffb0ec0
add ecx, edx
xor ecx, 0x8ce26fb6
mov dword [rsp + 0xc4], ecx
mov dword [rsp + 0xc4], r12d
jmp 0x14023333a
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 0x1402331db
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x16039a24
jmp 0x1402331cd
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 0x1402331ad
cmp r9d, edi
jne 0x140233272
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 0x140233272
mov esi, dword [rbx + 0x18]
test esi, esi
je 0x140233272
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, 0x16039a24
mov r8b, byte [r9]
add r9, r15
mov r10d, 0x4764996c
test r8b, r8b
je 0x140233264
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 0x140233231
mov dword [rsp + 0x38], r11d
mov r11, qword [rax + 0x30]
mov edx, dword [rsp + 0x38]
cmp edx, dword [rsp + 0x48]
je 0x14023327a
test esi, esi
mov r8d, dword [rbx + 0x20]
jne 0x140233204
mov rax, qword [rax]
jmp 0x140233181
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 0x140233325
lea rax, [rbx + rcx]
cmp r9, rax
jae 0x140233325
mov eax, 0x16039a24
mov edi, eax
mov edx, eax
mov dword [rsp + 0x48], eax
mov al, byte [r9]
cmp al, 0x2e
je 0x1402332e2
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r10d
mov eax, edi
xor eax, ecx
mov edi, edx
imul edi, eax
add r9, r15
mov al, byte [r9]
cmp al, 0x2e
jne 0x1402332bd
mov edx, dword [rsp + 0x48]
add r9, r15
mov al, byte [r9]
test al, al
je 0x14023330f
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 0x1402332ec
mov dword [rsp + 0x48], edx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x140233272
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 [0x14033e070]
imul rcx, rax
not rcx
movabs rdx, 0x337666be5c90ce4c
mov rax, qword [0x14033e060]
xor rax, rdx
and rcx, rax
ror rcx, 0x13
shr rcx, 8
mov qword [rsp + 0x40], rcx
movabs rax, 0x63535f753fcf8870
mov r10, qword [0x14033e078]
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 0x140233414
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 0x140233472
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r9, cl
mov rax, r8
sub rax, qword [0x14033e078]
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 0x14023378d
sub rax, 1
je 0x140233685
sub rax, 1
je 0x1402335ba
cmp rax, 1
jne 0x140233821
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 [0x14033e088]
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 0x14023382b
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 0x140233821
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 0x1402336d9
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 [0x14033e070]
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 0x14023382b
mov rcx, r9
imul rcx, qword [0x14033e080]
and rcx, qword [0x14033e080]
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 [0x14033e060], 0xffffffffd8023b7e
mov rdx, qword [0x14033e068]
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 0x1402337ff
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.1401b6d90
mov qword [0x14034c9a8], rax
mov edi, r12d
mov dword [rsp + 0x40], 0xd9ec2d8e
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 0x140233904
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x25a10e98
jmp 0x1402338f6
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 0x1402338d0
cmp r10d, edi
jne 0x1402339d0
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 0x1402339d0
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x1402339d0
mov r11d, 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, [r10 + r8*4]
mov r11d, dword [rdx + r11]
add r11, r10
mov edx, 0x25a10e98
mov sil, byte [r11]
mov byte [rsp + 0x4d8], sil
add r11, r15
test sil, sil
mov esi, 0x4764996c
je 0x1402339be
mov r10d, edx
mov dl, byte [rsp + 0x4d8]
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, esi
mov edx, r10d
xor edx, r8d
mov r10d, r9d
imul r10d, edx
mov dl, byte [r11]
add r11, r15
test dl, dl
jne 0x14023397e
mov dword [rsp + 0x38], r10d
mov r10, qword [rax + 0x30]
mov r8d, dword [rsp + 0x30]
mov edx, dword [rsp + 0x38]
mov r9d, dword [rsp + 0x40]
cmp edx, r9d
je 0x1402339d8
test r8d, r8d
mov r11d, dword [rbx + 0x20]
jne 0x14023393c
mov rax, qword [rax]
jmp 0x1402338a4
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov eax, dword [rbx + 0x24]
add rax, r10
mov r8, qword [rsp + 0x48]
movzx eax, word [rax + r8*2]
mov r9d, dword [rdx + rax*4]
add r9, r10
cmp r9, rbx
jbe 0x140233a79
lea rax, [rbx + rcx]
cmp r9, rax
jae 0x140233a79
mov edi, 0x25a10e98
mov r11d, edi
mov dword [rsp + 0x40], edi
jmp 0x140233a2a
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, esi
mov eax, edi
xor eax, ecx
mov edi, edx
imul edi, eax
add r9, r15
mov al, byte [r9]
cmp al, 0x2e
jne 0x140233a11
add r9, r15
mov al, byte [r9]
test al, al
je 0x140233a63
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, esi
mov eax, r11d
xor eax, ecx
mov r11d, edx
imul r11d, eax
add r9, r15
mov al, byte [r9]
test al, al
jne 0x140233a3b
mov dword [rsp + 0x40], r11d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x1402339d0
mov qword [rsp + 0x1b8], r12
movabs rax, 0x50cc524a92071ac0
mov qword [rsp + 0x1b8], rax
movabs rcx, 0xcc5ad49735c4b3a
add rcx, qword [rsp + 0x1b8]
movabs rax, 0x708b4fedad9d0560
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x4ed45970ec405c20
add rcx, rax
movabs rax, 0x707459ab870dd4a
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0xd829ab467468c8d0
add rcx, rax
mov rdx, qword [0x14033e040]
add rcx, rdx
movabs rax, 0xa56e8658386b343c
xor rcx, rax
movabs rax, 0x2b02fde7c33a5624
sub rcx, rax
movabs rax, 0x77c4c32dd2f434b2
xor rcx, rax
movabs rax, 0x95ab432b5b8f8f36
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0xec3316b525cd6f80
mov rax, qword [0x14033e038]
xor rax, rcx
sub rdx, rax
movabs rax, 0x13cce94ada32907f
mov rcx, qword [0x14033e030]
xor rcx, rax
movabs r8, 0x1f4a91499b155bae
add r8, rdx
add r8, rcx
movabs rax, 0xdd8e373416a25080
xor r8, rax
mov qword [rsp + 0x1b8], r8
mov dword [rsp + 0xc8], r12d
mov dword [rsp + 0xc8], 0xb91fd7fa
mov eax, dword [rsp + 0xc8]
add eax, 0x7eaaeeae
xor eax, 0x840310af
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x45e18fca
xor eax, 0x14f4ff48
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xf00f89ef
add eax, ecx
xor eax, 0xd38581cb
add eax, 0x33d036cd
xor eax, 0x1a1c8883
lea edx, [rcx + 0x1a90123b]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xbdfaaa0e
sub edx, eax
mov eax, dword [0x14033e030]
xor eax, 0x420555f1
add eax, 0xa03d2c0d
add edx, eax
xor edx, 0x1b6bd2e
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, 0x971194003ddfa6c8
mov qword [rsp + 0x1c0], rax
mov qword [rsp + 0x1c8], r12
movabs rax, 0x5a7c49d4f2d36d01
mov qword [rsp + 0x1c8], rax
movabs rcx, 0xf33a52b6a4557803
add rcx, qword [rsp + 0x1c8]
movabs rax, 0x9d553662530a365a
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f5b528f67
sub rcx, rax
movabs rax, 0xf8f8cd97d2b3cbcd
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0xc7d654b8bc6e8c85
add rcx, rax
mov rdi, qword [0x14033e040]
add rcx, rdi
movabs rax, 0x5a9179a7ac8efd25
xor rcx, rax
movabs rax, 0x5f627dc6de33d048
sub rcx, rax
movabs rax, 0x1e3b3cd20f0e1684
xor rcx, rax
movabs rdx, 0x3483ce4426ed32a8
add rdx, rcx
add rdx, rdi
not rdx
mov r10, qword [0x14033e038]
mov rax, r10
movabs rcx, 0x13cce94ada915434
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033e030]
mov rcx, r11
movabs rax, 0xec3316b5256eabcb
xor rcx, rax
movabs rax, 0xe0b56d9013bdfb89
add rdx, rax
add rdx, rcx
movabs rax, 0x5f6beabc16d4813c
xor rdx, rax
mov qword [rsp + 0x1c8], rdx
movabs rcx, 0xf33a52b6070e9b83
add rcx, qword [rsp + 0x1c0]
movabs rax, 0xc0d5366253099913
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a685452f
add rcx, rax
movabs rax, 0xf8f8cd98726fc3bf
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x87d654b991ec3cd5
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a85ff3d0a7
xor rcx, rax
movabs rax, 0x5f627dc6ccb972b2
sub rcx, rax
movabs rax, 0x23b3cd25db66efb
xor rcx, rax
movabs rax, 0xb483ce44bfe71f21
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ad81c38c2
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527e3c73d
xor r11, rax
movabs rax, 0xe0b56d8dbc2ba597
add rcx, rax
add rcx, r11
movabs rax, 0xa4f17fa950de543a
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 0x140233f01
mov dword [rsp + 0xcc], r12d
mov dword [rsp + 0xcc], 0xf0774007
mov eax, dword [rsp + 0xcc]
add eax, 0x45197635
xor eax, 0xb89d71e
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x25cb249f
xor eax, 0x336cbda3
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x7db480f7
add eax, ecx
xor eax, 0x192f6f35
add eax, 0x40be1e2d
xor eax, 0x7aaf114b
lea edx, [rcx + 0x38e9068]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd914642c
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x26eb9bd3
add ecx, 0x954f0447
add ecx, edx
xor ecx, 0xc0d93444
mov dword [rsp + 0xcc], ecx
mov dword [rsp + 0xcc], r12d
jmp 0x1402341ac
mov edi, r12d
mov dword [rsp + 0x40], 0x62b8dc9e
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 0x140233f79
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0xef3d9bd8
jmp 0x140233f6b
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 0x140233f49
cmp r10d, edi
jne 0x140234045
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 0x140234045
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140234045
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, 0xef3d9bd8
mov r8b, byte [r10]
mov byte [rsp + 0x4d8], r8b
add r10, r15
test r8b, r8b
mov r8d, dword [rsp + 0x30]
je 0x140234033
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 0x140233ff3
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 0x14023404d
test r8d, r8d
mov r10d, dword [rbx + 0x20]
jne 0x140233fb1
mov rax, qword [rax]
jmp 0x140233f1d
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 0x1402340ee
lea rax, [rbx + rcx]
cmp r10, rax
jae 0x1402340ee
mov edi, 0xef3d9bd8
mov r11d, edi
mov dword [rsp + 0x40], edi
jmp 0x14023409f
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, esi
mov eax, edi
xor eax, ecx
mov edi, edx
imul edi, eax
add r10, r15
mov al, byte [r10]
cmp al, 0x2e
jne 0x140234086
add r10, r15
mov al, byte [r10]
test al, al
je 0x1402340d8
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, esi
mov eax, r11d
xor eax, ecx
mov r11d, edx
imul r11d, eax
add r10, r15
mov al, byte [r10]
test al, al
jne 0x1402340b0
mov dword [rsp + 0x40], r11d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x140234045
mov dword [rsp + 0xd0], r12d
mov dword [rsp + 0xd0], 0xeffe52c0
mov eax, dword [rsp + 0xd0]
add eax, 0x445d4d35
xor eax, 0xe289d661
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x25cd591a
xor eax, 0x342bd747
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xfeb3ea9f
add eax, ecx
xor eax, 0x1a060df9
add eax, 0x4051f651
xor eax, 0xc30d2bac
lea edx, [rcx + 0x4459449]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd9117388
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x26ee8c77
add ecx, 0x925bafa3
add ecx, edx
xor ecx, 0xabb1438
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], 0x98edeb32
mov eax, dword [rsp + 0xd4]
add eax, 0x70045dae
xor eax, 0xf3030208
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x45b59c17
xor eax, 0x23d62a8c
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x83f2a3c3
add eax, ecx
xor eax, 0xe43b7f2f
add eax, 0x33e30ee9
xor eax, 0xa9704638
lea edx, [rcx + 0x28d01544]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xbdc00fca
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x423ff035
add ecx, 0x65668549
add ecx, edx
xor ecx, 0x4e46a4d2
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, 0x971194003ddfa6c8
mov qword [rsp + 0x1d0], rax
mov qword [rsp + 0x1d8], r12
movabs rax, 0x5a7c49d4f2d36d01
mov qword [rsp + 0x1d8], rax
movabs rcx, 0xf33a52b6a4557803
add rcx, qword [rsp + 0x1d8]
movabs rax, 0x9d553662530a365a
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f5b528f67
sub rcx, rax
movabs rax, 0xf8f8cd97d2b3cbcd
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0xc7d654b8bc6e8c85
add rcx, rax
mov rsi, qword [0x14033e040]
add rcx, rsi
movabs rax, 0x5a9179a7ac8efd25
xor rcx, rax
movabs rax, 0x5f627dc6de33d048
sub rcx, rax
movabs rax, 0x1e3b3cd20f0e1684
xor rcx, rax
movabs rdx, 0x3483ce4426ed32a8
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033e038]
mov rax, r10
movabs rcx, 0x13cce94ada915434
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033e030]
mov rcx, r11
movabs rax, 0xec3316b5256eabcb
xor rcx, rax
movabs rax, 0xe0b56d9013bdfb89
add rdx, rax
add rdx, rcx
movabs rax, 0x5f6beabc16d4813c
xor rdx, rax
mov qword [rsp + 0x1d8], rdx
movabs rcx, 0xf33a52b6070e9b83
add rcx, qword [rsp + 0x1d0]
movabs rax, 0xc0d5366253099913
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a685452f
add rcx, rax
movabs rax, 0xf8f8cd98726fc3bf
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x87d654b991ec3cd5
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85ff3d0a7
xor rcx, rax
movabs rax, 0x5f627dc6ccb972b2
sub rcx, rax
movabs rax, 0x23b3cd25db66efb
xor rcx, rax
movabs rax, 0xb483ce44bfe71f21
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad81c38c2
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527e3c73d
xor r11, rax
movabs rax, 0xe0b56d8dbc2ba597
add rcx, rax
add rcx, r11
movabs rax, 0xa4f17fa950de543a
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 0x14023471a
mov edi, r12d
mov dword [rsp + 0x40], 0x30c2d282
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 0x1402344f9
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0xdafd07a6
jmp 0x1402344eb
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 0x1402344cb
cmp r9d, edi
jne 0x1402345af
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 0x1402345af
mov esi, dword [rbx + 0x18]
test esi, esi
je 0x1402345af
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, 0xdafd07a6
mov r9b, byte [r11]
mov byte [rsp + 0x4d8], r9b
add r11, r15
test r9b, r9b
mov r9d, 0x4764996c
je 0x1402345a2
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 0x14023456b
mov dword [rsp + 0x30], r10d
mov r10, qword [rax + 0x30]
mov edx, dword [rsp + 0x30]
mov r8d, dword [rsp + 0x40]
cmp edx, r8d
je 0x1402345b7
test esi, esi
mov r9d, dword [rbx + 0x20]
jne 0x14023452f
mov rax, qword [rax]
jmp 0x14023449f
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 0x14023465e
lea rax, [rbx + rcx]
cmp r8, rax
jae 0x14023465e
mov eax, 0xdafd07a6
mov edi, eax
mov r10d, eax
mov dword [rsp + 0x40], eax
jmp 0x14023460e
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 0x1402345f6
add r8, r15
mov al, byte [r8]
test al, al
je 0x140234648
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r9d
mov eax, r10d
xor eax, ecx
mov r10d, edx
imul r10d, eax
add r8, r15
mov al, byte [r8]
test al, al
jne 0x14023461f
mov dword [rsp + 0x40], r10d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x1402345af
mov rcx, qword [rsp + 0x60]
call r8
mov dword [rsp + 0xd8], r12d
mov dword [rsp + 0xd8], 0xcfaa3248
mov eax, dword [rsp + 0xd8]
add eax, 0x2ea89cb4
xor eax, 0x3208c0ad
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x56f188d4
xor eax, 0x4e375a8a
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x37aab036
add eax, ecx
xor eax, 0x56c8274c
sub eax, 0x4f07a5a
xor eax, 0xd1f03193
lea edx, [rcx - 0x6d9dac09]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd4baa0c6
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x2b455f39
add ecx, 0x56f3d25c
add ecx, edx
xor ecx, 0x36954616
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 [0x14033e070]
imul rcx, rax
not rcx
shr rcx, 8
movabs rdx, 0x58c0b3db93832e00
mov rax, qword [0x14033e060]
xor rax, rdx
shr rax, 8
and rcx, rax
mov qword [rsp + 0x38], rcx
movabs rax, 0xd216b512d5efa08
mov r9, qword [0x14033e080]
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 0x1402347f7
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rdx, r9
ror rdx, cl
not rdx
movabs rcx, 0x6a4426300a44982c
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, 0x341ad163d1f6c5aa
xor r10, rax
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x14033e078]
xor r10, rax
movabs rax, 0x1834b7246c4a04f4
imul rdx, rax
movabs rax, 0x6b322e49ac04c091
sub rdx, rax
xor r10, rdx
xor r10, r11
mov rax, r10
and eax, 3
je 0x140234b4a
sub rax, 1
je 0x140234a50
sub rax, 1
je 0x140234985
cmp rax, 1
jne 0x140234bdc
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 [0x14033e088]
movabs rax, 0xeca6bdffaca0014f
xor rdx, rax
movzx eax, r10b
movzx ecx, cl
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 0x140234bdc
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 0x140234bdc
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 [0x14033e070]
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 0x140234bdc
mov rcx, r10
imul rcx, qword [0x14033e080]
and rcx, qword [0x14033e088]
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 [0x14033e060], 0xffffffffd9b74094
mov rdx, qword [0x14033e068]
sub rcx, rdx
mov qword [rsp + 0x38], rcx
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, edi
jge 0x140234bbd
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.1401b6cdc
mov qword [0x14034c9a0], rax
mov dword [rsp + 0xdc], r12d
mov dword [rsp + 0xdc], 0xb8d44b29
mov eax, dword [rsp + 0xdc]
add eax, 0x62a127b8
xor eax, 0xbd0cf4a5
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x638d7275
xor eax, 0x96eed5a
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x31ecf83
add eax, ecx
xor eax, 0x8b80a8bc
sub eax, 0x782b397
xor eax, 0x5fd24c4d
mov edx, dword [0x14033e030]
xor edx, 0x1a757d0d
sub edx, eax
mov eax, dword [0x14033e038]
xor eax, 0xe58a82f2
sub edx, eax
sub edx, ecx
sub edx, 0x63ef6c28
xor edx, 0xb692d04a
mov dword [rsp + 0xdc], edx
movsxd rax, edx
mov qword [rsp + 0x30], rax
mov dword [rsp + 0xdc], r12d
cmp rax, qword [rsp + 0x50]
jae 0x14023551d
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 [0x14033e070]
imul rcx, rax
not rcx
movabs rdx, 0x13d8a57bc57680b4
mov rax, qword [0x14033e060]
xor rax, rdx
and rcx, rax
ror rcx, 0x21
shr rcx, 8
mov qword [rsp + 0x48], rcx
movabs rax, 0x7915736eb21c2070
mov r9, qword [0x14033e068]
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 0x140234dc8
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, r9
ror rax, cl
not rax
movabs rdx, 0x9fee238d2de61fa0
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x58], rcx
lea r11, [rcx + r8]
mov r8, r9
mov rdx, qword [rsp + 0x48]
imul r8, rdx
sub r8, r11
movabs rcx, 0x1ae7dd924893442d
xor r8, rcx
movzx ecx, r11b
mov dword [rsp + 0x4d8], ecx
and ecx, 0xf
and ecx, edi
jge 0x140234e22
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r8, cl
movabs rcx, 0xcbf3f8f785dcaac0
imul rax, rcx
movabs rcx, 0xe5f70b95fd5c53c
add rax, rcx
xor r8, rax
mov rax, r11
sub rax, qword [0x14033e078]
xor r8, rax
movabs rcx, 0x13d8a57bd80df0cc
xor r8, rcx
mov rax, r8
and eax, 2
je 0x140235163
sub rax, 1
je 0x140235052
sub rax, 1
je 0x140234f7f
cmp rax, 1
jne 0x1402351e4
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 [0x14033e088]
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 + 0x58]
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
mov rdi, qword [rsp + 0x48]
sub rax, rdi
xor rsi, rax
jmp 0x1402351e9
movabs rcx, 0xaaaaaa1ac8147433
mov r9, r8
xor r9, rcx
movabs rcx, 0x1206ed0a19a87f
imul r9, rcx
movabs rdx, 0xffff7e8aee0446ef
mov rcx, qword [rsp + 0x58]
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 0x1402351e9
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 0x1402350aa
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 [0x14033e070]
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 0x1402351e4
mov r10, r8
imul r10, qword [0x14033e080]
and r10, qword [0x14033e070]
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 [0x14033e060], 0x1d7b7078
sub rdx, qword [0x14033e068]
not al
movzx ecx, al
movzx eax, byte [0x14033e068]
xor ecx, eax
and ecx, edi
jge 0x1402351ca
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
ror rdx, cl
movabs rax, 0x1d9d6d80b8e19272
add rax, rdx
add rax, qword [rsp + 0x58]
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.1401b7fb4
mov qword [0x14034c9c8], rax
mov dword [rsp + 0xe0], r12d
mov dword [rsp + 0xe0], 0xc751953a
mov dword [rsp + 0xe4], r12d
mov dword [rsp + 0xe4], 0xb5ca1ed7
mov eax, dword [rsp + 0xe4]
add eax, 0x58d99aad
xor eax, 0x3001eade
mov r11, qword [0x14033e058]
sub eax, r11d
mov r9, qword [0x14033e050]
sub eax, r9d
sub eax, 0x42701bce
xor eax, 0x3f5d9899
mov r8, qword [0x14033e048]
sub eax, r8d
mov rsi, qword [0x14033e040]
add eax, 0x7ee52f76
add eax, esi
xor eax, 0x22a8459c
add eax, 0x6edaf8dd
xor eax, 0x4d0e610e
lea ecx, [rsi + 0x3858acf0]
add ecx, eax
not ecx
mov r10, qword [0x14033e038]
mov eax, r10d
xor eax, 0xb96364be
sub ecx, eax
mov rdx, qword [0x14033e030]
mov edi, edx
xor edi, 0x469c9b41
add edi, 0x4a096b9
add edi, ecx
xor edi, 0x98039e3e
mov dword [rsp + 0xe4], edi
mov eax, dword [rsp + 0xe0]
add eax, 0x6b0c
xor eax, 0x60e713
sub eax, r11d
sub eax, r9d
sub eax, 0x5f64bcd7
xor eax, 0x1c45f184
sub eax, r8d
add eax, 0xe47ec281
add eax, esi
xor eax, 0xcaabc47b
add eax, 0x60cc06be
xor eax, 0xf6831732
lea ecx, [rsi + 0x2a17544f]
add ecx, eax
not ecx
xor r10d, 0x35543b74
sub ecx, r10d
xor edx, 0xcaabc48b
lea eax, [rdx + 0x3d2aee6b]
add eax, ecx
xor eax, 0xb0bd17fc
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], 0x819ed66f
mov eax, dword [rsp + 0xfc]
add eax, 0x55dfcbae
xor eax, 0x6102e7e4
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x45672e61
xor eax, 0x3e634ed4
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xa76f47f2
add eax, ecx
xor eax, 0x20d35b7
add eax, 0x292f9c31
xor eax, 0x4683605c
lea edx, [rcx + 0x423da746]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xbd577d82
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x42a8827d
add ecx, 0xfcabab81
add ecx, edx
xor ecx, 0xc2c44c7a
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], 0xb6525b6d
mov eax, dword [rsp + 0xec]
add eax, 0x47f2493e
xor eax, 0xde92d9f6
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0xac29a26
xor eax, 0xc88874e
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xc2572e81
add eax, ecx
xor eax, 0xd1f01e7f
add eax, 0x66bce147
xor eax, 0x60fa9101
mov edx, dword [0x14033e030]
xor edx, 0x2e03887
sub edx, eax
mov eax, dword [0x14033e038]
xor eax, 0xfd1fc778
sub edx, eax
sub edx, ecx
sub edx, 0x3b0bbfee
xor edx, 0xe8647048
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 0x140234d18
mov rbx, qword [rsp + 0x40]
mov dword [rsp + 0xf0], r12d
mov dword [rsp + 0xf0], 0x8c8f9c5e
mov eax, dword [rsp + 0xf0]
add eax, 0x8fae5f3e
xor eax, 0xf49321b2
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x9eb65e4
xor eax, 0xc3ad80f6
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x60f75ea4
add eax, ecx
xor eax, 0x801d9567
add eax, 0x7b4af76f
xor eax, 0x8d1a4820
mov edx, dword [0x14033e030]
xor edx, 0x1c1482f
sub edx, eax
mov eax, dword [0x14033e038]
xor eax, 0xfe3eb7d0
sub edx, eax
sub edx, ecx
add edx, 0x2a8b79d1
xor edx, 0xb5063f30
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, 0x971194003ddfa6c8
mov qword [rsp + 0x1e0], rax
mov qword [rsp + 0x1e8], r12
movabs rax, 0x5a7c49d4f2d36d01
mov qword [rsp + 0x1e8], rax
movabs rcx, 0xf33a52b6a4557803
add rcx, qword [rsp + 0x1e8]
movabs rax, 0x9d553662530a365a
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f5b528f67
sub rcx, rax
movabs rax, 0xf8f8cd97d2b3cbcd
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0xc7d654b8bc6e8c85
add rcx, rax
mov rsi, qword [0x14033e040]
add rcx, rsi
movabs rax, 0x5a9179a7ac8efd25
xor rcx, rax
movabs rax, 0x5f627dc6de33d048
sub rcx, rax
movabs rax, 0x1e3b3cd20f0e1684
xor rcx, rax
movabs rdx, 0x3483ce4426ed32a8
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033e038]
mov rax, r10
movabs rcx, 0x13cce94ada915434
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033e030]
mov rcx, r11
movabs rax, 0xec3316b5256eabcb
xor rcx, rax
movabs rax, 0xe0b56d9013bdfb89
add rdx, rax
add rdx, rcx
movabs rax, 0x5f6beabc16d4813c
xor rdx, rax
mov qword [rsp + 0x1e8], rdx
movabs rcx, 0xf33a52b6070e9b83
add rcx, qword [rsp + 0x1e0]
movabs rax, 0xc0d5366253099913
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a685452f
add rcx, rax
movabs rax, 0xf8f8cd98726fc3bf
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x87d654b991ec3cd5
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85ff3d0a7
xor rcx, rax
movabs rax, 0x5f627dc6ccb972b2
sub rcx, rax
movabs rax, 0x23b3cd25db66efb
xor rcx, rax
movabs rax, 0xb483ce44bfe71f21
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad81c38c2
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527e3c73d
xor r11, rax
movabs rax, 0xe0b56d8dbc2ba597
add rcx, rax
add rcx, r11
movabs rax, 0xa4f17fa950de543a
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 0x140235a2f
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 0x14023584f
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0xdafd07a6
jmp 0x140235841
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 0x140235821
cmp r9d, edi
jne 0x14023597a
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 0x14023597a
mov esi, dword [rbx + 0x18]
test esi, esi
je 0x14023597a
mov r8d, dword [rbx + 0x20]
dec esi
lea rdx, [r9 + rsi*4]
mov r11d, dword [rdx + r8]
add r11, r9
mov r14d, 0xdafd07a6
mov dl, byte [r11]
add r11, r15
mov r10d, 0x4764996c
test dl, dl
je 0x1402358cc
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, r10d
xor r8d, r14d
mov r14d, edx
imul r14d, r8d
mov dl, byte [r11]
add r11, r15
test dl, dl
jne 0x1402358a3
mov r8d, dword [rbx + 0x20]
cmp r14d, dword [rsp + 0x78]
je 0x1402358dc
test esi, esi
jne 0x140235880
jmp 0x14023597a
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 0x140235982
lea rax, [rbx + rcx]
cmp r8, rax
jae 0x140235982
mov eax, 0xdafd07a6
mov edi, eax
mov r9d, eax
mov dword [rsp + 0x78], eax
jmp 0x14023592f
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r10d
mov eax, edi
xor eax, ecx
mov edi, edx
imul edi, eax
add r8, r15
mov al, byte [r8]
cmp al, 0x2e
jne 0x140235915
add r8, r15
mov al, byte [r8]
test al, al
je 0x140235969
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r10d
mov eax, r9d
xor eax, ecx
mov r9d, edx
imul r9d, eax
add r8, r15
mov al, byte [r8]
test al, al
jne 0x140235940
mov dword [rsp + 0x78], r9d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x1402357f5
mov rcx, qword [rsp + 0x60]
call r8
mov dword [rsp + 0xf4], r12d
mov dword [rsp + 0xf4], 0xcfaa3248
mov eax, dword [rsp + 0xf4]
add eax, 0x2ea89cb4
xor eax, 0x3208c0ad
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x56f188d4
xor eax, 0x4e375a8a
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x37aab036
add eax, ecx
xor eax, 0x56c8274c
sub eax, 0x4f07a5a
xor eax, 0xd1f03193
lea edx, [rcx - 0x6d9dac09]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd4baa0c6
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x2b455f39
add ecx, 0x56f3d25c
add ecx, edx
xor ecx, 0x36954616
mov dword [rsp + 0xf4], ecx
movsxd rax, ecx
mov qword [rsp + 0x60], rax
mov dword [rsp + 0xf4], r12d
lea rcx, [rsp + 0x408]
call fcn.140052e0c
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, 0x971194003ddfa6c8
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], r12
movabs rax, 0x5a7c49d4f2d36d01
mov qword [rsp + 0x1f8], rax
movabs rcx, 0xf33a52b6a4557803
add rcx, qword [rsp + 0x1f8]
movabs rax, 0x9d553662530a365a
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f5b528f67
sub rcx, rax
movabs rax, 0xf8f8cd97d2b3cbcd
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0xc7d654b8bc6e8c85
add rcx, rax
mov rsi, qword [0x14033e040]
add rcx, rsi
movabs rax, 0x5a9179a7ac8efd25
xor rcx, rax
movabs rax, 0x5f627dc6de33d048
sub rcx, rax
movabs rax, 0x1e3b3cd20f0e1684
xor rcx, rax
movabs rdx, 0x3483ce4426ed32a8
add rdx, rcx
add rdx, rsi
not rdx
mov r10, qword [0x14033e038]
mov rax, r10
movabs rcx, 0x13cce94ada915434
xor rax, rcx
sub rdx, rax
mov r11, qword [0x14033e030]
mov rcx, r11
movabs rax, 0xec3316b5256eabcb
xor rcx, rax
movabs rax, 0xe0b56d9013bdfb89
add rdx, rax
add rdx, rcx
movabs rax, 0x5f6beabc16d4813c
xor rdx, rax
mov qword [rsp + 0x1f8], rdx
movabs rcx, 0xf33a52b6070e9b83
add rcx, qword [rsp + 0x1f0]
movabs rax, 0xc0d5366253099913
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a685452f
add rcx, rax
movabs rax, 0xf8f8cd98726fc3bf
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x87d654b991ec3cd5
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a85ff3d0a7
xor rcx, rax
movabs rax, 0x5f627dc6ccb972b2
sub rcx, rax
movabs rax, 0x23b3cd25db66efb
xor rcx, rax
movabs rax, 0xb483ce44bfe71f21
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad81c38c2
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527e3c73d
xor r11, rax
movabs rax, 0xe0b56d8dbc2ba597
add rcx, rax
add rcx, r11
movabs rax, 0xa4f17fa950de543a
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 0x140235f07
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 0x140235cf4
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0xdafd07a6
jmp 0x140235ce6
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 0x140235cc1
cmp r10d, esi
jne 0x140235e4b
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 0x140235e4b
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x140235e4b
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, 0xdafd07a6
mov r9b, byte [rbx]
add rbx, r15
mov r10d, 0x4764996c
test r9b, r9b
je 0x140235d9c
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 0x140235d5e
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 0x140235db4
test r8d, r8d
mov r9d, dword [rdi + 0x20]
jne 0x140235d27
jmp 0x140235e4b
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 0x140235e53
lea rax, [rcx + rdi]
cmp r8, rax
jae 0x140235e53
mov eax, 0xdafd07a6
mov esi, eax
mov edx, eax
mov dword [rsp + 0x78], eax
jmp 0x140235e06
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 0x140235dee
add r8, r15
mov al, byte [r8]
test al, al
je 0x140235e3a
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 0x140235e17
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 0x140235c95
mov rcx, qword [rsp + 0x60]
call r8
mov dword [rsp + 0xf8], r12d
mov dword [rsp + 0xf8], 0xcfaa3248
mov eax, dword [rsp + 0xf8]
add eax, 0x2ea89cb4
xor eax, 0x3208c0ad
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x56f188d4
xor eax, 0x4e375a8a
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x37aab036
add eax, ecx
xor eax, 0x56c8274c
sub eax, 0x4f07a5a
xor eax, 0xd1f03193
lea edx, [rcx - 0x6d9dac09]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd4baa0c6
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x2b455f39
add ecx, 0x56f3d25c
add ecx, edx
xor ecx, 0x36954616
mov dword [rsp + 0xf8], ecx
movsxd rax, ecx
mov qword [rsp + 0x60], rax
mov dword [rsp + 0xf8], r12d
lea r13, [0x14033e060]
lea rcx, [rsp + 0x408]
call fcn.140052e0c
mov edi, r12d
mov esi, 0xcc0bc38e
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 0x140235f87
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0xf8bd2ce2
jmp 0x140235f79
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 0x140235f59
cmp r9d, edi
jne 0x140236045
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 0x140236045
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140236045
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, 0xf8bd2ce2
mov r9b, byte [r11]
mov byte [rsp + 0x4d8], r9b
add r11, r15
test r9b, r9b
mov r9d, 0x4764996c
je 0x140236034
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 0x140235ffd
mov dword [rsp + 0x30], r10d
mov r10, qword [rax + 0x30]
mov r8d, dword [rsp + 0x40]
mov edx, dword [rsp + 0x30]
cmp edx, esi
je 0x14023604d
test r8d, r8d
mov r9d, dword [rbx + 0x20]
jne 0x140235fba
mov rax, qword [rax]
jmp 0x140235f2d
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 0x1402360d7
lea rax, [rbx + rcx]
cmp r8, rax
jae 0x1402360d7
mov edi, 0xf8bd2ce2
mov esi, edi
jmp 0x140236099
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 0x140236081
jmp 0x1402360b7
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 0x1402360a2
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x140236045
mov dword [rsp + 0x10c], r12d
mov dword [rsp + 0x10c], 0xb37befe3
mov eax, dword [rsp + 0x10c]
add eax, 0x38c51be
xor eax, 0xe7129590
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x747033f3
xor eax, 0x520016ac
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x5f2f97f7
add eax, ecx
xor eax, 0x1ff46ccd
add eax, 0x54b2eb85
xor eax, 0x3f2faff0
mov edx, dword [0x14033e030]
xor edx, 0x3f1d065
sub edx, eax
mov eax, dword [0x14033e038]
xor eax, 0xfc0e2f9a
sub edx, eax
sub edx, ecx
sub edx, 0x103ca309
xor edx, 0x963fe7c2
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 [0x14033e070]
imul rcx, rax
not rcx
movabs r8, 0x34af6c16c574e844
mov rax, qword [0x14033e060]
xor rax, r8
and rcx, rax
ror rcx, 0x22
shr rcx, 8
mov qword [rsp + 0x60], rcx
movabs rax, 0xcde6ab43a6275ae8
mov r10, qword [0x14033e070]
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 0x140236259
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 0x1402362b1
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r9, cl
mov rax, r8
sub rax, qword [0x14033e078]
xor r9, rax
movabs rcx, 0x9b3df3c5cfcd3b34
mov rax, qword [rsp + 0x40]
imul rax, rcx
movabs rcx, 0x30a290168d76aedf
add rax, rcx
xor r9, rax
xor r9, r11
mov rax, r9
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x1402365c3
sub rax, 1
je 0x1402364c8
sub rax, 1
mov bl, 0x3f
je 0x1402363ff
cmp rax, 1
jne 0x14023664d
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 [0x14033e088]
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 0x14023664d
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 0x14023664d
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 0x14023651f
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 [0x14033e070]
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 0x14023664d
mov rcx, r9
imul rcx, qword [0x14033e080]
and rcx, qword [0x14033e070]
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 [0x14033e060], 0xffffffff82d1fe0e
mov rdx, qword [0x14033e068]
sub rbx, rdx
mov al, sil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140236631
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.1401b7768
mov qword [0x14034c9b8], rax
mov rax, qword gs:[8]
mov qword [0x14035f330], rax
xor eax, eax
mov byte [rsp + 0x4d8], al
lea rcx, [rsp + 0x4d8]
call fcn.14020ff54
xor eax, eax
mov byte [rsp + 0x4d8], al
lea rcx, [rsp + 0x4d8]
call fcn.1402137e8
nop
jmp 0x140236709
movabs rax, 0x5bb3fd013cbde527
mov qword [rsp + 0x4d8], rax
movabs r9, 0x760b3bd75fd728bd
mov qword [rsp + 0x4e0], r9
movabs rax, 0xd70c145cb0000000
mov rdi, qword [0x14033e068]
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 [0x14033e060]
mov rax, r8
imul rax, qword [0x14033e070]
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 0x140236884
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 [0x14033e078]
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 0x140236c63
sub rax, 1
je 0x140236b1f
sub rax, 1
je 0x140236a23
cmp rax, 1
jne 0x140236d0b
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 [0x14033e088]
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 0x140236d0b
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 0x140236d0b
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 [0x14033e070]
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 0x140236d0b
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 [0x14033e080]
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 [0x14033e060], 0x1bac6fbc
mov rsi, qword [0x14033e068]
sub rdx, rsi
mov al, dil
not al
movzx ecx, al
movzx eax, sil
xor ecx, eax
and ecx, 0x8000003f
jge 0x140236cf6
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.1401b8020
mov qword [0x14034c9d0], rax
xor eax, eax
mov byte [rsp + 0x4e0], al
lea rcx, [rsp + 0x4e0]
call fcn.140219ba0
lea rax, [rsp + 0x200]
mov qword [rsp + 0x228], rax
lea rcx, [rsp + 0x228]
call fcn.140225c5c
movabs rdi, 0x6473be87ae4b5f91
movabs rsi, 0x7851dc1ed7a00a4a
movabs rax, 0x63d52549ea000000
mov r8, qword [0x14033e080]
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 [0x14033e060]
mov rax, r9
imul rax, qword [0x14033e070]
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 0x140236f21
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
mov rax, qword [rsp + 0x40]
ror rax, cl
not rax
imul rax, r9
imul rcx, rax, 0xffffffff908866f0
mov qword [rsp + 0x40], rcx
lea r8, [rcx + 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
movabs rcx, 0xdc7f2f5901732160
imul rax, rcx
movabs rcx, 0x33a3cead28e9dd64
sub rax, rcx
xor r10, rax
mov rax, r8
sub rax, qword [0x14033e078]
xor r10, rax
xor r10, r9
mov rdx, qword [rsp + 0x4d8]
xor r10, rdx
mov rax, r10
and eax, 2
je 0x1402372cc
sub rax, 1
je 0x140237197
sub rax, 1
je 0x1402370a6
cmp rax, 1
jne 0x140237390
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 [0x14033e088]
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 0x140237390
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 0x140237390
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 [0x14033e070]
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 0x140237390
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 [0x14033e080]
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 [0x14033e060], 0xffffffff908866f0
mov rdx, qword [0x14033e068]
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 0x140237371
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.1401b77b0
mov qword [0x14034c9b0], rax
mov r10d, r12d
mov dword [rsp + 0x4d8], r12d
mov dword [rsp + 0x40], 0xaf572ae2
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 r10d, r10d
je 0x14023747d
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea rdi, [r9 + rcx*2]
mov r11d, 0x85396866
jmp 0x14023746f
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov ecx, r11d
xor ecx, edx
mov r11d, r8d
imul r11d, ecx
add r9, 2
cmp r9, rdi
jne 0x140237449
cmp r11d, r10d
jne 0x140237537
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov esi, ecx
add rsi, r10
shr rcx, 0x20
cmp rsi, r10
je 0x14023752f
mov r8d, dword [rsi + 0x18]
test r8d, r8d
je 0x14023752f
mov r9d, dword [rsi + 0x20]
dec r8d
mov dword [rsp + 0x30], r8d
mov edx, r8d
mov qword [rsp + 0x50], rdx
lea rdx, [r9 + r8*4]
mov edi, dword [rdx + r10]
add rdi, r10
mov edx, 0x85396866
mov r9b, byte [rdi]
add rdi, r15
mov r11d, 0x4764996c
test r9b, r9b
je 0x140237520
mov r10d, edx
movsx r8d, r9b
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, r11d
mov edx, r10d
xor edx, r8d
mov r10d, r9d
imul r10d, edx
mov r9b, byte [rdi]
add rdi, r15
test r9b, r9b
jne 0x1402374e4
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 0x14023753f
test r8d, r8d
mov r9d, dword [rsi + 0x20]
jne 0x1402374b0
mov r10d, dword [rsp + 0x4d8]
mov rax, qword [rax]
jmp 0x14023741c
mov edx, dword [rsi + 0x1c]
add rdx, r10
mov eax, dword [rsi + 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, rsi
jbe 0x1402375fb
lea rax, [rsi + rcx]
cmp r9, rax
jae 0x1402375fb
mov r10d, 0x85396866
mov dword [rsp + 0x4d8], r10d
mov edx, r10d
mov dword [rsp + 0x40], edx
mov al, byte [r9]
cmp al, 0x2e
je 0x1402375b8
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r11d
xor ecx, r10d
mov r10d, eax
imul r10d, ecx
add r9, r15
mov al, byte [r9]
cmp al, 0x2e
jne 0x14023758e
mov dword [rsp + 0x4d8], r10d
add r9, r15
mov al, byte [r9]
test al, al
je 0x1402375e5
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 0x1402375c2
mov dword [rsp + 0x40], edx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x140237537
mov qword [rsp + 0x230], r12
movabs rax, 0x3af3c33c5ec0ed7e
mov qword [rsp + 0x230], rax
movabs rcx, 0xf33a52b824d83583
add rcx, qword [rsp + 0x230]
movabs rax, 0x5ad53662530bb6dc
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a02be861
add rcx, rax
movabs rax, 0xf8f8cd964c2f0357
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x87d654b6b27d144a
add rcx, rax
mov rdx, qword [0x14033e040]
add rcx, rdx
movabs rax, 0x5a9179a5f5f9dcff
xor rcx, rax
movabs rax, 0x5f627dc46fd56b5a
sub rcx, rax
movabs rax, 0x323b3cd14ec0b3ae
xor rcx, rax
movabs rax, 0xb483ce42b0ee0857
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94ae0935f2a
mov rax, qword [0x14033e038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b51f6ca0d5
mov rcx, qword [0x14033e030]
xor rcx, rax
movabs r8, 0xe0b56d961bcaf47f
add r8, rdx
add r8, rcx
movabs rax, 0x27d3630d31d06df2
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 [0x14033e070]
imul rcx, rax
not rcx
movabs r8, 0x2552b3b67256922a
mov rax, qword [0x14033e060]
xor rax, r8
and rcx, rax
ror rcx, 0x2c
shr rcx, 8
mov qword [rsp + 0x4d8], rcx
movabs rax, 0xda54af3cbaccbec8
mov r10, qword [0x14033e060]
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
and ecx, 0x8000003f
jge 0x1402377f5
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
mov rdx, qword [rsp + 0x4d8]
imul r9, rdx
sub r9, r8
movabs rax, 0x59bf00c327bb5c2
xor r9, rax
movzx ecx, r8b
mov dword [rsp + 0x4d0], ecx
xor ecx, 2
and ecx, 0xf
jge 0x140237854
sub ecx, r15d
or ecx, 0xffffffc0
add ecx, r15d
rol r9, cl
mov rax, r8
sub rax, qword [0x14033e078]
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 0x140237b78
sub rax, 1
je 0x140237a6c
sub rax, 1
je 0x1402379a0
cmp rax, 1
jne 0x140237c03
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 [0x14033e088]
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 0x140237c0d
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 0x140237c03
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 0x140237ac3
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 [0x14033e070]
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 0x140237c0d
mov rcx, r9
imul rcx, qword [0x14033e080]
and rcx, qword [0x14033e080]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x34
imul r11, r8
mov rsi, rdx
not rsi
imul rsi, r10
movabs rax, 0x7cd8a7de0468ed40
imul rsi, rax
imul rbx, qword [0x14033e060], 0x14209ade
mov rdx, qword [0x14033e068]
sub rbx, rdx
mov al, sil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140237be6
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.1401b7ffc
mov qword [0x14034c9b0], rax
mov dword [rsp + 0x104], r12d
mov dword [rsp + 0x104], 0x39934ae6
mov eax, dword [rsp + 0x104]
add eax, 0xaa582b3e
xor eax, 0xc0933c5c
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x99b6880
xor eax, 0xa8990dc6
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x3cc5e23a
add eax, ecx
xor eax, 0x61b3e8b7
sub eax, 0x7e176ea1
xor eax, 0x1fc48cd1
mov edx, dword [0x14033e030]
xor edx, 0x156a0ff
sub edx, eax
mov eax, dword [0x14033e038]
xor eax, 0xfea95f00
sub edx, eax
sub edx, ecx
sub edx, 0x5073c713
xor edx, 0x7015a100
mov dword [rsp + 0x104], edx
movsxd rax, edx
mov dword [rsp + 0x104], r12d
jmp 0x140235a44