Function at 0x14010ad4c
Capabilities:
Access peb ldr_data
Encode data using base64
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, 0x1e0
movabs rax, 0x64cf4160fcdb421f
mov qword [rsp + 0x230], rax
movabs r8, 0xe3a720052d720382
xor r13d, r13d
mov edi, r13d
movabs rbx, 0xc8e26ff86ff96b91
movabs rax, 0xe340a48a199f41d6
mov r15, qword [0x140278070]
imul r15, rax
not r15
movabs rcx, 0x371d90078c1e5d31
mov rax, qword [0x140278060]
xor rax, rcx
and r15, rax
ror r15, 5
shr r15, 8
movabs rax, 0x2a167a1170a46e40
mov r10, qword [0x140278088]
imul r10, rax
movabs r9, 0x1c58dffad28dfc7e
sub r10, r9
movabs rax, 0x68b3ee0b00000000
xor r10, rax
shr r10, 0x1f
not r10
lea rcx, [r10 + r9]
movabs rsi, 0xaaaaaaaaaaaaaaab
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r14, [0x140278060]
movzx eax, r10b
movzx ecx, byte [r14 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x67
and ecx, 0x8000003f
lea r12d, [r13 + 1]
jge 0x14010ae48
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, r10
ror rax, cl
not rax
movabs rdx, 0x35a22bc53b6ad0a0
mov rcx, rax
imul rcx, rdx
mov qword [rsp + 0x228], rcx
add r9, rcx
mov r11, r10
imul r11, r15
sub r11, r9
movabs rdx, 0x64cf4160fcdb421f
xor r11, rdx
movzx ecx, r9b
mov dword [rsp + 0x220], ecx
xor cl, 0xf8
and cl, 0xf
rol r11, cl
movabs rcx, 0xc7add93773efd140
imul rax, rcx
movabs rcx, 0x6f01eb16d3d44e04
sub rax, rcx
xor r11, rax
mov rax, r9
sub rax, qword [0x140278078]
xor r11, rax
xor r11, rbx
mov rax, r11
and eax, 2
je 0x14010b1b9
sub rax, 1
je 0x14010b0c5
sub rax, 1
je 0x14010aff9
cmp rax, 1
jne 0x14010b23f
mov rcx, r9
imul rcx, r10
movabs rax, 0xc94619aefcd6d6d2
add rax, r11
xor rcx, rax
ror rcx, 0x3c
shr rcx, 0xc
not rcx
mov qword [rsp + 0x230], rcx
movabs rdx, 0x835727a55374
mov r8, qword [0x140278088]
add r8, rdx
movabs rax, 0x1cda5a82be338f8a
xor r8, rax
mov eax, ecx
imul eax, r11d
and eax, 0x3f
mov ecx, 0x40
sub ecx, eax
mov rdx, r8
shl rdx, cl
mov ecx, eax
shr r8, cl
or rdx, r8
shl rdx, 0xf
movabs rax, 0xf7ca7db97f45bf8f
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
movabs rax, 0xe3a720052d720382
imul rcx, rax
mov eax, 0xae9e6d65
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 r8, 0xc85fb66a53259f1d
sub r8, qword [rsp + 0x230]
shr r8, cl
movabs rax, 0x1c6104832ea81a28
mov rcx, qword [rsp + 0x228]
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r11
imul rax, qword [r14 + rcx*8]
imul rax, r11
sub rax, r15
xor r8, rax
jmp 0x14010b23f
movabs rcx, 0xaaaaaa1aae87905b
mov r10, r11
xor r10, rcx
movabs rcx, 0x1206ed6c8a4c17
imul r10, rcx
movabs rdx, 0xffff7e8a8897a287
mov rcx, qword [rsp + 0x228]
imul rcx, rdx
movabs rdx, 0xbca7018c3374b743
add r10, rdx
add r10, rcx
movabs rax, 0x277cd7be7c57473b
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 [r14 + rcx*8]
xor r9, 0xfffffffffbd2468b
lea ecx, [r11 + 0x19]
and cl, 0x3f
rol r9, cl
movabs rax, 0x6060158400000000
imul r9, rax
mov rcx, r9
ror rcx, 0x19
not rcx
movabs rax, 0x9b2de6b2ceef1470
imul rcx, rax
mov rax, r10
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, r15b
and cl, 0x3f
ror rdx, cl
mov rax, r8
mov r8, rdx
imul r8, rax
jmp 0x14010b23f
movabs rax, 0xef00b60b26d91fc
imul r11, rax
movabs rax, 0xd79435e50d79435f
mul r11
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r11b
sub cl, dl
movabs rdx, 0x9b30be9f0324bde0
shl rdx, cl
mov rax, rbx
mov rbx, rdx
xor rbx, rax
mov ecx, dword [rsp + 0x220]
and cl, 0x3f
rol rbx, cl
movabs rcx, 0x1c58dffad28dfc7e
add rcx, r11
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffe0052d720382
mov rax, qword [r14 + rcx*8]
imul rax, rdx
xor rbx, rax
movabs rax, 0xffffc7a7f243e676
or rbx, rax
mov r8, qword [0x140278070]
movabs rax, 0x64cf4160fcdb421f
imul r8, rax
sub r8, r9
mov rax, r15
sub rax, rbx
xor r8, rax
movabs rax, 0xc7a7c6a6a34be67b
xor r8, rax
mov rax, r11
imul rax, r9
imul rax, r8
mov rdi, r10
sub rdi, rax
movabs rax, 0x78958946c19aa61
add rdi, rax
xor rdi, r15
movzx eax, r10b
imul ecx, eax, 0x1e
and cl, 0x3f
rol rdi, cl
not rdi
jmp 0x14010b23f
mov rcx, r11
imul rcx, qword [0x140278080]
and rcx, qword [0x140278088]
mov rax, rbx
mov rbx, rcx
xor rbx, rax
ror rbx, 0x11
imul rbx, r9
mov rdi, r15
not rdi
imul rdi, r10
movabs rax, 0x7cd8a7de7ebab79a
imul rdi, rax
imul r15, qword [0x140278060], 0xffffffffe3e736a0
mov rdx, qword [0x140278068]
sub r15, rdx
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010b227
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror r15, cl
movabs rax, 0x1c58dffad28dfc7e
add r15, rax
add r15, qword [rsp + 0x228]
movabs rax, 0xff055d7b8ef1bd57
mov rcx, qword [rsp + 0x230]
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor rbx, rdi
imul rbx, qword [r14 + rcx*8]
not r9
imul r9, r11
imul r9, r15
imul r9, r8
movabs rcx, 0xf5ed7e878942f78b
xor rcx, r10
not rcx
xor rcx, r9
sub rcx, rbx
call fcn.1400f4bd4
mov qword [0x140279160], rax
mov edi, r13d
mov r15d, 0xc3931b0e
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 edi, edi
je 0x14010b318
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r8 + rcx*2]
mov r9d, 0xa3cb0daa
jmp 0x14010b30a
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, r10d
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r11
jne 0x14010b2ed
cmp r9d, edi
jne 0x14010b3d6
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 0x14010b3d6
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x14010b3d6
mov r11d, dword [rbx + 0x20]
dec r8d
mov dword [rsp + 0x20], r8d
mov edx, r8d
mov qword [rsp + 0x30], rdx
lea rdx, [r11 + r8*4]
mov r11d, dword [rdx + r9]
add r11, r9
mov edx, 0xa3cb0daa
mov r8b, byte [r11]
mov byte [rsp + 0x220], r8b
add r11, r12
test r8b, r8b
mov r8d, dword [rsp + 0x20]
je 0x14010b3c4
mov r9d, edx
mov dl, byte [rsp + 0x220]
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, r10d
xor r8d, r9d
mov r9d, edx
imul r9d, r8d
mov dl, byte [r11]
add r11, r12
test dl, dl
jne 0x14010b38d
mov dword [rsp + 0x28], r9d
mov r9, qword [rax + 0x30]
mov r8d, dword [rsp + 0x20]
mov edx, dword [rsp + 0x28]
cmp edx, r15d
je 0x14010b3de
test r8d, r8d
mov r11d, dword [rbx + 0x20]
jne 0x14010b34b
mov rax, qword [rax]
jmp 0x14010b2c1
mov edx, dword [rbx + 0x1c]
add rdx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
mov r8, qword [rsp + 0x30]
movzx eax, word [rax + r8*2]
mov r8d, dword [rdx + rax*4]
add r8, r9
cmp r8, rbx
jbe 0x14010b46c
lea rax, [rcx + rbx]
cmp r8, rax
jae 0x14010b46c
mov edi, 0xa3cb0daa
mov r15d, edi
jmp 0x14010b42b
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r10d
xor ecx, edi
mov edi, eax
imul edi, ecx
add r8, r12
mov al, byte [r8]
cmp al, 0x2e
jne 0x14010b413
jmp 0x14010b44c
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 r8, r12
mov al, byte [r8]
test al, al
jne 0x14010b434
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14010b3d6
mov dword [rsp + 0x38], r13d
mov dword [rsp + 0x38], 0x32eb2f5a
mov eax, dword [rsp + 0x38]
add eax, 0xeac000b6
xor eax, 0x960b7cc4
sub eax, dword [0x140278058]
sub eax, dword [0x140278050]
sub eax, 0x5f25cf00
xor eax, 0x872f98f8
sub eax, dword [0x140278048]
mov rcx, qword [0x140278040]
add eax, 0x8158eff5
add eax, ecx
xor eax, 0x383d793a
add eax, 0x708327f7
xor eax, 0x53ce9ed7
mov edx, dword [0x140278030]
xor edx, 0x205501a9
sub edx, eax
mov eax, dword [0x140278038]
xor eax, 0xdfaafe56
sub edx, eax
sub edx, ecx
add edx, 0x48d26c45
xor edx, 0x856e3cc6
mov dword [rsp + 0x38], edx
movsxd rcx, edx
call r8
mov r15, rax
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0xa0], r13
movabs rax, 0xbc3e033053fdfbd2
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], r13
movabs rax, 0xab535078c031bffd
mov qword [rsp + 0xa8], rax
movabs rcx, 0xf33a52b7ed419103
add rcx, qword [rsp + 0xa8]
movabs rax, 0xb6553662530b7f46
xor rcx, rax
sub rcx, qword [0x140278050]
sub rcx, qword [0x140278058]
movabs rax, 0xedf047f5f2d53b2
sub rcx, rax
movabs rax, 0xf8f8cd9684a40269
xor rcx, rax
sub rcx, qword [0x140278048]
movabs rax, 0x47d654b6fdf21096
add rcx, rax
mov rdi, qword [0x140278040]
add rcx, rdi
movabs rax, 0x5a9179a63561b0a1
xor rcx, rax
movabs rax, 0x5f627dc48ec5eef4
sub rcx, rax
movabs rax, 0x563b3cd16a8dc2a3
xor rcx, rax
movabs rdx, 0x3483ce42e6ff8e57
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94adfb50498
mov r10, qword [0x140278038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5204afb67
mov r11, qword [0x140278030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d953c524fed
add rdx, rax
add rdx, rcx
movabs rax, 0x6f72e0d4d145e128
xor rdx, rax
mov qword [rsp + 0xa8], rdx
movabs rcx, 0xf33a52b7ecb43f83
add rcx, qword [rsp + 0xa0]
movabs rax, 0x64d53662530b7eb8
xor rcx, rax
sub rcx, qword [0x140278050]
sub rcx, qword [0x140278058]
movabs rax, 0x7120fb80a0d45443
add rcx, rax
movabs rax, 0xf8f8cd968533892f
xor rcx, rax
sub rcx, qword [0x140278048]
movabs rax, 0x87d654b6feb1e4b7
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a63602e197
xor rcx, rax
movabs rax, 0x5f627dc48e6fb842
sub rcx, rax
movabs rax, 0xe23b3cd16ad46fce
xor rcx, rax
movabs rax, 0xb483ce42e789029d
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94adfb2cf52
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b5204d30ad
xor r11, rax
movabs rax, 0xe0b56d953a1acc27
add rcx, rax
add rcx, r11
movabs rax, 0xc146f5374e5f7a6a
xor rcx, rax
mov qword [rsp + 0xa0], rcx
and rcx, rdx
mov qword [rsp + 0xa8], r13
mov qword [rsp + 0xa0], r13
cmp r15, rcx
jne 0x14010b7bb
mov dword [rsp + 0x3c], r13d
mov dword [rsp + 0x3c], 0x8f9babd
mov eax, dword [rsp + 0x3c]
add eax, 0xef6206b6
xor eax, 0x9c0b8166
sub eax, dword [0x140278058]
sub eax, dword [0x140278050]
sub eax, 0x5f33b512
xor eax, 0x827b0ae0
sub eax, dword [0x140278048]
mov rcx, qword [0x140278040]
add eax, 0x7b0f00d0
add eax, ecx
xor eax, 0x32f4aa62
add eax, 0x71baefaf
xor eax, 0x217d76c7
mov edx, dword [0x140278030]
xor edx, 0x20427991
sub edx, eax
mov eax, dword [0x140278038]
xor eax, 0xdfbd866e
sub edx, eax
sub edx, ecx
add edx, 0x5feca433
xor edx, 0xb73f224e
mov dword [rsp + 0x3c], edx
movsxd rax, edx
mov dword [rsp + 0x3c], r13d
add rsp, 0x1e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
movabs rax, 0xfe7dcca92f98e35a
mov qword [rsp + 0x28], rax
movabs rdi, 0x3bcf8c15077cc141
mov r15, r13
movabs rbx, 0x5e2c93848f54cc7d
movabs rax, 0x4f2f2a322094b714
mov r8, qword [0x140278070]
imul r8, rax
not r8
movabs rcx, 0xa1d36c7b74a6698b
mov rax, qword [0x140278060]
xor rax, rcx
and r8, rax
ror r8, 0x14
shr r8, 8
mov qword [rsp + 0x30], r8
movabs rax, 0xbf027e877c9b94b8
mov r9, qword [0x140278080]
imul r9, rax
add r9, rdi
movabs rax, 0x4af4ee000000000
xor r9, rax
shr r9, 0x1f
not r9
movabs r10, 0xc43073eaf8833ebf
lea rcx, [r9 + r10]
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, 0xb5
and ecx, 0x8000003f
jge 0x14010b891
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rdx, r9
ror rdx, cl
not rdx
movabs rcx, 0x166d07ee4073111e
mov rax, rdx
imul rax, rcx
mov qword [rsp + 0x20], rax
lea r11, [rax + r10]
mov r10, r9
imul r10, r8
sub r10, r11
movabs rax, 0xfe7dcca92f98e35a
xor r10, rax
movzx ecx, r11b
mov dword [rsp + 0x220], ecx
xor cl, 0xfa
and cl, 0xf
rol r10, cl
mov rax, r11
sub rax, qword [0x140278078]
xor r10, rax
movabs rax, 0x37e2cebf39a6f69e
imul rdx, rax
movabs rax, 0x2b2cdc0756db1281
sub rdx, rax
xor r10, rdx
xor r10, rbx
mov rax, r10
and rax, r12
xor rax, 2
je 0x14010bbf5
sub rax, 1
je 0x14010baff
sub rax, 1
je 0x14010ba36
cmp rax, 1
jne 0x14010bc74
mov rcx, r11
imul rcx, r9
movabs rax, 0x42c585783c66373b
add rax, r10
xor rcx, rax
ror rcx, 0x2e
shr rcx, 0xc
not rcx
mov qword [rsp + 0x28], rcx
movabs rdx, 0x835727b04da2
mov r8, qword [0x140278088]
add r8, rdx
movabs rax, 0xc4b2f6929428539b
xor r8, rax
mov eax, r10d
imul eax, ecx
and eax, 0x3f
mov ecx, 0x40
sub ecx, eax
mov rdx, r8
shl rdx, cl
mov ecx, eax
shr r8, cl
or rdx, r8
shl rdx, 0xf
movabs rax, 0xf7ca7db97f50a15d
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rdi
mov eax, 0xae8b73b7
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, 0x404381cd79f063f2
sub rdi, qword [rsp + 0x28]
shr rdi, cl
movabs rax, 0xc43898735492423b
mov rcx, qword [rsp + 0x20]
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 [r14 + rcx*8]
imul rax, r10
mov r8, qword [rsp + 0x30]
sub rax, r8
xor rdi, rax
jmp 0x14010bc74
movabs rcx, 0xaaaaaa1aae928e89
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed6c9f52c5
imul r9, rcx
movabs rdx, 0xffff7e8a8882bc55
mov rcx, qword [rsp + 0x20]
imul rcx, rdx
movabs rdx, 0x19935bd3cc846138
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be7c4259e9
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, 0xfffffffffbc75859
lea ecx, [r10 + 0xb]
and cl, 0x3f
rol r11, cl
movabs rax, 0x5808618480000000
imul r11, rax
mov rcx, r11
ror rcx, 0xe
not rcx
movabs rax, 0x9b2de6b2cebb6f38
imul rcx, rax
mov rax, r9
sub rax, r11
lea rdx, [rcx + rax*4]
mov cl, r8b
and cl, 0x3f
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x14010bc74
movabs rax, 0xc77df54d4d5eb21f
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, 0x1823356d0671ca5
shl rdx, cl
mov rax, rbx
mov rbx, rdx
xor rbx, rax
mov ecx, dword [rsp + 0x220]
and cl, 0x3f
rol rbx, cl
movabs rcx, 0xc43073eaf8833ebf
add rcx, r10
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xc15077cc141
mov rax, qword [r14 + rcx*8]
imul rax, rdx
xor rbx, rax
movabs rax, 0xffffc7a7f256f8a4
or rbx, rax
mov rdi, qword [0x140278070]
movabs rax, 0xfe7dcca92f98e35a
imul rdi, rax
sub rdi, r11
mov rax, r8
sub rax, rbx
xor rdi, rax
movabs rax, 0xc7a7c6a6a35ef8a9
xor rdi, rax
mov rax, r10
imul rax, r11
imul rax, rdi
mov r15, r9
sub r15, rax
movabs rax, 0x78958946c0cb4b3
add r15, rax
xor r15, r8
mov al, r9b
add al, al
lea ecx, [rax + r9]
shl cl, 2
and cl, 0x3f
rol r15, cl
not r15
jmp 0x14010bc74
mov rcx, r10
imul rcx, qword [0x140278080]
mov rdx, qword [0x140278068]
and rcx, rdx
mov rax, rbx
mov rbx, rcx
xor rbx, rax
ror rbx, 0x3d
imul rbx, r11
mov r15, r8
not r15
imul r15, r9
movabs rax, 0x7cd8a7de7eafa948
imul r15, rax
imul r8, qword [0x140278060], 0xfffffffffbf2a5f6
sub r8, rdx
mov al, r15b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010bc5f
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror r8, cl
movabs rax, 0xc43073eaf8833ebf
add r8, rax
add r8, qword [rsp + 0x20]
movabs rax, 0xff055d7b8ee4a385
mov rcx, qword [rsp + 0x28]
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor rbx, r15
imul rbx, qword [r14 + rcx*8]
not r11
imul r11, r10
imul r11, r8
imul r11, rdi
movabs rcx, 0xf5ed7e878957e959
xor rcx, r9
not rcx
xor rcx, r11
sub rcx, rbx
call fcn.1400f4b8c
mov qword [0x140279150], rax
movabs rdi, 0x9718f7affa174294
movabs r15, 0xb141f0946ab4444d
mov rbx, qword [0x140278070]
shl rbx, 0x3e
movabs rax, 0x7000000000000000
xor rbx, rax
mov rcx, rbx
imul rcx, r15
mov qword [rsp + 0xe0], rcx
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r11, rbx
and r11, r15
imul r11, qword [r14 + rcx*8]
movabs rax, 0x453d5803d6ff54e0
imul r11, rax
shr r11, 3
movabs rax, 0x84e3a7b3f7781b6e
xor r11, rax
movabs rax, 0xffffff57cce5586b
mov rcx, rbx
imul rcx, rax
sub rcx, 0x1beb7d28
xor rcx, qword [0x140278060]
xor rcx, r11
mov rax, r11
imul rax, qword [0x140278070]
movabs rdx, 0xb9de928bc556e74a
imul rax, rdx
not rax
and rcx, rax
ror rcx, 0x36
shr rcx, 8
mov qword [rsp + 0x20], rcx
movabs r9, 0x4ebe0f6b954bbbb3
lea rcx, [rbx + r9]
xor rcx, 0xfffffffffbd8ec47
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xd080a547a1117450
mov r8, qword [r14 + rcx*8]
imul r8, rax
sub r8, r9
movabs rcx, 0xe41fd761faf95a10
mov rax, r11
imul rax, rcx
xor r8, rax
shr r8, 0x1f
not r8
mov qword [rsp + 0x28], r8
mov rax, r8
xor rax, rbx
mov qword [rsp + 0x220], rax
lea rcx, [r8 + r9]
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 [r14 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x5b
and ecx, 0x8000003f
jge 0x14010be41
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0x220]
ror rax, cl
not rax
imul rax, r11
imul rdx, rax, 0xffffffffe41482d8
mov qword [rsp + 0x30], rdx
lea r10, [rdx + r9]
mov r9, r8
imul r9, qword [rsp + 0x20]
sub r9, r10
xor r9, rdi
movzx ecx, r10b
mov dword [rsp + 0x220], ecx
xor ecx, 4
and ecx, 0xf
jge 0x14010be8e
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
rol r9, cl
movabs rcx, 0x9bbafa067cccbaf8
imul rax, rcx
movabs rcx, 0x49ecdf781d7f00d7
add rax, rcx
xor r9, rax
mov rax, r10
sub rax, qword [0x140278078]
xor r9, rax
xor r9, r11
xor r9, rbx
mov rax, r9
and rax, r12
je 0x14010c208
sub rax, 1
je 0x14010c0cf
sub rax, 1
je 0x14010bfdf
cmp rax, 1
jne 0x14010c2c8
mov rdi, r10
imul rdi, r8
movabs rax, 0x301520cb95565d1
add rax, r9
xor rdi, rax
ror rdi, 0xc
shr rdi, 0xc
xor rdi, rbx
not rdi
movabs rcx, 0x835727a7e950
mov r8, qword [0x140278088]
add r8, rcx
movabs rax, 0x4e3c8a13f9f77279
xor r8, rax
mov eax, edi
imul eax, r9d
and eax, 0x3f
mov ecx, 0x40
sub ecx, eax
mov rdx, r8
shl rdx, cl
mov ecx, eax
shr r8, cl
or r8, rdx
shl r8, 0xf
movabs rax, 0xf7ca7db97f4705b3
sub rax, qword [rsp + 0x28]
xor r8, rax
mov rcx, r8
imul rcx, r15
mov eax, 0xae9cd759
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 r15, 0x5a0f8019f06615f2
sub r15, rdi
shr r15, cl
movabs rax, 0x4ec633f3f1646349
mov rcx, qword [rsp + 0x30]
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 + 0x20]
xor r15, rax
jmp 0x14010c2c8
movabs rax, 0xaaaaaa1aae852a67
mov rcx, r9
xor rcx, rax
movabs rax, 0x1206ed6c88f62b
imul rcx, rax
movabs r8, 0xfff17ca879e71c1b
mov rax, r11
xor rax, r8
sub rcx, rax
movabs rax, 0xffff7e8a889518bb
imul rdx, rax
movabs r8, 0x7cb7416907aefc7c
add r8, rcx
add r8, rdx
movabs rax, 0x277cd7be7c55fd07
mov rcx, r8
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r8
not r10
imul r10, qword [r14 + rcx*8]
xor r10, 0xfffffffffbd0fcb7
lea ecx, [r9 - 0x1b]
and cl, 0x3f
rol r10, cl
movabs rcx, 0x38158400000000
mov rax, qword [rsp + 0xe0]
xor rax, rcx
movabs rcx, 0x7c7a7dc692d7f606
and rax, rcx
imul r10, rax
mov rcx, r10
ror rcx, 0x2e
not rcx
movabs rax, 0x9b2de6b2cee5fc80
imul rcx, rax
mov rax, r8
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x20]
and cl, 0x3f
ror rdx, cl
mov rax, r15
mov r15, rdx
imul r15, rax
jmp 0x14010c2c8
movabs rax, 0xbb136b4abe1ee3f1
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, 0x4ebe0f6b954bbbb2
mov rax, rbx
imul rax, rdx
xor rax, rdi
not rax
shl rax, cl
xor r11, rax
mov eax, dword [rsp + 0x220]
and eax, 0x8000003f
jge 0x14010c12d
sub eax, r12d
or eax, 0xffffffc0
add eax, r12d
mov cl, al
rol r11, cl
movabs rcx, 0x4ebe0f6b954bbbb3
add rcx, r9
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffff0946ab4444d
mov rax, qword [r14 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7f2415c4a
or r11, rax
mov r15, qword [0x140278070]
imul r15, rdi
sub r15, r10
mov rax, qword [rsp + 0x20]
sub rax, r11
xor r15, rax
movabs rax, 0xc7a7c6a6a3495c47
xor r15, rax
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, r8
sub rax, rdx
sub rax, rbx
movabs rbx, 0x78958946c1b105d
add rbx, rax
xor rbx, qword [rsp + 0x20]
movzx eax, r8b
imul ecx, eax, 0xe2
and cl, 0x3f
rol rbx, cl
not rbx
jmp 0x14010c2c8
mov rax, rsi
mul r11
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r11
sub rcx, rax
mov rax, r9
imul rax, qword [0x140278080]
mov rdx, qword [r14 + rcx*8]
and rdx, rax
xor rdx, r11
and r11b, 0x3f
mov cl, r11b
mov r11, rdx
ror r11, cl
imul r11, r10
mov rcx, qword [rsp + 0x20]
not rcx
imul rcx, r8
movabs rax, 0x7cd8a7de7eb80da6
imul rcx, rax
mov rax, r11
imul rax, rbx
mov rbx, rcx
xor rbx, rax
imul rax, qword [0x140278060], 0xffffffffe41482d8
mov rdx, qword [0x140278068]
sub rax, rdx
mov qword [rsp + 0x220], rax
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010c2a6
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rax, qword [rsp + 0x220]
ror rax, cl
movabs rcx, 0x4ebe0f6b954bbbb3
add rax, rcx
add rax, qword [rsp + 0x30]
mov qword [rsp + 0x20], rax
movabs rax, 0xff055d7b8ef3076b
xor rdi, rax
mov rax, rsi
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rdi, rax
xor r11, rbx
imul r11, qword [r14 + rdi*8]
not r10
imul r10, r9
imul r10, qword [rsp + 0x20]
imul r10, r15
movabs rcx, 0xf5ed7e8789404db7
xor rcx, r8
not rcx
xor rcx, r10
sub rcx, r11
call fcn.1400f4bb0
mov qword [0x140279180], rax
mov dword [rsp + 0x40], r13d
mov dword [rsp + 0x40], 0xbe14876c
mov eax, dword [rsp + 0x40]
add eax, 0xf7f359b4
xor eax, 0xef0989f7
sub eax, dword [0x140278058]
sub eax, dword [0x140278050]
sub eax, 0x594d690b
xor eax, 0x81c77296
sub eax, dword [0x140278048]
mov rcx, qword [0x140278040]
add eax, 0xa66dbca9
add eax, ecx
xor eax, 0x712ee7b8
add eax, 0x2bfd121a
xor eax, 0x854488bd
lea edx, [rcx - 0x31675dde]
add edx, eax
not edx
mov eax, dword [0x140278038]
xor eax, 0xd7dfcbba
sub edx, eax
mov ecx, dword [0x140278030]
xor ecx, 0x28203445
add ecx, 0x7f8239d3
add ecx, edx
xor ecx, 0x2bf3b122
mov dword [rsp + 0x40], ecx
movsxd rax, ecx
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x40], r13d
mov esi, r13d
mov r15d, 0xd5a33a1a
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 0x14010c434
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x3d240390
jmp 0x14010c426
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 0x14010c400
cmp r10d, esi
jne 0x14010c4db
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov edi, ecx
add rdi, r10
shr rcx, 0x20
cmp rdi, r10
je 0x14010c4db
mov r14d, dword [rdi + 0x18]
test r14d, r14d
je 0x14010c4db
mov r8d, dword [rdi + 0x20]
dec r14d
mov r9d, r14d
lea rdx, [r10 + r14*4]
mov ebx, dword [rdx + r8]
add rbx, r10
mov edx, 0x3d240390
mov r8b, byte [rbx]
add rbx, r12
mov r11d, 0x4764996c
test r8b, r8b
je 0x14010c4cd
mov r10d, edx
movsx r8d, r8b
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 r8b, byte [rbx]
add rbx, r12
test r8b, r8b
jne 0x14010c48d
mov dword [rsp + 0x220], r10d
mov r10, qword [rax + 0x30]
mov edx, dword [rsp + 0x220]
mov r9d, r14d
cmp edx, r15d
je 0x14010c4e3
test r14d, r14d
mov r8d, dword [rdi + 0x20]
jne 0x14010c463
mov rax, qword [rax]
jmp 0x14010c3d4
mov edx, dword [rdi + 0x1c]
add rdx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rdx + rax*4]
add rdx, r10
mov qword [rsp + 0x220], rdx
cmp rdx, rdi
jbe 0x14010c571
lea rax, [rcx + rdi]
cmp rdx, rax
jae 0x14010c571
mov esi, 0x3d240390
mov r15d, esi
jmp 0x14010c532
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r11d
xor ecx, esi
mov esi, eax
imul esi, ecx
add rdx, r12
mov al, byte [rdx]
cmp al, 0x2e
jne 0x14010c51a
jmp 0x14010c552
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r11d
xor ecx, r15d
mov r15d, eax
imul r15d, ecx
add rdx, r12
mov al, byte [rdx]
test al, al
jne 0x14010c53a
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jmp 0x14010c4db
mov dword [rsp + 0x48], r13d
mov dword [rsp + 0x48], 0xb74fea21
mov eax, dword [rsp + 0x48]
add eax, 0xf43bd834
xor eax, 0x6d898640
sub eax, dword [0x140278058]
sub eax, dword [0x140278050]
add eax, 0x26bdbd79
xor eax, 0x858dd21c
sub eax, dword [0x140278048]
mov rcx, qword [0x140278040]
add eax, 0xeb7954f2
add eax, ecx
xor eax, 0x756c376e
add eax, 0x2b5a0b44
xor eax, 0x93206739
lea edx, [rcx + 0x52361f17]
add edx, eax
not edx
mov eax, dword [0x140278038]
xor eax, 0xd7d0edb4
sub edx, eax
mov r15d, dword [0x140278030]
xor r15d, 0x282f124b
add r15d, 0x70970dcd
add r15d, edx
xor r15d, 0xaef84bbc
mov dword [rsp + 0x48], r15d
mov dword [rsp + 0x44], r13d
mov dword [rsp + 0x44], 0x4c4c77db
mov eax, dword [rsp + 0x44]
add eax, 0x6b08
xor eax, 0x5d7709
sub eax, dword [0x140278058]
sub eax, dword [0x140278050]
sub eax, 0x55149ddf
xor eax, 0x2a061ad2
sub eax, dword [0x140278048]
mov rcx, qword [0x140278040]
add eax, 0xd5069414
add eax, ecx
xor eax, 0xd86bedca
add eax, 0x6e8c2ffd
xor eax, 0xf69e9786
lea edx, [rcx + 0x12070c12]
add edx, eax
not edx
mov eax, dword [0x140278038]
xor eax, 0x2794122a
sub edx, eax
mov ecx, dword [0x140278030]
xor ecx, 0xd86bedd5
add ecx, 0xcf6a8593
add ecx, edx
xor ecx, 0xa91fef2
mov dword [rsp + 0x44], ecx
movsxd r14, ecx
mov qword [rsp + 0xb8], r13
movabs rax, 0xe21d347ec8b7e24e
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xb0], r13
movabs rax, 0xd5f54623097414c1
mov qword [rsp + 0xb0], rax
movabs rcx, 0xf33a52b9fdb09b83
add rcx, qword [rsp + 0xb8]
movabs rax, 0xc0d53662530d8fb5
xor rcx, rax
sub rcx, qword [0x140278050]
sub rcx, qword [0x140278058]
movabs rax, 0x7120fb809aa15f2f
add rcx, rax
movabs rax, 0xf8f8cd946bf33bbf
xor rcx, rax
sub rcx, qword [0x140278048]
movabs rax, 0x87d654b430a355d5
add rcx, rax
mov rsi, qword [0x140278040]
add rcx, rsi
movabs rax, 0x5a9179a3daa308a7
xor rcx, rax
movabs rax, 0x5f627dc3e27adab2
sub rcx, rax
movabs rax, 0x23b3cd06245b9eb
xor rcx, rax
movabs rdx, 0xb483ce40e5038d21
add rdx, rcx
add rdx, rsi
not rdx
movabs rcx, 0x13cce94ae7f6c0c2
mov r10, qword [0x140278038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b518093f3d
mov r11, qword [0x140278030]
mov rcx, r11
xor rcx, rax
movabs rdi, 0xe0b56d9d86502d97
add rdi, rdx
add rdi, rcx
movabs rax, 0xd34b44d7f60dac3a
xor rdi, rax
mov qword [rsp + 0xb8], rdi
movabs rcx, 0xf33a52b59888bd03
add rcx, qword [rsp + 0xb0]
movabs rax, 0xe255366253092a8d
xor rcx, rax
sub rcx, qword [0x140278050]
sub rcx, qword [0x140278058]
movabs rax, 0xedf047f582f2936
sub rcx, rax
movabs rax, 0xf8f8cd98e2afb9b9
xor rcx, rax
sub rcx, qword [0x140278048]
movabs rax, 0x47d654ba27f2f45c
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a8de048271
xor rcx, rax
movabs rax, 0x5f627dc71a1fe3a4
sub rcx, rax
movabs rax, 0xf63b3cd294fcd26a
xor rcx, rax
movabs rax, 0x3483ce452b67548b
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94ad6622148
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b5299ddeb7
xor r11, rax
movabs rbx, 0xe0b56d8c0059dc1d
add rbx, rcx
add rbx, r11
movabs rax, 0xec9a93d34a2a3a78
xor rbx, rax
mov qword [rsp + 0xb0], rbx
mov r9, qword [rsp + 0x50]
mov r8d, r15d
mov rdx, r14
mov rcx, r9
call qword [rsp + 0x220]
movsxd rcx, eax
and rbx, rdi
mov qword [rsp + 0xb0], r13
mov qword [rsp + 0xb8], r13
mov dword [rsp + 0x44], r13d
mov dword [rsp + 0x48], r13d
cmp rcx, rbx
je 0x14010e3f9
movabs r15, 0xd7d033b545b74dc4
movabs r9, 0x9dee633c04f925fd
mov qword [rsp + 0x20], r9
movabs rax, 0xb18092eb40000000
mov r8, qword [0x140278070]
imul r8, rax
movabs rax, 0xcd8e5c68f0000000
xor r8, rax
mov qword [rsp + 0xe0], r8
mov rcx, r8
imul rcx, r9
mov qword [rsp + 0x88], rcx
movabs rbx, 0xaaaaaaaaaaaaaaab
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r8
and r10, r9
lea rdi, [0x140278060]
imul r10, qword [rdi + rcx*8]
movabs rax, 0x9c8fd4ed7a31e1c0
imul r10, rax
shr r10, 3
movabs rax, 0x8ab517c44201d5df
xor r10, rax
movabs rax, 0xffffff57cc89b7a3
mov r14, r8
imul r14, rax
sub r14, 0x47a1890
xor r14, r10
xor r14, qword [0x140278060]
mov rax, r10
imul rax, qword [0x140278070]
movabs rcx, 0xb9de928bc53a0882
imul rax, rcx
not rax
and r14, rax
ror r14, 0xe
shr r14, 8
movabs r9, 0x62119cc3fb06da03
lea rcx, [r8 + r9]
xor rcx, 0xfffffffffbb4038f
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xf81701ee31f0f5a0
mov rsi, qword [rdi + rcx*8]
imul rsi, rax
sub rsi, r9
movabs rcx, 0xeb93feac6024bad0
mov rax, r10
imul rax, rcx
xor rsi, rax
shr rsi, 0x1f
not rsi
mov rax, rsi
xor rax, r8
mov qword [rsp + 0x220], rax
lea rcx, [rsi + r9]
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, sil
movzx ecx, byte [rdi + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x93
and ecx, 0x8000003f
jge 0x14010ca5b
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rdx, qword [rsp + 0x220]
ror rdx, cl
not rdx
imul rdx, r10
imul rax, rdx, 0xfffffffffb85e770
mov qword [rsp + 0x28], rax
add r9, rax
mov r11, rsi
imul r11, r14
sub r11, r9
xor r11, r15
movzx ecx, r9b
mov dword [rsp + 0x220], ecx
xor cl, 0xfc
and cl, 0xf
rol r11, cl
mov rax, r9
sub rax, qword [0x140278078]
xor r11, rax
movabs rax, 0x95ec4a71c9b8e9b0
imul rdx, rax
movabs rax, 0x34fc7bd2c32e3f7
add rdx, rax
xor r11, rdx
xor r11, r10
xor r11, r8
mov rax, r11
and rax, r12
je 0x14010ce2d
sub rax, 1
je 0x14010ccfe
sub rax, 1
je 0x14010cc01
cmp rax, 1
jne 0x14010ced4
mov r15, r9
imul r15, rsi
movabs rax, 0x8aab638a8c7cae9
add rax, r11
xor r15, rax
ror r15, 0x34
shr r15, 0xc
xor r15, r8
not r15
movabs rcx, 0x835727cb0688
mov r8, qword [0x140278088]
add r8, rcx
movabs rax, 0x629319bb97d6fc01
xor r8, rax
mov eax, r11d
imul eax, r15d
and eax, 0x3f
mov ecx, 0x40
sub ecx, eax
mov rdx, r8
shl rdx, cl
mov ecx, eax
shr r8, cl
or rdx, r8
shl rdx, 0xf
movabs rax, 0xf7ca7db97f2bea7b
sub rax, rsi
mov rsi, rdx
xor rsi, rax
mov rcx, rsi
movabs rax, 0x9dee633c04f925fd
imul rcx, rax
mov eax, 0xaef03891
add rcx, rax
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rdi + rcx*8]
and cl, 0xf
movabs r8, 0x66febc019a0de222
sub r8, r15
shr r8, cl
movabs rax, 0x6219c14c577b2261
mov rcx, qword [rsp + 0x28]
add rcx, rax
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r11
imul rax, qword [rdi + rcx*8]
imul rax, r11
sub rax, r14
xor r8, rax
mov qword [rsp + 0x20], r8
mov r8, qword [rsp + 0xe0]
jmp 0x14010ced4
movabs rax, 0xaaaaaa1aaee9c5af
mov rcx, r11
xor rcx, rax
movabs rax, 0x1206ed6ce419e3
imul rcx, rax
movabs rdx, 0xfff17ca8798bf3d3
mov rax, r10
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a88f9f773
mov rdx, qword [rsp + 0x28]
imul rdx, rax
movabs rsi, 0x7b20cee18e51cbcc
add rsi, rcx
add rsi, rdx
movabs rax, 0x277cd7be7c3912cf
mov rcx, rsi
xor rcx, rax
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, rsi
not r9
imul r9, qword [rdi + rcx*8]
xor r9, 0xfffffffffbbc137f
lea ecx, [r11 - 0x13]
and cl, 0x3f
rol r9, cl
movabs rcx, 0xd7cd967f6d44e631
mov rax, qword [rsp + 0x88]
xor rax, rcx
movabs rcx, 0x7c7a7dc692bb19ce
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0x36
not rcx
movabs rax, 0x9b2de6b2cf5643a0
imul rcx, rax
mov rax, rsi
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, r14b
and cl, 0x3f
ror rdx, cl
movabs rax, 0x9dee633c04f925fd
imul rdx, rax
mov qword [rsp + 0x20], rdx
jmp 0x14010ced4
movabs rax, 0xe91513e5e4646309
imul r11, rax
movabs rax, 0xd79435e50d79435f
mul r11
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r11b
sub cl, dl
movabs rdx, 0x62119cc3fb06da02
mov rax, r8
imul rax, rdx
xor rax, r15
not rax
shl rax, cl
xor r10, rax
mov ecx, dword [rsp + 0x220]
and cl, 0x3f
rol r10, cl
movabs rcx, 0x62119cc3fb06da03
add rcx, r11
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffe33c04f925fd
mov rax, qword [rdi + rcx*8]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a7f22db382
or r10, rax
mov rcx, qword [0x140278070]
imul rcx, r15
sub rcx, r9
mov rax, r14
sub rax, r10
xor rcx, rax
movabs rax, 0xc7a7c6a6a325b38f
xor rcx, rax
mov qword [rsp + 0x20], rcx
movabs rax, 0xcccccccccccccccd
mul r8
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, r8
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, qword [rsp + 0x20]
div rcx
mov rcx, rdx
mov rdx, r11
imul rdx, r9
imul rdx, qword [rsp + 0x20]
shr rdx, cl
mov rax, rsi
sub rax, rdx
sub rax, r8
movabs r8, 0x78958946c77ff95
add r8, rax
xor r8, r14
movzx eax, sil
imul ecx, eax, 0xea
and cl, 0x3f
rol r8, cl
not r8
jmp 0x14010ced4
mov rax, rbx
mul r10
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r10
sub rcx, rax
mov rax, r11
imul rax, qword [0x140278080]
mov rdx, qword [rdi + rcx*8]
and rdx, rax
xor rdx, r10
and r10b, 0x3f
mov cl, r10b
mov r10, rdx
ror r10, cl
imul r10, r9
not r14
imul r14, rsi
movabs rax, 0x7cd8a7de7ed4e26e
imul r14, rax
mov rax, r10
imul rax, r8
mov r8, r14
xor r8, rax
imul r14, qword [0x140278060], 0xfffffffffb85e770
mov rdx, qword [0x140278068]
sub r14, rdx
mov al, r8b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010cebf
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
ror r14, cl
movabs rax, 0x62119cc3fb06da03
add r14, rax
add r14, qword [rsp + 0x28]
movabs rax, 0xff055d7b8e9fe8a3
xor r15, rax
mov rax, rbx
mul r15
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r15, rax
xor r10, r8
imul r10, qword [rdi + r15*8]
not r9
imul r9, r11
imul r9, r14
imul r9, qword [rsp + 0x20]
movabs rcx, 0xf5ed7e87892ca27f
xor rcx, rsi
not rcx
xor rcx, r9
sub rcx, r10
call fcn.1400f4bf8
mov qword [0x1402791a0], rax
mov dword [rsp + 0x90], r13d
mov dword [rsp + 0x94], 0xd96b7ea2
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x138], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x140], rax
mov qword [rsp + 0xf8], rax
mov r14d, dword [rsp + 0x90]
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0x128], xmm0
movd ecx, xmm0
sub cx, 8
mov word [rsp + 0x128], cx
test r14d, r14d
je 0x14010d014
mov r9, qword [rsp + 0x130]
mov qword [rsp + 0x110], r9
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov qword [rsp + 0x148], r11
mov r10d, 0x46a9f9b0
mov dword [rsp + 0xc8], r10d
cmp r9, r11
je 0x14010d00b
movsx ecx, byte [r9]
mov byte [rsp + 0x238], cl
mov edx, ecx
mov r8d, ecx
imul r8d, ecx
add r8d, 0x31
xor r8d, 0x4764996c
mov ecx, r10d
xor ecx, edx
mov r10d, r8d
imul r10d, ecx
mov dword [rsp + 0xc8], r10d
add r9, 2
mov qword [rsp + 0x110], r9
jmp 0x14010cfc5
cmp r10d, r14d
jne 0x14010d1eb
mov r10, qword [rax + 0x30]
mov qword [rsp + 0x150], r10
mov qword [rsp + 0x190], r10
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov qword [rsp + 0x158], rcx
mov ebx, ecx
add rbx, r10
mov qword [rsp + 0x198], rbx
shr rcx, 0x20
mov dword [rsp + 0x1a0], ecx
cmp rbx, r10
je 0x14010d1eb
mov esi, dword [rbx + 0x18]
mov dword [rsp + 0xcc], esi
mov edx, esi
dec esi
mov dword [rsp + 0xcc], esi
test edx, edx
je 0x14010d1eb
mov r8d, dword [rbx + 0x20]
add r8, r10
mov r11d, dword [r8 + rsi*4]
add r11, r10
mov qword [rsp + 0x118], r11
mov edi, 0x46a9f9b0
mov dword [rsp + 0xd8], edi
movsx edx, byte [r11]
mov byte [rsp + 0x80], dl
add r11, r12
mov qword [rsp + 0x118], r11
test dl, dl
jne 0x14010d560
cmp edi, dword [rsp + 0x94]
jne 0x14010d55b
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov qword [rsp + 0x160], rdx
mov eax, dword [rbx + 0x24]
add rax, r10
mov qword [rsp + 0x168], rax
movzx eax, word [rax + rsi*2]
mov r15d, dword [rdx + rax*4]
add r15, r10
mov qword [rsp + 0x170], r15
cmp r15, rbx
jbe 0x14010d1fb
lea rax, [rbx + rcx]
cmp r15, rax
jae 0x14010d1fb
mov qword [rsp + 0xe8], r15
mov dword [rsp + 0xc0], 0x46a9f9b0
mov r9d, 0x46a9f9b0
mov dword [rsp + 0xc4], r9d
mov r10d, r9d
mov r8d, 0x4764996c
movsx eax, byte [r15]
cmp al, 0x2e
je 0x14010d170
mov byte [rsp + 0x58], al
mov ecx, eax
mov edx, eax
imul edx, eax
add edx, 0x31
xor edx, r8d
mov eax, r10d
xor eax, ecx
mov r10d, edx
imul r10d, eax
mov dword [rsp + 0xc0], r10d
add r15, r12
mov qword [rsp + 0xe8], r15
jmp 0x14010d136
add r15, r12
mov qword [rsp + 0xe8], r15
movsx eax, byte [r15]
test al, al
je 0x14010d1aa
mov byte [rsp + 0x60], al
mov ecx, eax
mov edx, eax
imul edx, eax
add edx, 0x31
xor edx, r8d
mov eax, r9d
xor eax, ecx
mov r9d, edx
imul r9d, eax
mov dword [rsp + 0xc4], r9d
jmp 0x14010d170
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x90], rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x178], rax
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x180], rax
mov qword [rsp + 0xf8], rax
mov r14d, dword [rsp + 0x90]
mov rax, qword [rax]
mov qword [rsp + 0xf8], rax
jmp 0x14010cf74
mov qword [rsp + 0x98], r13
movabs rax, 0x11835b2c5ad2df3a
mov qword [rsp + 0x98], rax
movabs rcx, 0xf33a52b5f2fc2503
add rcx, qword [rsp + 0x98]
movabs rax, 0x4a55366253098500
xor rcx, rax
sub rcx, qword [0x140278050]
sub rcx, qword [0x140278058]
movabs rax, 0xedf047f593e836e
sub rcx, rax
movabs rax, 0xf8f8cd9886d28419
xor rcx, rax
sub rcx, qword [0x140278048]
movabs rax, 0x47d654b9ad2b4cb0
add rcx, rax
mov rdx, qword [0x140278040]
add rcx, rdx
movabs rax, 0x5a9179a876d8dfd1
xor rcx, rax
movabs rax, 0x5f627dc6d4f4be44
sub rcx, rax
movabs rax, 0xb63b3cd267c04acf
xor rcx, rax
movabs rax, 0x3483ce44d36d1463
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94ad7cbeee8
mov rax, qword [0x140278038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b528341117
mov rcx, qword [0x140278030]
xor rcx, rax
movabs rbx, 0xe0b56d8d6b9141bd
add rbx, rdx
add rbx, rcx
movabs rax, 0x9c27ad6b54fded8
xor rbx, rax
mov qword [rsp + 0x220], rbx
mov qword [rsp + 0x188], rbx
mov qword [rsp + 0x98], rbx
mov byte [rsp + 0x228], r13b
lea rdx, [rsp + 0x1a8]
lea rcx, [rsp + 0x228]
call fcn.1400fe2dc
mov rcx, rax
mov qword [rsp + 0xf0], rax
mov rax, r13
mov qword [rsp + 0xd0], rax
cmp rax, 0x31
jae 0x14010d4d3
xor edx, edx
movabs rcx, 0x13cce94adbbf6644
div rcx
add dl, 0x34
mov byte [rsp + 0x68], dl
mov r14b, dl
sar r14b, 7
or r14b, dl
mov byte [rsp + 0x70], r14b
mov al, r14b
shl al, 6
mov sil, r14b
sar sil, 2
or sil, al
movsx rcx, r14b
mov rbx, rcx
sar rbx, 2
or bl, al
mov r9b, r14b
sar r9b, 5
mov al, r14b
shl al, 3
or r9b, al
mov r10b, r14b
sar r10b, 3
mov al, r14b
shl al, 5
or r10b, al
mov r8b, r14b
sar r8b, 4
mov al, r14b
shl al, 4
or r8b, al
mov r11b, r14b
not r11b
mov dil, r14b
ror dil, 7
lea eax, [r10 - 0x50]
add dil, al
mov rdx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xf0]
mov dl, byte [rdx + rax]
sub dl, sil
sub dl, 2
mov eax, 4
sub al, bl
xor dl, al
sar rcx, 1
mov al, r14b
shl al, 7
or cl, al
sub dl, cl
sub dl, byte [0x140278050]
sub dl, byte [0x140278058]
sub dl, 0x3f
add dl, bl
add dl, r14b
lea eax, [r14 + 7]
add al, bl
xor dl, al
sub dl, byte [0x140278048]
sub dl, r14b
sub dl, r9b
mov rcx, qword [0x140278040]
sub dl, 0x50
add dl, cl
add dl, bl
mov al, r14b
sub al, r9b
add al, r8b
add al, sil
xor dl, al
mov al, r14b
sub al, r8b
xor al, r14b
sub dl, al
sub dl, r10b
add dl, 0x30
add dl, r14b
xor dil, dl
mov al, r14b
add al, al
sub dil, al
add cl, 0x51
add dil, cl
add dil, bl
add dil, sil
not dil
mov al, r14b
sar al, 7
or al, r14b
sub dil, al
mov al, r11b
xor al, byte [0x140278038]
sub dil, al
mov al, r14b
xor al, 0x40
sub dil, al
mov al, r14b
xor al, byte [0x140278030]
add dil, al
movsx eax, r11b
movsx ecx, r14b
imul ecx, eax
xor dil, cl
mov byte [rsp + 0x78], dil
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xf0]
mov byte [rax + rcx], dil
add rax, r12
jmp 0x14010d33f
mov qword [rsp + 0x100], rcx
mov qword [rsp + 0x108], 0x31
mov r8, qword [rsp + 0x220]
mov rdx, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x50]
call r15
nop
mov rcx, qword [rsp + 0x100]
test rcx, rcx
je 0x14010d53b
mov rax, r13
mov qword [rsp + 0x120], rax
cmp rax, qword [rsp + 0x108]
jae 0x14010d53b
mov byte [rcx + rax], r13b
add rax, r12
mov qword [rsp + 0x120], rax
mov rcx, qword [rsp + 0x100]
jmp 0x14010d518
mov qword [rsp + 0x98], r13
mov byte [rsp + 0x230], r13b
lea rcx, [rsp + 0x230]
call fcn.1400fe338
nop
jmp 0x14010d593
jmp 0x14010d067
mov r8d, edx
mov r9d, edx
imul r9d, edx
add r9d, 0x31
xor r9d, 0x4764996c
mov edx, edi
xor edx, r8d
mov edi, r9d
imul edi, edx
mov dword [rsp + 0xd8], edi
jmp 0x14010d09c
lea rdi, [0x140278060]
movabs rbx, 0xaaaaaaaaaaaaaaab
movabs r8, 0x26db38121409acb3
movabs r10, 0xa06fb9cb52c5dd6d
mov qword [rsp + 0x20], r10
movabs rax, 0x31df40f370000000
mov r15, qword [0x140278068]
imul r15, rax
movabs rax, 0xcc134744f0000000
xor r15, rax
mov rcx, r15
imul rcx, r10
mov qword [rsp + 0x88], rcx
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r15
and r9, r10
imul r9, qword [rdi + rcx*8]
movabs rax, 0x7e50097142189aa4
imul r9, rax
shr r9, 3
movabs rax, 0xedb78bba2070fceb
xor r9, rax
movabs rax, 0xffffff57d5580563
mov r14, r15
imul r14, rax
sub r14, 0xff8eb34
xor r14, r9
xor r14, qword [0x140278060]
mov rax, r9
imul rax, qword [0x140278070]
movabs rcx, 0xb9de928bdcebba42
imul rax, rcx
not rax
and r14, rax
ror r14, 0x1e
shr r14, 8
movabs r10, 0x5f904634ad3a2293
lea rcx, [r15 + r10]
xor rcx, 0xffffffffe265b14f
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x86b18845f4b1308
mov rsi, qword [rdi + rcx*8]
imul rsi, rax
sub rsi, r10
movabs rcx, 0x78a532cc77d03cdc
mov rax, r9
imul rax, rcx
xor rsi, rax
shr rsi, 0x1f
not rsi
lea rcx, [rsi + r10]
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, sil
movzx ecx, byte [rdi + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x53
and ecx, 0x8000003f
jge 0x14010d708
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rdx, rsi
xor rdx, r15
ror rdx, cl
not rdx
imul rdx, r9
imul rax, rdx, 0xfffffffff00714cc
mov qword [rsp + 0x28], rax
add r10, rax
mov r11, rsi
imul r11, r14
sub r11, r10
xor r11, r8
movzx ecx, r10b
mov dword [rsp + 0x220], ecx
xor cl, 0xfc
and cl, 0xf
rol r11, cl
mov rax, r10
sub rax, qword [0x140278078]
xor r11, rax
movabs rax, 0xf2eed60fa8f3f6dc
imul rdx, rax
movabs rax, 0x60e1f059a2b89f97
add rdx, rax
xor r11, rdx
xor r11, r9
xor r11, r15
mov rax, r11
and rax, r12
je 0x14010daec
sub rax, 1
je 0x14010d9ae
sub rax, 1
je 0x14010d8b2
cmp rax, 1
jne 0x14010db93
mov rcx, r10
imul rcx, rsi
movabs rax, 0x24e0e3d0776cdfd9
add rax, r11
xor rcx, rax
ror rcx, 0x24
shr rcx, 0xc
xor rcx, r15
not rcx
mov qword [rsp + 0x220], rcx
movabs rdx, 0x83573e1ab448
mov r8, qword [0x140278088]
add r8, rdx
movabs rax, 0x5f12c34cd83bb651
xor r8, rax
mov eax, ecx
imul eax, r11d
and eax, 0x3f
mov ecx, 0x40
sub ecx, eax
mov rdx, r8
shl rdx, cl
mov ecx, eax
shr r8, cl
or rdx, r8
shl rdx, 0xf
movabs rax, 0xf7ca7db966fa58bb
sub rax, rsi
mov rsi, rdx
xor rsi, rax
mov rcx, rsi
movabs rax, 0xa06fb9cb52c5dd6d
imul rcx, rax
mov eax, 0xb7218a51
add rcx, rax
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rdi + rcx*8]
and cl, 0xf
movabs rax, 0x88ec484a1e5290f2
mov r8, qword [rsp + 0x220]
sub rax, r8
shr rax, cl
mov qword [rsp + 0x20], rax
movabs rcx, 0x5f986abcf2e01d31
add rcx, qword [rsp + 0x28]
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r11
imul rax, qword [rdi + rcx*8]
imul rax, r11
sub rax, r14
xor qword [rsp + 0x20], rax
jmp 0x14010db93
movabs rax, 0xaaaaaa1ab738776f
mov rcx, r11
xor rcx, rax
movabs rax, 0x1206ed7535ab23
imul rcx, rax
movabs rdx, 0xfff17ca8605a4113
mov rax, r9
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a912845b3
mov rdx, qword [rsp + 0x28]
imul rdx, rax
movabs rsi, 0x5eedc3f90618117c
add rsi, rcx
add rsi, rdx
movabs rax, 0x277cd7be65e8a00f
mov rcx, rsi
xor rcx, rax
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, rsi
not r10
imul r10, qword [rdi + rcx*8]
xor r10, 0xffffffffe26da1bf
lea ecx, [r11 - 0x13]
and cl, 0x3f
rol r10, cl
movabs rcx, 0x3c7a484080000000
mov rax, qword [rsp + 0x88]
xor rax, rcx
movabs rcx, 0x7c7a7dc68b6aab0e
and rax, rcx
imul r10, rax
mov rcx, r10
ror rcx, 1
not rcx
movabs rax, 0x9b2de6b2a81088a0
imul rcx, rax
mov rax, rsi
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, r14b
and cl, 0x3f
ror rdx, cl
movabs rax, 0xa06fb9cb52c5dd6d
imul rdx, rax
mov qword [rsp + 0x20], rdx
jmp 0x14010db93
movabs rax, 0xc72ba44bf7d0ad81
imul r11, rax
movabs rax, 0xd79435e50d79435f
mul r11
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r11b
sub cl, dl
movabs rdx, 0x5f904634ad3a2292
mov rax, r15
imul rax, rdx
xor rax, r8
not rax
shl rax, cl
xor r9, rax
mov ecx, dword [rsp + 0x220]
and cl, 0x3f
rol r9, cl
movabs rcx, 0x5f904634ad3a2293
add rcx, r11
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffff9cb52c5dd6d
mov rax, qword [rdi + rcx*8]
imul rax, rdx
xor r9, rax
movabs rax, 0xffffc7a7ebfc0142
or r9, rax
mov rcx, qword [0x140278070]
imul rcx, r8
sub rcx, r10
mov rax, r14
sub rax, r9
xor rcx, rax
movabs rax, 0xc7a7c6a6baf4014f
xor rcx, rax
mov qword [rsp + 0x20], rcx
movzx eax, sil
imul r8d, eax, 0xea
and r8b, 0x3f
movabs rax, 0xcccccccccccccccd
mul r15
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, r15
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, qword [rsp + 0x20]
div rcx
mov rcx, rdx
mov rdx, r11
imul rdx, r10
imul rdx, qword [rsp + 0x20]
shr rdx, cl
mov rax, rsi
sub rax, rdx
sub rax, r15
movabs r15, 0x789589475a64d55
add r15, rax
xor r15, r14
mov cl, r8b
rol r15, cl
not r15
movabs r8, 0x26db38121409acb3
jmp 0x14010db93
mov rax, rbx
mul r9
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r9
sub rcx, rax
mov rax, r11
imul rax, qword [0x140278080]
mov rdx, qword [rdi + rcx*8]
and rdx, rax
xor rdx, r9
and r9b, 0x3f
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r10
not r14
imul r14, rsi
movabs rax, 0x7cd8a7de670550ae
imul r14, rax
mov rax, r9
imul rax, r15
mov r15, r14
xor r15, rax
mov al, r15b
not al
movzx ecx, al
mov rdx, qword [0x140278068]
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010db70
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
imul r14, qword [0x140278060], 0xfffffffff00714cc
sub r14, rdx
ror r14, cl
movabs rcx, 0x5f904634ad3a2293
add r14, rcx
add r14, qword [rsp + 0x28]
movabs rax, 0xff055d7b974e5a63
xor r8, rax
mov rax, rbx
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r8, rax
xor r9, r15
imul r9, qword [rdi + r8*8]
not r10
imul r10, r11
imul r10, r14
imul r10, qword [rsp + 0x20]
movabs rcx, 0xf5ed7e8790fd10bf
xor rcx, rsi
not rcx
xor rcx, r10
sub rcx, r9
call fcn.1400f5030
mov qword [0x140279190], rax
mov r14d, r13d
mov r15d, 0x7d67adda
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 0x14010dc64
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0xc8db318e
jmp 0x14010dc56
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 0x14010dc36
cmp r9d, r14d
jne 0x14010ddbb
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 0x14010ddbb
mov r8d, dword [rsi + 0x18]
test r8d, r8d
je 0x14010ddbb
mov r9d, dword [rsi + 0x20]
dec r8d
mov dword [rsp + 0x20], r8d
mov edx, r8d
mov qword [rsp + 0x88], rdx
lea rdx, [r9 + r8*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov edx, 0xc8db318e
mov r11b, byte [r9]
mov byte [rsp + 0x220], r11b
add r9, r12
test r11b, r11b
mov r11d, 0x4764996c
je 0x14010dd14
mov r10d, edx
mov dl, byte [rsp + 0x220]
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, r11d
xor r8d, r10d
mov r10d, edx
imul r10d, r8d
mov dl, byte [r9]
add r9, r12
test dl, dl
jne 0x14010dcdd
mov dword [rsp + 0x28], r10d
mov r10, qword [rax + 0x30]
mov r8d, dword [rsp + 0x20]
mov edx, dword [rsp + 0x28]
cmp edx, r15d
je 0x14010dd2b
test r8d, r8d
mov r9d, dword [rsi + 0x20]
jne 0x14010dc97
jmp 0x14010ddbb
mov edx, dword [rsi + 0x24]
add rdx, r10
mov rax, qword [rsp + 0x88]
movzx r8d, word [rdx + rax*2]
mov edx, dword [rsi + 0x1c]
add rdx, r10
mov r9d, dword [rdx + r8*4]
add r9, r10
cmp r9, rsi
jbe 0x14010ddc3
lea rax, [rsi + rcx]
cmp r9, rax
jae 0x14010ddc3
mov r14d, 0xc8db318e
mov r15d, r14d
jmp 0x14010dd7f
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r11d
xor ecx, r14d
mov r14d, eax
imul r14d, ecx
add r9, r12
mov al, byte [r9]
cmp al, 0x2e
jne 0x14010dd64
jmp 0x14010dda0
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r11d
xor ecx, r15d
mov r15d, eax
imul r15d, ecx
add r9, r12
mov al, byte [r9]
test al, al
jne 0x14010dd88
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14010dc09
mov rcx, qword [rsp + 0x50]
call r9
movabs rax, 0xaebfbe000000000
movabs r14, 0x664de08dc48cb682
movabs r8, 0x8b1288c4dc6c931f
mov r15, qword [0x140278080]
imul r15, rax
movabs rax, 0x924276b000000000
xor r15, rax
mov rcx, r15
imul rcx, r8
mov qword [rsp + 0x88], rcx
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r15
and r10, r8
imul r10, qword [rdi + rcx*8]
movabs rax, 0x6166e2ae7eb07820
imul r10, rax
shr r10, 3
movabs rax, 0x749a00d37cf8a9a3
xor r10, rax
movabs rax, 0xffffff57cd485647
mov r13, r15
imul r13, rax
sub r13, 0xb8777f0
xor r13, r10
xor r13, qword [0x140278060]
mov rax, r10
imul rax, qword [0x140278070]
movabs rcx, 0xb9de928bc4fbe966
imul rax, rcx
not rax
and r13, rax
ror r13, 8
shr r13, 8
movabs r9, 0x74ed773b23936ce1
lea rcx, [r15 + r9]
xor rcx, 0xfffffffffa75e26b
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xd70b7e0a1b1fd5a0
mov rsi, qword [rdi + rcx*8]
imul rsi, rax
sub rsi, r9
movabs rcx, 0x4fb0f31142bafef8
mov rax, r10
imul rax, rcx
xor rsi, rax
shr rsi, 0x1f
not rsi
lea rcx, [rsi + r9]
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, sil
movzx ecx, byte [rdi + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x77
and ecx, 0x8000003f
jge 0x14010df2a
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
mov rdx, rsi
xor rdx, r15
ror rdx, cl
not rdx
imul rdx, r10
imul rax, rdx, 0xfffffffff4788810
mov qword [rsp + 0x50], rax
add r9, rax
mov r11, rsi
imul r11, r13
sub r11, r9
xor r11, r14
movzx ecx, r9b
mov dword [rsp + 0x220], ecx
xor cl, 0xf8
and cl, 0xf
rol r11, cl
mov rax, r9
sub rax, qword [0x140278078]
xor r11, rax
movabs rax, 0x6bc35d66f779a9f0
imul rdx, rax
movabs rax, 0x546fd9e414b623f
add rdx, rax
xor r11, rdx
xor r11, r10
xor r11, r15
mov rax, r11
and eax, 3
je 0x14010e2f7
sub rax, 1
je 0x14010e1b5
sub rax, 1
je 0x14010e0c1
cmp rax, 1
jne 0x14010e39f
mov r14, r9
imul r14, rsi
movabs rax, 0x92ff05a38167a67
add rax, r11
xor r14, rax
ror r14, 0x30
shr r14, 0xc
xor r14, r15
not r14
movabs rcx, 0x8357260ae764
mov r8, qword [0x140278088]
add r8, rcx
movabs rax, 0x746ff2434e82ab07
xor r8, rax
mov eax, r11d
imul eax, r14d
and eax, 0x3f
mov ecx, 0x40
sub ecx, eax
mov rdx, r8
shl rdx, cl
mov ecx, eax
shr r8, cl
or rdx, r8
shl rdx, 0xf
movabs rax, 0xf7ca7db97eea0b9f
sub rax, rsi
mov rsi, rdx
xor rsi, rax
mov rcx, rsi
movabs r12, 0x8b1288c4dc6c931f
imul rcx, r12
mov eax, 0xaf31d975
add rcx, rax
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rdi + rcx*8]
and cl, 0xf
movabs r8, 0xe0b46f18583f44e8
sub r8, r14
shr r8, cl
movabs rax, 0x74f59bc38149169b
mov rcx, qword [rsp + 0x50]
add rcx, rax
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r11
imul rax, qword [rdi + rcx*8]
imul rax, r11
sub rax, r13
xor r8, rax
jmp 0x14010e39f
movabs rax, 0xaaaaaa1aaf28244b
mov rcx, r11
xor rcx, rax
movabs rax, 0x1206ed6d25f807
imul rcx, rax
movabs rdx, 0xfff17ca8784a1237
mov rax, r10
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a89381697
mov rdx, qword [rsp + 0x50]
imul rdx, rax
movabs rsi, 0x6b7804496ac0a54e
add rsi, rcx
add rsi, rdx
movabs rax, 0x277cd7be7df8f32b
mov rcx, rsi
xor rcx, rax
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, rsi
not r9
imul r9, qword [rdi + rcx*8]
xor r9, 0xfffffffffa7df29b
lea ecx, [r11 + 9]
and cl, 0x3f
rol r9, cl
movabs rcx, 0xc7efeb3fec8507d5
mov rax, qword [rsp + 0x88]
xor rax, rcx
movabs rcx, 0x7c7a7dc6937af82a
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0x14
not rcx
movabs rax, 0x9b2de6b2c851c430
imul rcx, rax
mov rax, rsi
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, r13b
and cl, 0x3f
ror rdx, cl
mov rax, r8
mov r8, rdx
imul r8, rax
jmp 0x14010e39f
movabs rax, 0x7b0e7ff44cb65651
imul r11, rax
movabs rax, 0xd79435e50d79435f
mul r11
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r11b
sub cl, dl
movabs rdx, 0x74ed773b23936ce0
mov rax, r15
imul rax, rdx
xor rax, r14
not rax
shl rax, cl
xor r10, rax
mov ecx, dword [rsp + 0x220]
and cl, 0x3f
rol r10, cl
movabs rcx, 0x74ed773b23936ce1
add rcx, r11
mov rax, rbx
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x8c4dc6c931f
mov rax, qword [rdi + rcx*8]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a7f3ec5266
or r10, rax
mov rcx, qword [0x140278070]
imul rcx, r14
sub rcx, r9
mov rax, r13
sub rax, r10
xor rcx, rax
movabs rax, 0xc7a7c6a6a2e4526b
xor rcx, rax
mov qword [rsp + 0x220], rcx
movzx eax, sil
imul r8d, eax, 0xe
and r8b, 0x3f
movabs rax, 0xcccccccccccccccd
mul r15
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, r15
sub rcx, rax
or rcx, r12
xor edx, edx
mov rax, qword [rsp + 0x220]
div rcx
mov rcx, rdx
mov rdx, r11
imul rdx, r9
imul rdx, qword [rsp + 0x220]
shr rdx, cl
mov rax, rsi
sub rax, rdx
sub rax, r15
movabs r15, 0x78958946db61e71
add r15, rax
xor r15, r13
mov cl, r8b
rol r15, cl
not r15
mov r8, qword [rsp + 0x220]
jmp 0x14010e39f
mov rax, rbx
mul r10
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r10
sub rcx, rax
mov rax, r11
imul rax, qword [0x140278080]
mov rdx, qword [rdi + rcx*8]
and rdx, rax
xor rdx, r10
and r10b, 0x3f
mov cl, r10b
mov r10, rdx
ror r10, cl
imul r10, r9
not r13
imul r13, rsi
movabs rax, 0x7cd8a7de7f15038a
imul r13, rax
mov rax, r10
imul rax, r15
mov r15, r13
xor r15, rax
mov al, r15b
not al
movzx ecx, al
mov r13, qword [0x140278068]
movzx eax, r13b
xor ecx, eax
and ecx, 0x8000003f
jge 0x14010e37c
sub ecx, r12d
or ecx, 0xffffffc0
add ecx, r12d
imul rdx, qword [0x140278060], 0xfffffffff4788810
sub rdx, r13
ror rdx, cl
movabs r13, 0x74ed773b23936ce1
add r13, rdx
add r13, qword [rsp + 0x50]
movabs rax, 0xff055d7b8f5e0947
xor r14, rax
mov rax, rbx
mul r14
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r14, rax
xor r10, r15
imul r10, qword [rdi + r14*8]
not r9
imul r9, r11
imul r9, r13
imul r9, r8
movabs rcx, 0xf5ed7e8788ed439b
xor rcx, rsi
not rcx
xor rcx, r9
sub rcx, r10
call fcn.1400f4df0
mov qword [0x140279160], rax
mov rax, qword [rsp + 0x30]
jmp 0x14010b7a8