Function at 0x14018b080
Capabilities:
Access peb ldr_data
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x130
movabs r13, 0x67510c0d3e3a900b
movabs r9, 0xb80fabcba5d4a599
mov qword [rsp + 0x178], r9
movabs rax, 0x54ff32d930000000
mov rbx, qword [0x14033a078]
imul rbx, rax
movabs rax, 0xcc14fc0830000000
xor rbx, rax
mov rcx, rbx
imul rcx, r9
mov qword [rsp + 0x188], rcx
movabs rsi, 0xaaaaaaaaaaaaaaab
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r14, [0x14033a060]
mov r8, rbx
and r8, r9
imul r8, qword [r14 + rcx*8]
movabs rax, 0x4daf6b900de02fb8
imul r8, rax
shr r8, 3
movabs rax, 0x8a90c8545a73e546
xor r8, rax
movabs rax, 0xffffff57d523b1af
mov rdi, rbx
imul rdi, rax
sub rdi, 0xd2c35d8
xor rdi, qword [0x14033a060]
xor rdi, r8
mov rax, r8
imul rax, qword [0x14033a070]
movabs rcx, 0xb9de928bdc900e8e
imul rax, rcx
not rax
and rdi, rax
ror rdi, 0x26
shr rdi, 8
movabs r9, 0x47f054345a2b5a67
lea rcx, [rbx + r9]
xor rcx, 0xffffffffe21e0583
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x5075ed0c8953c50
mov r11, qword [r14 + rcx*8]
imul r11, rax
sub r11, r9
movabs rcx, 0x3e5258553fccb64c
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov r15, r11
xor r15, rbx
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 [r14 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x9f
mov eax, 0x8000003f
and ecx, eax
mov r12d, 1
jge 0x14018b21c
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror r15, cl
not r15
imul r15, r8
imul rdx, r15, 0xfffffffff2d3ca28
mov qword [rsp + 0x180], rdx
lea r10, [rdx + r9]
mov r9, r11
imul r9, rdi
sub r9, r10
xor r9, r13
movzx ecx, r10b
mov dword [rsp + 0x170], ecx
and ecx, 0xf
and ecx, eax
jge 0x14018b261
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
rol r9, cl
movabs rax, 0x95c995e1d2ff99e8
imul r15, rax
movabs rax, 0x282d2b4015796a8f
add r15, rax
xor r9, r15
mov rax, r10
sub rax, qword [0x14033a078]
xor r9, rax
xor r9, r8
xor r9, rbx
mov rax, r9
and rax, r12
je 0x14018b5fc
sub rax, 1
je 0x14018b4bc
sub rax, 1
mov r15b, 0x3f
je 0x14018b3c1
cmp rax, 1
jne 0x14018b6a7
mov r13, r10
imul r13, r11
movabs rax, 0x1ca8780ef5883569
add rax, r9
xor r13, rax
ror r13, 0x1c
shr r13, 0xc
xor r13, rbx
not r13
movabs rcx, 0x83573e61008c
mov rdx, qword [0x14033a088]
add rdx, rcx
movabs rax, 0x4772d14c2f517a69
xor rdx, rax
movzx eax, r9b
movzx ecx, r13b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db96681ec77
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
movabs rax, 0xb80fabcba5d4a599
imul rcx, rax
mov eax, 0xb75a3e9d
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 [r14 + rcx*8]
and cl, 0xf
movabs rax, 0x33533575ac90985e
sub rax, r13
shr rax, cl
mov qword [rsp + 0x178], rax
movabs rdx, 0x47f878bca009a8b9
mov rcx, qword [rsp + 0x180]
add rcx, rdx
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 [r14 + rcx*8]
imul rax, r9
sub rax, rdi
xor qword [rsp + 0x178], rax
jmp 0x14018b6a7
movabs rax, 0xaaaaaa1ab743c3a3
mov rcx, r9
xor rcx, rax
movabs rax, 0x1206ed754e1fef
imul rcx, rax
movabs r10, 0xfff17ca86021f5df
mov rax, r8
xor rax, r10
sub rcx, rax
movabs rax, 0xffff7e8a9153f17f
imul rdx, rax
movabs r11, 0x7b00c52ec355c198
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be659314c3
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 r10, r11
not r10
imul r10, qword [r14 + rcx*8]
xor r10, 0xffffffffe2161573
lea ecx, [r9 - 0x1f]
and cl, r15b
rol r10, cl
movabs rcx, 0xdbbdaffff4eee03d
mov rax, qword [rsp + 0x188]
xor rax, rcx
movabs rcx, 0x7c7a7dc68b111fc2
and rax, rcx
imul r10, rax
mov rcx, r10
ror rcx, 0x35
not rcx
movabs rax, 0x9b2de6b2a9fe5b90
imul rcx, rax
mov rax, r11
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, dil
and cl, r15b
ror rdx, cl
movabs rax, 0xb80fabcba5d4a599
imul rdx, rax
mov qword [rsp + 0x178], rdx
jmp 0x14018b6a7
movabs rax, 0xcf9bcc9823cb3a6b
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, 0x47f054345a2b5a66
mov rax, rbx
imul rax, rdx
xor rax, r13
not rax
shl rax, cl
xor r8, rax
mov eax, dword [rsp + 0x170]
and eax, 0x8000003f
jge 0x14018b51a
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov cl, al
rol r8, cl
movabs rcx, 0x47f054345a2b5a67
add rcx, r9
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffebcba5d4a599
mov rax, qword [r14 + rcx*8]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7eb87b58e
or r8, rax
mov r15, qword [0x14033a070]
imul r15, r13
sub r15, r10
mov rax, rdi
sub rax, r8
xor r15, rax
movabs rax, 0xc7a7c6a6ba8fb583
xor r15, rax
mov qword [rsp + 0x178], r15
movabs rax, 0xcccccccccccccccd
mul rbx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rbx
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r9
imul rdx, r10
imul rdx, r15
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, rbx
movabs rbx, 0x789589475ddf999
add rbx, rax
xor rbx, rdi
movzx eax, r11b
imul ecx, eax, 0xe6
mov r15b, 0x3f
and cl, r15b
rol rbx, cl
not rbx
jmp 0x14018b6a7
mov rax, rsi
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r8
sub rcx, rax
mov rax, r9
imul rax, qword [0x14033a080]
mov rdx, qword [r14 + rcx*8]
and rdx, rax
xor rdx, r8
mov r15b, 0x3f
and r8b, r15b
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r10
not rdi
imul rdi, r11
movabs rax, 0x7cd8a7de677ee462
imul rdi, rax
mov rax, r8
imul rax, rbx
mov rbx, rdi
xor rbx, rax
imul rdi, qword [0x14033a060], 0xfffffffff2d3ca28
mov rdx, qword [0x14033a068]
sub rdi, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14018b68f
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror rdi, cl
movabs rax, 0x47f054345a2b5a67
add rdi, rax
add rdi, qword [rsp + 0x180]
movabs rax, 0xff055d7b9735eeaf
xor r13, rax
mov rax, rsi
mul r13
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r13, rax
xor r8, rbx
imul r8, qword [r14 + r13*8]
not r10
imul r10, r9
imul r10, rdi
mov rcx, qword [rsp + 0x178]
imul rcx, r10
movabs rax, 0xf5ed7e879086a473
xor r11, rax
not r11
xor rcx, r11
sub rcx, r8
call fcn.140091054
mov qword [0x1403489b0], rax
xor r13d, r13d
mov r9d, r13d
mov dword [rsp + 0x178], r13d
mov dword [rsp + 0x40], 0xd4c112ce
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r10d, 0x4764996c
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, 8
test r9d, r9d
je 0x14018b790
psrldq xmm0, 8
movq r11, xmm0
movzx ecx, cx
shr rcx, 1
lea rdi, [r11 + rcx*2]
mov ebx, 0x57198c56
jmp 0x14018b782
movsx edx, byte [r11]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, r10d
mov ecx, ebx
xor ecx, edx
mov ebx, r8d
imul ebx, ecx
add r11, 2
cmp r11, rdi
jne 0x14018b762
cmp ebx, r9d
jne 0x14018b84a
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 0x14018b84a
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x14018b84a
mov r9d, dword [rdi + 0x20]
dec r8d
mov dword [rsp + 0x20], r8d
mov edx, r8d
mov qword [rsp + 0x48], rdx
lea rdx, [r11 + r8*4]
mov ebx, dword [rdx + r9]
add rbx, r11
mov edx, 0x57198c56
mov r9b, byte [rbx]
add rbx, r12
test r9b, r9b
je 0x14018b833
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, r12
test r9b, r9b
jne 0x14018b7f1
mov dword [rsp + 0x170], r11d
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0x20]
mov edx, dword [rsp + 0x170]
cmp edx, dword [rsp + 0x40]
je 0x14018b852
test r8d, r8d
mov r9d, dword [rdi + 0x20]
jne 0x14018b7c3
mov r9d, dword [rsp + 0x178]
mov rax, qword [rax]
jmp 0x14018b736
mov edx, dword [rdi + 0x1c]
add rdx, r11
mov eax, dword [rdi + 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, rdi
jbe 0x14018b912
lea rax, [rdi + rcx]
cmp r8, rax
jae 0x14018b912
mov eax, 0x57198c56
mov r9d, eax
mov dword [rsp + 0x178], eax
mov ebx, eax
mov dword [rsp + 0x40], eax
mov al, byte [r8]
cmp al, 0x2e
je 0x14018b8cd
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r10d
mov eax, r9d
xor eax, ecx
mov r9d, edx
imul r9d, eax
add r8, r12
mov al, byte [r8]
cmp al, 0x2e
jne 0x14018b8a1
mov dword [rsp + 0x178], r9d
add r8, r12
mov al, byte [r8]
test al, al
je 0x14018b8fc
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r10d
mov eax, ebx
xor eax, ecx
mov ebx, edx
imul ebx, eax
add r8, r12
mov al, byte [r8]
test al, al
jne 0x14018b8d7
mov dword [rsp + 0x40], ebx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14018b84a
mov dword [rsp + 0x180], r13d
mov dword [rsp + 0x180], 0x72c6b4e7
mov eax, dword [rsp + 0x180]
add eax, 0x6bc62b6
xor eax, 0xf80a98c0
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x5c79c426
xor eax, 0x6ec34570
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xb6dbd8ee
add eax, ecx
xor eax, 0x3c519972
add eax, 0x76f22fff
xor eax, 0xb5d78df4
mov edx, dword [0x14033a030]
xor edx, 0x23e51021
sub edx, eax
mov eax, dword [0x14033a038]
xor eax, 0xdc1aefde
sub edx, eax
sub edx, ecx
sub edx, 0x2853dee4
xor edx, 0xfa0ccb9e
mov dword [rsp + 0x180], edx
movsxd rcx, edx
call r8
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x180], r13d
mov qword [rsp + 0x58], r13
movabs rax, 0x653472112b74cbb1
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x50], r13
movabs rax, 0x166508177dfbecba
mov qword [rsp + 0x50], rax
movabs rcx, 0xcc5ad49c2bf4b3a
add rcx, qword [rsp + 0x50]
movabs rax, 0x708b4fedad9d54c3
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x4ed45970eb523320
add rcx, rax
movabs rax, 0x707459a67d0514a
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0xd829ab4608a5e650
add rcx, rax
mov rdi, qword [0x14033a040]
add rcx, rdi
movabs rax, 0xa56e8657ddde483c
xor rcx, rax
movabs rax, 0x2b02fde740dd0224
sub rcx, rax
movabs rax, 0x77c4c32dab40399a
xor rcx, rax
movabs rdx, 0x95ab432b0e584436
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0xec3316b5270afb80
mov r10, qword [0x14033a038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0x13cce94ad8f5047f
mov r11, qword [0x14033a030]
mov rcx, r11
xor rcx, rax
movabs rax, 0x1f4a914ad9df2fae
add rdx, rax
add rdx, rcx
movabs rax, 0xc016ed313be0c480
xor rdx, rax
mov qword [rsp + 0x50], rdx
movabs rcx, 0xf33a52b531b0a583
add rcx, qword [rsp + 0x58]
movabs rax, 0xcad536625308c3b5
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80a9055f11
add rcx, rax
movabs rax, 0xf8f8cd994b233197
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x87d654bab38d4842
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a95352fd3f
xor rcx, rax
movabs rax, 0x5f627dc7026ad41a
sub rcx, rax
movabs rax, 0xb23b3cd2c86c14eb
xor rcx, rax
movabs rax, 0xb483ce458f6f8367
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ad4c6c0ea
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b52b393f15
xor r11, rax
movabs rax, 0xe0b56d8a632055bf
add rcx, rax
add rcx, r11
movabs rax, 0x3c57d19a9fe16932
xor rcx, rax
mov qword [rsp + 0x58], rcx
and rcx, rdx
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x58], r13
cmp qword [rsp + 0x40], rcx
jne 0x14018bc60
mov dword [rsp + 0x188], r13d
mov dword [rsp + 0x188], 0xdeb70fff
mov eax, dword [rsp + 0x188]
add eax, 0xb37a48b6
xor eax, 0xde0b457e
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x5e7ffdd8
xor eax, 0xbf5267d8
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0xcc601339
add eax, ecx
xor eax, 0x7748ff1a
add eax, 0x61ecb217
xor eax, 0x2f733505
mov edx, dword [0x14033a030]
xor edx, 0x21321889
sub edx, eax
mov eax, dword [0x14033a038]
xor eax, 0xdecde776
sub edx, eax
sub edx, ecx
add edx, 0x3559656c
xor edx, 0xf4efee26
mov dword [rsp + 0x188], edx
movsxd rax, edx
mov dword [rsp + 0x188], r13d
add rsp, 0x130
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
movabs rax, 0xfa5dc97a1cb80bda
mov qword [rsp + 0x20], rax
movabs rdi, 0xc298adc85b184ef3
mov rbx, r13
movabs rax, 0xe490dde25c41c6f0
movabs r10, 0xe5ba71deef19b414
mov rcx, qword [0x14033a070]
imul rcx, rax
not rcx
movabs rdx, 0x1a458e21151dc06a
mov rax, qword [0x14033a060]
xor rax, rdx
and rcx, rax
ror rcx, 0xe
shr rcx, 8
mov qword [rsp + 0x178], rcx
movabs rax, 0x4d65b5015ed5c488
mov r9, qword [0x14033a080]
imul r9, rax
movabs r11, 0x3d675237a4e7b10d
sub r9, r11
movabs rax, 0x2cafc2e200000000
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r11]
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 [r14 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x9d
mov eax, 0x8000003f
and ecx, eax
jge 0x14018bd3a
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rdx, r9
ror rdx, cl
not rdx
mov qword [rsp + 0x48], rdx
movabs r8, 0x1b3e323fac8fb1d8
mov rcx, rdx
imul rcx, r8
mov qword [rsp + 0x28], rcx
add r11, rcx
mov r8, r9
mov rdx, qword [rsp + 0x178]
imul r8, rdx
sub r8, r11
movabs rcx, 0xfa5dc97a1cb80bda
xor r8, rcx
movzx ecx, r11b
mov dword [rsp + 0x170], ecx
xor ecx, 2
and ecx, 0xf
and ecx, eax
jge 0x14018bd9e
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
rol r8, cl
mov rax, r11
sub rax, qword [0x14033a078]
xor r8, rax
movabs rcx, 0x5b5a437508d5a008
mov rax, qword [rsp + 0x48]
imul rax, rcx
movabs rcx, 0x5daa141fa7e8faa9
sub rax, rcx
xor r8, rax
xor r8, r10
mov rax, r8
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14018c0c9
sub rax, 1
je 0x14018bfb9
sub rax, 1
je 0x14018beec
cmp rax, 1
jne 0x14018c163
mov rcx, r11
imul rcx, r9
movabs rax, 0xeb19a97ed5ab03c9
add rax, r8
xor rcx, rax
ror rcx, 0x36
shr rcx, 0xc
not rcx
mov qword [rsp + 0x20], rcx
movabs rdx, 0x83571e88f98a
add rdx, qword [0x14033a088]
movabs rax, 0x3de5d74ff1746801
xor rdx, rax
movzx eax, cl
movzx ecx, r8b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db946681575
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rdi
mov eax, 0x97b3c79f
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 [r14 + rcx*8]
and cl, 0xf
movabs rdi, 0x9df405db2ba79a1c
sub rdi, qword [rsp + 0x20]
shr rdi, cl
movabs rax, 0x3d6f76c00a1f6861
mov rcx, qword [rsp + 0x28]
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 [r14 + rcx*8]
imul rax, r8
sub rax, qword [rsp + 0x178]
xor rdi, rax
jmp 0x14018c163
movabs rcx, 0xaaaaaa1a97aa3aa1
mov r9, r8
xor r9, rcx
movabs rcx, 0x1206ed55a7e6ed
imul r9, rcx
movabs rdx, 0xffff7e8ab1ba087d
mov rcx, qword [rsp + 0x28]
imul rcx, rdx
movabs rdx, 0x8e282c2965042b0d
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be457aedc1
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 r11, r9
not r11
imul r11, qword [r14 + rcx*8]
xor r11, 0xffffffffc2ffec71
lea ecx, [r8 - 0x1d]
and cl, r15b
rol r11, cl
movabs rax, 0x3c687c84a0000000
imul r11, rax
mov rcx, r11
ror rcx, 0x26
not rcx
movabs rax, 0x9b2de6b22a59bf98
imul rcx, rax
mov rax, r9
sub rax, r11
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x178]
and cl, r15b
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x14018c163
movabs rax, 0x550ee7ddff5669af
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, 0x5a23685e347f425
shl rdx, cl
mov rax, r10
mov r10, rdx
xor r10, rax
mov eax, dword [rsp + 0x170]
and eax, 0x8000003f
jge 0x14018c010
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov cl, al
rol r10, cl
movabs rcx, 0x3d675237a4e7b10d
add rcx, r8
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffedc85b184ef3
mov rax, qword [r14 + rcx*8]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a7cb6e4c8c
or r10, rax
mov rdi, qword [0x14033a070]
movabs rax, 0xfa5dc97a1cb80bda
imul rdi, rax
sub rdi, r11
mov rax, qword [rsp + 0x178]
sub rax, r10
xor rdi, rax
movabs rax, 0xc7a7c6a69a664c81
xor rdi, rax
mov rax, r8
imul rax, r11
imul rax, rdi
mov rbx, r9
sub rbx, rax
movabs rax, 0x78958945534009b
add rbx, rax
xor rbx, qword [rsp + 0x178]
movzx eax, r9b
imul ecx, eax, 0xe4
and cl, r15b
rol rbx, cl
not rbx
jmp 0x14018c163
mov rcx, r8
imul rcx, qword [0x14033a080]
and rcx, qword [0x14033a070]
mov rax, r10
mov r10, rcx
xor r10, rax
ror r10, 0x14
imul r10, r11
mov rbx, rdx
not rbx
imul rbx, r9
movabs rax, 0x7cd8a7de47971d60
imul rbx, rax
imul rax, qword [0x14033a060], 0xfffffffffa04747e
mov rdx, qword [0x14033a068]
sub rax, rdx
mov qword [rsp + 0x170], rax
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14018c13e
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0x170]
ror rax, cl
movabs rcx, 0x3d675237a4e7b10d
add rax, rcx
add rax, qword [rsp + 0x28]
mov qword [rsp + 0x178], rax
movabs rax, 0xff055d7bb7dc17ad
mov rcx, qword [rsp + 0x20]
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 [r14 + rcx*8]
not r11
imul r11, r8
imul r11, qword [rsp + 0x178]
imul r11, rdi
movabs rcx, 0xf5ed7e87b06f5d71
xor rcx, r9
not rcx
xor rcx, r11
sub rcx, r10
call fcn.1401504ec
mov qword [0x1403489a0], rax
movabs rdi, 0xb25e718d01fe5dcd
movabs rax, 0xd147226d40000000
movabs r11, 0xd54293558fface24
mov r8, qword [0x14033a060]
imul r8, rax
movabs rax, 0xca196358f0000000
xor r8, rax
mov qword [rsp + 0x170], r8
mov rcx, r8
imul rcx, rdi
mov qword [rsp + 0x20], rcx
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r8
and r10, rdi
imul r10, qword [r14 + rcx*8]
movabs rax, 0x3eb2eea30e1637c0
imul r10, rax
shr r10, 3
movabs rax, 0x8f53d7ef4ad511bf
xor r10, rax
movabs rax, 0xffffff57b5fa44a3
mov rcx, r8
imul rcx, rax
sub rcx, 0x5fb8d90
xor rcx, r10
xor rcx, qword [0x14033a060]
mov rax, r10
imul rax, qword [0x14033a070]
movabs rdx, 0xb9de928bbc49fb82
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x3e
shr rcx, 8
mov qword [rsp + 0x178], rcx
movabs r9, 0x4da18e72fe01a233
lea rcx, [r8 + r9]
xor rcx, 0xffffffff82c7f08f
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xc5e640cdf20cd7a0
mov rbx, qword [r14 + rcx*8]
imul rbx, rax
sub rbx, r9
movabs rcx, 0xd691513451c89b50
mov rax, r10
imul rax, rcx
xor rbx, rax
shr rbx, 0x1f
not rbx
mov rax, rbx
xor rax, r8
mov qword [rsp + 0x48], rax
lea rcx, [rbx + r9]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, bl
movzx ecx, byte [r14 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x93
and ecx, 0x8000003f
jge 0x14018c341
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0x48]
ror rax, cl
not rax
imul rax, r10
imul rcx, rax, 0xfffffffffa047270
mov qword [rsp + 0x28], rcx
lea r8, [rcx + r9]
mov r9, rbx
imul r9, qword [rsp + 0x178]
sub r9, r8
xor r9, r11
mov cl, r8b
xor cl, 0xfc
and cl, 0xf
rol r9, cl
movabs rcx, 0x900a8a5ace4253b0
imul rax, rcx
movabs rcx, 0x486db8b420d569d7
add rax, rcx
xor r9, rax
mov rax, r8
sub rax, qword [0x14033a078]
xor r9, rax
xor r9, r10
mov rdx, qword [rsp + 0x170]
xor r9, rdx
mov rax, r9
and rax, r12
je 0x14018c702
sub rax, 1
je 0x14018c5c0
sub rax, 1
je 0x14018c4cb
cmp rax, 1
jne 0x14018c7c1
mov r11, r8
imul r11, rbx
movabs rax, 0xd2215037e9223479
add rax, r9
xor r11, rax
ror r11, 4
shr r11, 0xc
xor r11, rdx
not r11
movabs rcx, 0x83575eb8f588
mov rdx, qword [0x14033a088]
add rdx, rcx
movabs rax, 0x4d230b0aeba27731
xor rdx, rax
movzx eax, r9b
movzx ecx, r11b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db90658197b
sub rax, rbx
mov rbx, rdx
xor rbx, rax
mov rcx, rbx
imul rcx, rdi
mov eax, 0xd783cb91
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 [r14 + rcx*8]
and cl, 0xf
movabs rdi, 0xfc6c9d23f8f93492
sub rdi, r11
shr rdi, cl
movabs rax, 0x4da9b2fb23095d91
mov rcx, qword [rsp + 0x28]
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 [r14 + rcx*8]
imul rax, r9
sub rax, qword [rsp + 0x178]
xor rdi, rax
jmp 0x14018c7c1
movabs rax, 0xaaaaaa1ad79a36af
mov rcx, r9
xor rcx, rax
movabs rax, 0x1206ed1597eae3
imul rcx, rax
movabs rdx, 0xfff17ca800f800d3
mov rax, r10
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8af18a0473
mov rdx, qword [rsp + 0x28]
imul rdx, rax
movabs rbx, 0x896c483c854cad5c
add rbx, rcx
add rbx, rdx
movabs rax, 0x277cd7be054ae1cf
mov rcx, rbx
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, rbx
not r8
imul r8, qword [r14 + rcx*8]
xor r8, 0xffffffff82cfe07f
lea ecx, [r9 - 0x13]
and cl, r15b
rol r8, cl
movabs rcx, 0xcf85a63b74371531
mov rax, qword [rsp + 0x20]
xor rax, rcx
movabs rcx, 0x7c7a7dc6ebc8eace
and rax, rcx
imul r8, rax
mov rcx, r8
ror rcx, 0x16
not rcx
movabs rax, 0x9b2de6b32a998fa0
imul rcx, rax
mov rax, rbx
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x178]
and cl, r15b
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x14018c7c1
movabs rax, 0x57fa67c629abf0b1
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, 0x4da18e72fe01a232
mov rax, qword [rsp + 0x170]
imul rax, rdx
xor rax, r11
not rax
shl rax, cl
xor r10, rax
mov cl, r8b
and cl, r15b
rol r10, cl
movabs rcx, 0x4da18e72fe01a233
add rcx, r9
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffff18d01fe5dcd
mov rax, qword [r14 + rcx*8]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a78b5e4082
or r10, rax
mov rdi, qword [0x14033a070]
imul rdi, r11
sub rdi, r8
mov rax, qword [rsp + 0x178]
sub rax, r10
xor rdi, rax
movabs rax, 0xc7a7c6a6da56408f
xor rdi, rax
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x170]
mul rcx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, rdi
div rcx
mov rcx, rdx
mov rdx, r9
imul rdx, r8
imul rdx, rdi
shr rdx, cl
mov rax, rbx
sub rax, rdx
sub rax, qword [rsp + 0x170]
movabs rdx, 0x789589415040c95
add rdx, rax
xor rdx, qword [rsp + 0x178]
movzx eax, bl
imul ecx, eax, 0xea
and cl, r15b
rol rdx, cl
not rdx
mov qword [rsp + 0x170], rdx
jmp 0x14018c7c1
mov rax, rsi
mul r10
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r10
sub rcx, rax
mov rax, r9
imul rax, qword [0x14033a080]
mov rdx, qword [r14 + rcx*8]
and rdx, rax
xor rdx, r10
and r10b, r15b
mov cl, r10b
mov r10, rdx
ror r10, cl
imul r10, r8
mov rcx, qword [rsp + 0x178]
not rcx
imul rcx, rbx
movabs rax, 0x7cd8a7de07a7116e
imul rcx, rax
mov rax, r10
imul rax, qword [rsp + 0x170]
xor rcx, rax
mov qword [rsp + 0x170], rcx
imul r15, qword [0x14033a060], 0xfffffffffa047270
mov rdx, qword [0x14033a068]
sub r15, rdx
mov al, cl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14018c7a4
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror r15, cl
movabs rax, 0x4da18e72fe01a233
add rax, r15
add rax, qword [rsp + 0x28]
mov qword [rsp + 0x178], rax
movabs rax, 0xff055d7bf7ec1ba3
xor r11, rax
mov rax, rsi
mul r11
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r11, rax
xor r10, qword [rsp + 0x170]
imul r10, qword [r14 + r11*8]
not r8
imul r8, r9
imul r8, qword [rsp + 0x178]
imul r8, rdi
movabs rcx, 0xf5ed7e87f05f517f
xor rcx, rbx
not rcx
xor rcx, r8
sub rcx, r10
call fcn.140173ee4
mov qword [0x1403489d0], rax
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x30], 0x12c62708
mov eax, dword [rsp + 0x30]
add eax, 0xb801cfb6
xor eax, 0x650b4a06
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x5e8d946d
xor eax, 0xbab8c2bc
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x463a1b79
add eax, ecx
xor eax, 0x721e691e
add eax, 0x65014503
xor eax, 0xf52f4d48
mov edx, dword [0x14033a030]
xor edx, 0x211ffa6d
sub edx, eax
mov eax, dword [0x14033a038]
xor eax, 0xdee00592
sub edx, eax
sub edx, ecx
add edx, 0x4bf1b257
xor edx, 0x2980f32a
mov dword [rsp + 0x30], edx
movsxd rax, edx
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x30], r13d
mov esi, r13d
mov r14d, 0x80317f9a
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 0x14018c92d
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x34e0589e
jmp 0x14018c91f
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 0x14018c8f9
cmp r10d, esi
jne 0x14018c9d4
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 0x14018c9d4
mov r15d, dword [rdi + 0x18]
test r15d, r15d
je 0x14018c9d4
mov r8d, dword [rdi + 0x20]
dec r15d
mov r9d, r15d
lea rdx, [r11 + r15*4]
mov ebx, dword [rdx + r8]
add rbx, r11
mov edx, 0x34e0589e
mov r8b, byte [rbx]
add rbx, r12
mov r10d, 0x4764996c
test r8b, r8b
je 0x14018c9c6
mov r11d, edx
movsx r8d, r8b
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 r8b, byte [rbx]
add rbx, r12
test r8b, r8b
jne 0x14018c986
mov dword [rsp + 0x170], r11d
mov r11, qword [rax + 0x30]
mov edx, dword [rsp + 0x170]
mov r9d, r15d
cmp edx, r14d
je 0x14018c9dc
test r15d, r15d
mov r8d, dword [rdi + 0x20]
jne 0x14018c95c
mov rax, qword [rax]
jmp 0x14018c8cd
mov edx, dword [rdi + 0x1c]
add rdx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + r9*2]
mov edx, dword [rdx + rax*4]
add rdx, r11
mov qword [rsp + 0x170], rdx
cmp rdx, rdi
jbe 0x14018ca6a
lea rax, [rcx + rdi]
cmp rdx, rax
jae 0x14018ca6a
mov esi, 0x34e0589e
mov r14d, esi
jmp 0x14018ca2b
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 rdx, r12
mov al, byte [rdx]
cmp al, 0x2e
jne 0x14018ca13
jmp 0x14018ca4b
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r10d
xor ecx, r14d
mov r14d, eax
imul r14d, ecx
add rdx, r12
mov al, byte [rdx]
test al, al
jne 0x14018ca33
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14018c9d4
mov dword [rsp + 0x38], r13d
mov dword [rsp + 0x38], 0x7f8a7d08
mov eax, dword [rsp + 0x38]
add eax, 0xb7273a36
xor eax, 0xcf8b492b
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
add eax, 0x2174fb53
xor eax, 0xbb96c292
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x8762d168
add eax, ecx
xor eax, 0x7317bba4
add eax, 0x6308923d
xor eax, 0xa19c9edd
mov r15d, dword [0x14033a030]
xor r15d, 0x212364c3
sub r15d, eax
mov eax, dword [0x14033a038]
xor eax, 0xdedc9b3c
sub r15d, eax
sub r15d, ecx
sub r15d, 0x384ee168
xor r15d, 0xe3e1aeb4
mov dword [rsp + 0x38], r15d
mov dword [rsp + 0x34], r13d
mov dword [rsp + 0x34], 0x42fec4a6
mov eax, dword [rsp + 0x34]
add eax, 0xb63c97b8
xor eax, 0x2d0d4841
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
sub eax, 0x648844c5
xor eax, 0xb4850f9a
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x91a150fb
add eax, ecx
xor eax, 0x2c235cfc
sub eax, 0x152bad57
xor eax, 0xb601f771
mov edx, dword [0x14033a030]
xor edx, 0x19270f4d
sub edx, eax
mov eax, dword [0x14033a038]
xor eax, 0xe6d8f0b2
sub edx, eax
sub edx, ecx
add edx, 0x3d1eaa09
xor edx, 0x3278d38a
mov dword [rsp + 0x34], edx
movsxd r14, edx
mov qword [rsp + 0x68], r13
movabs rax, 0x2ba694a382aaafd7
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x60], r13
movabs rax, 0x6d3d948857f03c32
mov qword [rsp + 0x60], rax
movabs rcx, 0xf33a52b44b12a583
add rcx, qword [rsp + 0x68]
movabs rax, 0xcad536625307dd17
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x7120fb80abb93911
add rcx, rax
movabs rax, 0xf8f8cd9a355ba997
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x87d654bbec98c142
add rcx, rax
mov rdi, qword [0x14033a040]
add rcx, rdi
movabs rax, 0x5a9179aa5a5f353f
xor rcx, rax
movabs rax, 0x5f627dc784cedc1a
sub rcx, rax
movabs rax, 0xb23b3cd33bc249db
xor rcx, rax
movabs rdx, 0xb483ce466fbf3167
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ad12c48ea
mov r10, qword [0x14033a038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b52ed3b715
mov r11, qword [0x14033a030]
mov rcx, r11
xor rcx, rax
movabs rsi, 0xe0b56d86c50bddbf
add rsi, rdx
add rsi, rcx
movabs rax, 0xc605a4b5f59f4132
xor rsi, rax
mov qword [rsp + 0x68], rsi
movabs rcx, 0xcc5ad490ac94b3a
add rcx, qword [rsp + 0x60]
movabs rax, 0x708b4fedad9c9ccd
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0x4ed45970ed7a1520
add rcx, rax
movabs rax, 0x707459b22a6294a
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0xd829ab47025c5350
add rcx, rax
add rcx, rdi
movabs rax, 0xa56e8658afb2e03c
xor rcx, rax
movabs rax, 0x2b02fde7cdfa3a24
sub rcx, rax
movabs rax, 0x77c4c32e0740f94a
xor rcx, rax
movabs rax, 0x95ab432bc1468a36
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0xec3316b5242b2380
xor r10, rax
sub rcx, r10
movabs rax, 0x13cce94adbd4dc7f
xor r11, rax
movabs rbx, 0x1f4a9147f6e717ae
add rbx, rcx
add rbx, r11
movabs rax, 0x5a968d09e9e89c80
xor rbx, rax
mov qword [rsp + 0x60], rbx
mov r9, qword [rsp + 0x40]
mov r8d, r15d
mov rdx, r14
mov rcx, r9
call qword [rsp + 0x170]
movsxd rcx, eax
and rbx, rsi
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x68], r13
mov dword [rsp + 0x34], r13d
mov dword [rsp + 0x38], r13d
cmp rcx, rbx
je 0x14018e76b
movabs rbx, 0x1c590620f6392c79
movabs r14, 0x978d1283d11accf8
mov r15, r13
movabs rax, 0x21d227b2c83e68f8
movabs r11, 0x6ed4e6c943ccd6ec
mov rcx, qword [0x14033a070]
imul rcx, rax
not rcx
movabs r8, 0x912b1936ba8e74c4
mov rax, qword [0x14033a060]
xor rax, r8
and rcx, rax
ror rcx, 0x12
shr rcx, 8
mov qword [rsp + 0x178], rcx
movabs rax, 0x81d1a1d8d9fc7430
mov r9, qword [0x14033a070]
imul r9, rax
add r9, rbx
movabs rax, 0xead5f7a67fffffff
xor r9, rax
shr r9, 0x1f
not r9
movabs r10, 0xe3a6f9df09c6d387
lea rcx, [r9 + r10]
movabs rdi, 0xaaaaaaaaaaaaaaab
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
lea rsi, [0x14033a060]
movzx ecx, byte [rsi + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xcb
mov eax, 0x8000003f
and ecx, eax
jge 0x14018ce7f
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rdx, r9
ror rdx, cl
not rdx
mov qword [rsp + 0x20], rdx
movabs r8, 0xa584d492cdaece0
mov rcx, rdx
imul rcx, r8
mov qword [rsp + 0x28], rcx
lea r8, [rcx + r10]
mov r10, r9
mov rdx, qword [rsp + 0x178]
imul r10, rdx
sub r10, r8
xor r10, r14
movzx ecx, r8b
mov dword [rsp + 0x170], ecx
xor ecx, 4
and ecx, 0xf
and ecx, eax
jge 0x14018ceda
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
rol r10, cl
movabs rcx, 0x2e3553a9d21075e0
mov rax, qword [rsp + 0x20]
imul rax, rcx
movabs rcx, 0x72ab47829e642ecf
add rax, rcx
xor r10, rax
mov rax, r8
sub rax, qword [0x14033a078]
xor r10, rax
xor r10, r11
mov rax, r10
and rax, r12
je 0x14018d200
sub rax, 1
je 0x14018d0fa
sub rax, 1
je 0x14018d020
cmp rax, 1
jne 0x14018d29b
mov r14, r8
imul r14, r9
movabs rax, 0x2025ef5d2b6c5b5d
add rax, r10
xor r14, rax
ror r14, 0x28
shr r14, 0xc
not r14
movabs rcx, 0x83571e4875e0
mov rdx, qword [0x14033a088]
add rdx, rcx
movabs rax, 0xe3247ca75c9586dd
xor rdx, rax
movzx eax, r14b
movzx ecx, r10b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db946a89923
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rbx
mov eax, 0x97734bc9
add rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8]
and cl, 0xf
movabs rbx, 0xb89a61439c011176
sub rbx, r14
shr rbx, cl
movabs rax, 0xe3af1e676fbe0e8d
mov rcx, qword [rsp + 0x28]
add rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [rsi + rcx*8]
imul rax, r10
sub rax, qword [rsp + 0x178]
xor rbx, rax
jmp 0x14018d29b
movabs rcx, 0xaaaaaa1a976ab6f7
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed55676abb
imul r9, rcx
movabs rdx, 0xffff7e8ab17a842b
mov rcx, qword [rsp + 0x28]
imul rcx, rdx
movabs rdx, 0x5c8d7771fc835171
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be45ba6197
mov rcx, r9
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
imul r8, qword [rsi + rcx*8]
xor r8, 0xffffffffc23f6027
lea ecx, [r10 - 0xb]
mov r14b, 0x3f
and cl, r14b
rol r8, cl
movabs rax, 0x4582440a0000000
imul r8, rax
mov rcx, r8
ror rcx, 0x12
not rcx
movabs rax, 0x9b2de6b2295b8ec0
imul rcx, rax
mov rax, r9
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x178]
and cl, r14b
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
movabs r14, 0x978d1283d11accf8
jmp 0x14018d29b
movabs rax, 0x7384daaf22344b9b
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, 0x6872ed7c2ee53307
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0x170]
and eax, 0x8000003f
jge 0x14018d151
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov cl, al
rol r11, cl
movabs rcx, 0xe3a6f9df09c6d387
add rcx, r10
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x620f6392c79
mov rax, qword [rsi + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7cbaec0da
or r11, rax
mov rbx, qword [0x14033a070]
imul rbx, r14
sub rbx, r8
mov rax, qword [rsp + 0x178]
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a69aa6c0d7
xor rbx, rax
mov rax, r10
imul rax, r8
imul rax, rbx
mov r15, r9
sub r15, rax
movabs rax, 0x789589455f48ccd
add r15, rax
xor r15, qword [rsp + 0x178]
movzx eax, r9b
imul ecx, eax, 0xf2
and cl, 0x3f
rol r15, cl
not r15
jmp 0x14018d29b
mov rcx, r10
imul rcx, qword [0x14033a080]
and rcx, qword [0x14033a080]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x2c
imul r11, r8
mov r15, rdx
not r15
imul r15, r9
movabs rax, 0x7cd8a7de47579136
imul r15, rax
imul rax, qword [0x14033a060], 0xfffffffff942a228
mov rdx, qword [0x14033a068]
sub rax, rdx
mov qword [rsp + 0x170], rax
mov al, r15b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14018d276
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0x170]
ror rax, cl
movabs rcx, 0xe3a6f9df09c6d387
add rax, rcx
add rax, qword [rsp + 0x28]
mov qword [rsp + 0x178], rax
movabs rax, 0xff055d7bb71c9bfb
xor r14, rax
mov rax, rdi
mul r14
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r14, rax
xor r11, r15
imul r11, qword [rsi + r14*8]
not r8
imul r8, r10
imul r8, qword [rsp + 0x178]
imul r8, rbx
movabs rcx, 0xf5ed7e87b0afd127
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.140173ec0
mov qword [0x1403489f0], rax
mov dword [rsp + 0x20], r13d
mov dword [rsp + 0x24], 0x3f5c9ce2
mov rax, qword gs:[0x60]
mov qword [rsp + 0x170], rax
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x170], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x98], rax
mov r15d, 0x2744a516
mov esi, dword [rsp + 0x20]
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0xc8], xmm0
movd ecx, xmm0
sub cx, 8
mov word [rsp + 0xc8], cx
test esi, esi
je 0x14018d3de
mov r9, qword [rsp + 0xd0]
mov qword [rsp + 0xb0], r9
movzx ecx, cx
shr rcx, 1
lea r10, [r9 + rcx*2]
mov qword [rsp + 0x170], r10
mov r8d, r15d
mov dword [rsp + 0x170], r15d
cmp r9, r10
je 0x14018d3d5
movsx ecx, byte [r9]
mov byte [rsp + 0x170], cl
mov edx, ecx
imul ecx, ecx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r8d
mov r8d, ecx
imul r8d, edx
mov dword [rsp + 0x170], r8d
mov dword [rsp + 0x170], r8d
add r9, 2
mov qword [rsp + 0xb0], r9
jmp 0x14018d38f
cmp r8d, esi
jne 0x14018d5c3
mov r9, qword [rax + 0x30]
mov qword [rsp + 0x170], r9
mov qword [rsp + 0xd8], r9
movsxd rcx, dword [r9 + 0x3c]
add rcx, r9
mov qword [rsp + 0x170], rcx
mov rcx, qword [rcx + 0x88]
mov qword [rsp + 0x78], rcx
mov r11d, ecx
add r11, r9
mov qword [rsp + 0xe0], r11
shr rcx, 0x20
mov dword [rsp + 0xe8], ecx
cmp r11, r9
je 0x14018d5c3
mov edi, dword [r11 + 0x18]
mov dword [rsp + 0x170], edi
mov dword [rsp + 0x80], edi
mov edx, edi
dec edi
mov dword [rsp + 0x80], edi
test edx, edx
je 0x14018d5c3
mov r8d, dword [r11 + 0x20]
add r8, r9
mov r10d, dword [r8 + rdi*4]
add r10, r9
mov qword [rsp + 0x170], r10
mov qword [rsp + 0xb8], r10
mov ebx, r15d
mov dword [rsp + 0x170], ebx
movsx edx, byte [r10]
mov byte [rsp + 0x170], dl
add r10, r12
mov qword [rsp + 0xb8], r10
test dl, dl
jne 0x14018d9ba
cmp ebx, dword [rsp + 0x24]
jne 0x14018d9b5
mov edx, dword [r11 + 0x1c]
add rdx, r9
mov qword [rsp + 0x170], rdx
mov eax, dword [r11 + 0x24]
add rax, r9
mov qword [rsp + 0x170], rax
movzx eax, word [rax + rdi*2]
mov ebx, dword [rdx + rax*4]
add rbx, r9
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x170], rbx
cmp rbx, r11
jbe 0x14018d5d3
lea rax, [r11 + rcx]
cmp rbx, rax
jae 0x14018d5d3
mov qword [rsp + 0x88], rbx
mov dword [rsp + 0x28], r15d
mov r8d, r15d
mov dword [rsp + 0x2c], r15d
mov r9d, r15d
mov edx, 0x4764996c
movsx eax, byte [rbx]
cmp al, 0x2e
je 0x14018d548
mov byte [rsp + 0x170], al
mov ecx, eax
imul eax, eax
add eax, 0x31
xor eax, edx
xor ecx, r9d
mov r9d, eax
imul r9d, ecx
mov dword [rsp + 0x170], r9d
mov dword [rsp + 0x28], r9d
add rbx, r12
mov qword [rsp + 0x88], rbx
jmp 0x14018d50c
add rbx, r12
mov qword [rsp + 0x88], rbx
movsx eax, byte [rbx]
test al, al
je 0x14018d584
mov byte [rsp + 0x170], al
mov ecx, eax
imul eax, eax
add eax, 0x31
xor eax, edx
xor ecx, r8d
mov r8d, eax
imul r8d, ecx
mov dword [rsp + 0x170], r8d
mov dword [rsp + 0x2c], r8d
jmp 0x14018d548
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x20], rax
mov rax, qword gs:[0x60]
mov qword [rsp + 0x170], rax
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x170], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x98], rax
mov esi, dword [rsp + 0x20]
mov rax, qword [rax]
mov qword [rsp + 0x98], rax
jmp 0x14018d342
mov qword [rsp + 0x70], r13
movabs rax, 0x88123ce6ebfc3fda
mov qword [rsp + 0x70], rax
movabs rcx, 0xf33a52b50bf17303
add rcx, qword [rsp + 0x70]
movabs rax, 0x9855366253089df6
xor rcx, rax
sub rcx, qword [0x14033a050]
sub rcx, qword [0x14033a058]
movabs rax, 0xedf047f56896358
sub rcx, rax
movabs rax, 0xf8f8cd99717960e1
xor rcx, rax
sub rcx, qword [0x14033a048]
movabs rax, 0x47d654bae6ca514f
add rcx, rax
mov rdx, qword [0x14033a040]
add rcx, rdx
movabs rax, 0x5a9179a97e6112d9
xor rcx, rax
movabs rax, 0x5f627dc6fd33442c
sub rcx, rax
movabs rax, 0x463b3cd2db4cdc24
xor rcx, rax
movabs rax, 0x3483ce45b4267b85
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94ad42fc420
mov rax, qword [0x14033a038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b52bd03bdf
mov rcx, qword [0x14033a030]
xor rcx, rax
movabs rbx, 0xe0b56d89cb8a9775
add rbx, rdx
add rbx, rcx
movabs rax, 0x4ab44e7691cf37e0
xor rbx, rax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x170], rbx
mov qword [rsp + 0x70], rbx
mov byte [rsp + 0x170], r13b
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x170]
call fcn.14017b3a0
mov rcx, rax
mov qword [rsp + 0x178], rax
mov rax, r13
mov qword [rsp + 0x90], rax
cmp rax, 0x31
jae 0x14018d932
xor edx, edx
movabs rcx, 0x13cce94adbfb7614
div rcx
add dl, 0x30
mov byte [rsp + 0x170], dl
mov r15b, dl
sar r15b, 7
or r15b, dl
mov byte [rsp + 0x170], r15b
mov r14b, r15b
shl r14b, 6
mov al, r15b
sar al, 2
or r14b, al
mov byte [rsp + 0x170], r14b
mov byte [rsp + 0x170], r14b
mov byte [rsp + 0x170], r14b
mov dl, r15b
shl dl, 7
mov al, r15b
sar al, 1
or dl, al
mov byte [rsp + 0x170], dl
mov byte [rsp + 0x170], r14b
mov sil, r15b
sar sil, 3
mov al, r15b
shl al, 5
or sil, al
mov byte [rsp + 0x170], sil
mov byte [rsp + 0x170], r14b
mov byte [rsp + 0x170], sil
mov r9b, r15b
sar r9b, 5
mov al, r15b
shl al, 3
or r9b, al
mov byte [rsp + 0x170], r9b
mov byte [rsp + 0x170], r14b
mov byte [rsp + 0x170], r9b
mov r8b, r15b
sar r8b, 4
mov al, r15b
shl al, 4
or r8b, al
mov byte [rsp + 0x170], r8b
mov byte [rsp + 0x170], sil
mov byte [rsp + 0x170], r8b
mov r10b, r15b
add r10b, r10b
mov dil, r15b
sar dil, 7
mov cl, dil
or cl, r10b
mov byte [rsp + 0x170], cl
mov byte [rsp + 0x170], sil
mov byte [rsp + 0x170], r14b
mov byte [rsp + 0x170], r14b
or dil, r15b
mov byte [rsp + 0x170], dil
mov r11b, r15b
not r11b
mov rbx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x178]
mov bl, byte [rbx + rax]
sub bl, r14b
sub bl, 2
mov eax, 4
sub al, r14b
xor bl, al
sub bl, dl
sub bl, byte [0x14033a050]
sub bl, byte [0x14033a058]
sub bl, 0x3f
add bl, r15b
add bl, r14b
lea eax, [r14 + 7]
add al, r15b
xor bl, al
sub bl, r9b
sub bl, sil
sub bl, r15b
sub bl, byte [0x14033a048]
sub bl, 0x50
add bl, r14b
mov rdx, qword [0x14033a040]
add bl, sil
add bl, dl
mov al, r8b
sub al, r9b
add al, r14b
add al, r15b
xor bl, al
mov al, r15b
sub al, r8b
xor al, r15b
sub bl, al
sub bl, sil
add bl, 0x30
add bl, r15b
sub cl, 0x50
add sil, cl
xor bl, sil
sub bl, r10b
add bl, 0x51
add bl, r14b
add bl, dl
add bl, r14b
not bl
mov al, r11b
xor al, byte [0x14033a038]
sub bl, al
mov al, r15b
xor al, 0x40
sub bl, al
mov al, r15b
xor al, byte [0x14033a030]
add bl, al
sub bl, dil
movsx eax, r11b
movsx ecx, r15b
imul ecx, eax
xor bl, cl
mov byte [rsp + 0x170], bl
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x178]
mov byte [rax + rcx], bl
add rax, r12
jmp 0x14018d708
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0xa8], 0x31
mov r8, qword [rsp + 0x28]
mov rdx, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x40]
call qword [rsp + 0x20]
nop
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x14018d998
mov rax, r13
mov qword [rsp + 0xc0], rax
cmp rax, qword [rsp + 0xa8]
jae 0x14018d998
mov byte [rcx + rax], r13b
add rax, r12
mov qword [rsp + 0xc0], rax
mov rcx, qword [rsp + 0xa0]
jmp 0x14018d975
mov qword [rsp + 0x70], r13
mov byte [rsp + 0x178], r13b
lea rcx, [rsp + 0x178]
call fcn.14017b3fc
nop
jmp 0x14018d9ee
jmp 0x14018d441
mov r8d, edx
imul edx, edx
add edx, 0x31
xor edx, 0x4764996c
xor r8d, ebx
mov ebx, edx
imul ebx, r8d
mov dword [rsp + 0x170], ebx
mov dword [rsp + 0x170], ebx
jmp 0x14018d47c
mov r14b, 0x3f
lea rsi, [0x14033a060]
movabs rdi, 0xaaaaaaaaaaaaaaab
movabs rax, 0xe5edaea4c33fab8c
mov qword [rsp + 0x20], rax
movabs rax, 0xb46cfa3fc0000000
movabs r9, 0xd43c0f3f27411835
mov r8, qword [0x14033a070]
imul r8, rax
movabs rax, 0xcc62c63870000000
xor r8, rax
mov qword [rsp + 0x178], r8
mov rcx, r8
imul rcx, r9
mov qword [rsp + 0x78], rcx
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r8
and r10, r9
imul r10, qword [rsi + rcx*8]
movabs rax, 0x97f559a92752a130
imul r10, rax
shr r10, 3
movabs rax, 0x481e0426167242da
xor r10, rax
movabs rax, 0xffffff57d24012ab
mov r15, r8
imul r15, rax
sub r15, 0x68413bc
xor r15, r10
xor r15, qword [0x14033a060]
mov rax, r10
imul rax, qword [0x14033a070]
movabs rcx, 0xb9de928bdbf3ad8a
imul rax, rcx
not rax
and r15, rax
ror r15, 0xe
shr r15, 8
movabs r9, 0x2bc3f0c0d8bee7cb
lea rcx, [r8 + r9]
xor rcx, 0xffffffffe57da687
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x49c71e2aaf731d78
mov rbx, qword [rsi + rcx*8]
imul rbx, rax
sub rbx, r9
movabs rcx, 0x2c530ad1b3e8ff0
mov rax, r10
imul rax, rcx
xor rbx, rax
shr rbx, 0x1f
not rbx
lea rcx, [rbx + r9]
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, bl
movzx ecx, byte [rsi + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x9b
and ecx, 0x8000003f
jge 0x14018db6d
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, rbx
xor rax, r8
ror rax, cl
not rax
imul rax, r10
imul rcx, rax, 0xfffffffff97bec44
mov qword [rsp + 0x28], rcx
add r9, rcx
movzx ecx, r9b
mov dword [rsp + 0x170], ecx
xor cl, 4
and cl, 0xf
mov r11, rbx
imul r11, r15
sub r11, r9
movabs rdx, 0xe5edaea4c33fab8c
xor r11, rdx
rol r11, cl
movabs rcx, 0x574759939e124a14
imul rax, rcx
movabs rcx, 0x19bd06037333faf9
sub rax, rcx
xor r11, rax
mov rax, r9
sub rax, qword [0x14033a078]
xor r11, rax
xor r11, r10
xor r11, r8
mov rax, r11
and rax, r12
je 0x14018df82
sub rax, 1
je 0x14018de00
sub rax, 1
je 0x14018dd03
cmp rax, 1
jne 0x14018e027
mov rcx, r9
imul rcx, rbx
movabs rax, 0x9db637a8f3965899
add rax, r11
xor rcx, rax
ror rcx, 0x34
shr rcx, 0xc
xor rcx, r8
not rcx
mov qword [rsp + 0x20], rcx
movzx eax, r11b
movzx ecx, cl
imul ecx, eax
and cl, r14b
movabs rdx, 0x83573902a390
add rdx, qword [0x14033a088]
movabs rax, 0x2b4175b8aaa764c1
xor rdx, rax
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db961e24f73
sub rax, rbx
mov rbx, rdx
xor rbx, rax
mov rcx, rbx
movabs rax, 0xd43c0f3f27411835
imul rcx, rax
mov eax, 0xb0399d99
add rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8]
and cl, 0xf
movabs r14, 0x81be15a89701c6ea
sub r14, qword [rsp + 0x20]
shr r14, cl
movabs rax, 0x2bcc15491b7cd521
mov rcx, qword [rsp + 0x28]
add rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r11
imul rax, qword [rsi + rcx*8]
imul rax, r11
sub rax, r15
xor r14, rax
jmp 0x14018e031
movabs rax, 0xaaaaaa1ab02060a7
mov rcx, r11
xor rcx, rax
movabs rax, 0x1206ed722dbceb
imul rcx, rax
movabs rdx, 0xfff17ca8674256db
mov rax, r10
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a9630527b
mov rdx, qword [rsp + 0x28]
imul rdx, rax
movabs rbx, 0xd29e4daa4838b704
add rbx, rcx
add rbx, rdx
lea ecx, [r11 - 0x1b]
and cl, r14b
movabs rax, 0x277cd7be62f0b7c7
mov r8, rbx
xor r8, rax
mov rax, rdi
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r8, rax
mov r9, rbx
not r9
imul r9, qword [rsi + r8*8]
xor r9, 0xffffffffe575b677
rol r9, cl
movabs rcx, 0xe79d8abf738d4339
mov rax, qword [rsp + 0x78]
xor rax, rcx
movabs rcx, 0x7c7a7dc68c72bcc6
and rax, rcx
imul r9, rax
mov cl, r15b
and cl, r14b
mov rdx, r9
ror rdx, 0x36
not rdx
movabs rax, 0x9b2de6b2b470d780
imul rdx, rax
mov rax, rbx
sub rax, r9
lea r14, [rdx + rax*4]
ror r14, cl
movabs rax, 0xd43c0f3f27411835
imul r14, rax
mov r8, qword [rsp + 0x178]
jmp 0x14018e031
movabs rax, 0xbf542ec24a2e5a75
imul r11, rax
mov eax, dword [rsp + 0x170]
and eax, 0x8000003f
mov dword [rsp + 0x170], eax
jge 0x14018de33
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov dword [rsp + 0x170], eax
movabs rax, 0xd79435e50d79435f
mul r11
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r11b
sub cl, dl
movabs rdx, 0x2bc3f0c0d8bee7ca
mov rax, r8
imul rax, rdx
movabs r8, 0xe5edaea4c33fab8c
xor rax, r8
not rax
shl rax, cl
xor r10, rax
mov ecx, dword [rsp + 0x170]
rol r10, cl
movabs rcx, 0x2bc3f0c0d8bee7cb
add rcx, r11
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xf3f27411835
mov rax, qword [rsi + rcx*8]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a7ece4168a
or r10, rax
mov rcx, qword [0x14033a070]
imul rcx, r8
sub rcx, r9
mov rax, r15
sub rax, r10
xor rcx, rax
movabs rax, 0xc7a7c6a6bdec1687
xor rcx, rax
mov qword [rsp + 0x170], rcx
movzx eax, bl
imul r8d, eax, 0xe2
and r8b, r14b
movabs rax, 0xcccccccccccccccd
mov r14, qword [rsp + 0x178]
mul r14
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, r14
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, qword [rsp + 0x170]
div rcx
mov rcx, rdx
mov rdx, r11
imul rdx, r9
imul rdx, qword [rsp + 0x170]
shr rdx, cl
mov rax, rbx
sub rax, rdx
sub rax, r14
movabs r14, 0x789589472be5a9d
add r14, rax
xor r14, r15
mov qword [rsp + 0x178], r14
mov cl, r8b
mov r8, r14
rol r8, cl
not r8
mov r14, qword [rsp + 0x170]
jmp 0x14018e031
mov cl, r10b
and cl, r14b
mov rax, rdi
mul r10
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, r10
sub rdx, rax
mov rax, r11
imul rax, qword [0x14033a080]
mov r8, qword [rsi + rdx*8]
and r8, rax
xor r10, r8
ror r10, cl
imul r10, r9
not r15
imul r15, rbx
movabs r8, 0x7cd8a7de601d4766
imul r8, r15
mov rax, r10
imul rax, qword [rsp + 0x178]
xor r8, rax
mov al, r8b
not al
movzx ecx, al
mov rdx, qword [0x14033a068]
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14018e004
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
imul r15, qword [0x14033a060], 0xfffffffff97bec44
sub r15, rdx
ror r15, cl
movabs rcx, 0x2bc3f0c0d8bee7cb
add r15, rcx
add r15, qword [rsp + 0x28]
movabs r14, 0xd43c0f3f27411835
movabs rax, 0xff055d7b90564dab
mov rcx, qword [rsp + 0x20]
xor rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r10, r8
imul r10, qword [rsi + rcx*8]
not r9
imul r9, r11
imul r9, r15
imul r9, r14
movabs rcx, 0xf5ed7e8797e50777
xor rcx, rbx
not rcx
xor rcx, r9
sub rcx, r10
call fcn.140173d7c
mov qword [0x1403489e0], rax
mov r14d, r13d
mov r15d, 0x943db2fa
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 r14d, r14d
je 0x14018e105
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0xa95a86f6
jmp 0x14018e0f7
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 0x14018e0d7
cmp r9d, r14d
jne 0x14018e25c
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 0x14018e25c
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x14018e25c
mov r9d, dword [rbx + 0x20]
dec r8d
mov dword [rsp + 0x20], r8d
mov edx, r8d
mov qword [rsp + 0x78], rdx
lea rdx, [r9 + r8*4]
mov r9d, dword [rdx + r11]
add r9, r11
mov edx, 0xa95a86f6
mov r10b, byte [r9]
mov byte [rsp + 0x170], r10b
add r9, r12
test r10b, r10b
mov r10d, 0x4764996c
je 0x14018e1b8
mov r11d, edx
mov dl, byte [rsp + 0x170]
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, r10d
xor r8d, r11d
mov r11d, edx
imul r11d, r8d
mov dl, byte [r9]
add r9, r12
test dl, dl
jne 0x14018e17b
mov dword [rsp + 0x178], r11d
mov r11, qword [rax + 0x30]
mov r8d, dword [rsp + 0x20]
mov edx, dword [rsp + 0x178]
cmp edx, r15d
je 0x14018e1cf
test r8d, r8d
mov r9d, dword [rbx + 0x20]
jne 0x14018e138
jmp 0x14018e25c
mov edx, dword [rbx + 0x24]
add rdx, r11
mov rax, qword [rsp + 0x78]
movzx r8d, word [rdx + rax*2]
mov edx, dword [rbx + 0x1c]
add rdx, r11
mov r9d, dword [rdx + r8*4]
add r9, r11
cmp r9, rbx
jbe 0x14018e264
lea rax, [rcx + rbx]
cmp r9, rax
jae 0x14018e264
mov r14d, 0xa95a86f6
mov r15d, r14d
jmp 0x14018e220
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r10d
xor ecx, r14d
mov r14d, eax
imul r14d, ecx
add r9, r12
mov al, byte [r9]
cmp al, 0x2e
jne 0x14018e205
jmp 0x14018e241
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r10d
xor ecx, r15d
mov r15d, eax
imul r15d, ecx
add r9, r12
mov al, byte [r9]
test al, al
jne 0x14018e229
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14018e0aa
mov rcx, qword [rsp + 0x40]
call r9
movabs rbx, 0x9e149abf9ea7084c
movabs rax, 0xaeaefb321edb1fe8
movabs r15, 0xe49e4deed22d204b
movabs r14, 0x86a62f2f27e1b08d
mov r8, qword [0x14033a070]
imul r8, rax
not r8
movabs rdx, 0x61eb65401bd65b74
mov rax, qword [0x14033a060]
xor rax, rdx
and r8, rax
ror r8, 0x22
shr r8, 8
mov qword [rsp + 0x180], r8
movabs rax, 0xb2839a4ddd09dbf0
mov r10, qword [0x14033a070]
imul r10, rax
movabs r9, 0x7959d0d0d81e4f73
sub r10, r9
movabs rax, 0x408a3af780000000
xor r10, rax
shr r10, 0x1f
not r10
lea rcx, [r10 + r9]
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [rsi + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x4f
and ecx, 0x8000003f
jge 0x14018e339
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rdx, r10
ror rdx, cl
not rdx
movabs rcx, 0x8008c11901c674a0
mov rax, rdx
imul rax, rcx
mov qword [rsp + 0x178], rax
add r9, rax
movzx ecx, r9b
mov dword [rsp + 0x170], ecx
and cl, 0xf
mov r11, r10
imul r11, r8
sub r11, r9
xor r11, r15
rol r11, cl
mov rax, r9
sub rax, qword [0x14033a078]
xor r11, rax
movabs rax, 0x326c208f4b1c3c20
imul rdx, rax
movabs rax, 0x1cc52488c79c2da9
sub rdx, rax
xor r11, rdx
xor r11, rbx
mov rax, r11
and rax, r12
je 0x14018e68a
sub rax, 1
je 0x14018e589
sub rax, 1
je 0x14018e4b5
cmp rax, 1
jne 0x14018e711
mov r15, r9
imul r15, r10
movabs rax, 0x6da936e27277fc0d
add rax, r11
xor r15, rax
ror r15, 0x18
shr r15, 0xc
not r15
movzx eax, r11b
movzx ecx, r15b
imul ecx, eax
and cl, 0x3f
movabs rdx, 0x835729f0095c
add rdx, qword [0x14033a088]
movabs rax, 0x79db55a8baf566ad
xor rdx, rax
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97110e5a7
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
imul rcx, r14
mov eax, 0xa0cb374d
add rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8]
and cl, 0xf
movabs r14, 0x4fb72df4c144220a
sub r14, r15
shr r14, cl
movabs rax, 0x7961f5592a6d96f5
mov rcx, qword [rsp + 0x178]
add rcx, rax
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r11
imul rax, qword [rsi + rcx*8]
imul rax, r11
sub rax, r8
xor r14, rax
jmp 0x14018e711
movabs rcx, 0xaaaaaa1aa0d2ca73
mov r10, r11
xor r10, rcx
movabs rcx, 0x1206ed62df163f
imul r10, rcx
movabs rcx, 0xffff7e8a86c2f8af
mov rdx, qword [rsp + 0x178]
imul rdx, rcx
movabs rcx, 0x402bbb201e80bc09
add r10, rcx
add r10, rdx
lea ecx, [r11 - 0xf]
and cl, 0x3f
movabs rax, 0x277cd7be72021d13
mov r8, r10
xor r8, rax
mov rax, rdi
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r8, rax
mov r9, r10
not r9
imul r9, qword [rsi + r8*8]
xor r9, 0xfffffffff5871ca3
rol r9, cl
movabs rax, 0x243a59c680000000
imul r9, rax
mov r8, qword [rsp + 0x180]
mov cl, r8b
and cl, 0x3f
mov rdx, r9
ror rdx, 0x25
not rdx
movabs rax, 0x9b2de6b2f7ba7cd0
imul rdx, rax
mov rax, r10
sub rax, r9
lea rdx, [rdx + rax*4]
ror rdx, cl
mov rax, r14
mov r14, rdx
imul r14, rax
jmp 0x14018e711
movabs rax, 0xad05696855da2611
imul r11, rax
mov r14d, dword [rsp + 0x170]
and r14d, 0x8000003f
jge 0x14018e5b2
sub r14d, r12d
or r14d, 0xffffffc0
add r14d, r12d
movabs rax, 0xd79435e50d79435f
mul r11
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r11b
sub cl, dl
movabs rdx, 0x1b61b2112dd2dfb4
shl rdx, cl
mov rax, rbx
mov rbx, rdx
xor rbx, rax
mov cl, r14b
rol rbx, cl
movabs rcx, 0x7959d0d0d81e4f73
add rcx, r11
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffef2f27e1b08d
mov rax, qword [rsi + rcx*8]
imul rax, rdx
xor rbx, rax
movabs rax, 0xffffc7a7fc16bc5e
or rbx, rax
mov r14, qword [0x14033a070]
imul r14, r15
sub r14, r9
mov rax, r8
sub rax, rbx
xor r14, rax
movabs rax, 0xc7a7c6a6ad1ebc53
xor r14, rax
movzx eax, r10b
imul ecx, eax, 0xf6
and cl, 0x3f
mov rax, r11
imul rax, r9
imul rax, r14
mov r13, r10
sub r13, rax
movabs rax, 0x7895894624cf049
add r13, rax
xor r13, r8
rol r13, cl
not r13
jmp 0x14018e711
mov rcx, r11
imul rcx, qword [0x14033a080]
and rcx, qword [0x14033a070]
mov rax, rbx
mov rbx, rcx
xor rbx, rax
ror rbx, 0xc
imul rbx, r9
mov r13, r8
not r13
imul r13, r10
movabs rax, 0x7cd8a7de70efedb2
imul r13, rax
mov al, r13b
not al
movzx ecx, al
mov r8, qword [0x14033a068]
movzx eax, r8b
xor ecx, eax
and ecx, 0x8000003f
jge 0x14018e6eb
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
imul rdx, qword [0x14033a060], 0xffffffff85715338
sub rdx, r8
ror rdx, cl
movabs r8, 0x7959d0d0d81e4f73
add r8, rdx
add r8, qword [rsp + 0x178]
movabs rax, 0xff055d7b80a4e77f
xor r15, rax
mov rax, rdi
mul r15
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r15, rax
xor rbx, r13
imul rbx, qword [rsi + r15*8]
not r9
imul r9, r11
imul r9, r8
imul r9, r14
movabs rcx, 0xf5ed7e878717ada3
xor rcx, r10
not rcx
xor rcx, r9
sub rcx, rbx
call fcn.140173b18
mov qword [0x1403489b0], rax
mov rax, qword [rsp + 0x48]
jmp 0x14018bc4d