Function at 0x1402417d0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
push rbx
sub rsp, 0x418
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x380], xmm12
movaps xmmword [rbp + 0x370], xmm11
movaps xmmword [rbp + 0x360], xmm10
movaps xmmword [rbp + 0x350], xmm9
movaps xmmword [rbp + 0x340], xmm8
movaps xmmword [rbp + 0x330], xmm7
movaps xmmword [rbp + 0x320], xmm6
mov qword [rbp + 0x2a0], rcx
mov qword [rbp + 0x270], rcx
mov eax, 0x350
call fcn.1402a7dd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x278], rax
mov eax, 0x10
mov qword [rbp + 0x288], rax
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x288]
mov rcx, rsp
mov qword [rbp + 0x280], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x288]
mov rcx, rsp
mov qword [rbp + 0x290], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x298], rax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
mov rcx, qword [rbp + 0x2a0]
add rsp, 0x20
mov qword [rbp + 0x2b0], rax
add rax, 0x60
mov qword [rbp + 0x2a8], rax
movabs rdx, 0xe6fa1b4d62c0654f
movabs rax, 0xe6fa1b4d62c0654f
xor rdx, rax
sub rsp, 0x20
call fcn.14002e846
add rsp, 0x20
mov ecx, 0xb34
sub rsp, 0x20
call fcn.14008d810
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x2b0]
mov qword [rbp + 0x2b8], rcx
cmp byte [rax + 0x60], 0
jne 0x140243b2a
mov ecx, 0x61c
sub rsp, 0x20
call fcn.14008d810
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x2a8]
mov qword [rbp + 0x268], rcx
cmp byte [rax], 0
jne 0x140243b2a
mov rax, qword [rbp + 0x2b8]
mov rcx, qword [rbp + 0x2a0]
mov rdx, qword [rbp + 0x280]
mov r8, qword [rbp + 0x278]
lea r9, [rbp + 0x310]
add r9, 8
mov qword [rbp + 0x228], r9
add r8, 0x44
mov qword [rbp + 0x230], r8
lea r8, [rbp + 0x2f0]
add r8, 8
mov qword [rbp + 0x238], r8
lea r8, [rbp + 0x2d0]
add r8, 8
mov qword [rbp + 0x240], r8
lea r8, [rbp + 0x2e0]
add r8, 8
mov qword [rbp + 0x248], r8
add rdx, 8
mov qword [rbp + 0x250], rdx
add rcx, 8
mov qword [rbp + 0x258], rcx
mov qword [rbp + 0x260], rax
mov rcx, qword [rbp + 0x268]
mov rax, qword [rbp + 0x260]
mov qword [rbp + 0x220], rax
cmp rax, rcx
jge 0x140243b2a
mov rax, qword [rbp + 0x228]
mov qword [rbp + 0x310], 0
mov qword [rax], 0
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
movaps xmm0, xmmword [0x1402c50c0]
movaps xmm1, xmmword [0x1402c50d0]
movaps xmm2, xmmword [0x1402c50e0]
movaps xmm3, xmmword [0x1402c50f0]
movaps xmm4, xmmword [0x1402c5100]
movaps xmm5, xmmword [0x1402c5110]
movaps xmm6, xmmword [0x1402c5120]
movaps xmm7, xmmword [0x1402c5130]
xor eax, eax
mov qword [rbp + 0x198], rax
movaps xmmword [rbp + 0x1a0], xmm7
movaps xmmword [rbp + 0x1b0], xmm6
movaps xmmword [rbp + 0x1c0], xmm5
movaps xmmword [rbp + 0x1d0], xmm4
movaps xmmword [rbp + 0x1e0], xmm3
movaps xmmword [rbp + 0x1f0], xmm2
movaps xmmword [rbp + 0x200], xmm1
movaps xmmword [rbp + 0x210], xmm0
jmp 0x140241a91
mov rax, qword [rbp + 0x198]
movaps xmm2, xmmword [rbp + 0x1a0]
movaps xmm3, xmmword [rbp + 0x1b0]
movaps xmm11, xmmword [rbp + 0x1c0]
movaps xmm12, xmmword [rbp + 0x1d0]
movaps xmm8, xmmword [rbp + 0x1e0]
movaps xmm10, xmmword [rbp + 0x1f0]
movaps xmm9, xmmword [rbp + 0x200]
movaps xmm6, xmmword [rbp + 0x210]
movaps xmmword [rbp + 0xc0], xmm6
movaps xmmword [rbp + 0xd0], xmm9
movaps xmmword [rbp + 0xe0], xmm10
movaps xmmword [rbp + 0xf0], xmm8
movaps xmmword [rbp + 0x100], xmm12
movaps xmmword [rbp + 0x110], xmm11
movaps xmmword [rbp + 0x120], xmm3
movaps xmmword [rbp + 0x130], xmm2
mov qword [rbp + 0x148], rax
movaps xmm7, xmmword [0x1402c5140]
movaps xmmword [rbp + 0x150], xmm7
pxor xmm2, xmm7
pshufd xmm1, xmm2, 0xf5
movaps xmm4, xmmword [0x1402c5140]
movaps xmmword [rbp + 0x160], xmm4
movaps xmm0, xmm4
pcmpeqd xmm0, xmm1
movaps xmm5, xmmword [0x1402c5150]
movaps xmmword [rbp + 0x170], xmm5
movaps xmm1, xmm5
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm3, xmm7
pshufd xmm1, xmm3, 0xf5
movaps xmm2, xmm4
pcmpeqd xmm2, xmm1
movaps xmm1, xmm5
pcmpgtd xmm1, xmm3
pshufd xmm3, xmm1, 0xa0
pand xmm2, xmm3
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm11, xmm7
pshufd xmm3, xmm11, 0xf5
movaps xmm2, xmm4
pcmpeqd xmm2, xmm3
movaps xmm3, xmm5
pcmpgtd xmm3, xmm11
pshufd xmm11, xmm3, 0xa0
pand xmm2, xmm11
pshufd xmm3, xmm3, 0xf5
por xmm2, xmm3
pxor xmm12, xmm7
pshufd xmm11, xmm12, 0xf5
movaps xmm3, xmm4
pcmpeqd xmm3, xmm11
movaps xmm11, xmm5
pcmpgtd xmm11, xmm12
pshufd xmm12, xmm11, 0xa0
pand xmm3, xmm12
pshufd xmm11, xmm11, 0xf5
por xmm3, xmm11
packssdw xmm2, xmm3
packssdw xmm1, xmm2
pxor xmm8, xmm7
pshufd xmm3, xmm8, 0xf5
movaps xmm2, xmm4
pcmpeqd xmm2, xmm3
movaps xmm3, xmm5
pcmpgtd xmm3, xmm8
pshufd xmm8, xmm3, 0xa0
pand xmm2, xmm8
pshufd xmm3, xmm3, 0xf5
por xmm2, xmm3
pxor xmm10, xmm7
pshufd xmm8, xmm10, 0xf5
movaps xmm3, xmm4
pcmpeqd xmm3, xmm8
movaps xmm8, xmm5
pcmpgtd xmm8, xmm10
pshufd xmm10, xmm8, 0xa0
pand xmm3, xmm10
pshufd xmm8, xmm8, 0xf5
por xmm3, xmm8
packssdw xmm2, xmm3
pxor xmm9, xmm7
pshufd xmm8, xmm9, 0xf5
movaps xmm3, xmm4
pcmpeqd xmm3, xmm8
movaps xmm8, xmm5
pcmpgtd xmm8, xmm9
pshufd xmm9, xmm8, 0xa0
pand xmm3, xmm9
pshufd xmm8, xmm8, 0xf5
por xmm3, xmm8
pxor xmm6, xmm7
pshufd xmm7, xmm6, 0xf5
pcmpeqd xmm4, xmm7
pcmpgtd xmm5, xmm6
pshufd xmm6, xmm5, 0xa0
pand xmm4, xmm6
pshufd xmm5, xmm5, 0xf5
por xmm4, xmm5
packssdw xmm3, xmm4
packssdw xmm2, xmm3
packsswb xmm1, xmm2
movaps xmmword [rbp + 0x180], xmm1
movd eax, xmm0
test al, 1
jne 0x140241ce1
jmp 0x140241cf3
mov rax, qword [rbp + 0x278]
mov rcx, qword [rbp + 0x148]
mov byte [rax + rcx], 0
mov eax, dword [0x1402b6f98]
mov ecx, dword [0x1402b6f9c]
xor ecx, 0x1ff7c7de
xor edx, edx
div ecx
mov ecx, 0xf21da20e
xor edx, edx
div ecx
add eax, 0xacdb54e1
mov ecx, 0x46308ae3
xor ecx, 0x189eb920
xor eax, ecx
cmp eax, 0xeaab08f6
jb 0x140243b73
movaps xmm0, xmmword [rbp + 0x180]
mov eax, dword [0x1402b6fa0]
mov ecx, dword [0x1402b6fa4]
xor ecx, 0xc18c75d8
mov edx, eax
and edx, ecx
or eax, ecx
mov ecx, eax
mov eax, edx
lea eax, [rax + rcx + 0x27a394d8]
or eax, 0x181d02fa
mov ecx, 0xc8556903
movd edx, xmm0
shr edx, 8
mov byte [rbp + 0xbf], dl
cmp eax, ecx
ja 0x140243b73
mov al, byte [rbp + 0xbf]
test al, 1
jne 0x140241d8b
jmp 0x140241da5
mov rax, qword [rbp + 0x278]
mov rcx, qword [rbp + 0x148]
or rcx, 1
mov dl, 0xd5
xor dl, 0xd5
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x180]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x140241dc0
jmp 0x140241e75
mov rax, qword [rbp + 0x278]
mov rsi, qword [rbp + 0x148]
movabs rcx, 0x3d7f91185af26071
movabs rdx, 0xc2806ee7a50d9f8e
xor rcx, rdx
mov rdx, rsi
xor rdx, rcx
mov r9, 0xffffffffffffffff
xor r9, 2
mov r8, 0xffffffffffffffff
movabs rcx, 0xcda9a1819ed335cd
xor r8, rcx
movabs r10, 0xcda9a1819ed335cd
mov rcx, rdx
and rcx, r10
and rsi, r8
movabs r11, 0xcda9a1819ed335cd
mov r10, r9
and r10, r11
mov r11, r8
and r11, 2
or rcx, rsi
or r10, r11
xor rcx, r10
or rdx, r9
movabs r9, 0xe7c8abd3b8f38d83
movabs r10, 0x1837542c470c727c
xor r9, r10
xor rdx, r9
movabs r9, 0xcda9a1819ed335cd
or r8, r9
and rdx, r8
or rcx, rdx
mov dl, 0xfd
xor dl, 0xfd
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x180]
movd eax, xmm0
shr eax, 0x18
test al, 1
jne 0x140241e90
jmp 0x140241ec4
mov rax, qword [rbp + 0x278]
mov rcx, qword [rbp + 0x148]
mov r8, 0xffffffffffffffff
xor r8, 3
mov rdx, rcx
and rdx, r8
mov r8, rcx
xor r8, 3
add rcx, r8
sub rcx, rdx
mov dl, 0xd3
xor dl, 0xd3
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x180]
pextrw eax, xmm0, 2
test al, 1
jne 0x140241edd
jmp 0x140241f27
mov rax, qword [rbp + 0x278]
mov rdx, qword [rbp + 0x148]
mov rcx, rdx
xor rcx, 0xffffffffffffffff
movabs r8, 0x906b6f207f59c86a
movabs r9, 0x6f9490df80a63795
xor r8, r9
xor rdx, r8
or rcx, rdx
mov edx, 4
and rdx, 4
xor rdx, 0xffffffffffffffff
and rcx, rdx
xor rcx, 0xffffffffffffffff
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x180]
pextrw eax, xmm0, 2
shr eax, 8
test al, 1
jne 0x140241f43
jmp 0x14024203f
mov eax, dword [0x1402b6fa8]
mov r8d, dword [0x1402b6fac]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov ecx, 0x340c05b7
xor ecx, 0xcbf3fa48
mov r9d, r8d
xor r9d, ecx
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xf12ba000
xor ecx, 0xb1b57327
add eax, ecx
mov ecx, 0x4b9c017d
xor edx, edx
div ecx
sub eax, 0x92e7b16d
cmp eax, 0x28d66d98
jb 0x140243b7c
mov rcx, qword [rbp + 0x278]
mov rdx, qword [rbp + 0x148]
mov eax, dword [0x1402b6fb0]
xor eax, dword [0x1402b6fb4]
add eax, 0x514dec9c
mov r8d, 0x15484d4e
xor r8d, 0xeab7b2b1
mov r9d, eax
xor r9d, r8d
and r9d, 0xf7818975
mov r10d, 0xffffffff
xor r10d, 0xf7818975
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0xf7818975
or eax, 0xf7818975
imul eax, r9d
add eax, r8d
sub eax, 0xdfb20d0
movabs r8, 0xcdad37ef3464e6bd
movabs r9, 0xcdad37ef3464e6b8
xor r8, r9
or rdx, r8
mov byte [rcx + rdx], 0
cmp eax, 0x73376c72
ja 0x140241fa6
jmp 0x14024203f
movaps xmm0, xmmword [rbp + 0x180]
pextrw eax, xmm0, 3
test al, 1
jne 0x140242058
jmp 0x1402420ad
mov rax, qword [rbp + 0x278]
mov rcx, qword [rbp + 0x148]
movabs rdx, 0xa5cdd3f364b3a1ad
movabs r8, 0xa5cdd3f364b3a1ab
xor rdx, r8
and rdx, rcx
movabs r8, 0xa8499c7d61922ce9
movabs r9, 0x57b663829e6dd316
xor r8, r9
xor rdx, r8
add rcx, 6
add rcx, 1
add rcx, rdx
mov dl, 0x3f
xor dl, 0x3f
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x180]
pextrw eax, xmm0, 3
shr eax, 8
test al, 1
jne 0x1402420c9
jmp 0x14024219e
mov rax, qword [rbp + 0x278]
mov rsi, qword [rbp + 0x148]
mov rdx, rsi
xor rdx, 0xffffffffffffffff
movabs r9, 0xb0289dd037dd4d2e
movabs rcx, 0xb0289dd037dd4d29
xor r9, rcx
movabs rcx, 0x928ae08b19bd5349
movabs r8, 0x6d751f74e642acb6
xor rcx, r8
xor r9, rcx
movabs r8, 0xc552222e87529b16
movabs rcx, 0x11c1620e3dd1d142
xor r8, rcx
movabs rcx, 0xbd13795f5c27a874
movabs r10, 0x42ec86a0a3d8578b
xor rcx, r10
xor r8, rcx
movabs r10, 0x6f551970703d8fae
movabs rcx, 0xbbc65950cabec5fa
xor r10, rcx
mov rcx, rdx
and rcx, r10
and rsi, r8
movabs r11, 0xd4934020ba834a54
mov r10, r9
and r10, r11
mov r11, r8
and r11, 7
or rcx, rsi
or r10, r11
xor rcx, r10
or rdx, r9
xor rdx, 0xffffffffffffffff
movabs r9, 0xd4934020ba834a54
or r8, r9
and rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x180]
pextrw eax, xmm0, 4
test al, 1
jne 0x1402421b7
jmp 0x1402422b7
mov eax, dword [0x1402b6fb8]
mov r8d, dword [0x1402b6fbc]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov ecx, 0xb8683c25
xor ecx, 0x4797c3da
mov r9d, r8d
xor r9d, ecx
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xc5d7370d
xor edx, edx
div ecx
mov ecx, 0x9ebde2eb
xor ecx, 0x6413ca5f
xor eax, ecx
and eax, 0x686b0f51
mov ecx, 0x36f8e4cb
xor ecx, 0xa68a678
cmp eax, ecx
jbe 0x140243b85
mov r8, qword [rbp + 0x148]
mov eax, dword [0x1402b6fc0]
xor eax, 0x61495af8
mov ecx, dword [0x1402b6fc4]
mov edx, 0x72b2ef2e
xor edx, 0xa996edc4
xor ecx, edx
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x278]
and eax, 0x1a02afdb
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xd9ebf87a
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, eax
and ecx, 0xbd0b50cd
shl ecx, 1
xor eax, 0xbd0b50cd
add eax, ecx
mov ecx, 0x3c9e0457
xor ecx, 0x6ae8fce2
movabs r9, 0x30309c39f634694b
movabs r10, 0x30309c39f6346943
xor r9, r10
or r8, r9
mov r9b, 0x1e
xor r9b, 0x1e
mov byte [rdx + r8], r9b
cmp eax, ecx
jbe 0x140243b85
jmp 0x1402422b7
mov ecx, dword [0x1402b6fc8]
mov eax, dword [0x1402b6fcc]
mov edx, 0xba56173c
xor edx, 0x3f48c1a9
xor eax, edx
or ecx, eax
and ecx, 0x5f8404a6
mov edx, 0x4c1880da
xor edx, 0x38c8c601
mov eax, ecx
and eax, edx
shl eax, 1
mov edx, 0xe02c1634
xor edx, 0x94fc50ef
xor ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xe48b011f
mov edx, 0xdc2b7005
xor edx, 0x38a0711a
mov r8d, 0xfdc4a50a
xor r8d, 0x23b5af5
xor edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0x99f7f7eb
xor ecx, 0x2299cf7f
cmp eax, ecx
ja 0x140243b8e
movaps xmm0, xmmword [rbp + 0x180]
mov eax, dword [0x1402b6fd0]
mov ecx, dword [0x1402b6fd4]
xor ecx, 0x2d29b09f
and eax, ecx
mov ecx, eax
xor ecx, 0x9408313c
xor eax, 0x3340001
and eax, 0x6bf64c81
and ecx, 0x9409b37e
or eax, ecx
mov edx, eax
not edx
and edx, 0x175e96f1
mov ecx, eax
and ecx, 0xe8a1690e
imul ecx, edx
mov edx, eax
and edx, 0x175e96f1
or eax, 0x175e96f1
imul eax, edx
add eax, ecx
pextrw ecx, xmm0, 4
shr ecx, 8
mov byte [rbp + 0xbe], cl
cmp eax, 0x750cc1d4
jb 0x140243b8e
mov al, byte [rbp + 0xbe]
test al, 1
jne 0x1402423bd
jmp 0x1402423d7
mov rax, qword [rbp + 0x278]
mov rcx, qword [rbp + 0x148]
or rcx, 9
mov dl, 0x7d
xor dl, 0x7d
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x180]
pextrw eax, xmm0, 5
test al, 1
jne 0x1402423f0
jmp 0x14024259c
mov eax, dword [0x1402b6fd8]
xor eax, 0x4ec2ec2
mov r8d, dword [0x1402b6fdc]
mov ecx, 0xb75f31c8
xor ecx, 0x48a0ce37
mov edx, r8d
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
add eax, 0x9755cd38
mov ecx, eax
xor ecx, 0xae8aee67
xor ecx, 0xffffffff
and ecx, 0xae8aee67
shl ecx, 1
sub ecx, 0xae8aee67
sub eax, ecx
add eax, 0xb0443ffa
mov ecx, 0xc4f28e58
xor ecx, 0x7a230192
cmp eax, ecx
jbe 0x140243b97
mov rcx, qword [rbp + 0x278]
mov rdi, qword [rbp + 0x148]
mov eax, dword [0x1402b6fe0]
xor eax, 0xaabb8b96
mov edx, dword [0x1402b6fe4]
xor edx, 0x36e02cde
sub eax, edx
mov edx, eax
and edx, 0xa65b8ed5
shl edx, 1
xor eax, 0xa65b8ed5
add eax, edx
mov edx, 0xacc7c40
xor edx, 0x1802225
xor eax, edx
or eax, 0x24bb8d62
movabs rdx, 0x18d10573138f134f
movabs r8, 0xe72efa8cec70ecb0
xor rdx, r8
mov r8, rdi
xor r8, rdx
movabs r10, 0x8a4b1ed74f8cd419
movabs rdx, 0x8a4b1ed74f8cd413
xor r10, rdx
movabs rdx, 0x7f54bfb48f711eab
movabs r9, 0x80ab404b708ee154
xor rdx, r9
xor r10, rdx
mov r9, 0xffffffffffffffff
movabs rdx, 0x4187d41aefed3080
xor r9, rdx
movabs r11, 0x4187d41aefed3080
mov rdx, r8
and rdx, r11
and rdi, r9
movabs rsi, 0x9fefd1e192285de7
movabs r11, 0xde6805fb7dc56d67
xor rsi, r11
mov r11, r10
and r11, rsi
movabs rsi, 0x6530bca088bc563f
movabs rbx, 0x6530bca088bc5635
xor rsi, rbx
and rsi, r9
or rdx, rdi
or r11, rsi
xor rdx, r11
or r8, r10
movabs r10, 0x96c7374ebec3feb0
movabs r11, 0x6938c8b1413c014f
xor r10, r11
xor r8, r10
movabs r10, 0x4187d41aefed3080
or r9, r10
and r8, r9
or rdx, r8
mov byte [rcx + rdx], 0
cmp eax, 0x4122e15e
je 0x140243b97
jmp 0x14024259c
movaps xmm0, xmmword [rbp + 0x180]
pextrw eax, xmm0, 5
shr eax, 8
test al, 1
jne 0x1402425b8
jmp 0x1402425e0
mov rax, qword [rbp + 0x278]
mov rcx, qword [rbp + 0x148]
mov rdx, rcx
and rdx, 0xb
xor rdx, 0xffffffffffffffff
add rcx, 0xb
add rcx, 1
add rcx, rdx
mov byte [rax + rcx], 0
mov ecx, dword [0x1402b6fe8]
mov edx, dword [0x1402b6fec]
mov eax, ecx
and eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov r8d, 0xd98dc4ec
xor r8d, 0x26723b13
xor edx, r8d
or ecx, edx
mov edx, 0x5650fab
xor edx, 0xfa9af054
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x894c15bb
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0xd44b1680
xor r8d, 0x5d07033b
mov edx, eax
and edx, r8d
mov r8d, 0xd244cf47
xor r8d, 0x5b08dafc
or eax, r8d
imul eax, edx
add eax, ecx
or eax, 0xc78af26b
mov r8d, 0xffffffff
xor r8d, 0x4cb063c1
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0xad8110ef
xor r8d, 0x527eef10
xor ecx, r8d
imul ecx, edx
mov r8d, 0xe5897c7
xor r8d, 0x42e8f406
mov edx, eax
and edx, r8d
or eax, 0x4cb063c1
imul eax, edx
add eax, ecx
cmp eax, 0x8990f4a8
je 0x140243ba0
movaps xmm0, xmmword [rbp + 0x180]
mov eax, dword [0x1402b6ff0]
mov r8d, dword [0x1402b6ff4]
mov ecx, eax
not ecx
mov edx, r8d
and edx, ecx
mov r9d, r8d
not r9d
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x8ac3de77
imul rax, rcx
shr rax, 0x3e
or eax, 0xc485afca
pextrw ecx, xmm0, 6
mov byte [rbp + 0xbd], cl
cmp eax, 0xa1c91882
jbe 0x140243ba0
mov al, byte [rbp + 0xbd]
test al, 1
jne 0x140242727
jmp 0x14024274f
mov rax, qword [rbp + 0x278]
mov rcx, qword [rbp + 0x148]
mov rdx, rcx
and rdx, 0xc
xor rdx, 0xffffffffffffffff
add rcx, 0xc
add rcx, 1
add rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x180]
pextrw eax, xmm0, 6
shr eax, 8
test al, 1
jne 0x14024276b
jmp 0x140242797
mov rax, qword [rbp + 0x278]
mov rcx, qword [rbp + 0x148]
movabs rdx, 0xf8ec3e9405c99684
movabs r8, 0xf8ec3e9405c99689
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x180]
pextrw eax, xmm0, 7
test al, 1
jne 0x1402427b0
jmp 0x1402427ca
mov rax, qword [rbp + 0x278]
mov rcx, qword [rbp + 0x148]
or rcx, 0xe
mov dl, 0xa2
xor dl, 0xa2
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x180]
pextrw eax, xmm0, 7
shr eax, 8
test al, 1
jne 0x1402427e6
jmp 0x1402428c5
mov eax, dword [0x1402b6ff8]
mov ecx, dword [0x1402b6ffc]
mov edx, 0x2ff3879b
xor edx, 0xe34697d7
xor ecx, edx
imul eax, ecx
xor eax, 0x36b8feb2
imul eax, eax, 0x81203fd7
mov edx, 0x6040476f
xor edx, 0x33473306
mov ecx, 0xd5bfc8aa
xor ecx, 0x2a403755
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x53077469
add eax, edx
sub eax, ecx
cmp eax, 0xd56c3a8a
jbe 0x140243ba9
mov rcx, qword [rbp + 0x278]
mov rdx, qword [rbp + 0x148]
mov eax, dword [0x1402b7000]
xor eax, 0xeec5b37e
add eax, dword [0x1402b7004]
xor eax, 0x118cd4e1
mov r8d, 0x769d7c4f
xor r8d, 0x9320971d
sub eax, r8d
mov r8d, eax
and r8d, 0x56a2e35e
mov r9d, 0x7da263af
xor r9d, 0x7da263ad
imul r8d, r9d
xor eax, 0x56a2e35e
add eax, r8d
movabs r8, 0x7d3a7ce5cc07e70e
movabs r9, 0x7d3a7ce5cc07e701
xor r8, r9
or rdx, r8
mov byte [rcx + rdx], 0
cmp eax, 0xbce24eab
jb 0x140242840
jmp 0x1402428c5
movaps xmm0, xmmword [rbp + 0xc0]
movaps xmm1, xmmword [rbp + 0xd0]
movaps xmm2, xmmword [rbp + 0xe0]
movaps xmm3, xmmword [rbp + 0xf0]
movaps xmm4, xmmword [rbp + 0x100]
movaps xmm5, xmmword [rbp + 0x110]
movaps xmm6, xmmword [rbp + 0x120]
movaps xmm7, xmmword [rbp + 0x130]
mov rax, qword [rbp + 0x148]
add rax, 0x10
movaps xmm8, xmmword [0x1402c5160]
movaps xmmword [rbp + 0xa0], xmm8
paddq xmm7, xmm8
paddq xmm6, xmm8
paddq xmm5, xmm8
paddq xmm4, xmm8
paddq xmm3, xmm8
paddq xmm2, xmm8
paddq xmm1, xmm8
paddq xmm0, xmm8
mov rcx, rax
sub rcx, 0x350
mov qword [rbp + 0x198], rax
movaps xmmword [rbp + 0x1a0], xmm7
movaps xmmword [rbp + 0x1b0], xmm6
movaps xmmword [rbp + 0x1c0], xmm5
movaps xmmword [rbp + 0x1d0], xmm4
movaps xmmword [rbp + 0x1e0], xmm3
movaps xmmword [rbp + 0x1f0], xmm2
movaps xmmword [rbp + 0x200], xmm1
movaps xmmword [rbp + 0x210], xmm0
jne 0x140241a91
jmp 0x140242994
mov rcx, qword [rbp + 0x220]
mov rax, qword [rbp + 0x278]
mov dword [rax], 0x348
movabs rdx, 0x423c6671ed3f382d
movabs rax, 0xbdc3998e6d3f382d
xor rdx, rax
mov rax, rcx
and rax, rdx
or rcx, 0xffffffff80000000
add rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x140242a08
mov rcx, qword [rbp + 0x220]
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
sub rsp, 0x20
call fcn.140018506
add rsp, 0x20
jmp 0x14024395e
mov r8, qword [rbp + 0x278]
mov rax, qword [rbp + 0x220]
mov edx, eax
xor eax, eax
mov ecx, eax
mov r9d, 1
sub rsp, 0x20
call fcn.1400ee470
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x2a8]
mov dword [rbp + 0x9c], ecx
mov al, byte [rax]
mov cl, 0xbd
xor cl, 0xbd
cmp al, cl
jne 0x14024395e
mov eax, dword [rbp + 0x9c]
cmp eax, 0
jne 0x140242bad
mov rax, qword [rbp + 0x228]
mov rax, qword [rax]
mov qword [rbp + 0x90], rax
cmp rax, 0
je 0x1402439c9
mov rcx, qword [rbp + 0x90]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1402439c9
mov eax, dword [0x1402b7008]
xor eax, 0xddcf1f42
mov ecx, dword [0x1402b700c]
xor ecx, 0xffffffff
add eax, ecx
add eax, 1
xor ecx, ecx
sub ecx, 0x1573f088
sub eax, ecx
add eax, 0x13450ba8
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xafdb77a4
xor edx, 0xa5442719
and ecx, edx
mov edx, 0x833500d6
xor edx, 0x89aa506b
mov r8d, 0x6c4df3d0
xor r8d, 0x93b20c2f
xor edx, r8d
and eax, edx
sub eax, ecx
cmp eax, 0xb82d1266
je 0x140243bb2
mov rcx, qword [rbp + 0x90]
mov r9d, dword [0x1402b7010]
imul r9d, dword [0x1402b7014]
mov eax, 0x5039650b
xor eax, 0x3ce8c933
add r9d, eax
mov edx, 0x887932ee
xor edx, 0x7786cd11
mov eax, r9d
xor eax, edx
and eax, 0x7d1d56a1
mov r8d, 0xc5a4424e
xor r8d, 0xb8b914ef
mov edx, 0x33c61bac
xor edx, 0xcc39e453
xor r8d, edx
and r9d, r8d
mov edx, 0x89bca064
xor edx, 0x63ad9e5
mov r10d, 0xfb9661fa
xor r10d, 0x4699e05
xor edx, r10d
and edx, 0x7d1d56a1
and r8d, 0x8f867981
or eax, r9d
or edx, r8d
xor eax, edx
xor eax, 0x5132c59b
mov dword [rbp + 0x8c], eax
sub rsp, 0x20
call fcn.14001a7c0
mov eax, dword [rbp + 0x8c]
add rsp, 0x20
cmp eax, 0x730070d9
ja 0x140242af9
jmp 0x1402439c9
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
mov rdx, qword [rbp + 0x230]
add rsp, 0x20
lea rcx, [rbp + 0x300]
mov r8d, pe_nt_image_headers64
sub rsp, 0x20
call fcn.1400dc080
mov rax, qword [rbp + 0x2a8]
add rsp, 0x20
mov rcx, qword [rbp + 0x300]
mov qword [rbp + 0x310], rcx
mov rcx, qword [rbp + 0x308]
mov qword [rbp + 0x318], rcx
cmp byte [rax], 0
jne 0x14024395e
mov rax, qword [rbp + 0x228]
mov rcx, qword [rbp + 0x310]
mov qword [rbp + 0x70], rcx
mov rax, qword [rax]
mov qword [rbp + 0x78], rax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
mov rcx, rax
add rcx, 0x60
mov qword [rbp + 0x80], rcx
cmp byte [rax + 0x60], 0
jne 0x140242d4a
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x78]
movabs r8, 0x68d928ae57e5e797
movabs rax, 0x68d928ae57e5e797
xor r8, rax
add rcx, 8
lea rax, [0x1402c5209]
cmp rdx, r8
cmove rcx, rax
mov qword [rbp + 0x60], rcx
sub rsp, 0x20
call fcn.1400de2c0
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x80]
mov dword [rbp + 0x6c], ecx
cmp byte [rax], 0
jne 0x140242d4a
mov eax, dword [rbp + 0x6c]
movsxd rcx, eax
mov qword [rbp + 0x58], rcx
cmp eax, 0
jge 0x140242cfb
mov rcx, qword [rbp + 0x58]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.140018506
add rsp, 0x20
jmp 0x140242d4a
mov rdx, qword [rbp + 0x58]
lea rcx, [rbp + 0x2f0]
sub rsp, 0x20
call fcn.140031020
mov rax, qword [rbp + 0x80]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140242d4a
mov rdx, qword [rbp + 0x60]
lea rcx, [rbp + 0x2f0]
movabs r8, 0x7fffffffffffffff
xor eax, eax
mov r9d, eax
sub rsp, 0x20
call fcn.1400de7e0
add rsp, 0x20
mov rax, qword [rbp + 0x2a8]
mov rcx, qword [rbp + 0x238]
mov rdx, qword [rbp + 0x2f0]
mov qword [rbp + 0x48], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x50], rcx
cmp byte [rax], 0
jne 0x1402438b8
mov rax, qword [rbp + 0x240]
mov rcx, qword [rbp + 0x50]
mov rdx, qword [rbp + 0x48]
mov qword [rbp + 0x2d0], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x2e0]
lea rdx, [rbp + 0x2d0]
mov r9d, 1
lea rax, [0x1402c5220]
sub rsp, 0x30
mov r8d, r9d
mov qword [rsp + 0x20], rax
call fcn.14005acc0
mov rcx, qword [rbp + 0x248]
mov rax, qword [rbp + 0x2a8]
add rsp, 0x30
mov rdx, qword [rbp + 0x2e0]
mov qword [rbp + 0x38], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x40], rcx
cmp byte [rax], 0
jne 0x1402438b8
mov rdx, qword [rbp + 0x280]
mov rax, qword [rbp + 0x250]
mov rcx, qword [rbp + 0x40]
mov r8, qword [rbp + 0x38]
mov qword [rdx], r8
mov qword [rax], rcx
sub rsp, 0x20
lea rcx, [rbp + 0x310]
call fcn.140027c30
mov rcx, qword [rbp + 0x290]
add rsp, 0x20
movups xmm0, xmmword [rbp + 0x310]
movups xmmword [rcx], xmm0
sub rsp, 0x20
call fcn.14006161b
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x2a8]
mov al, byte [rax]
test al, al
sete al
mov byte [rbp + 0x37], al
and al, cl
test al, 1
jne 0x140242e55
jmp 0x140243011
mov rax, qword [rbp + 0x50]
cmp rax, 0
je 0x140242fa2
mov rcx, qword [rbp + 0x50]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140242fa2
mov ecx, dword [0x1402b7018]
xor ecx, 0xf8e3a18f
mov r8d, dword [str.35.e_]
mov eax, 0x4cf51bc0
xor eax, 0xb30ae43f
mov edx, r8d
xor edx, eax
mov eax, ecx
and eax, edx
mov edx, ecx
xor edx, r8d
add ecx, edx
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x5d94d81
and eax, edx
or ecx, 0x5d94d81
xor ecx, 0xffffffff
mov edx, 0x2f71a6d8
xor edx, 0xd08e5927
xor eax, edx
mov edx, 0x10852a26
xor edx, 0xef7ad5d9
xor ecx, edx
and eax, ecx
mov ecx, 0x808387c4
xor edx, edx
div ecx
mov ecx, 0x6fb87fe1
xor edx, edx
div ecx
mov ecx, 0x5bbd8a0f
xor ecx, 0x1206650e
cmp eax, ecx
je 0x140243bbb
mov rcx, qword [rbp + 0x50]
mov eax, dword [0x1402b7020]
mov edx, dword [0x1402b7024]
mov r8d, 0x986a6a32
xor r8d, 0x679595cd
xor edx, r8d
mov r8d, 0x8271d55f
xor r8d, 0x8271d55f
mov r9d, 0x84347df4
xor r9d, 0x84347df5
sub r8d, r9d
sub edx, r8d
sub eax, edx
mov edx, 0x40c31dbb
xor edx, 0x2a48ee72
xor eax, edx
mov edx, 0x70af62e1
xor edx, 0x8701c751
sub eax, edx
mov edx, 0x745ebb29
xor edx, 0xa5355fd3
and eax, edx
mov dword [rbp + 0x30], eax
mov eax, 0x9ed7c52e
xor eax, 0x89b7da97
mov dword [rbp + 0x2c], eax
sub rsp, 0x20
call fcn.14001a7c0
mov ecx, dword [rbp + 0x2c]
mov eax, dword [rbp + 0x30]
add rsp, 0x20
cmp eax, ecx
jbe 0x140242f09
jmp 0x140242fa2
mov rax, qword [rbp + 0x228]
mov rax, qword [rax]
mov qword [rbp + 0x20], rax
cmp rax, 0
je 0x140243adf
mov rax, qword [rbp + 0x20]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
and rcx, rdx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
cmp rax, 0
jne 0x140243adf
mov rcx, qword [rbp + 0x20]
sub rsp, 0x20
call fcn.14001a7c0
add rsp, 0x20
jmp 0x140243adf
mov al, byte [rbp + 0x37]
test al, 1
jne 0x140243021
jmp 0x1402438b8
mov r11d, dword [0x1402b7028]
xor r11d, dword [0x1402b702c]
mov edx, 0x3ededcaf
xor edx, 0x17f2a185
mov eax, 0x36f6eacb
xor eax, 0xc9091534
xor edx, eax
mov ecx, r11d
and ecx, edx
mov eax, r11d
or eax, edx
xor eax, 0xffffffff
imul eax, ecx
mov ecx, r11d
and ecx, 0x292c7d2a
mov edx, 0xdf62c274
xor edx, 0xf64ebf5e
or r11d, edx
imul r11d, ecx
add r11d, eax
xor r11d, 0xfd94e6f1
mov eax, 0xd270ab34
xor eax, 0x2d8f54cb
mov ecx, r11d
xor ecx, eax
mov edx, 0xffffffff
xor edx, 0xbf7ce807
mov r8d, 0xffffffff
xor r8d, 0x3cae3cf2
mov eax, ecx
and eax, 0x3cae3cf2
and r11d, r8d
mov r10d, 0x34f42f45
xor r10d, 0x85a13b7
mov r9d, edx
and r9d, r10d
mov r10d, r8d
and r10d, 0xbf7ce807
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0xf82529b9
xor edx, 0xc48b154b
or edx, r8d
and ecx, edx
or eax, ecx
cmp eax, 0x9fa2af6b
je 0x140243bc4
mov r8, qword [rbp + 0x228]
mov rdx, qword [rbp + 0x2a0]
mov r9, qword [rbp + 0x258]
mov eax, dword [0x1402b7030]
and eax, dword [0x1402b7034]
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xc4451e7c
mov r10d, 0xffffffff
xor r10d, 0x270260ec
or eax, ecx
mov ecx, 0x5aaef272
xor ecx, 0x7dac929e
or ecx, r10d
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0xc7c9349b
xor ecx, 0x4c178636
imul eax, ecx
mov ecx, 0x797260c1
xor ecx, 0x3c7282ab
and eax, ecx
mov ecx, 0x90998f8e
xor ecx, 0x3b990b68
mov r11, qword [r9]
mov r9, r11
add r9, 8
xor r10d, r10d
cmp r11, 0
cmove r9, r10
mov qword [rbp - 8], r9
mov r10, qword [rdx]
mov rdx, qword [rbp + 0x310]
mov qword [rbp], rdx
mov r8, qword [r8]
xor r9d, r9d
test r10, r10
cmovg r9, r10
mov qword [rbp + 8], r9
add r8, 8
mov qword [rbp + 0x10], r8
cmp rdx, 0
sete r8b
mov byte [rbp + 0x1e], r8b
movabs r8, 0xb272bdbce1638079
movabs r9, 0xb272bdbce1638079
xor r8, r9
cmp rdx, r8
setg dl
mov byte [rbp + 0x1f], dl
cmp eax, ecx
je 0x1402430f4
xor eax, eax
mov qword [rbp - 0x10], rax
jmp 0x1402431ea
mov rax, qword [rbp - 0x10]
mov qword [rbp - 0x18], rax
mov eax, dword [0x1402b7038]
and eax, dword [0x1402b703c]
mov edx, eax
xor edx, 0xffffffff
and edx, 0x38cea37
mov r8d, 0xffffffff
xor r8d, 0x38cea37
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x38cea37
or eax, 0x38cea37
imul eax, edx
add eax, ecx
mov ecx, 0x6edc26f1
xor ecx, 0x68c0d8f1
and eax, ecx
or eax, 0x776c740f
mov ecx, 0xffc3762
xor ecx, 0x5b083437
cmp eax, ecx
jb 0x140243bcd
mov rdx, qword [rbp - 0x18]
mov r8, qword [rbp + 8]
mov eax, dword [0x1402b7040]
mov r10d, dword [0x1402b7044]
mov ecx, 0x97f58182
xor ecx, 0xe4f3865f
xor r10d, ecx
mov r9d, r10d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
mov r9d, eax
xor r9d, r10d
add eax, r9d
sub eax, ecx
add eax, 0xa974d7d5
mov ecx, 0x74e69750
xor ecx, 0x63c5d26e
sub eax, ecx
imul eax, eax, 0xe45ed3d2
mov ecx, 0x5c437a61
xor ecx, 0x175a7d0b
cmp rdx, r8
sete dl
mov byte [rbp - 0x19], dl
cmp eax, ecx
je 0x140243bcd
mov al, byte [rbp - 0x19]
test al, 1
jne 0x140243710
jmp 0x1402432d3
mov rcx, qword [rbp]
mov rdx, qword [rbp - 8]
mov rax, qword [rbp - 0x18]
shl rax, 4
add rdx, rax
mov rax, qword [rdx]
mov rdx, qword [rdx + 8]
mov qword [rbp - 0x28], rdx
cmp rax, rcx
jne 0x140243461
mov al, byte [rbp + 0x1e]
test al, 1
jne 0x1402436ec
jmp 0x14024330a
mov cl, byte [rbp + 0x1f]
mov rax, qword [rbp - 0x28]
add rax, 8
mov qword [rbp - 0x38], rax
xor eax, eax
test cl, 1
mov qword [rbp - 0x30], rax
jne 0x140243445
jmp 0x1402436ec
mov eax, dword [0x1402b7048]
mov r8d, dword [0x1402b704c]
mov edx, r8d
xor edx, 0xffffffff
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
imul ecx, eax, 0xd1d6b55c
mov edx, 0xb694c69e
xor edx, 0x14659429
mov eax, ecx
or eax, edx
xor eax, 0xffffffff
or ecx, 0xa2f152b7
mov edx, 0x4c867968
xor edx, 0xb3798697
xor ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x7d3ff4c3
xor ecx, 0xe0c70f2a
and eax, ecx
cmp eax, 0x4ed01e11
jbe 0x140243bd6
mov rcx, qword [rbp - 0x50]
mov eax, dword [0x1402b7050]
mov r8d, dword [0x1402b7054]
xor eax, 0xffffffff
xor r8d, 0xffffffff
mov edx, 0x54550d4e
xor edx, 0x4fc4605b
mov r9d, 0x858628cf
xor r9d, 0x7a79d730
xor edx, r9d
or eax, r8d
or edx, 0x1b916d15
xor eax, 0xffffffff
and eax, edx
add eax, 0xc8ef4794
sub eax, 0x209cb2d
sub eax, 0xc8ef4794
mov r8d, 0x5199803c
xor r8d, 0xdad49c93
xor edx, edx
div r8d
mov rdx, qword [rbp]
add eax, 0x5159f20a
add eax, 0x2c6bb439
sub eax, 0x5159f20a
xor r8d, r8d
sub r8, 1
sub rcx, r8
mov qword [rbp - 0x48], rcx
cmp rcx, rdx
sete cl
mov byte [rbp - 0x39], cl
cmp eax, 0x5b39b79f
ja 0x140243395
mov rax, qword [rbp - 0x48]
mov cl, byte [rbp - 0x39]
test cl, 1
mov qword [rbp - 0x30], rax
jne 0x1402436ec
jmp 0x140243445
mov rcx, qword [rbp + 0x10]
mov rax, qword [rbp - 0x38]
mov rdx, qword [rbp - 0x30]
mov qword [rbp - 0x50], rdx
mov al, byte [rax + rdx]
cmp al, byte [rcx + rdx]
je 0x14024332d
mov eax, dword [0x1402b7058]
mov ecx, dword [0x1402b705c]
xor ecx, 0xb8eec2c1
xor edx, edx
div ecx
mov edx, eax
xor edx, 0x3ff20c5e
mov r8d, 0xffffffff
xor r8d, 0xcc36296c
mov ecx, edx
and ecx, r8d
mov eax, edx
or eax, r8d
mov r8d, 0x5e1e6a8
xor r8d, 0xfa1e1957
xor eax, r8d
imul eax, ecx
mov ecx, edx
and ecx, 0xcc36296c
mov r8d, 0xe5cd5447
xor r8d, 0x29fb7d2b
or edx, r8d
imul edx, ecx
add edx, eax
mov ecx, edx
xor ecx, 0x8aa0af9e
mov eax, 0xffffffff
xor eax, 0x8aa0af9e
and edx, eax
mov eax, 0xe208bde1
xor eax, 0xe208bde3
imul eax, edx
sub eax, ecx
cmp eax, 0xceaf5986
jae 0x140243bdf
mov r8, qword [rbp - 0x18]
mov ecx, dword [0x1402b7060]
xor ecx, 0x85e3a0d0
mov eax, dword [0x1402b7064]
mov edx, 0xde5d6842
xor edx, 0x15d8a2f0
xor eax, edx
xor ecx, eax
mov eax, 0x318824bd
xor eax, 0x80d1f75d
imul ecx, eax
mov eax, ecx
and eax, 0x8c9e060b
xor eax, 0xffffffff
add ecx, 0x8c9e060b
add ecx, 1
add ecx, eax
mov eax, ecx
or eax, 0xe985fa66
xor eax, 0xffffffff
or ecx, 0xe985fa66
mov edx, 0x897b28b1
xor edx, 0x7684d74e
xor ecx, edx
mov edx, 0xbe3b24f9
xor edx, 0x41c4db06
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
movabs rdx, 0x37c6c7051cda06dd
mov rcx, r8
add rcx, rdx
movabs rdx, 0x7bcdcc11a7cb95c5
movabs r9, 0x7bcdcc11a7cb95c4
xor rdx, r9
add rcx, rdx
movabs rdx, 0xc611632ec224d454
movabs r9, 0xf1d7a42bdefed289
xor rdx, r9
sub rcx, rdx
mov qword [rbp - 0x60], rcx
xor r8, 0xffffffffffffffff
movabs rdx, 0xaa5e815c00c7e380
movabs r9, 0x55a17ea3ff381c7f
xor rdx, r9
xor rcx, rdx
xor r8, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r9, 0x1234ab0e6ce18f5e
xor rdx, r9
or rcx, r8
movabs r8, 0x1234ab0e6ce18f5e
or rdx, r8
xor rcx, 0xffffffffffffffff
and rcx, rdx
cmp rcx, 0
setl cl
mov byte [rbp - 0x51], cl
cmp eax, 0xe6f88f06
jb 0x1402434f4
mov rax, qword [rbp - 0x60]
mov cl, byte [rbp - 0x51]
test cl, 1
mov qword [rbp - 0x10], rax
jne 0x14024362d
jmp 0x1402431ea
mov r8d, dword [0x1402b7068]
and r8d, dword [0x1402b706c]
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x927dc549
mov edx, 0xffffffff
xor edx, 0x927dc549
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x527c3d35
mov r9d, 0x890d27b6
xor r9d, 0x1b70e2ff
and ecx, r9d
and edx, 0x527c3d35
or eax, r8d
or ecx, edx
xor eax, ecx
or eax, 0xae4f2e69
add eax, 0x64018875
mov ecx, 0x13e108f0
xor ecx, 0xa9b362dc
cmp eax, ecx
jae 0x140243be8
mov eax, dword [0x1402b7070]
add eax, dword [0x1402b7074]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x7845a8bc
add ecx, eax
mov eax, 0xb96e834d
xor eax, 0xb96e834d
sub eax, ecx
or eax, 0x7ec08dfd
imul eax, eax, 0xfcc916b3
mov dword [rbp - 0x64], eax
sub rsp, 0x20
call fcn.14000ee80
mov eax, dword [rbp - 0x64]
add rsp, 0x20
cmp eax, 0x715787ac
je 0x140243699
jmp 0x1402436ec
mov rax, qword [rbp - 0x18]
movabs rcx, 0x3e8f59012f607245
movabs rdx, 0xc170a6fed09f8dba
xor rcx, rdx
cmp rax, rcx
jg 0x1402438b8
mov eax, dword [0x1402b7078]
xor edx, edx
div dword [0x1402b707c]
mov r11d, eax
mov eax, r11d
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x7417643c
mov ecx, 0xffffffff
xor ecx, 0x4e51634c
mov r9d, 0xf89fc5fe
xor r9d, 0xb6cea6b2
mov edx, eax
and edx, r9d
and r11d, ecx
mov r10d, 0x2227814a
xor r10d, 0x6c76e206
mov r9d, r8d
and r9d, r10d
mov r10d, ecx
and r10d, 0x7417643c
or edx, r11d
or r9d, r10d
xor edx, r9d
or eax, r8d
mov r8d, 0xda478a68
xor r8d, 0x25b87597
xor eax, r8d
or ecx, 0x4e51634c
and eax, ecx
or edx, eax
mov eax, 0xf3246f28
xor eax, 0xcd2a8a72
sub edx, eax
sub edx, 0x2e9746fe
add edx, 0x3e0ee55a
mov ecx, edx
xor ecx, 0xd5eb312a
mov eax, 0xffffffff
xor eax, 0xd5eb312a
and edx, eax
mov eax, 0x328c0f27
xor eax, 0x328c0f25
imul eax, edx
sub eax, ecx
cmp eax, 0x121c7d39
jbe 0x140243bf1
mov eax, dword [0x1402b7080]
mov edx, dword [0x1402b7084]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
mov ecx, 0x3c44727b
xor ecx, 0xf88cb615
or eax, ecx
mov ecx, 0x2f45071a
xor edx, edx
div ecx
mov ecx, eax
mov rax, qword [rbp + 0x298]
mov r8d, 0xffffffff
xor r8d, 0xbbafc509
mov edx, ecx
and edx, r8d
mov r8d, ecx
xor r8d, 0xbbafc509
add ecx, r8d
sub ecx, edx
mov dword [rbp - 0x68], ecx
mov ecx, 0xb7dc5bfe
xor ecx, 0xf9ca08cf
mov dword [rbp - 0x6c], ecx
mov rcx, qword [rbp + 0x310]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x318]
mov qword [rax + 8], rcx
lea rcx, [rbp + 0x310]
sub rsp, 0x20
call fcn.14001dfcd
mov rax, qword [rbp + 0x298]
mov rcx, qword [rbp + 0x2a0]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [rbp + 0x2c0], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x2c8], rax
lea rdx, [rbp + 0x2c0]
sub rsp, 0x20
call fcn.1400346d0
mov ecx, dword [rbp - 0x6c]
mov eax, dword [rbp - 0x68]
add rsp, 0x20
cmp eax, ecx
jbe 0x140243bf1
jmp 0x1402438b8
mov rax, qword [rbp + 0x50]
cmp rax, 0
je 0x14024395e
mov rax, qword [rbp + 0x50]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
movabs rdx, 0xd6f8fc3620128424
movabs rcx, 0x96f8fc3620128424
xor rdx, rcx
movabs rcx, 0x4ea5f29da982e825
movabs r8, 0xb15a0d62567d17da
xor rcx, r8
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0x575c89ef09d74c4a
xor rcx, r8
or rax, rdx
movabs rdx, 0x575c89ef09d74c4a
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x2cb38e7917d1429e
movabs rdx, 0x2cb38e7917d1429e
xor rcx, rdx
cmp rax, rcx
jne 0x14024395e
mov rcx, qword [rbp + 0x50]
sub rsp, 0x20
call fcn.14001a7c0
add rsp, 0x20
mov rax, qword [rbp + 0x228]
mov rax, qword [rax]
mov qword [rbp - 0x78], rax
cmp rax, 0
je 0x1402439b3
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x1402439b3
mov rcx, qword [rbp - 0x78]
sub rsp, 0x20
call fcn.14001a7c0
add rsp, 0x20
mov rax, qword [rbp + 0x2a8]
mov al, byte [rax]
mov cl, 0x9c
xor cl, 0x9c
cmp al, cl
je 0x140243adf
mov ecx, dword [0x1402b7088]
xor ecx, 0xde58a05e
mov edx, dword [0x1402b708c]
mov eax, 0x93430cad
xor eax, 0x6cbcf352
mov r8d, ecx
xor r8d, eax
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
mov ecx, 0x4c1ca449
xor ecx, 0x17faab65
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, 0x2700e35a
and eax, 0x2700e35a
xor eax, 0xffffffff
and ecx, eax
mov eax, 0x26f55d01
xor eax, 0xd90aa2fe
xor ecx, eax
mov eax, ecx
and eax, 0xcede9ba2
xor ecx, 0xcede9ba2
or eax, ecx
cmp eax, 0x34f59662
jb 0x140243bfa
mov eax, dword [0x1402b7090]
xor eax, 0xe10f7995
xor edx, edx
div dword [0x1402b7094]
mov r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xba97dd1f
mov edx, 0xffffffff
xor edx, 0x70cb2c43
mov eax, ecx
and eax, 0x70cb2c43
and r11d, edx
mov r9d, r8d
and r9d, 0x70cb2c43
mov r10d, edx
and r10d, 0xba97dd1f
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0xa8076607
xor r8d, 0x57f899f8
xor ecx, r8d
or edx, 0x70cb2c43
and ecx, edx
or eax, ecx
or eax, 0x81e05137
xor eax, 0x6b9e6ac2
mov ecx, 0x82e02190
xor ecx, 0x9a3cefa7
cmp eax, ecx
je 0x140243bfa
jmp 0x140243b2a
mov rdx, qword [rbp + 0x220]
xor eax, eax
mov ecx, eax
sub rcx, rdx
xor eax, eax
sub rax, 1
add rcx, rax
xor eax, eax
sub rax, rcx
xor rdx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
mov rcx, rax
xor rcx, rdx
and rcx, rax
cmp rcx, 0
mov qword [rbp + 0x260], rax
jge 0x1402419c6
sub rsp, 0x20
call fcn.14000ee80
add rsp, 0x20
mov rax, qword [rbp + 0x270]
movaps xmm6, xmmword [rbp + 0x320]
movaps xmm7, xmmword [rbp + 0x330]
movaps xmm8, xmmword [rbp + 0x340]
movaps xmm9, xmmword [rbp + 0x350]
movaps xmm10, xmmword [rbp + 0x360]
movaps xmm11, xmmword [rbp + 0x370]
movaps xmm12, xmmword [rbp + 0x380]
lea rsp, [rbp + 0x398]
pop rbx
pop rdi
pop rsi
pop rbp
ret
sbb dword [rdi - 0x4c16bf00], ebx
loope 0x140243b7a
invalid
call qword [rcx - 0x7c]
out dx, al
push rcx
test dh, ch
sub ebp, ecx
and esp, esp
invalid
out 0xae, eax
mov edi, 0xe694e932
invalid
popfq
cmp byte [rbx + 7], 0xe9
sahf
out 0xff, eax
jmp qword [rax]
and byte [rbx], cl
fdivr qword [rbx]
jmp 0x140242458
jmp qword [rbx - 0x5e]
invalid
invalid
int3
cmp byte [rbx], dh
invalid
invalid
cmp eax, edx
invalid
scasd eax, dword [rdi]
pop rdx
jp 0x140243b8e
jmp 0x140243395
adc edi, esp
xor edi, 0xfff90ce9
push qword [rbx - 0x4b]
jae 0x140243b9f
xor eax, 0xfaa8e971
invalid
xchg dword [rdx - 0x1c1608a1], ecx
sti
invalid
mov esp, 0xe99d3982
invalid