Function at 0x14012f820
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
push rbx
sub rsp, 0x508
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x470], xmm8
movaps xmmword [rbp + 0x460], xmm7
movaps xmmword [rbp + 0x450], xmm6
mov dword [rbp + 0x34c], r9d
mov qword [rbp + 0x350], r8
mov qword [rbp + 0x358], rdx
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rcx
mov eax, 0x10
call fcn.140271bb0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x370], rax
mov rax, qword [0x14028d330]
mov qword [rbp + 0x378], rax
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x378]
mov qword [rbp + 0x380], rcx
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
movaps xmm0, xmmword [0x14028a530]
movaps xmm1, xmmword [0x14028a540]
movaps xmm2, xmmword [0x14028a550]
movaps xmm3, xmmword [0x14028a560]
xor eax, eax
mov qword [rbp + 0x388], rax
movaps xmmword [rbp + 0x390], xmm3
movaps xmmword [rbp + 0x3a0], xmm2
movaps xmmword [rbp + 0x3b0], xmm1
movaps xmmword [rbp + 0x3c0], xmm0
jmp 0x14012f906
mov rax, qword [rbp + 0x388]
movaps xmm2, xmmword [rbp + 0x390]
movaps xmm7, xmmword [rbp + 0x3a0]
movaps xmm8, xmmword [rbp + 0x3b0]
movaps xmm5, xmmword [rbp + 0x3c0]
movaps xmmword [rbp + 0x2e0], xmm5
movaps xmmword [rbp + 0x2f0], xmm8
movaps xmmword [rbp + 0x300], xmm7
movaps xmmword [rbp + 0x310], xmm2
mov qword [rbp + 0x328], rax
movaps xmm6, xmmword [0x14028a570]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm3, xmmword [0x14028a570]
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm4, xmmword [0x14028a580]
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp + 0x330], xmm1
movd eax, xmm0
test al, 1
jne 0x14012fa2d
jmp 0x14012fa43
mov rax, qword [rbp + 0x360]
mov rcx, qword [rbp + 0x328]
mov dl, 0xc7
xor dl, 0xc7
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x330]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x14012fa5e
jmp 0x14012fa78
mov rax, qword [rbp + 0x360]
mov rcx, qword [rbp + 0x328]
or rcx, 1
mov dl, 0x7c
xor dl, 0x7c
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x330]
pextrw eax, xmm0, 2
test al, 1
jne 0x14012fa91
jmp 0x14012fac5
mov rax, qword [rbp + 0x360]
mov rcx, qword [rbp + 0x328]
mov r8, 0xffffffffffffffff
xor r8, 2
mov rdx, rcx
and rdx, r8
mov r8, rcx
xor r8, 2
add rcx, r8
sub rcx, rdx
mov dl, 0x3b
xor dl, 0x3b
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x330]
pextrw eax, xmm0, 3
test al, 1
jne 0x14012fade
jmp 0x14012fb2f
mov rax, qword [rbp + 0x360]
mov rcx, qword [rbp + 0x328]
movabs rdx, 0xd19a078c67891e8e
movabs r8, 0xd19a078c67891e8d
xor rdx, r8
and rdx, rcx
xor rdx, 0xffffffffffffffff
movabs r8, 0xdb27f6830bdb6609
movabs r9, 0xdb27f6830bdb660a
xor r8, r9
add rcx, r8
add rcx, 1
add rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x330]
pextrw eax, xmm0, 4
test al, 1
jne 0x14012fb48
jmp 0x14012fb5e
mov rax, qword [rbp + 0x360]
mov rcx, qword [rbp + 0x328]
or rcx, 4
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x330]
pextrw eax, xmm0, 5
test al, 1
jne 0x14012fb77
jmp 0x14012fd21
mov eax, dword [0x14027a720]
mov ecx, dword [0x14027a724]
xor ecx, 0x2f7f8879
xor edx, edx
div ecx
mov ecx, eax
sub ecx, 0x9938d8b1
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
and eax, 0x91e31e38
xor eax, 0xffffffff
mov edx, 0xf61131df
xor edx, 0x67f22fe7
mov r8d, 0xa8713e30
xor r8d, 0x578ec1cf
xor edx, r8d
mov r8d, 0xffffffff
xor r8d, 0x91e31e38
or edx, r8d
mov r8d, 0xf640c10b
xor r8d, 0x9bf3ef4
xor ecx, r8d
xor edx, 0xffffffff
or ecx, edx
mov edx, 0x7e8d4b21
xor edx, 0x8172b4de
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x3b912410
xor edx, 0x93dbafb7
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0xa84a8ba7
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xa84a8ba7
or eax, 0xa84a8ba7
imul eax, edx
add eax, ecx
mov ecx, 0x3510d15b
xor ecx, 0x9d95ded
cmp eax, ecx
jbe 0x1401320cd
mov rcx, qword [rbp + 0x360]
mov r8, qword [rbp + 0x328]
mov edx, dword [0x14027a728]
mov r9d, dword [0x14027a72c]
xor r9d, 0xffffffff
mov eax, edx
xor eax, r9d
and eax, edx
mov edx, eax
xor edx, 0xd8c2b61a
xor edx, 0xffffffff
and edx, 0xd8c2b61a
shl edx, 1
mov r9d, 0xb5d024e6
xor r9d, 0x6d1292fc
sub edx, r9d
sub eax, edx
mov edx, 0x1cebf285
xor edx, 0xf84f9cdb
add eax, edx
mov r9d, 0x3df8b012
xor r9d, 0xb320a24e
xor edx, edx
div r9d
movabs r9, 0xaa538bd734c7faf0
movabs rdx, 0xaa538bd734c7faf5
xor r9, rdx
mov rdx, r8
or rdx, r9
xor rdx, 0xffffffffffffffff
movabs r9, 0x74a56a3458da39ae
movabs r10, 0x74a56a3458da39ab
xor r9, r10
or r8, r9
movabs r9, 0xec89535417a99581
movabs r10, 0x1376acabe8566a7e
xor r9, r10
xor r8, r9
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
mov byte [rcx + rdx], 0
cmp eax, 0x5c1621e5
jae 0x1401320cd
jmp 0x14012fd21
movaps xmm0, xmmword [rbp + 0x330]
pextrw eax, xmm0, 6
test al, 1
jne 0x14012fd3a
jmp 0x14012fd50
mov rax, qword [rbp + 0x360]
mov rcx, qword [rbp + 0x328]
or rcx, 6
mov byte [rax + rcx], 0
mov eax, dword [0x14027a730]
xor eax, 0x746278ef
mov ecx, dword [0x14027a734]
mov edx, 0x9f550678
xor edx, 0xb0525f29
xor ecx, edx
and eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x3c017992
xor edx, 0xe70d4c85
mov r8d, 0x5ec10cda
xor r8d, 0xa13ef325
xor edx, r8d
or ecx, edx
mov edx, 0x6ec9cf66
xor edx, 0xb5c5fa71
and eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov edx, 0x6b0c64de
xor edx, 0x3dfa619b
mov eax, ecx
or eax, edx
xor eax, 0xffffffff
mov edx, 0x7316c667
xor edx, 0x25e0c322
or ecx, edx
mov edx, 0xe34b528f
xor edx, 0x1cb4ad70
xor ecx, edx
mov edx, 0x31dd2fc1
xor edx, 0xce22d03e
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xff11bc74
cmp eax, 0xa0be8ee
jb 0x1401320d6
movaps xmm0, xmmword [rbp + 0x330]
mov ecx, dword [0x14027a738]
mov eax, dword [0x14027a73c]
xor eax, ecx
mov ecx, eax
or ecx, 0xf4effdff
not eax
and eax, 0xb100000
mov edx, ecx
and edx, 0x2002861c
or eax, edx
xor eax, 0x31d4320
and ecx, 0xdce03ac3
or eax, ecx
pextrw ecx, xmm0, 7
mov byte [rbp + 0x2df], cl
cmp eax, 0xf35f8fef
jbe 0x1401320d6
mov al, byte [rbp + 0x2df]
test al, 1
jne 0x14012fe5c
jmp 0x14012ff8d
mov eax, dword [0x14027a740]
mov edx, dword [0x14027a744]
xor edx, 0x91daa26a
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, edx
and eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0x62921a0a
or ecx, 0x62921a0a
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x37845bf9
xor ecx, 0x4ff3ab55
sub eax, ecx
sub eax, 0x8b84f5c3
add eax, 0x7877f0ac
or eax, 0xe8069882
mov ecx, 0x4722e6df
xor ecx, 0x48452188
cmp eax, ecx
je 0x1401320df
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x328]
mov r8d, dword [0x14027a748]
mov r9d, dword [0x14027a74c]
mov eax, r9d
and eax, r8d
mov r10d, 0xaeffc341
xor r10d, 0x51003cbe
xor eax, r10d
add r8d, r9d
add r8d, 1
add r8d, eax
mov eax, r8d
or eax, 0xe52e30ca
xor eax, 0xffffffff
or r8d, 0xe52e30ca
xor r8d, 0xffffffff
or eax, r8d
xor eax, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0xba982f3f
mov r8d, eax
and r8d, r9d
mov r9d, eax
xor r9d, 0xba982f3f
add eax, r9d
sub eax, r8d
xor eax, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x4e599bb6
mov r8d, 0xffffffff
xor r8d, 0x44530671
or eax, r9d
or r8d, 0x44530671
mov r9d, 0x3400a75c
xor r9d, 0xcbff58a3
xor eax, r9d
and eax, r8d
or rdx, 7
mov byte [rcx + rdx], 0
cmp eax, 0x25f796c
je 0x1401320df
jmp 0x14012ff8d
movaps xmm0, xmmword [rbp + 0x2e0]
movaps xmm1, xmmword [rbp + 0x2f0]
movaps xmm2, xmmword [rbp + 0x300]
movaps xmm3, xmmword [rbp + 0x310]
mov rax, qword [rbp + 0x328]
add rax, 8
movaps xmm4, xmmword [0x14028a590]
psubq xmm3, xmm4
psubq xmm2, xmm4
psubq xmm1, xmm4
psubq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x388], rax
movaps xmmword [rbp + 0x390], xmm3
movaps xmmword [rbp + 0x3a0], xmm2
movaps xmmword [rbp + 0x3b0], xmm1
movaps xmmword [rbp + 0x3c0], xmm0
jne 0x14012f906
jmp 0x140130000
mov rax, qword [rbp + 0x380]
add rax, 0x60
mov qword [rbp + 0x2a0], rax
mov eax, 0xc883cc7f
xor eax, 0xc883cc5f
mov dword [rbp + 0x40c], eax
mov ecx, 0x20
sub rsp, 0x20
call fcn.140015f8d
mov rcx, qword [rbp + 0x370]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x350]
mov qword [rbp + 0x2a8], rdx
mov dword [rcx], 0
mov rcx, qword [rax]
mov qword [rbp + 0x2c8], rcx
mov rcx, rax
add rcx, 8
mov qword [rbp + 0x2b0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x2c0], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
add rax, 0x60
mov qword [rbp + 0x2b8], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp + 0x2c0]
mov r8, qword [rbp + 0x2c8]
add rsp, 0x20
movabs r9, 0x10a0d98fe762ac6a
movabs rdx, 0x10a0d98fe762ac6a
xor r9, rdx
add rcx, 8
lea rdx, [0x14028a67f]
cmp r8, r9
cmove rcx, rdx
mov qword [rbp + 0x2d0], rcx
cmp byte [rax + 0x60], 0
jne 0x140130180
mov rax, qword [rbp + 0x2c8]
movabs rcx, 0x23b4193ff459411c
movabs rdx, 0x23b4193ff459411c
xor rcx, rdx
cmp rax, rcx
jge 0x140130142
mov rcx, qword [rbp + 0x2c8]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
add rsp, 0x20
jmp 0x140130180
mov r8, qword [rbp + 0x2c8]
mov rdx, qword [rbp + 0x2d0]
lea rcx, [rbp + 0x420]
sub rsp, 0x20
call fcn.1400eb9c0
add rsp, 0x20
mov rax, qword [rbp + 0x420]
mov rcx, qword [rbp + 0x428]
mov qword [rbp + 0x290], rcx
mov qword [rbp + 0x298], rax
mov rax, qword [rbp + 0x2b8]
mov rcx, qword [rbp + 0x290]
mov rdx, qword [rbp + 0x298]
mov qword [rbp + 0x280], rdx
mov qword [rbp + 0x288], rcx
mov al, byte [rax]
mov cl, 0x5d
xor cl, 0x5d
cmp al, cl
jne 0x1401301e9
mov rax, qword [rbp + 0x288]
mov rcx, qword [rbp + 0x280]
mov qword [rbp + 0x410], rcx
mov qword [rbp + 0x418], rax
lea rcx, [rbp + 0x410]
sub rsp, 0x20
call fcn.1400eb030
add rsp, 0x20
mov qword [rbp + 0x278], rax
mov rax, qword [rbp + 0x2a0]
mov rcx, qword [rbp + 0x278]
mov qword [rbp + 0x270], rcx
cmp byte [rax], 0
jne 0x140131f3b
mov r10, qword [rbp + 0x2a8]
mov r11, qword [rbp + 0x370]
mov r9d, dword [rbp + 0x34c]
mov r8, qword [rbp + 0x270]
mov rcx, qword [rbp + 0x358]
xor eax, eax
mov edx, eax
lea rax, [rbp + 0x40c]
sub rsp, 0x40
mov qword [rsp + 0x20], r11
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x30], rax
call fcn.1400ee99b
add rsp, 0x40
mov ecx, eax
mov rax, qword [rbp + 0x2a0]
mov dword [rbp + 0x26c], ecx
mov al, byte [rax]
mov cl, 0x12
xor cl, 0x12
cmp al, cl
jne 0x140131f3b
mov rax, qword [rbp + 0x2a8]
mov ecx, dword [rbp + 0x26c]
cmp ecx, 0xea
mov dword [rbp + 0x25c], ecx
mov qword [rbp + 0x260], rax
jne 0x1401309ba
mov eax, dword [0x14027a750]
mov ecx, 0xd9b37b52
xor ecx, 0x6d0e2c19
xor eax, ecx
mov r8d, dword [0x14027a754]
mov ecx, 0xc6388e36
xor ecx, 0x2ce39100
xor r8d, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
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, 0x67496e9d
xor ecx, 0x25b1361d
or eax, ecx
imul eax, eax, 0xbc1dc5c1
mov ecx, eax
and ecx, 0x326ac00e
shl ecx, 1
add eax, 0x326ac00e
sub eax, ecx
cmp eax, 0x89340028
ja 0x1401320e8
mov eax, dword [0x14027a758]
xor eax, 0x2582ecc5
mov ecx, dword [0x14027a75c]
xor ecx, 0x3e124588
xor edx, edx
div ecx
mov ecx, 0xd69eacd4
xor ecx, 0xebda0bb5
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x7c0fb37a
mov edx, 0x1e7b47d2
xor edx, 0x6274f4a8
mov r8d, 0xe8b5b522
xor r8d, 0x174a4add
xor edx, r8d
and eax, edx
sub eax, ecx
and eax, 0xd5556e10
mov ecx, 0xc05ce090
xor ecx, 0x91c49465
mov edx, dword [rbp + 0x40c]
movsxd r8, edx
mov qword [rbp + 0x250], r8
cmp edx, 0
setl dl
mov byte [rbp + 0x25b], dl
cmp eax, ecx
je 0x140130313
mov rax, qword [rbp + 0x250]
mov cl, byte [rbp + 0x25b]
test cl, 1
mov qword [rbp + 0x248], rax
jne 0x140131f19
jmp 0x1401303bd
mov rdx, qword [rbp + 0x250]
mov rcx, qword [rbp + 0x2a8]
sub rsp, 0x20
call fcn.14001a17e
mov rcx, qword [rbp + 0x350]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x2b0]
mov qword [rbp + 0x220], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x238], rcx
mov rax, qword [rax]
mov qword [rbp + 0x230], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
add rax, 0x60
mov qword [rbp + 0x228], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp + 0x230]
mov r8, qword [rbp + 0x238]
add rsp, 0x20
add rcx, 8
lea rdx, [0x14028a67f]
cmp r8, 0
cmove rcx, rdx
mov qword [rbp + 0x240], rcx
cmp byte [rax + 0x60], 0
jne 0x14013060f
mov rax, qword [rbp + 0x238]
movabs rcx, 0x7b26a8f99cbbcdfc
movabs rdx, 0x7b26a8f99cbbcdfc
xor rcx, rdx
cmp rax, rcx
jge 0x1401304db
mov rcx, qword [rbp + 0x238]
movabs rdx, 0x1df70746ae296c3d
movabs rax, 0x1df70746ae296c3d
xor rdx, rax
movabs r8, 0xe13430c422b443c
movabs rax, 0x71ecbcf3bdd4bbc3
xor r8, rax
sub rsp, 0x20
call fcn.14001a720
add rsp, 0x20
jmp 0x14013060f
mov eax, dword [0x14027a760]
mov ecx, dword [0x14027a764]
xor ecx, 0x305c5b1c
xor edx, edx
div ecx
mov ecx, 0x44e4cfc3
xor ecx, 0x62d6c46c
add eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x7029e3e7
add eax, ecx
mov ecx, 0xc57536ef
xor ecx, 0x3a16acbe
sub eax, ecx
cmp eax, 0x5778ade5
jae 0x1401320f1
mov r8, qword [rbp + 0x238]
mov rdx, qword [rbp + 0x240]
mov eax, dword [0x14027a768]
xor eax, 0x30ef8191
mov r9d, dword [0x14027a76c]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, r9d
add eax, ecx
add eax, 0xb69ed7af
mov ecx, 0x22b54ad4
xor ecx, 0xdd4ab52b
mov r9d, eax
xor r9d, ecx
and r9d, 0x65f2bbe1
mov r10d, 0xffffffff
xor r10d, 0x65f2bbe1
mov ecx, eax
and ecx, r10d
imul ecx, r9d
mov r9d, eax
and r9d, 0x65f2bbe1
or eax, 0x65f2bbe1
imul eax, r9d
add eax, ecx
mov ecx, 0xe0e486d7
xor ecx, 0x558120f8
add eax, ecx
mov dword [rbp + 0x20c], eax
lea rcx, [rbp + 0x440]
sub rsp, 0x20
call fcn.1400eb9c0
mov eax, dword [rbp + 0x20c]
add rsp, 0x20
mov rcx, qword [rbp + 0x440]
mov qword [rbp + 0x210], rcx
mov rcx, qword [rbp + 0x448]
mov qword [rbp + 0x218], rcx
cmp eax, 0xdb7c4894
je 0x140130525
mov rax, qword [rbp + 0x210]
mov rcx, qword [rbp + 0x218]
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jmp 0x14013060f
mov rax, qword [rbp + 0x1f8]
mov rcx, qword [rbp + 0x200]
mov qword [rbp + 0x1e8], rcx
mov qword [rbp + 0x1f0], rax
mov eax, dword [0x14027a770]
mov ecx, dword [0x14027a774]
xor ecx, 0x9c028a1e
xor edx, edx
div ecx
mov r8d, eax
mov eax, r8d
and eax, 0x4e391c0d
shl eax, 1
add r8d, 0x4e391c0d
sub r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x277d1ad3
mov edx, 0xffffffff
xor edx, 0x277d1ad3
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0xc9acb0a8
mov r9d, 0x54ed66d3
xor r9d, 0x73907c00
and ecx, r9d
and edx, 0xc9acb0a8
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x5d1c6abc
mov edx, 0xc3751a30
xor edx, 0xc3751a30
mov r8d, 0xc377943c
xor r8d, 0xc377943d
sub edx, r8d
sub ecx, edx
sub eax, ecx
mov ecx, 0xf1686b39
xor ecx, 0xb0fd1bc4
cmp eax, ecx
jb 0x1401320fa
mov eax, dword [0x14027a778]
mov ecx, dword [0x14027a77c]
mov edx, 0x69da78cb
xor edx, 0x9de47c40
xor ecx, edx
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x228]
mov ecx, eax
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xb2fb5f28
mov eax, 0xffffffff
xor eax, 0x80dc26b2
or ecx, r8d
or eax, 0x80dc26b2
xor ecx, 0xffffffff
and ecx, eax
xor ecx, 0xbb46667
mov eax, ecx
or eax, 0x6b0aea76
mov r8d, 0x55083fda
xor r8d, 0xaaf7c025
xor eax, r8d
or ecx, 0x6b0aea76
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x9c2260db
xor ecx, 0x63dd9f24
xor eax, ecx
mov ecx, 0x5b1fb077
xor ecx, 0xd803c66e
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x1e7], dl
cmp eax, ecx
je 0x1401306d7
mov al, byte [rbp + 0x1e7]
test al, 1
jne 0x14013078b
jmp 0x1401307c2
mov rax, qword [rbp + 0x1f0]
mov rcx, qword [rbp + 0x1e8]
mov qword [rbp + 0x430], rcx
mov qword [rbp + 0x438], rax
lea rcx, [rbp + 0x430]
sub rsp, 0x20
call fcn.1400eb030
add rsp, 0x20
mov qword [rbp + 0x1d8], rax
mov rax, qword [rbp + 0x2a0]
mov rcx, qword [rbp + 0x1d8]
mov qword [rbp + 0x1d0], rcx
mov al, byte [rax]
mov cl, 5
xor cl, 5
cmp al, cl
jne 0x140131f3b
mov ecx, dword [0x14027a780]
mov edx, dword [0x14027a784]
xor edx, 0xac9c6bb5
mov r8d, 0xa51179ca
xor r8d, 0x5aee8635
mov eax, ecx
xor eax, r8d
mov r8d, edx
xor r8d, 0xffffffff
or eax, r8d
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x4c43760a
xor edx, edx
div ecx
mov ecx, 0x868088c9
xor ecx, 0x6a2a3b66
xor edx, edx
div ecx
mov edx, 0xffffffff
xor edx, 0x39359611
mov ecx, eax
and ecx, edx
mov r8d, 0x63bede26
xor r8d, 0x5a8b4837
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
cmp eax, 0x160b5991
jb 0x140132103
mov r10, qword [rbp + 0x220]
mov r11, qword [rbp + 0x370]
mov r9d, dword [rbp + 0x34c]
mov r8, qword [rbp + 0x1d0]
mov rcx, qword [rbp + 0x358]
mov eax, dword [0x14027a788]
mov esi, dword [0x14027a78c]
mov edx, eax
xor edx, 0xffffffff
and edx, esi
xor esi, 0xffffffff
and eax, esi
sub eax, edx
mov esi, 0xcb453971
xor esi, 0xafc7c0e4
xor edx, edx
div esi
mov edi, eax
mov eax, 0x6488f815
xor eax, 0x9b7707ea
mov edx, edi
xor edx, eax
mov eax, 0xf2f19311
xor eax, 0x21d5a9fc
and eax, edx
mov esi, 0xffffffff
xor esi, 0xd3243aed
and edi, esi
mov edx, 0x94ac692b
xor edx, 0xca9ce9f6
mov ebx, 0xf7d96747
xor ebx, 0x82698b8
xor edx, ebx
mov ebx, 0x473b8868
xor ebx, 0x941fb285
and edx, ebx
and esi, 0x5e3080dd
or eax, edi
or edx, esi
xor eax, edx
mov esi, 0x79e1947c
xor edx, edx
div esi
mov dword [rbp + 0x1c4], eax
mov eax, 0xcce2e589
xor eax, 0xff5da79f
mov dword [rbp + 0x1c0], eax
xor eax, eax
mov edx, eax
lea rax, [rbp + 0x40c]
sub rsp, 0x40
mov qword [rsp + 0x20], r11
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x30], rax
call fcn.1400ee99b
mov rdx, qword [rbp + 0x2a0]
mov ecx, dword [rbp + 0x1c0]
add rsp, 0x40
mov r8d, eax
mov eax, dword [rbp + 0x1c4]
mov dword [rbp + 0x1c8], r8d
mov dl, byte [rdx]
mov r8b, 0x75
xor r8b, 0x75
cmp dl, r8b
sete dl
mov byte [rbp + 0x1cf], dl
cmp eax, ecx
ja 0x140130866
mov rax, qword [rbp + 0x220]
mov ecx, dword [rbp + 0x1c8]
mov dl, byte [rbp + 0x1cf]
test dl, 1
mov dword [rbp + 0x25c], ecx
mov qword [rbp + 0x260], rax
jne 0x1401309ba
jmp 0x140131f3b
mov eax, dword [rbp + 0x25c]
mov rcx, qword [rbp + 0x260]
mov qword [rbp + 0x1b0], rcx
mov dword [rbp + 0x1bc], eax
mov r11d, dword [0x14027a790]
mov r10d, dword [0x14027a794]
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, r10d
xor r8d, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x991cccb
mov eax, ecx
and eax, 0x991cccb
and r11d, edx
mov r9d, r8d
and r9d, 0x991cccb
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x991cccb
and ecx, edx
or eax, ecx
mov ecx, 0xd9a8cd1a
xor edx, edx
div ecx
mov ecx, 0x363a3540
xor edx, edx
div ecx
imul eax, eax, 0xdfd85948
cmp eax, 0x8cd60a30
ja 0x14013210c
mov edx, dword [rbp + 0x1bc]
mov eax, dword [0x14027a798]
mov ecx, dword [0x14027a79c]
mov r8d, 0x9b8e5d43
xor r8d, 0xf6290916
xor ecx, r8d
sub eax, ecx
mov ecx, eax
or ecx, ecx
mov r8d, 0xcbfdcb4e
xor r8d, 0x340234b1
xor ecx, r8d
mov r8d, 0xf25513b6
or r8d, 0xf25513b6
xor r8d, 0xffffffff
or ecx, r8d
xor ecx, 0xffffffff
or eax, 0xf25513b6
mov r8d, 0xa23d8e7
xor r8d, 0xf5dc2718
xor eax, r8d
mov r8d, 0xda66e8b1
xor r8d, 0x2599174e
xor ecx, r8d
xor eax, 0xffffffff
and ecx, eax
mov eax, ecx
and eax, 0xf226007e
mov r8d, 0x1676f380
xor r8d, 0xe450f3fe
xor ecx, r8d
or eax, ecx
imul eax, eax, 0x7f5f91fa
mov ecx, 0x7357e004
xor ecx, 0x1b8f282c
mov r8d, 0xda30eb9e
xor r8d, 0xda30eb9e
cmp edx, r8d
sete dl
mov byte [rbp + 0x1af], dl
cmp eax, ecx
je 0x14013210c
mov al, byte [rbp + 0x1af]
test al, 1
jne 0x140131585
jmp 0x140130b24
mov rcx, qword [rbp + 0x1b0]
sub rsp, 0x20
call fcn.14003b4d4
add rsp, 0x20
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
movaps xmm0, xmmword [0x14028a530]
movaps xmm1, xmmword [0x14028a540]
movaps xmm2, xmmword [0x14028a550]
movaps xmm3, xmmword [0x14028a560]
xor eax, eax
mov qword [rbp + 0x158], rax
movaps xmmword [rbp + 0x160], xmm3
movaps xmmword [rbp + 0x170], xmm2
movaps xmmword [rbp + 0x180], xmm1
movaps xmmword [rbp + 0x190], xmm0
jmp 0x140130b94
mov rax, qword [rbp + 0x158]
movaps xmm2, xmmword [rbp + 0x160]
movaps xmm7, xmmword [rbp + 0x170]
movaps xmm8, xmmword [rbp + 0x180]
movaps xmm5, xmmword [rbp + 0x190]
movaps xmmword [rbp + 0xf0], xmm5
movaps xmmword [rbp + 0x100], xmm8
movaps xmmword [rbp + 0x110], xmm7
movaps xmmword [rbp + 0x120], xmm2
mov qword [rbp + 0x138], rax
movaps xmm6, xmmword [0x14028a570]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm3, xmmword [0x14028a570]
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm4, xmmword [0x14028a580]
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp + 0x140], xmm1
movd eax, xmm0
test al, 1
jne 0x140130cbb
jmp 0x140130db2
mov eax, dword [0x14027a7a0]
mov edx, dword [0x14027a7a4]
mov r8d, eax
xor r8d, edx
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0x94278be0
xor ecx, 0x2b94becc
add eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x5688a731
add eax, ecx
mov ecx, 0x8d972feb
xor ecx, 0xdb8f5d31
and eax, ecx
cmp eax, 0x7b928e20
jae 0x140132115
mov rdx, qword [rbp + 0x138]
mov eax, dword [0x14027a7a8]
mov ecx, dword [0x14027a7ac]
mov r8d, 0x49eec3a8
xor r8d, 0x2f629f30
xor ecx, r8d
sub eax, ecx
mov ecx, 0xa4986be1
xor ecx, 0x3319181f
imul eax, ecx
mov ecx, 0x56759f72
xor ecx, 0xcb841702
and eax, ecx
mov r9d, 0xffffffff
xor r9d, 0x47111e3a
mov r8d, eax
and r8d, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0xde192c06
xor r9d, 0x21e6d3f9
xor ecx, r9d
imul ecx, r8d
mov r8d, eax
and r8d, 0x47111e3a
or eax, 0x47111e3a
imul eax, r8d
add eax, ecx
mov ecx, 0x3e713ec8
xor ecx, 0x1a07d7d4
mov byte [rbp + rdx + 0x3f0], 0
cmp eax, ecx
jb 0x140132115
jmp 0x140130db2
mov eax, dword [0x14027a7b0]
xor eax, 0xaadc78df
mov ecx, dword [0x14027a7b4]
mov edx, 0x9ea60daa
xor edx, 0x6159f255
xor ecx, edx
mov edx, 0xd3a372c4
xor edx, 0xd3a372c4
mov r8d, 0xbae82486
xor r8d, 0xbae82487
sub edx, r8d
sub ecx, edx
sub eax, ecx
mov ecx, 0x79fd9337
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x4b8c232e
xor edx, 0xe6f99a3e
and ecx, edx
mov edx, 0xffffffff
xor edx, 0xad75b910
and eax, edx
sub eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xb9e01cab
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xb9e01cab
or eax, 0xb9e01cab
imul eax, edx
add eax, ecx
cmp eax, 0x37314d12
je 0x14013211e
movaps xmm0, xmmword [rbp + 0x140]
mov ecx, dword [0x14027a7b8]
mov edx, ecx
xor edx, 0x21233200
mov eax, dword [0x14027a7bc]
xor ecx, 0x144048ae
and ecx, 0x165849ff
and edx, 0xe9a7b600
or ecx, edx
xor eax, ecx
xor eax, 0x165849ff
imul rax, rax, 0x4e6925bb
shr rax, 0x3e
or eax, 0x6e48eba2
mov ecx, eax
not ecx
and eax, ecx
or eax, 0x3ac8a0d0
mov ecx, 0x5b37e16b
movd edx, xmm0
shr edx, 0x10
mov byte [rbp + 0xef], dl
cmp eax, ecx
ja 0x14013211e
mov al, byte [rbp + 0xef]
test al, 1
jne 0x140130ed1
jmp 0x140130f7a
mov rcx, qword [rbp + 0x138]
mov rax, rcx
xor rax, 0xffffffffffffffff
movabs rdx, 0x493fc0bc2b0a6ff
movabs r8, 0x493fc0bc2b0a6fe
xor rdx, r8
movabs r8, 0xdc158c5c9df5558f
movabs r9, 0x23ea73a3620aaa70
xor r8, r9
xor rdx, r8
and rax, rdx
movabs rdx, 0xc6e2feb404132697
movabs r8, 0x391d014bfbecd968
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
xor rdx, 1
and rcx, rdx
movabs rdx, 0x3190a40f91ab19de
movabs r8, 0xce6f5bf06e54e621
xor rdx, r8
xor rax, rdx
movabs rdx, 0x7883ef2623bb684e
movabs r8, 0x877c10d9dc4497b1
xor rdx, r8
xor rcx, rdx
and rax, rcx
mov byte [rbp + rax + 0x3f0], 0
mov ecx, dword [0x14027a7c0]
mov edx, dword [0x14027a7c4]
mov eax, ecx
and eax, edx
xor eax, 0xffffffff
and ecx, edx
mov edx, 0x46661e81
xor edx, 0xb999e17e
xor ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x6d5858d2
xor ecx, 0xb862f063
imul eax, ecx
mov ecx, 0xd767b90b
xor ecx, 0x23b31e8c
imul eax, ecx
mov ecx, 0x24541150
xor edx, edx
div ecx
cmp eax, 0x65054170
je 0x140132127
movaps xmm0, xmmword [rbp + 0x140]
mov eax, dword [0x14027a7c8]
mov ecx, dword [0x14027a7cc]
or eax, ecx
mov ecx, eax
not ecx
or ecx, 0x71685573
add eax, ecx
imul eax, eax, 0x2805b624
add eax, 0x3d5539d4
or eax, 0xb886c588
mov ecx, 0x7d9db301
pextrw edx, xmm0, 2
mov byte [rbp + 0xee], dl
cmp eax, ecx
jbe 0x140132127
mov al, byte [rbp + 0xee]
test al, 1
jne 0x140131030
jmp 0x1401310cf
mov rcx, qword [rbp + 0x138]
mov rax, rcx
or rax, 2
movabs rdx, 0x726b33abb39282d6
movabs r8, 0x8d94cc544c6d7d29
xor rdx, r8
xor rax, rdx
movabs rdx, 0x74ac6ea85a6d003e
movabs r8, 0x8b539157a592ffc1
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x54ff098d0e262379
movabs r8, 0x54ff098d0e26237b
xor rdx, r8
movabs r8, 0xc5d84c8aad9c80d7
movabs r9, 0x3a27b37552637f28
xor r8, r9
xor rdx, r8
and rcx, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0xd76b70da5869f518
movabs r8, 0x28948f25a7960ae7
xor rdx, r8
xor rcx, rdx
and rax, rcx
mov byte [rbp + rax + 0x3f0], 0
movaps xmm0, xmmword [rbp + 0x140]
pextrw eax, xmm0, 3
test al, 1
jne 0x1401310e8
jmp 0x140131111
mov rax, qword [rbp + 0x138]
movabs rcx, 0x500a0e47da2df7f3
movabs rdx, 0x500a0e47da2df7f0
xor rcx, rdx
or rax, rcx
mov byte [rbp + rax + 0x3f0], 0
mov edx, dword [0x14027a7d0]
mov ecx, dword [0x14027a7d4]
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, ecx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x80034bdb
xor edx, edx
div ecx
xor eax, 0x57dce1d0
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x6828148a
add ecx, eax
mov eax, 0x5ba0e138
xor eax, 0x5ba0e138
sub eax, ecx
mov ecx, 0x2b65bb73
xor ecx, 0xe3c00250
cmp eax, ecx
je 0x140132130
movaps xmm0, xmmword [rbp + 0x140]
mov eax, dword [0x14027a7d8]
mov ecx, dword [0x14027a7dc]
or eax, ecx
imul eax, eax, 0xabf2261f
or eax, 0xfbb7f76b
mov ecx, 0xfb28bc4d
pextrw edx, xmm0, 4
mov byte [rbp + 0xed], dl
cmp eax, ecx
je 0x140132130
mov al, byte [rbp + 0xed]
test al, 1
jne 0x1401311b6
jmp 0x1401311c9
mov rax, qword [rbp + 0x138]
or rax, 4
mov byte [rbp + rax + 0x3f0], 0
movaps xmm0, xmmword [rbp + 0x140]
pextrw eax, xmm0, 5
test al, 1
jne 0x1401311e2
jmp 0x1401311f5
mov rax, qword [rbp + 0x138]
or rax, 5
mov byte [rbp + rax + 0x3f0], 0
movaps xmm0, xmmword [rbp + 0x140]
pextrw eax, xmm0, 6
test al, 1
jne 0x14013120e
jmp 0x14013122b
mov rcx, qword [rbp + 0x138]
mov rax, rcx
and rax, 6
xor rcx, 6
or rax, rcx
mov byte [rbp + rax + 0x3f0], 0
movaps xmm0, xmmword [rbp + 0x140]
pextrw eax, xmm0, 7
test al, 1
jne 0x140131244
jmp 0x140131279
mov rcx, qword [rbp + 0x138]
mov rax, rcx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
mov ecx, 7
and rcx, 7
xor rcx, 0xffffffffffffffff
and rax, rcx
xor rax, 0xffffffffffffffff
mov cl, 0xff
xor cl, 0xff
mov byte [rbp + rax + 0x3f0], cl
mov eax, dword [0x14027a7e0]
xor edx, edx
div dword [0x14027a7e4]
or eax, 0x73fe7795
mov ecx, 0xb8eb974c
xor ecx, 0xd2be9731
xor eax, ecx
xor eax, 0x19cb4cd6
cmp eax, 0xd52eb554
je 0x140132139
movaps xmm0, xmmword [rbp + 0xf0]
movaps xmm2, xmmword [rbp + 0x100]
movaps xmm3, xmmword [rbp + 0x110]
movaps xmm4, xmmword [rbp + 0x120]
mov rdx, qword [rbp + 0x138]
mov eax, dword [0x14027a7e8]
xor eax, 0x971b45f4
mov r10d, dword [0x14027a7ec]
mov r9d, r10d
xor r9d, 0x306263ba
xor r10d, 0xcf9d9c45
mov r8d, eax
and r8d, r10d
mov ecx, eax
or ecx, r10d
not ecx
imul ecx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, ecx
mov ecx, eax
or ecx, 0x10008800
xor ecx, 0x82000100
or eax, 0x10009804
and eax, ecx
and eax, 0x92009904
mov ecx, 0x64279e0d
add rdx, 8
mov qword [rbp + 0x98], rdx
movaps xmm1, xmmword [0x14028a5a0]
paddq xmm4, xmm1
movaps xmmword [rbp + 0xa0], xmm4
paddq xmm3, xmm1
movaps xmmword [rbp + 0xb0], xmm3
paddq xmm2, xmm1
movaps xmmword [rbp + 0xc0], xmm2
paddq xmm0, xmm1
movaps xmmword [rbp + 0xd0], xmm0
cmp rdx, 0x18
sete dl
mov byte [rbp + 0xec], dl
cmp eax, ecx
ja 0x140132139
movaps xmm0, xmmword [rbp + 0xd0]
movaps xmm1, xmmword [rbp + 0xc0]
movaps xmm2, xmmword [rbp + 0xb0]
movaps xmm3, xmmword [rbp + 0xa0]
mov rax, qword [rbp + 0x98]
mov cl, byte [rbp + 0xec]
test cl, 1
mov qword [rbp + 0x158], rax
movaps xmmword [rbp + 0x160], xmm3
movaps xmmword [rbp + 0x170], xmm2
movaps xmmword [rbp + 0x180], xmm1
movaps xmmword [rbp + 0x190], xmm0
je 0x140130b94
jmp 0x1401313db
mov eax, dword [0x14027a7f0]
mov r8d, dword [0x14027a7f4]
mov ecx, 0xf237be0a
xor ecx, 0xdc841f5
mov r9d, r8d
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
or eax, 0xc3f4b155
mov r8d, 0x3ac3362f
xor r8d, 0x5945994b
mov ecx, 0x1442a1db
xor ecx, 0xebbd5e24
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x6386af64
mov r8d, 0xa2a8bf44
xor r8d, 0xc12e1020
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xf7d4cb14
xor edx, edx
div ecx
cmp eax, 0x2bcdc4ca
ja 0x140132142
mov rdx, qword [rbp + 0x2a0]
mov r8, qword [rbp + 0x360]
mov eax, dword [0x14027a7f8]
add eax, dword [0x14027a7fc]
or eax, 0xceb835fd
xor eax, 0x17254d6d
mov ecx, 0xdbcd1d71
xor ecx, 0x860793d6
sub eax, ecx
mov ecx, 0x5973f43
xor ecx, 0x6e08537a
mov r9, qword [rbp + 0x3f0]
mov qword [r8], r9
mov r9, qword [rbp + 0x3f8]
mov qword [r8 + 8], r9
mov r9, qword [rbp + 0x400]
mov qword [r8 + 0x10], r9
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x97], dl
cmp eax, ecx
jb 0x140132142
mov al, byte [rbp + 0x97]
test al, 1
jne 0x1401314fa
jmp 0x140131f3b
mov rax, qword [rbp + 0x2b0]
mov rax, qword [rax]
mov qword [rbp + 0x88], rax
cmp rax, 0
je 0x1401320a4
mov rax, qword [rbp + 0x88]
mov rcx, qword [rax]
movabs r8, 0x4000000000000000
mov rdx, rcx
xor rdx, r8
movabs r8, 0x2547b638ff46c618
movabs r9, 0xdab849c700b939e7
xor r8, r9
xor rdx, r8
movabs r8, 0x4000000000000000
or rcx, r8
and rcx, rdx
movabs rdx, 0xbad9d127db9b71f8
movabs r8, 0xbad9d127db9b71f8
xor rdx, r8
cmp rcx, rdx
mov qword [rbp + 0x80], rax
je 0x140131fd1
jmp 0x1401320a4
mov ecx, dword [rbp + 0x40c]
movsxd rax, ecx
mov qword [rbp + 0x78], rax
cmp ecx, 0
mov qword [rbp + 0x248], rax
jl 0x140131f19
mov rdx, qword [rbp + 0x78]
mov rcx, qword [rbp + 0x1b0]
sub rsp, 0x20
call fcn.14001a17e
add rsp, 0x20
mov qword [rbp + 0x18], rax
mov eax, dword [rbp + 0x40c]
mov dword [rbp + 0x24], eax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
movaps xmm0, xmmword [0x14028a530]
movaps xmm1, xmmword [0x14028a540]
movaps xmm2, xmmword [0x14028a550]
movaps xmm3, xmmword [0x14028a560]
xor eax, eax
mov qword [rbp + 0x28], rax
movaps xmmword [rbp + 0x30], xmm3
movaps xmmword [rbp + 0x40], xmm2
movaps xmmword [rbp + 0x50], xmm1
movaps xmmword [rbp + 0x60], xmm0
jmp 0x140131614
mov rax, qword [rbp + 0x28]
movaps xmm2, xmmword [rbp + 0x30]
movaps xmm7, xmmword [rbp + 0x40]
movaps xmm8, xmmword [rbp + 0x50]
movaps xmm5, xmmword [rbp + 0x60]
movaps xmmword [rbp - 0x50], xmm5
movaps xmmword [rbp - 0x40], xmm8
movaps xmmword [rbp - 0x30], xmm7
movaps xmmword [rbp - 0x20], xmm2
mov qword [rbp - 8], rax
movaps xmm6, xmmword [0x14028a570]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm3, xmmword [0x14028a570]
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm4, xmmword [0x14028a580]
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp], xmm1
movd eax, xmm0
test al, 1
jne 0x14013171a
jmp 0x14013186c
mov eax, dword [0x14027a800]
xor edx, edx
div dword [0x14027a804]
mov ecx, eax
and ecx, 0xb8e4c2c4
mov eax, 0x868da476
xor eax, 0x868da476
sub eax, ecx
mov ecx, 0x5ddaea05
xor ecx, 0x5ddaea05
mov edx, 0xb6a23f70
xor edx, 0xae2593af
sub ecx, edx
add eax, ecx
mov ecx, 0x233602f1
xor ecx, 0x233602f1
sub ecx, eax
mov edx, 0x9c335a7c
xor edx, 0xb7d2eec3
mov eax, ecx
and eax, edx
mov edx, 0xe2d2ff2b
xor edx, 0x1d2d00d4
xor eax, edx
mov edx, 0xcc0d101
xor edx, 0xf33f2efe
xor ecx, edx
mov edx, 0x4e92ec2
xor edx, 0x2f089a7d
mov r8d, 0x6e598db2
xor r8d, 0x91a6724d
xor edx, r8d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
cmp eax, 0xe09a24d4
ja 0x14013214b
mov rcx, qword [rbp - 8]
mov eax, dword [0x14027a808]
xor eax, 0xe44102a3
xor edx, edx
div dword [0x14027a80c]
mov r8d, 0xff5414f2
xor edx, edx
div r8d
mov edx, 0x4420c9
xor edx, 0xffbbdf36
xor eax, edx
mov r8d, 0xffffffff
xor r8d, 0x1330978b
mov edx, 0xffffffff
xor edx, 0x47297683
or eax, r8d
or edx, 0x47297683
xor eax, 0xffffffff
and eax, edx
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0x864c8765
mov r9d, 0xffffffff
xor r9d, 0x864c8765
mov edx, eax
and edx, r9d
imul edx, r8d
mov r9d, 0xb28a80b5
xor r9d, 0x34c607d0
mov r8d, eax
and r8d, r9d
or eax, 0x864c8765
imul eax, r8d
add eax, edx
mov dl, 0x5f
xor dl, 0x5f
mov byte [rbp + rcx + 0x3d8], dl
cmp eax, 0xd78ed4c0
jae 0x1401317b9
jmp 0x14013186c
movaps xmm0, xmmword [rbp]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x140131884
jmp 0x1401318b4
mov rcx, qword [rbp - 8]
movabs rdx, 0x3aade118efd049e2
movabs rax, 0x3aade118efd049e3
xor rdx, rax
mov rax, rcx
and rax, rdx
xor rcx, 1
or rax, rcx
mov byte [rbp + rax + 0x3d8], 0
mov eax, dword [0x14027a810]
xor eax, 0x881c8285
mov edx, dword [0x14027a814]
xor edx, 0x70d1fd9f
xor ecx, ecx
sub ecx, eax
mov eax, 0xe0187706
xor eax, 0xe0187706
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov edx, 0xc29cb14e
xor edx, 0x6a2d227f
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
and ecx, 0xa8b19331
shl ecx, 1
sub ecx, 0xa8b19331
sub eax, ecx
mov ecx, 0x20239957
xor ecx, 0x90739366
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x17e70acf
mov r8d, 0xffffffff
xor r8d, 0x17e70acf
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x17e70acf
mov r8d, 0x1988e887
xor r8d, 0xe6fe248
or eax, r8d
imul eax, edx
add eax, ecx
cmp eax, 0xfcdb0845
jae 0x140132154
movaps xmm0, xmmword [rbp]
mov eax, dword [0x14027a818]
mov ecx, dword [0x14027a81c]
xor edx, edx
div ecx
add eax, 0xc3c7ad59
mov ecx, eax
and ecx, 0x69889939
add ecx, ecx
sub eax, ecx
add eax, 0xd342b643
pextrw ecx, xmm0, 2
mov byte [rbp - 0x51], cl
cmp eax, 0x6c2a8b1
je 0x14013195b
mov al, byte [rbp - 0x51]
test al, 1
jne 0x1401319a8
jmp 0x140131a92
mov eax, dword [0x14027a820]
mov ecx, dword [0x14027a824]
xor ecx, 0x3b7641b6
add eax, 0xec9829b6
sub eax, ecx
sub eax, 0xec9829b6
mov ecx, 0x529e42c0
xor ecx, 0x2dc28d8a
xor eax, ecx
mov ecx, 0x9c522670
xor ecx, 0x89253695
xor eax, ecx
and eax, 0x9760a4f0
cmp eax, 0x46006d7f
je 0x14013215d
mov rcx, qword [rbp - 8]
mov eax, dword [0x14027a828]
xor edx, edx
div dword [0x14027a82c]
mov edx, eax
mov eax, edx
or eax, 0xb408ee23
xor eax, 0xffffffff
xor edx, 0xffffffff
mov r8d, 0xe4eb8950
xor r8d, 0x50e36773
mov r9d, 0xc3f708e8
xor r9d, 0x3c08f717
xor r8d, r9d
and edx, r8d
or eax, edx
mov edx, 0xa87d3cd8
xor edx, 0x5782c327
xor eax, edx
and eax, eax
xor eax, 0xffffffff
mov edx, 0x2b61007b
and edx, 0x2b61007b
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
xor eax, 0xe22347fb
movabs rdx, 0x31c6ba04698f0886
movabs r8, 0x31c6ba04698f0884
xor rdx, r8
or rcx, rdx
mov byte [rbp + rcx + 0x3d8], 0
cmp eax, 0x82d54496
jae 0x1401319f0
jmp 0x140131a92
movaps xmm0, xmmword [rbp]
pextrw eax, xmm0, 3
test al, 1
jne 0x140131aa8
jmp 0x140131ab8
mov rax, qword [rbp - 8]
or rax, 3
mov byte [rbp + rax + 0x3d8], 0
movaps xmm0, xmmword [rbp]
pextrw eax, xmm0, 4
test al, 1
jne 0x140131ace
jmp 0x140131bd9
mov eax, dword [0x14027a830]
mov ecx, 0xcf6b925d
xor ecx, 0x8608276d
xor eax, ecx
mov ecx, dword [0x14027a834]
xor ecx, 0x7ee66177
add eax, ecx
mov ecx, 0xde76e05a
xor edx, edx
div ecx
mov ecx, 0xaba5ea2a
xor ecx, 0x40868133
and eax, ecx
mov ecx, eax
and ecx, 0x205fe422
xor ecx, 0xffffffff
add eax, 0x205fe422
mov edx, 0x1a115e03
xor edx, 0x1a115e02
add eax, edx
add eax, ecx
cmp eax, 0xdd97ba7f
je 0x140132166
mov rcx, qword [rbp - 8]
mov eax, dword [0x14027a838]
mov edx, dword [0x14027a83c]
xor edx, 0xa621eb52
and eax, edx
or eax, 0xd6af9187
mov edx, 0x144a96f8
xor edx, 0xa5f100ed
imul eax, edx
sub eax, 0x6c93cf73
sub eax, 0x9c1f85e2
add eax, 0x6c93cf73
mov rdx, rcx
and rdx, 4
movabs r8, 0x965266d39458a8cb
movabs r9, 0x69ad992c6ba75734
xor r8, r9
xor rdx, r8
movabs r8, 0x192b7b2a04d10848
movabs r9, 0x192b7b2a04d1084c
xor r8, r9
add rcx, r8
movabs r8, 0x22460f1d329e80db
movabs r9, 0x22460f1d329e80da
xor r8, r9
add rcx, r8
add rcx, rdx
mov byte [rbp + rcx + 0x3d8], 0
cmp eax, 0xff39aba1
je 0x140131b2f
jmp 0x140131bd9
movaps xmm0, xmmword [rbp]
pextrw eax, xmm0, 5
test al, 1
jne 0x140131bef
jmp 0x140131bff
mov rax, qword [rbp - 8]
or rax, 5
mov byte [rbp + rax + 0x3d8], 0
movaps xmm0, xmmword [rbp]
pextrw eax, xmm0, 6
test al, 1
jne 0x140131c15
jmp 0x140131c3b
mov rcx, qword [rbp - 8]
mov rax, rcx
or rax, 6
xor rax, 0xffffffffffffffff
or rcx, 6
xor rcx, 0xffffffffffffffff
or rax, rcx
xor rax, 0xffffffffffffffff
mov byte [rbp + rax + 0x3d8], 0
mov eax, dword [0x14027a840]
add eax, dword [0x14027a844]
mov ecx, 0xc14bfe4c
xor edx, edx
div ecx
mov ecx, 0xd3e3a0d2
xor ecx, 0x533d539c
or eax, ecx
mov ecx, 0xdd39f518
xor edx, edx
div ecx
cmp eax, 0x541466f9
je 0x14013216f
movaps xmm0, xmmword [rbp]
mov ecx, dword [0x14027a848]
mov eax, dword [0x14027a84c]
xor eax, ecx
xor eax, 0x65028d3f
add eax, 0x5706be83
and eax, 0xc0980d08
mov ecx, 0x8f273f37
imul rax, rcx
shr rax, 0x3d
pextrw ecx, xmm0, 7
mov byte [rbp - 0x52], cl
cmp eax, 0xa2d87a44
je 0x140131c71
mov al, byte [rbp - 0x52]
test al, 1
jne 0x140131cc2
jmp 0x140131cd6
mov rax, qword [rbp - 8]
or rax, 7
mov cl, 0x67
xor cl, 0x67
mov byte [rbp + rax + 0x3d8], cl
movaps xmm0, xmmword [rbp - 0x50]
movaps xmm1, xmmword [rbp - 0x40]
movaps xmm2, xmmword [rbp - 0x30]
movaps xmm3, xmmword [rbp - 0x20]
mov rax, qword [rbp - 8]
mov ecx, eax
and ecx, 8
xor rax, 8
lea rax, [rax + rcx*2]
movaps xmm4, xmmword [0x14028a5a0]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rbp + 0x28], rax
movaps xmmword [rbp + 0x30], xmm3
movaps xmmword [rbp + 0x40], xmm2
movaps xmmword [rbp + 0x50], xmm1
movaps xmmword [rbp + 0x60], xmm0
jne 0x140131614
jmp 0x140131d34
mov rax, qword [rbp + 0x2a0]
mov rcx, qword [rbp + 0x360]
mov edx, dword [rbp + 0x24]
mov r8, qword [rbp + 0x18]
mov byte [rbp + 0x3e8], 1
mov qword [rbp + 0x3d8], r8
mov dword [rbp + 0x3e0], edx
mov rdx, qword [rbp + 0x3d8]
mov qword [rcx], rdx
mov rdx, qword [rbp + 0x3e0]
mov qword [rcx + 8], rdx
mov rdx, qword [rbp + 0x3e8]
mov qword [rcx + 0x10], rdx
mov al, byte [rax]
mov cl, 0xc5
xor cl, 0xc5
cmp al, cl
jne 0x140131f3b
mov rax, qword [rbp + 0x2b0]
mov rax, qword [rax]
mov qword [rbp - 0x60], rax
cmp rax, 0
je 0x1401320a4
mov eax, dword [0x14027a850]
sub eax, dword [0x14027a854]
sub eax, 0xa8a4e9b
add eax, 0xbd20e834
mov edx, eax
xor edx, 0x527b6778
xor edx, 0xffffffff
and edx, 0x527b6778
mov ecx, 0x4e103dec
xor ecx, 0x4e103dee
imul ecx, edx
sub ecx, 0x527b6778
sub eax, ecx
cmp eax, 0x9812010d
jae 0x140132178
mov rdx, qword [rbp - 0x60]
mov eax, dword [0x14027a858]
mov r9d, dword [0x14027a85c]
xor r9d, 0x5695590
mov r8d, r9d
xor r8d, 0xffffffff
mov ecx, eax
and ecx, r8d
mov r8d, eax
xor r8d, r9d
add eax, r8d
sub eax, ecx
mov r9d, 0xffffffff
xor r9d, 0xb68ea26e
mov r8d, eax
and r8d, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0xad30ff2c
xor r9d, 0x52cf00d3
xor ecx, r9d
imul ecx, r8d
mov r9d, 0x837d6c1
xor r9d, 0xbeb974af
mov r8d, eax
and r8d, r9d
or eax, 0xb68ea26e
imul eax, r8d
add eax, ecx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x685a98f9
mov ecx, 0x783d90c6
xor ecx, 0x16e1385
mov r9d, 0xab59d903
xor r9d, 0x54a626fc
xor ecx, r9d
or eax, r8d
or ecx, 0x79538343
xor eax, 0xffffffff
and eax, ecx
and eax, 0x6f02e5ca
mov ecx, 0xf0861217
xor ecx, 0x6f0497c3
mov rdx, qword [rdx]
movabs r9, 0x4000000000000000
mov r8, rdx
xor r8, r9
xor r8, 0xffffffffffffffff
movabs r9, 0x4000000000000000
or rdx, r9
and rdx, r8
movabs r8, 0x7671ebbe16479d2f
movabs r9, 0x7671ebbe16479d2f
xor r8, r9
cmp rdx, r8
sete dl
mov byte [rbp - 0x61], dl
cmp eax, ecx
je 0x140132178
mov rax, qword [rbp - 0x60]
mov cl, byte [rbp - 0x61]
test cl, 1
mov qword [rbp + 0x80], rax
jne 0x140131fd1
jmp 0x1401320a4
mov rcx, qword [rbp + 0x248]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
add rsp, 0x20
mov rax, qword [rbp + 0x2b0]
mov rax, qword [rax]
mov qword [rbp - 0x70], rax
cmp rax, 0
je 0x1401320a4
mov rax, qword [rbp - 0x70]
mov rdx, qword [rax]
movabs r8, 0x4000000000000000
mov rcx, rdx
and rcx, r8
movabs r8, 0x72c005fb0159d83
movabs r9, 0xf8d3ffa04fea627c
xor r8, r9
xor rcx, r8
movabs r8, 0xda1e2e85b5822b8c
movabs r9, 0x25e1d17a4a7dd473
xor r8, r9
xor rdx, r8
mov r8, 0xffffffffffffffff
movabs r9, 0x4000000000000000
xor r8, r9
or rdx, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or rcx, rdx
cmp rcx, 0
mov qword [rbp + 0x80], rax
jne 0x1401320a4
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x78], rax
mov eax, dword [0x14027a860]
add eax, dword [0x14027a864]
xor eax, 0xc6ae03a9
or eax, 0x2c1eccc2
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xe9f573d8
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0x55152235
xor ecx, 0x3bc8ab15
cmp eax, ecx
jb 0x140132181
mov rcx, qword [rbp - 0x78]
mov eax, dword [0x14027a868]
mov edx, 0x982492ba
xor edx, 0x1758af9b
xor eax, edx
and eax, dword [0x14027a86c]
add eax, 0x1ed162f3
mov r8d, 0x6c73c92c
xor edx, edx
div r8d
mov r9d, eax
mov eax, r9d
xor eax, 0xffffffff
and eax, 0x3839fb03
mov r8d, 0xffffffff
xor r8d, 0x3839fb03
and r9d, r8d
mov edx, 0xffffffff
xor edx, 0x2935c26d
and edx, 0x3839fb03
and r8d, 0x2935c26d
or eax, r9d
or edx, r8d
xor eax, edx
mov dword [rbp - 0x7c], eax
sub rsp, 0x20
call fcn.14001d1d6
mov eax, dword [rbp - 0x7c]
add rsp, 0x20
cmp eax, 0x33f269b9
jae 0x140132016
insd dword [rdi], dx
ret 0x2935
jmp 0x1401320a4
mov rax, qword [rbp + 0x368]
add byte [rax], al
movaps xmm6, xmmword [rbp + 0x450]
movaps xmm7, xmmword [rbp + 0x460]
movaps xmm8, xmmword [rbp + 0x470]
lea rsp, [rbp + 0x488]
pop rbx
pop rdi
pop rsi
pop rbp
ret
je 0x140132068
jmp 0x11b800a19
jb 0x1401320a9
xor eax, dword [rbx - 0x22e617]
jmp qword [rdi]
invalid
insb byte [rdi], dx
rcl byte [rsi + rcx*2 - 0x1ddd17]
call rdx
invalid
sar byte [rdi], cl
rol dh, 1
jmp 0x140130525
mov bl, 0x8d
test al, 0x3e
jmp 0x1401306d7
in eax, 0xff
dec dword [rdi - 0x169c909a]
pop rdx
out 0xff, eax
jmp rsp
invalid
in al, 0x8b
push 0xffffffffffe938e9
dec dword [rbx + rcx - 0x64]
cld
jmp 0x140130d11
or r11, qword [rsp + rdi*8 - 0x140c17]
invalid
fldcw word [rax]
jno 0x140132100
jmp 0x140130e53
invalid
imul ecx, ebx, 0x32e926ed
invalid
mov bh, 0xef
xchg ebx, eax
insb byte [rdi], dx
jmp 0x1401312a9
sbb edi, esp
invalid
sti
sbb rax, 0xfffffffff665e967
invalid
mov edi, esp
invalid
xor al, 0x9e
xchg esi, eax
mov gs, ecx
mov bh, al
invalid
pop rsp
mov bl, 0x40
shr cl, 1
sar cl, 0xff
dec dword [rax]
cmp byte [r9 + rbp*8 - 7], al
cli
invalid
or byte [rcx + 0x38], al
jmp 0x140131c71
add eax, 0xe9696d94
imul edi, esp, 0xffffffff
invalid
cmp ah, byte [rsi]
jmp [rcx - 0x17317]