Function at 0x14007ec20
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0x240
mov qword [rsp + 0x218], r8
mov qword [rsp + 0x220], rdx
mov qword [rsp + 0x228], rcx
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov rcx, qword [rsp + 0x228]
add rax, 0x60
mov qword [rsp + 0x230], rax
mov rax, qword [rcx]
movabs rcx, 0x470b74b512b6b1f8
movabs rdx, 0x470b74b512b6b1f8
xor rcx, rdx
cmp rax, rcx
mov qword [rsp + 0x238], rax
jne 0x14007efae
mov eax, dword [0x1402ab420]
xor eax, 0x75a8768f
add eax, dword [0x1402ab424]
mov ecx, 0x67f917c5
xor ecx, 0x569b1ca4
imul eax, ecx
and eax, 0x38dbc55b
or eax, 0x4c1cf26b
cmp eax, 0x922076c8
jae 0x1400805d0
mov eax, dword [0x1402ab428]
xor eax, 0x39f4aa70
and eax, dword [0x1402ab42c]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xcc2e3796
xor edx, 0x33d1c869
xor eax, edx
or ecx, eax
mov eax, 0xe18aebb5
and eax, 0xe18aebb5
mov edx, 0x255eb8d3
xor edx, 0xdaa1472c
xor eax, edx
and ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x8e730a2
mov eax, ecx
xor eax, edx
and eax, ecx
add eax, 0xcbaf2ba3
mov dword [rsp + 0x204], eax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov ecx, 0x34
call fcn.140051e20
mov rcx, qword [rsp + 0x230]
mov rdx, rax
mov eax, dword [rsp + 0x204]
mov qword [rsp + 0x208], rdx
mov cl, byte [rcx]
mov dl, 0xfb
xor dl, 0xfb
cmp cl, dl
sete cl
mov byte [rsp + 0x217], cl
cmp eax, 0x4a4d9890
je 0x1400805d0
mov al, byte [rsp + 0x217]
test al, 1
jne 0x14007ed83
jmp 0x1400805c7
mov eax, dword [0x1402ab430]
xor edx, edx
div dword [0x1402ab434]
mov r11d, eax
and r11d, 0xe8213242
xor r11d, 0x2bfa729c
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x2c43351f
mov edx, 0xffffffff
xor edx, 0x8c5629a2
mov r9d, 0x738341c1
xor r9d, 0xffd56863
mov eax, ecx
and eax, r9d
and r11d, edx
mov r10d, 0x5812828b
xor r10d, 0xd444ab29
mov r9d, r8d
and r9d, r10d
mov r10d, edx
and r10d, 0x2c43351f
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0xc8713ded
xor r8d, 0x378ec212
xor ecx, r8d
or edx, 0x8c5629a2
and ecx, edx
or eax, ecx
cmp eax, 0x8b71ef02
je 0x1400805d9
mov rcx, qword [rsp + 0x208]
mov rdx, qword [rsp + 0x228]
mov r8d, dword [0x1402ab438]
mov r9d, dword [0x1402ab43c]
mov eax, r8d
and eax, r9d
mov r10d, 0x611b423c
xor r10d, 0x9ee4bdc3
xor eax, r10d
mov r10d, 0xdb559ad1
xor r10d, 0x24aa652e
xor r8d, r10d
mov r10d, 0xe64c9c75
xor r10d, 0x19b3638a
xor r9d, r10d
or r8d, r9d
xor eax, 0xffffffff
xor r8d, 0xffffffff
or eax, r8d
mov r8d, 0xdeb52b9f
xor r8d, 0x214ad460
mov r9d, eax
xor r9d, r8d
and r9d, 0x82af67d9
mov r10d, 0xffffffff
xor r10d, 0x82af67d9
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0x82af67d9
mov r10d, 0x3fa0d8fd
xor r10d, 0xbd0fbf24
or eax, r10d
imul eax, r9d
add eax, r8d
mov r10d, 0xffffffff
xor r10d, 0x3fbf9402
mov r9d, eax
and r9d, r10d
mov r8d, eax
or r8d, r10d
mov r10d, 0x8ff78bce
xor r10d, 0x70087431
xor r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0x3fbf9402
or eax, 0x3fbf9402
imul eax, r9d
add eax, r8d
or eax, 0xaa54eb1c
movabs r8, 0xf23aac48212656f1
movabs r9, 0xf23aac48212656f1
xor r8, r9
mov qword [rdx + 0x10], r8
cmp rcx, 0
setl cl
mov byte [rsp + 0x203], cl
cmp eax, 0x64bc56ff
jb 0x14007ee23
mov al, byte [rsp + 0x203]
test al, 1
jne 0x14007ef66
jmp 0x14007ef86
mov rcx, qword [rsp + 0x208]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.140018506
jmp 0x1400805c7
mov rcx, qword [rsp + 0x228]
mov rdx, qword [rsp + 0x208]
call fcn.14002da8a
mov rax, qword [rsp + 0x228]
mov rax, qword [rax]
mov qword [rsp + 0x238], rax
mov rax, qword [rsp + 0x228]
mov rcx, qword [rsp + 0x238]
mov qword [rsp + 0x1c8], rcx
mov rcx, rax
add rcx, 8
mov qword [rsp + 0x1d0], rcx
mov rcx, qword [rax + 8]
mov qword [rsp + 0x1d8], rcx
add rax, 0x10
mov qword [rsp + 0x1e0], rax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov qword [rsp + 0x1e8], rax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov rcx, rax
mov rax, qword [rsp + 0x1e8]
mov qword [rsp + 0x1f0], rcx
mov cl, byte [rax + 0x60]
mov dl, 0xa8
xor dl, 0xa8
xor eax, eax
cmp cl, dl
mov qword [rsp + 0x1f8], rax
jne 0x14007f546
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x1f0]
mov r8b, byte [rcx + 0x60]
xor ecx, ecx
mov r9b, cl
movabs rcx, 0xe7037ed1a0b428db
xor rax, rcx
movabs rcx, 0xa0761d6478bd642f
mul rcx
mov rcx, rax
not rcx
mov rax, rdx
or rax, rcx
and rdx, rcx
not rax
or rax, rdx
mov qword [rsp + 0x1a0], rax
mov rcx, rax
not rcx
movabs rdx, 0xeb44accab455d16d
mov qword [rsp + 0x1a8], rdx
and rcx, rdx
movabs rdx, 0x14bb53354baa2e92
and rax, rdx
mul rcx
mov r11, rax
mov rax, qword [rsp + 0x1a0]
mov rcx, rdx
mov rdx, qword [rsp + 0x1a8]
mov qword [rsp + 0x1b0], rcx
mov rcx, rax
and rcx, rdx
or rax, rdx
mul rcx
mov r10, rax
mov rax, qword [rsp + 0x1b0]
mov rcx, rdx
mov rdx, qword [rsp + 0x1c8]
add r10, r11
adc rcx, rax
not r10
mov rax, rcx
or rax, r10
and rcx, r10
not rcx
and rax, rcx
not rax
xor ecx, ecx
cmp r8b, r9b
cmove rcx, rax
movabs r8, 0x5a6ae52ee643a1c5
movabs rax, 0x5a6ae52ee643a1c5
xor r8, rax
mov eax, 0x5fa5bdb4
cmp rcx, r8
cmove rcx, rax
mov qword [rsp + 0x1b8], rcx
mov rax, 0xffffffffffffffff
cmp rdx, 0
mov qword [rsp + 0x1f8], rcx
mov qword [rsp + 0x1c0], rax
je 0x14007f546
mov eax, dword [0x1402ab440]
mov ecx, 0xb12cffee
xor ecx, 0x3228864d
xor eax, ecx
mov edx, dword [0x1402ab444]
xor edx, 0xc4ce6432
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
xor eax, 0xffffffff
mov edx, 0x6a8785ab
xor edx, 0x23df73a
mov ecx, 0xe61065fc
xor ecx, 0x19ef9a03
xor edx, ecx
mov ecx, 0xffffffff
xor ecx, 0x8b567af0
or eax, edx
or ecx, 0x8b567af0
xor eax, 0xffffffff
and eax, ecx
xor eax, 0x3ef7e7af
mov ecx, 0x3512ddca
xor ecx, 0xd69499d9
xor edx, edx
div ecx
cmp eax, 0xb820323d
ja 0x1400805e2
mov r8, qword [rsp + 0x1c8]
mov rdx, qword [rsp + 0x1b8]
mov eax, dword [0x1402ab448]
mov ecx, dword [0x1402ab44c]
and eax, ecx
imul rax, rax, 0x27a0fba5
shr rax, 0x3d
imul ecx, eax, 0xab92b1
mov eax, ecx
not eax
or ecx, 0xd56ba9fb
or eax, 0x945604
and eax, ecx
mov rcx, r8
dec rcx
mov qword [rsp + 0x188], rcx
and rdx, rcx
mov qword [rsp + 0x190], rdx
setns cl
sub rdx, r8
setl dl
and cl, dl
mov byte [rsp + 0x19f], cl
cmp eax, 0xaa13276a
je 0x1400805e2
mov rax, qword [rsp + 0x190]
mov cl, byte [rsp + 0x19f]
test cl, 1
mov qword [rsp + 0x180], rax
jne 0x14007f2ca
jmp 0x14007f291
mov rdx, qword [rsp + 0x188]
mov rcx, qword [rsp + 0x180]
call fcn.140025e55
mov rcx, qword [rsp + 0x1b8]
mov rax, 0xffffffffffffffff
mov qword [rsp + 0x1f8], rcx
mov qword [rsp + 0x1c0], rax
jmp 0x14007f546
mov rax, qword [rsp + 0x1d8]
mov rcx, qword [rsp + 0x180]
mov qword [rsp + 0x170], rcx
add rax, 8
imul rcx, rcx, 0x18
add rax, rcx
mov rax, qword [rax]
mov qword [rsp + 0x178], rax
cmp rax, 0
je 0x14007f4b0
mov rax, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x1b8]
cmp rax, rcx
jne 0x14007f46e
mov r11d, dword [0x1402ab450]
mov r10d, dword [0x1402ab454]
mov eax, 0x58493369
xor eax, 0xa7b6cc96
mov ecx, r11d
xor ecx, eax
mov eax, 0x976daf78
xor eax, 0x68925087
mov r8d, r10d
xor r8d, eax
mov edx, 0xe36f5c45
xor edx, 0x7ed43379
mov eax, 0x6deeb01a
xor eax, 0x92114fe5
xor edx, eax
mov eax, ecx
and eax, 0x9dbb6f3c
and r11d, edx
mov esi, 0xb825f751
xor esi, 0x259e986d
mov r9d, r8d
and r9d, esi
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x9dbb6f3c
and ecx, edx
or eax, ecx
mov edx, 0x23d1fbda
xor edx, 0x23d1fbdb
mov ecx, eax
add ecx, edx
xor eax, 0xffffffff
or eax, 0xf8a9df1a
add eax, ecx
and eax, 0xcdd337de
mov ecx, 0x2251bf8b
xor ecx, 0xb8371166
imul eax, ecx
mov ecx, 0xf6afbe90
xor ecx, 0x4babc65c
cmp eax, ecx
jb 0x1400805eb
mov r8, qword [rsp + 0x220]
mov r9, qword [rsp + 0x170]
mov rdx, qword [rsp + 0x1d8]
mov eax, dword [0x1402ab458]
xor eax, dword [0x1402ab45c]
sub eax, 0x16ec5cd6
imul eax, eax, 0x690aaa68
imul eax, eax, 0x1975f879
mov ecx, 0xaa6fca31
xor ecx, 0x4efe4281
add rdx, 8
imul r9, r9, 0x18
add rdx, r9
add rdx, 8
cmp qword [rdx], r8
sete dl
mov byte [rsp + 0x16f], dl
cmp eax, ecx
ja 0x14007f3d5
mov rax, qword [rsp + 0x170]
mov rcx, qword [rsp + 0x1b8]
mov dl, byte [rsp + 0x16f]
test dl, 1
mov qword [rsp + 0x1f8], rcx
mov qword [rsp + 0x1c0], rax
jne 0x14007f546
jmp 0x14007f46e
mov r8, qword [rsp + 0x1c8]
mov rcx, qword [rsp + 0x188]
mov rax, qword [rsp + 0x170]
inc rax
and rax, rcx
setns cl
mov rdx, rax
sub rdx, r8
setl dl
and cl, dl
test cl, 1
mov qword [rsp + 0x180], rax
jne 0x14007f2ca
jmp 0x14007f291
mov rcx, qword [rsp + 0x1b8]
mov r9, qword [rsp + 0x170]
mov rax, r9
xor rax, 0xffffffffffffffff
movabs rdx, 0xcec0e96067386cb4
and rax, rdx
mov r8, 0xffffffffffffffff
movabs rdx, 0xcec0e96067386cb4
xor r8, rdx
and r9, r8
movabs rdx, 0x498d674b604e9f14
movabs r10, 0xb67298b49fb160eb
xor rdx, r10
movabs r10, 0x1309cb87e76930cc
movabs r11, 0xecf634781896cf33
xor r10, r11
xor rdx, r10
movabs r10, 0xcec0e96067386cb4
and rdx, r10
and r8, 0xffffffffffffffff
or rax, r9
or rdx, r8
xor rax, rdx
mov qword [rsp + 0x1f8], rcx
mov qword [rsp + 0x1c0], rax
mov rax, qword [rsp + 0x230]
mov rcx, qword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x1c0]
mov qword [rsp + 0x158], rdx
mov qword [rsp + 0x160], rcx
cmp byte [rax], 0
jne 0x1400805c7
mov eax, dword [0x1402ab460]
xor eax, 0x830c07bc
mov edx, dword [0x1402ab464]
xor ecx, ecx
sub ecx, eax
mov eax, 0x66ec565e
xor eax, 0x66ec565e
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x69f861b7
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
xor eax, 0x64e284ae
mov ecx, 0xb7bdfb06
xor ecx, 0xb71ad487
imul eax, ecx
mov ecx, 0xe4e321f0
xor ecx, 0xba9373c9
cmp eax, ecx
je 0x1400805f4
mov rcx, qword [rsp + 0x228]
mov eax, dword [0x1402ab468]
mov r8d, dword [0x1402ab46c]
mov edx, r8d
and edx, eax
xor edx, 0xffffffff
add eax, r8d
mov r8d, 0xf57f3b0c
xor r8d, 0xf57f3b0d
add eax, r8d
add eax, edx
mov r8d, 0x2c0bb93b
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x158]
mov r8d, eax
mov r9d, 0x185d8d2a
xor r9d, 0xc3b33626
mov eax, r8d
and eax, r9d
mov r9d, 0x5ab3f01c
xor r9d, 0x815d4b10
or r8d, r9d
add eax, r8d
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0x9360ec79
mov r9d, 0xffffffff
xor r9d, 0x9360ec79
and eax, r9d
sub eax, r8d
cmp rdx, 0xffffffffffffffff
setg dl
mov byte [rsp + 0x14f], dl
mov rcx, qword [rcx]
mov qword [rsp + 0x150], rcx
cmp eax, 0x4881b96c
je 0x1400805f4
mov al, byte [rsp + 0x14f]
test al, 1
jne 0x14007f69f
jmp 0x14007f70a
mov rax, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x150]
cmp rax, rcx
jl 0x14007f6d6
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400805c7
mov rdx, qword [rsp + 0x218]
mov rax, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x1d0]
mov rcx, qword [rcx]
add rcx, 8
imul rax, rax, 0x18
add rcx, rax
add rcx, 0x10
call fcn.14007db80
jmp 0x1400805c7
mov rax, qword [rsp + 0x150]
movabs rcx, 0x1614e451c92c2c95
movabs rdx, 0x1614e451c92c2c95
xor rcx, rdx
cmp rax, rcx
mov qword [rsp + 0x140], rax
jne 0x14007f902
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov ecx, 0x34
call fcn.140051e20
mov rcx, rax
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x138], rcx
cmp byte [rax], 0
jne 0x1400805c7
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x1e0]
mov qword [rcx], 0
cmp rax, 0
jge 0x14007f8da
mov edx, dword [0x1402ab470]
mov eax, dword [0x1402ab474]
mov ecx, 0xbba113b5
xor ecx, 0xd8bca608
sub edx, ecx
add edx, eax
add edx, 0x631db5bd
mov eax, 0xbe1ee70d
xor eax, 0x486d4c58
mov ecx, 0x9c154b75
xor ecx, 0x63eab48a
xor eax, ecx
add edx, eax
mov eax, 0xe530607a
xor eax, 0xe530607b
add edx, eax
mov ecx, edx
xor ecx, 0xf7c3bea0
mov eax, 0xffffffff
xor eax, 0xf7c3bea0
and edx, eax
mov eax, 0x3214cf11
xor eax, 0x3214cf13
imul eax, edx
sub eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xf1926646
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x5600a745
xor r8d, 0xa9ff58ba
xor ecx, r8d
imul ecx, edx
mov r8d, 0xe68520d2
xor r8d, 0x17174694
mov edx, eax
and edx, r8d
or eax, 0xf1926646
imul eax, edx
add eax, ecx
cmp eax, 0x91ad7eb4
jae 0x1400805fd
mov rcx, qword [rsp + 0x138]
mov eax, dword [0x1402ab478]
mov edx, dword [0x1402ab47c]
xor edx, 0x19ab06b3
or eax, edx
add eax, 0x644c16a3
mov edx, eax
and edx, 0x597bbb3a
xor edx, 0xffffffff
add eax, 0x597bbb3a
mov r8d, 0xf7601cf5
xor r8d, 0xf7601cf4
add eax, r8d
add eax, edx
mov edx, eax
xor edx, 0x1457851d
mov r8d, 0xffffffff
xor r8d, 0x1457851d
and eax, r8d
shl eax, 1
sub eax, edx
mov dword [rsp + 0x134], eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.140018506
mov eax, dword [rsp + 0x134]
cmp eax, 0xe7e3217f
je 0x1400805fd
jmp 0x1400805c7
mov rcx, qword [rsp + 0x228]
mov rdx, qword [rsp + 0x138]
call fcn.14002da8a
mov rax, qword [rsp + 0x228]
mov rax, qword [rax]
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x140]
mov qword [rsp + 0x108], rcx
mov rax, qword [rax]
mov qword [rsp + 0x110], rax
mov rax, rcx
shl rax, 1
mov qword [rsp + 0x118], rax
cvtsi2sd xmm0, rcx
movsd xmm1, qword [0x1402bdfe0]
mulsd xmm0, xmm1
movsd qword [rsp + 0x120], xmm0
cvtsi2sd xmm1, rax
movsd qword [rsp + 0x128], xmm1
ucomisd xmm0, xmm1
jne 0x14007f971
jp 0x14007f971
jmp 0x14007f9c5
movsd xmm1, qword [rsp + 0x120]
movsd xmm0, qword [rsp + 0x128]
subsd xmm0, xmm1
call fcn.1402a7e80
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0x120]
movsd qword [rsp + 0x100], xmm1
call fcn.1402a7e80
movsd xmm1, qword [rsp + 0x100]
movsd xmm2, qword [0x1402bdfe8]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jb 0x14007ff01
mov eax, dword [0x1402ab480]
imul eax, dword [0x1402ab484]
xor ecx, ecx
sub ecx, 0x8458f4b1
sub eax, ecx
mov ecx, eax
and ecx, 0x1f5a7665
shl ecx, 1
mov edx, 0x341f840a
xor edx, 0x2b45f26f
add eax, edx
sub eax, ecx
sub eax, 0x7702d6e2
cmp eax, 0xe7e9d40c
jb 0x140080606
mov r8, qword [rsp + 0x110]
mov ecx, dword [0x1402ab488]
mov edx, dword [0x1402ab48c]
mov eax, 0x4bb4b67b
xor eax, 0xf2aef40e
xor edx, eax
mov eax, 0x32b6a283
xor eax, 0xcd495d7c
xor ecx, eax
mov eax, 0xaad6821a
xor eax, 0x55297de5
xor edx, eax
mov eax, 0x908eb514
xor eax, 0x6242f395
mov r9d, 0x63d395de
xor r9d, 0x9c2c6a21
xor eax, r9d
or ecx, edx
or eax, 0xf2cc4681
mov edx, 0x29c019ff
xor edx, 0xd63fe600
xor ecx, edx
and ecx, eax
mov eax, ecx
or eax, eax
mov edx, 0x2815c50
xor edx, 0xfd7ea3af
xor eax, edx
mov edx, 0x77608885
or edx, 0x77608885
mov r9d, 0x96b3d6fb
xor r9d, 0x694c2904
xor edx, r9d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
xor ecx, 0xffffffff
mov edx, 0x87ec135c
xor edx, 0xf08c9bd9
mov r9d, 0xce8f4310
xor r9d, 0x3170bcef
xor edx, r9d
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x789aaa79
xor ecx, 0x789aaa79
sub ecx, eax
xor eax, eax
sub eax, 0x357aaeda
add ecx, eax
xor eax, eax
sub eax, ecx
imul eax, eax, 0xcc162593
mov ecx, 0x32d9dbed
xor ecx, 0x89a2bd17
mov r10, 0xffffffffffffffff
xor r10, 3
mov rdx, r8
and rdx, r10
mov r9, r8
or r9, r10
movabs r10, 0xa0598ee73e4b2b8a
movabs r11, 0x5fa67118c1b4d475
xor r10, r11
xor r9, r10
imul r9, rdx
movabs rdx, 0xe5b06227a3f4187c
movabs r10, 0xe5b06227a3f4187f
xor rdx, r10
mov r10, r8
and r10, rdx
mov rdx, r8
or rdx, 3
imul rdx, r10
add rdx, r9
mov qword [rsp + 0xe0], rdx
cvtsi2sd xmm0, r8
movsd xmm1, qword [0x1402bdff0]
mulsd xmm0, xmm1
movsd qword [rsp + 0xe8], xmm0
cvtsi2sd xmm1, rdx
movsd qword [rsp + 0xf0], xmm1
ucomisd xmm0, xmm1
sete dl
setnp r8b
and dl, r8b
mov byte [rsp + 0xff], dl
cmp eax, ecx
jae 0x14007fa06
mov al, byte [rsp + 0xff]
test al, 1
jne 0x14007fd01
jmp 0x14007fbb6
mov ecx, dword [0x1402ab490]
mov edx, dword [0x1402ab494]
mov eax, edx
and eax, ecx
mov r8d, 0xf26c18ec
xor r8d, 0xd93e713
xor eax, r8d
add ecx, edx
add ecx, 1
add ecx, eax
or ecx, 0xaf2a0f82
or ecx, 0x1bec7a63
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xad87fc70
xor ecx, 0x9e086fd
mov edx, 0x85d74df9
xor edx, 0x7a28b206
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xa4677a8d
or ecx, edx
xor eax, 0xffffffff
mov edx, 0x7a9f091e
xor edx, 0x8560f6e1
xor ecx, edx
or eax, ecx
cmp eax, 0x2ded7f04
je 0x14008060f
movsd xmm1, qword [rsp + 0xe8]
movsd xmm0, qword [rsp + 0xf0]
mov eax, dword [0x1402ab498]
mov ecx, dword [0x1402ab49c]
xor ecx, 0x32952b06
sub eax, 0x7fb35c4a
sub eax, ecx
mov ecx, 0xa84eec79
xor ecx, 0xd7fdb033
add eax, ecx
mov ecx, 0x1a422b7a
xor ecx, 0x8e0869e4
imul eax, ecx
mov ecx, 0x80effd7b
xor ecx, 0xeb5cf5c0
or eax, ecx
imul eax, eax, 0x171e1682
mov dword [rsp + 0xd8], eax
subsd xmm0, xmm1
call fcn.1402a7e80
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0xe8]
movsd qword [rsp + 0xd0], xmm1
call fcn.1402a7e80
movsd xmm1, qword [rsp + 0xd0]
mov eax, dword [rsp + 0xd8]
movsd xmm2, qword [0x1402bdfe8]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
setb cl
mov byte [rsp + 0xdf], cl
cmp eax, 0xa273f1dc
jae 0x14007fc35
mov al, byte [rsp + 0xdf]
test al, 1
jne 0x14007ff01
jmp 0x14007fd01
mov rcx, qword [rsp + 0x118]
mov rdx, qword [rsp + 0xe0]
xor eax, eax
cmp rcx, rdx
mov byte [rsp + 0xcf], al
jl 0x14007ff2c
mov rdx, qword [rsp + 0x110]
mov r8, qword [rsp + 0x108]
mov rax, r8
xor rax, rdx
mov r9, rdx
xor r9, 0xffffffffffffffff
mov rcx, r8
and rcx, r9
shl rcx, 1
sub rcx, rax
mov qword [rsp + 0xc0], rcx
mov rax, rcx
xor rax, r8
movabs r8, 0x70bb078c2688038a
movabs r9, 0x70bb078c2688038a
xor r8, r9
cmp rax, r8
setl al
xor rcx, rdx
cmp rcx, 0xffffffffffffffff
setg cl
and al, cl
test al, 1
jne 0x14007ff01
mov r11d, dword [0x1402ab4a0]
xor r11d, 0x113682f
mov r10d, dword [0x1402ab4a4]
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, r10d
xor r8d, 0xffffffff
mov edx, 0xc1ef79be
xor edx, 0xbafcbba0
mov eax, 0x46f9d81
xor eax, 0xfb90627e
xor edx, eax
mov r9d, 0xead3cdb3
xor r9d, 0x91c00fad
mov eax, ecx
and eax, r9d
and r11d, edx
mov r9d, r8d
and r9d, 0x7b13c21e
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x7b13c21e
and ecx, edx
or eax, ecx
mov edx, 0x317ef433
xor edx, 0x317ef432
mov ecx, eax
add ecx, edx
xor eax, 0xffffffff
or eax, 0xacf32a0a
add eax, ecx
mov ecx, 0x9d6dc64
xor ecx, 0x408d9f5c
or eax, ecx
and eax, 0xb4b47643
mov ecx, 0x8a49c0bd
xor ecx, 0x9ffb02a
cmp eax, ecx
jbe 0x140080618
mov rcx, qword [rsp + 0xc0]
mov eax, dword [0x1402ab4a8]
mov edx, dword [0x1402ab4ac]
xor edx, 0x90f29e49
or eax, edx
mov r8d, 0xe7c06fb2
xor edx, edx
div r8d
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xac7d4ecc
mov r8d, 0xe53b21cd
xor r8d, 0x37f21c9
mov r9d, 0xc1d6ab01
xor r9d, 0x3e2954fe
xor r8d, r9d
or eax, edx
mov edx, 0x4f96f26f
xor edx, 0xa9d2f26b
or edx, r8d
mov r8d, 0x642d8bcd
xor r8d, 0x9bd27432
xor eax, r8d
and eax, edx
mov edx, 0xa34ce5b6
xor edx, 0x94dd2011
and eax, edx
movabs rdx, 0x357fb0d9fce279c4
movabs r8, 0x357fb0d9fce279c7
xor rdx, r8
cmp rcx, rdx
setg cl
mov byte [rsp + 0xbf], cl
cmp eax, 0xbef209db
jae 0x140080618
mov al, byte [rsp + 0xbf]
mov byte [rsp + 0xcf], al
jmp 0x14007ff2c
call fcn.14000ee80
mov rcx, qword [rsp + 0x230]
mov rax, qword [rsp + 0x158]
cmp byte [rcx], 0
mov qword [rsp + 0xb0], rax
je 0x14008049f
jmp 0x1400805c7
mov rax, qword [rsp + 0x230]
mov cl, byte [rsp + 0xcf]
mov al, byte [rax]
test al, al
setne al
mov byte [rsp + 0xaf], al
or al, cl
test al, 1
jne 0x14008047a
mov rcx, qword [rsp + 0x228]
call fcn.14007e180
mov rax, qword [rsp + 0x230]
cmp byte [rax], 0
jne 0x1400805c7
mov eax, dword [0x1402ab4b0]
xor edx, edx
div dword [0x1402ab4b4]
mov ecx, 0x3228d5e0
xor ecx, 0x3228d5e0
mov edx, 0x54706f3b
xor edx, 0x550e2d21
sub ecx, edx
add eax, ecx
add eax, 0x6562908
add eax, 0x73bfc0a
cmp eax, 0xb43cbb1
je 0x140080621
mov rcx, qword [rsp + 0x228]
mov esi, dword [0x1402ab4b8]
imul esi, dword [0x1402ab4bc]
mov eax, 0xc47cbad0
xor eax, 0x3b83452f
mov edx, esi
xor edx, eax
mov r9d, 0xffffffff
xor r9d, 0x131b922c
mov r8d, 0xffffffff
xor r8d, 0x6075d27c
mov r10d, 0x1a3d1a3e
xor r10d, 0x7a48c842
mov eax, edx
and eax, r10d
and esi, r8d
mov r10d, r9d
and r10d, 0x6075d27c
mov r11d, r8d
and r11d, 0x131b922c
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r9d
mov r9d, 0x6d02cc77
xor r9d, 0x92fd3388
xor edx, r9d
or r8d, 0x6075d27c
and edx, r8d
or eax, edx
mov r8d, 0xc98679d4
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rsp + 0x1d0]
mov r8d, 0xd550575b
xor r8d, 0x2aafa8a4
xor edx, r8d
mov r9d, 0x455bb757
xor r9d, 0x2371b805
mov r8d, 0xc65d66e6
xor r8d, 0x39a29919
xor r9d, r8d
mov r8d, 0xffffffff
xor r8d, 0x19c5cc63
or edx, r9d
or r8d, 0x19c5cc63
xor edx, 0xffffffff
and edx, r8d
mov dword [rsp + 0x9c], edx
mov rcx, qword [rcx]
mov qword [rsp + 0x90], rcx
mov rax, qword [rax]
mov qword [rsp + 0x88], rax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov rcx, qword [rsp + 0x90]
mov rdx, rax
mov eax, dword [rsp + 0x9c]
add rdx, 0x60
mov qword [rsp + 0xa0], rdx
cmp rcx, 0
sete cl
mov byte [rsp + 0xae], cl
cmp eax, 0xba93ae6c
jae 0x140080621
mov cl, byte [rsp + 0xae]
mov rax, 0xffffffffffffffff
test cl, 1
mov qword [rsp + 0x80], rax
jne 0x140080454
jmp 0x140080120
mov rcx, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x90]
movabs r8, 0xe8d0f489d8813263
movabs rax, 0x172f0b76277ecd9c
xor r8, rax
mov rax, rdx
and rax, r8
or rdx, 0xffffffffffffffff
add rax, rdx
mov qword [rsp + 0x70], rax
and rax, rcx
mov qword [rsp + 0x78], rax
mov rdx, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x68], rcx
test rcx, rcx
setns al
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1400802c5
mov ecx, dword [0x1402ab4c0]
mov eax, 0x887029d0
xor eax, 0x2ab90a1d
xor ecx, eax
mov edx, dword [0x1402ab4c4]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
mov ecx, 0x96b0d636
xor ecx, 0xf131e052
xor edx, edx
div ecx
xor eax, 0x546190a3
or eax, 0x5e1b3064
cmp eax, 0x5754d6c5
jbe 0x14008062a
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x68]
mov r8d, dword [0x1402ab4c8]
xor r8d, 0x6a61d14
mov eax, dword [0x1402ab4cc]
or r8d, r8d
xor r8d, 0xffffffff
or eax, eax
xor eax, 0xffffffff
xor r8d, 0xffffffff
xor eax, 0xffffffff
and r8d, eax
mov eax, 0x3adcbd40
xor eax, 0x641d8e0a
imul r8d, eax
mov r9d, 0xcf9e1b31
xor r9d, 0x3061e4ce
mov eax, r8d
xor eax, r9d
mov r9d, 0xffffffff
xor r9d, 0xbf2d9193
and eax, r9d
xor r8d, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0xbf2d9193
and r8d, r9d
or eax, r8d
mov r8d, 0xd76a562a
xor r8d, 0x2895a9d5
xor eax, r8d
mov r10d, 0xffffffff
xor r10d, 0x7f99edfc
mov r9d, eax
and r9d, r10d
mov r8d, eax
or r8d, r10d
xor r8d, 0xffffffff
imul r8d, r9d
mov r10d, 0x6dd91b6c
xor r10d, 0x1240f690
mov r9d, eax
and r9d, r10d
or eax, 0x7f99edfc
imul eax, r9d
add eax, r8d
mov dword [rsp + 0x64], eax
call fcn.140025e55
mov eax, dword [rsp + 0x64]
cmp eax, 0x2aaeb583
je 0x1400801cd
mov rax, 0xffffffffffffffff
mov qword [rsp + 0x80], rax
jmp 0x140080454
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0xa0]
mov rax, qword [rsp + 0x88]
lea r8, [rcx + rcx*2]
mov rax, qword [rax + r8*8 + 8]
mov qword [rsp + 0x50], rax
test rax, rax
sete al
mov r9b, byte [rdx]
test r9b, r9b
setne dl
or dl, al
mov eax, 6
mov r8d, 3
cmp r9b, 0
cmovne eax, r8d
test dl, 1
mov qword [rsp + 0x58], rcx
mov dword [rsp + 0x60], eax
jne 0x14008039b
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x160]
cmp rax, rcx
jne 0x140080369
mov rax, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x88]
add rcx, 8
imul r8, rax, 0x18
add rcx, r8
add rcx, 8
cmp qword [rcx], rdx
mov qword [rsp + 0x80], rax
je 0x140080454
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x68]
movabs rdx, 0x15aa153eb6047ac9
movabs r8, 0x15aa153eb6047ac8
xor rdx, r8
add rcx, rdx
and rcx, rax
xor eax, eax
mov qword [rsp + 0x58], rcx
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x60]
mov dword [rsp + 0x3c], ecx
mov qword [rsp + 0x40], rax
mov rdx, 0xffffffffffffffff
mov qword [rsp + 0x48], rdx
test ecx, ecx
mov qword [rsp + 0x78], rax
je 0x140080161
jmp 0x1400803cb
mov rax, qword [rsp + 0x48]
mov ecx, dword [rsp + 0x3c]
sub ecx, 6
mov qword [rsp + 0x80], rax
jne 0x140080454
jmp 0x1400803ea
mov r8, qword [rsp + 0x40]
mov rax, r8
xor rax, 0xffffffffffffffff
movabs rcx, 0x6371def5c52536c0
and rax, rcx
mov rdx, 0xffffffffffffffff
movabs rcx, 0x6371def5c52536c0
xor rdx, rcx
and r8, rdx
mov rcx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
movabs r9, 0x5d60a0f80cb1508d
movabs r10, 0x3e117e0dc994664d
xor r9, r10
and rcx, r9
and rdx, 0xffffffffffffffff
or rax, r8
or rcx, rdx
xor rax, rcx
mov qword [rsp + 0x80], rax
mov rcx, qword [rsp + 0x230]
mov rax, qword [rsp + 0x80]
cmp byte [rcx], 0
mov qword [rsp + 0xb0], rax
je 0x14008049f
jmp 0x1400805c7
mov rax, qword [rsp + 0x158]
mov cl, byte [rsp + 0xaf]
test cl, 1
mov qword [rsp + 0xb0], rax
jne 0x1400805c7
jmp 0x14008049f
mov r10, qword [rsp + 0x160]
mov r9, qword [rsp + 0x218]
mov r8, qword [rsp + 0x220]
mov rdx, qword [rsp + 0x228]
mov rax, qword [rsp + 0xb0]
movabs r11, 0xebf47a0f670c2c32
movabs rcx, 0x140b85f098f3d3cd
xor r11, rcx
mov rcx, rax
and rcx, r11
shl rcx, 1
movabs r11, 0x609330932501280
movabs rsi, 0xf9f6ccf6cdafed7f
xor r11, rsi
add rax, r11
sub rax, rcx
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x28], rax
call fcn.14007df20
mov rax, qword [rsp + 0x230]
cmp byte [rax], 0
jne 0x1400805c7
mov rax, qword [rsp + 0x1e0]
mov rdx, qword [rax]
xor eax, eax
sub rax, 1
mov rcx, rdx
sub rcx, rax
mov qword [rsp + 0x30], rcx
movabs rax, 0x6f77fe94ea0ad42c
movabs r8, 0x9088016b15f52bd3
xor rax, r8
xor rdx, rax
mov rax, rcx
and rax, rdx
movabs r8, 0x68829ebfccb30593
movabs r9, 0x977d6140334cfa6c
xor r8, r9
xor rax, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x52940e9b1cd60d1b
movabs r9, 0xad6bf164e329f2e4
xor r8, r9
xor rdx, r8
or rcx, rdx
and rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jge 0x1400805b7
call fcn.14000ee80
jmp 0x1400805c7
mov rax, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x30]
mov qword [rax], rcx
add rsp, 0x240
pop rsi
ret
and eax, 0xe99b728f
call 0x1700805c0
movabs al, byte [0x28ffffe841e90838]
invalid
invalid
sub byte [rdi + 0xbe940bf], cl
in al, dx
invalid
out 0x84, al
push rax
invalid
sub ebx, dword [rsp + rax*4 - 0x10241675]
invalid
invalid
movabs dword [0xfffff3f7e9fac704], eax
mov edi, 0xe930e760
sbb eax, 0x59fffff6
pop rcx
movabs al, byte [0xb7fffff81de9d789]
pop rsp
mov bh, 0x5c
jnp 0x14008065b
jmp 0x14007ffae
invalid
sub rsp, 0x38
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
push rsp
and al, 0x28
mov r8, qword [rsp + 0x30]
add rsp, 0x38
jmp 0x14007ec20