Function at 0x14041fef2
Capabilities:
Encrypt data using speck

Disassembly:
push r15
cmp r15, 0x35be7f0e
clc
push r14
push r13
push r12
cmc
cmp dh, 0xae
test ebp, ebp
push rsi
cmp ebx, 0x1ad55007
clc
stc
push rdi
cmc
cmp r13w, bx
clc
push rbp
clc
test r13d, edx
push rbx
cmp r14w, r11w
sub rsp, 0x128
movdqa xmmword [rsp + 0x110], xmm8
movdqa xmmword [rsp + 0x100], xmm7
movdqa xmmword [rsp + 0xf0], xmm6
mov rsi, rcx
ror ah, cl
movzx ax, dl
bt ax, 0xad
mov rax, rdx
cmp r12, r10
mov qword [rsp + 0x48], rdx
test r8w, r8w
cmp bh, 0x49
cmp r8d, edx
jmp 0x14041ff70
jne 0x14041ff83
mov rax, rsi
jmp 0x14041ff7e
jmp 0x1404219f9
mov ebx, r9d
not bpl
mov ebp, r8d
mov eax, r9d
test r12w, r12w
jmp 0x14041ff98
or eax, r8d
jmp 0x14041ffa0
js 0x1404219e4
test ebx, ebx
je 0x14041ffd2
mov eax, 0x7fffffff
cmp rsi, 0x4f780e01
clc
cmc
xor edx, edx
cmp r9b, r15b
stc
idiv ebx
clc
cmp eax, ebp
jmp 0x14041ffcc
jl 0x1404219e4
mov edi, dword [rsp + 0x190]
sal ah, cl
movsx rax, r11w
mov eax, ebx
imul eax, ebp
cmp spl, 0xdb
test dil, 0xcf
mov dword [rsp + 0x34], eax
or eax, edi
jmp 0x14041fff7
js 0x1404219e4
test edi, edi
jmp 0x140420004
je 0x14042002b
mov eax, 0x7fffffff
test r8b, 0xb7
xor edx, edx
test r9b, 0x57
cmp dh, al
idiv edi
clc
test al, r12b
cmp eax, dword [rsp + 0x34]
jl 0x1404219e4
mov eax, dword [rsp + 0x34]
rcl cx, 0xc7
btc cx, 0xfa
xor cx, r9w
imul eax, edi
movsxd rcx, eax
jmp 0x140420047
call fcn.140236582
test rax, rax
jmp 0x140420054
je 0x1404219e4
mov rdx, rax
cmp dil, 0x3a
mov qword [rsp + 0x70], rbp
test edi, edi
jmp 0x14042006d
mov qword [rsp + 0x78], rax
jmp 0x140420077
jle 0x1404219b0
mov rax, qword [rsp + 0x70]
mov r15w, 0x4a01
mov rcx, qword [rsp + 0x48]
lea r15d, [rax + rcx*8]
clc
cmp r15d, 0x23
jmp 0x14042009a
ja 0x1404219cc
movabs rcx, 0xe161a1c00
jmp 0x1404200b0
bt rcx, r15
jmp 0x1404200b9
jae 0x1404219cc
lea eax, [rbx - 1]
mov bpl, bpl
movzx ecx, bx
mov ecx, edi
not di
movzx rbp, di
movsx ebp, si
mov qword [rsp + 0xe0], rcx
movzx edi, r9w
mov ecx, eax
cmovae ebp, eax
mov bp, 0x18fd
mov qword [rsp + 0x38], rcx
inc rcx
neg di
sbb dil, 0x47
mov r8, rcx
sar bpl, 0x20
and r8, 0xfffffffffffffff0
sal bp, cl
inc di
lea rdi, [r8 - 0x10]
or bpl, 0x68
mov qword [rsp + 0xc8], rdi
inc bp
shr rdi, 4
mov ebp, ebp
inc rdi
xchg bpl, bpl
lea ebp, [rbx - 2]
cmp r9w, bx
cmp dil, 0xe1
mov dword [rsp + 0x30], ebp
movabs rbp, 0x1fffffff0
or rbp, 8
mov qword [rsp + 0x68], rcx
and rbp, rcx
shl cl, cl
mov ecx, eax
clc
cmc
sub ecx, ebp
mov dword [rsp + 0x58], ecx
mov dword [rsp + 0x24], eax
sub eax, r8d
sete cl
rcr cx, 0xba
cmp r8w, r12w
mov dword [rsp + 0x54], eax
dec cx
or cl, 0x17
mov rax, rdi
rol cl, cl
ror cl, cl
mov qword [rsp + 0xc0], rdi
bts ecx, edx
and rdi, 0xfffffffffffffffe
movzx rax, dx
bsr rax, rdx
mov qword [rsp + 0x98], rdi
mov eax, ebx
rcl ch, 0x18
imul eax, dword [rsp + 0x48]
btr cx, si
ror ch, 0x26
sar rcx, 0x6f
mov dword [rsp + 0x5c], eax
test r14b, 0x8b
mov eax, ebx
rol cx, cl
movsx rcx, r15w
test bx, sp
and eax, 3
mov cx, 0x75f3
stc
add cl, 0x13
mov ecx, ebx
test ax, dx
clc
and ecx, 7
jmp 0x1404201dd
mov qword [rsp + 0xd8], rcx
jmp 0x1404201ea
pcmpeqd xmm0, xmm0
pxor xmm1, xmm1
movdqa xmm8, xmmword [0x1400bf4e0]
movdqa xmm3, xmmword [0x1400bf4f0]
movdqa xmm4, xmmword [0x1400bf500]
lea rcx, [rbp + rbp]
mov qword [rsp + 0xb0], rcx
rcl cl, cl
bts rcx, rbp
shl ecx, 0x48
mov qword [rsp + 0xb8], rbp
xadd ecx, ecx
stc
movsx cx, ch
lea rcx, [rbp + rbp*2]
test dil, r11b
cmp ah, 0xa0
mov qword [rsp + 0xa8], rcx
rol cl, cl
cmp esi, r13d
sub cx, 0x21be
mov qword [rsp + 0x60], r8
shr rcx, cl
lea rcx, [r8 + r8]
jmp 0x140420260
mov qword [rsp + 0x80], rcx
shr ch, cl
adc cl, dil
movzx cx, spl
lea rcx, [rsi + 0x17]
mov qword [rsp + 0xa0], rcx
cmp ah, 0x27
stc
mov qword [rsp + 0x40], rax
clc
lea rax, [rax + rax*2]
test al, ah
mov qword [rsp + 0xd0], rax
btr ax, 0x50
cwde
shl ax, 0x81
lea rax, [rdx + 0x30]
clc
mov qword [rsp + 0x90], rax
shr ax, cl
sar ah, 0x6c
cwde
lea rax, [rsi + 0x18]
mov qword [rsp + 0x88], rax
cmc
test r13d, 0x168a3335
sub r10d, r10d
test r12, r8
stc
xor r13d, r13d
clc
cmp r15d, r8d
stc
xor r12d, r12d
jmp 0x1404202df
mov qword [rsp + 0xe8], rsi
jmp 0x1404202ec
mov qword [rsp + 0x28], rbx
jmp 0x140420344
inc r12
cmp r9b, 0x27
add r13d, dword [rsp + 0x5c]
neg sil
cdq
add r10d, dword [rsp + 0x34]
btr bx, r15w
sbb sil, bl
cmp r12, qword [rsp + 0xe0]
setl bl
mov rsi, qword [rsp + 0xe8]
cmovnp bx, sp
mov rbx, qword [rsp + 0x28]
bswap rdx
mov dl, bh
mov rdx, qword [rsp + 0x78]
jmp 0x14042033e
je 0x1404219b0
mov r14d, r10d
stc
rcl r8d, cl
movsx r9w, bl
mov r8d, r13d
lea r11, [rdx + r14]
cmc
xor bpl, 0xc1
add bp, 0x5688
mov ebp, r12d
movsxd r9, ebx
imul ebp, ebx
movzx r9, cx
mov r9d, ebp
cmp r10d, 0x6d44458e
cmc
test r15d, edi
imul r9d, dword [rsp + 0x48]
cmp sil, bl
test r15w, si
add r9, rsi
imul ebp, dword [rsp + 0x70]
test r13b, r12b
cmp ecx, 0x5f1f7c69
lea rbp, [rbp + rdx]
cmp r15d, 0x13
jle 0x14042072b
cmp r15d, 0x1b
cbw
setl al
mov eax, dword [rsp + 0x24]
jmp 0x1404203bb
jg 0x14042080f
cmp r15d, 0x14
je 0x14042093c
cmp r15d, 0x19
jmp 0x1404203d4
je 0x1404209e6
cmp r15d, 0x1a
jmp 0x1404203e3
jne 0x140420d9f
test eax, eax
jmp 0x1404203f0
js 0x1404202f6
mov ecx, dword [rsp + 0x24]
test r9d, r9d
cmc
cmp ecx, 7
jmp 0x140420406
jb 0x14042067a
add r8, qword [rsp + 0xa0]
rol ebx, 0x62
shl sil, cl
cdqe
add rbp, qword [rsp + 0xb0]
movsxd rdi, edi
cbw
add r9, qword [rsp + 0xa8]
adc dl, r11b
cwde
sub edx, 0x4304493f
sub ecx, ecx
stc
mov r14, qword [rsp + 0xb8]
bsr rbx, rbp
sal ax, 0x55
shld eax, edx, 0x80
nop
movsx rax, r10w
movzx edi, byte [r8 - 0x15]
clc
movzx ebx, byte [r8 - 0xf]
cdqe
sets ah
movzx esi, byte [r8 - 9]
add dh, 0xf8
xchg dl, dl
movzx eax, byte [r8 - 3]
movzx edx, byte [r8 - 0xc]
shl edx, 8
or edx, ebx
movsx ebx, cx
shr rbx, 0x19
movzx ebx, byte [r8 - 0x12]
clc
cmp r14b, bpl
shl ebx, 8
cmp r12b, 0xa6
or ebx, edi
jmp 0x14042049f
movd xmm7, ebx
pinsrw xmm7, edx, 1
movzx edx, byte [r8]
test r14b, r8b
test r15d, 0x5bba3c30
shl edx, 8
jmp 0x1404204be
or edx, eax
rol al, cl
sub ah, 0x81
rcr rax, cl
movzx eax, byte [r8 - 6]
shl eax, 8
or eax, esi
jmp 0x1404204d7
movd xmm2, eax
pinsrw xmm2, edx, 1
punpcklbw xmm2, xmm1
movzx eax, byte [r8 - 0x16]
movzx edx, byte [r8 - 0x10]
rcl si, 0xc8
shl di, cl
shr sil, cl
movzx esi, byte [r8 - 0xa]
movzx di, r8b
rcr dil, cl
movzx edi, byte [r8 - 4]
not bl
shr bx, cl
movzx ebx, byte [r8 - 0xd]
shl ebx, 8
clc
or ebx, edx
bswap dx
movzx edx, byte [r8 - 0x13]
stc
cmp r15b, 0x79
shl edx, 8
or edx, eax
jmp 0x140420531
movd xmm5, edx
pinsrw xmm5, ebx, 1
movzx eax, byte [r8 - 1]
shl eax, 8
rol rdx, 0xe2
or eax, edi
btc dx, 0x2e
and dh, 0xe9
clc
movzx edx, byte [r8 - 7]
test sil, 0x80
shl edx, 8
cmp r9w, r15w
or edx, esi
jmp 0x140420568
movd xmm6, edx
pinsrw xmm6, eax, 1
punpcklbw xmm7, xmm1
punpcklbw xmm6, xmm1
punpcklwd xmm6, xmm2
punpcklbw xmm5, xmm1
punpcklwd xmm5, xmm7
movzx eax, byte [r8 - 0x17]
movzx edx, byte [r8 - 0x11]
movzx esi, byte [r8 - 0xb]
cmove bx, cx
shl rbx, cl
movzx edi, byte [r8 - 5]
and bx, 0x436a
stc
movzx ebx, byte [r8 - 0xe]
shl ebx, 8
cmp bpl, r14b
jmp 0x1404205bc
or ebx, edx
movzx edx, byte [r8 - 0x14]
test r14b, r9b
shl edx, 8
or edx, eax
movd xmm2, edx
pinsrw xmm2, ebx, 1
movzx eax, byte [r8 - 2]
shl eax, 8
shl dl, cl
or eax, edi
xor dl, r14b
movzx edx, byte [r8 - 8]
shl edx, 8
cmp r11b, r13b
cmc
or edx, esi
jmp 0x1404205f6
movd xmm7, edx
pinsrw xmm7, eax, 1
punpcklbw xmm7, xmm1
punpcklwd xmm7, xmm1
punpcklbw xmm2, xmm1
punpcklwd xmm2, xmm1
pmaddwd xmm2, xmm8
pmaddwd xmm7, xmm8
pmaddwd xmm5, xmm3
paddd xmm5, xmm2
pmaddwd xmm6, xmm3
paddd xmm6, xmm7
psrld xmm5, 8
psrld xmm6, 8
pand xmm6, xmm4
pand xmm5, xmm4
packuswb xmm5, xmm6
packuswb xmm5, xmm5
punpcklbw xmm5, xmm0
movdqu xmmword [r11 + rcx*2], xmm5
add rcx, 8
test r13w, 0x313f
add r8, 0x18
clc
stc
cmp r14, rcx
jne 0x140420458
mov ecx, dword [rsp + 0x58]
test r11w, r15w
clc
cmp qword [rsp + 0x68], r14
je 0x1404202f6
inc ecx
mov dx, r12w
xor bx, 0x4c50
add r9, 2
btc dx, r11w
adc ax, 0x32ed
nop word cs:[rax + rax]
test r10w, ax
movzx eax, byte [r9]
rol di, 0xcd
movzx edx, byte [r9 - 1]
sub dil, r14b
movzx ebx, byte [r9 - 2]
movzx di, r14b
imul edi, ebx, 0x4d
xadd bh, bh
imul edx, edx, 0x96
shr bh, 0x32
cmc
shr bh, cl
lea ebx, [rax + rax*8]
lea ebx, [rbx + rbx*2]
cmp r10d, r8d
test cl, 0xec
add ebx, eax
add ebx, eax
add ebx, edx
jmp 0x1404206e4
add ebx, edi
cmp r10w, ax
clc
test r13w, r10w
mov byte [rbp], bh
cmp r12, 0x4f6d1b58
clc
mov byte [rbp + 1], 0xff
stc
add rbp, 2
jmp 0x140420708
dec ecx
test si, 0x12e6
cmp r9b, r13b
add r9, 3
cmp al, r11b
test ecx, ecx
jmp 0x140420720
jg 0x1404206a1
jmp 0x1404202f6
lea rcx, [rsi + r8]
cmp r15d, 0xb
cmovs eax, r11d
movsx ax, r13b
nop
mov eax, dword [rsp + 0x24]
jmp 0x140420747
jle 0x140420858
cmp r15d, 0xc
je 0x140420a0e
cmp r15d, 0x11
je 0x140420bc3
cmp r15d, 0x13
jmp 0x14042076a
jne 0x140420d9f
test eax, eax
js 0x1404202f6
test byte [rsp + 0x28], 3
jmp 0x140420782
je 0x14042152c
sub ebp, ebp
bsr bx, r10w
and cl, r8b
cmovne ecx, r12d
mov edx, dword [rsp + 0x24]
bswap ecx
mov ecx, edx
test r8b, r9b
mov rbx, qword [rsp + 0xd0]
movsx rax, r8w
nop word cs:[rax + rax]
mov al, spl
cwde
movzx eax, byte [r9]
mov byte [r11 + rbp + 2], al
stc
jmp 0x1404207cd
mov byte [r11 + rbp + 1], al
cmp esi, ebx
mov byte [r11 + rbp], al
add r9, 2
dec ecx
test al, 0xeb
add rbp, 3
test r14b, 0x69
clc
jmp 0x1404207ee
cmp ebx, ebp
jmp 0x1404207f5
jne 0x1404207be
add r11, rbp
mov rbp, r11
cmp edx, 3
jb 0x1404202f6
jmp 0x140421548
cmp r15d, 0x1c
je 0x140420c6a
cmp r15d, 0x21
jmp 0x140420822
je 0x140420c9c
cmp r15d, 0x22
jne 0x140420d9f
test eax, eax
js 0x1404202f6
test byte [rsp + 0x28], 1
jmp 0x140420844
jne 0x140420dcd
mov eax, dword [rsp + 0x24]
movzx ecx, bp
mov ecx, eax
jmp 0x140420e5f
cmp r15d, 0xa
jmp 0x140420861
je 0x140420ccc
cmp r15d, 0xb
jmp 0x140420870
jne 0x140420d9f
test eax, eax
jmp 0x14042087d
js 0x1404202f6
test byte [rsp + 0x28], 3
jmp 0x14042088d
je 0x140421611
sub ebx, ebx
shr dil, 0xf0
movzx edi, r11w
xor di, r10w
mov edx, dword [rsp + 0x24]
mov rdi, qword [rsp + 0x40]
movzx ax, bpl
movzx rax, ax
jmp 0x1404208b8
nop
movzx eax, byte [rcx + rbx]
mov byte [rbp + 2], al
cmp dx, 0x1eb1
test cl, 0xdd
test bl, r14b
mov byte [rbp + 1], al
cmp spl, 9
cmc
clc
mov byte [rbp], al
stc
cmc
add rbp, 3
jmp 0x1404208e3
inc rbx
jmp 0x1404208eb
cmp edi, ebx
jmp 0x1404208f2
jne 0x1404208ba
mov rax, qword [rsp + 0x38]
shr r9w, 0xe7
movsx r9w, r8b
mov edi, eax
movsxd r9, r13d
add r9d, 0x69fe3516
movzx r9, r8w
sub edi, ebx
xadd r9b, r9b
shl r9b, cl
add rcx, rbx
test sp, dx
mov r9, rcx
cmp edx, 3
jmp 0x140420931
jb 0x1404202f6
jmp 0x140421635
test eax, eax
jmp 0x140420943
js 0x1404202f6
test byte [rsp + 0x28], 3
jmp 0x140420953
je 0x140421704
xor edi, edi
mov edx, dword [rsp + 0x24]
jmp 0x140420964
mov rcx, qword [rsp + 0x40]
jmp 0x140420972
nop word cs:[rax + rax]
jmp 0x140420984
movzx eax, word [r9]
movd xmm2, eax
punpcklbw xmm2, xmm1
pshuflw xmm2, xmm2, 0x40
packuswb xmm2, xmm2
movd dword [rbp], xmm2
add r9, 2
add rbp, 4
jmp 0x1404209ab
inc rdi
jmp 0x1404209b7
cmp ecx, edi
jmp 0x1404209be
jne 0x140420984
mov rax, qword [rsp + 0x38]
inc ch
bts cx, sp
mov ecx, eax
sub ecx, edi
cmp edx, 3
jmp 0x1404209db
jb 0x1404202f6
jmp 0x140421723
test eax, eax
jmp 0x1404209ed
js 0x1404202f6
test byte [rsp + 0x28], 1
jne 0x140420f8f
mov eax, dword [rsp + 0x24]
mov ecx, eax
jmp 0x140420a09
jmp 0x14042101c
test eax, eax
jmp 0x140420a15
js 0x1404202f6
mov edx, dword [rsp + 0x24]
mov edi, edx
test byte [rsp + 0x28], 3
jmp 0x140420a2b
je 0x140420acf
xor ebx, ebx
btc eax, 0x85
add dil, dil
sub ebp, ebp
not ax
movzx rdi, r11w
mov eax, ebx
mov rdi, qword [rsp + 0x40]
movsxd rax, edi
mov ax, 0x4dda
mov ax, r15w
nop dword [rax]
setnp al
inc al
movzx eax, byte [rcx + rbp]
mov byte [r11 + rbp*4 + 2], al
jmp 0x140420a6c
mov byte [r11 + rbp*4 + 1], al
jmp 0x140420a76
mov byte [r11 + rbp*4], al
jmp 0x140420a7f
mov byte [r11 + rbp*4 + 3], 0xff
inc rbp
add rbx, 0xfffffffffffffffc
jmp 0x140420a91
cmp edi, ebp
jmp 0x140420a98
jne 0x140420a5e
mov rax, qword [rsp + 0x38]
xor dil, cl
and r9b, 0xe5
mov edi, eax
movsxd r9, ecx
sub edi, ebp
sub r11, rbx
shld r9w, di, 3
add rcx, rbp
neg rbp
btc r9, rsp
xor bpl, 0x29
mov rbp, r11
clc
mov r9, rcx
cmp edx, 3
jmp 0x140420ad7
jb 0x1404202f6
add edi, 4
xor ecx, ecx
btr ax, r13w
jmp 0x140420af0
nop word cs:[rax + rax]
movzx eax, byte [r9 + rcx]
cmp dil, r15b
cmp r11, 0x54db45cf
jmp 0x140420b0e
mov byte [rbp + rcx*4 + 2], al
test r11, rsi
cmc
mov byte [rbp + rcx*4 + 1], al
test dx, r12w
mov byte [rbp + rcx*4], al
mov byte [rbp + rcx*4 + 3], 0xff
bts ax, ax
not al
movzx eax, byte [r9 + rcx + 1]
mov byte [rbp + rcx*4 + 6], al
jmp 0x140420b3c
mov byte [rbp + rcx*4 + 5], al
mov byte [rbp + rcx*4 + 4], al
mov byte [rbp + rcx*4 + 7], 0xff
sal eax, 0x83
bsr eax, r8d
movzx eax, byte [r9 + rcx + 2]
cmp ecx, 0x8bd48aa
cmp r12w, bx
mov byte [rbp + rcx*4 + 0xa], al
mov byte [rbp + rcx*4 + 9], al
mov byte [rbp + rcx*4 + 8], al
lahf
cwde
mov byte [rbp + rcx*4 + 0xb], 0xff
sbb al, r12b
movzx eax, byte [r9 + rcx + 3]
test spl, r10b
test r13d, 0x70c241c7
cmp r8b, sil
mov byte [rbp + rcx*4 + 0xe], al
clc
mov byte [rbp + rcx*4 + 0xd], al
stc
jmp 0x140420b98
mov byte [rbp + rcx*4 + 0xc], al
mov byte [rbp + rcx*4 + 0xf], 0xff
add edi, 0xfffffffc
cmp dl, 0x41
cmc
stc
add rcx, 4
test bh, 0xd2
cmp edi, 3
jmp 0x140420bb8
jg 0x140420afa
jmp 0x1404202f6
test eax, eax
js 0x1404202f6
test byte [rsp + 0x28], 7
jmp 0x140420bd5
je 0x1404217d4
sub ebp, ebp
add edx, 0x5d7e7d7f
cwde
sar ah, 0xf6
mov edx, dword [rsp + 0x24]
cbw
movzx rcx, di
mov rcx, qword [rsp + 0xd8]
movsx ax, bpl
add al, r12b
nop dword [rax]
movsx ax, bpl
movzx eax, byte [r9]
cmp bpl, 0x7d
stc
mov byte [r11 + rbp], al
stc
add r9, 2
jmp 0x140420c20
inc rbp
cmc
test r8d, esp
cmp ecx, ebp
jne 0x140420c09
mov rax, qword [rsp + 0x38]
shl cx, cl
not cx
and ch, bl
mov ecx, eax
sub ecx, ebp
cmc
cmp r12w, di
test r15b, 0xa0
add r11, rbp
adc bpl, sil
mov rbp, r11
jmp 0x140420c57
cmp edx, 7
jmp 0x140420c5f
jb 0x1404202f6
jmp 0x1404217f3
test eax, eax
js 0x1404202f6
test byte [rsp + 0x28], 1
jmp 0x140420c7c
jne 0x140421139
mov eax, dword [rsp + 0x24]
mov ch, 0x42
movsxd rcx, esi
movsx rcx, bx
mov ecx, eax
jmp 0x140420c97
jmp 0x1404211a8
test eax, eax
js 0x1404202f6
test byte [rsp + 0x28], 1
jmp 0x140420cae
jne 0x140421286
mov eax, dword [rsp + 0x24]
movsx rcx, r14w
movzx ecx, r11w
mov ecx, eax
jmp 0x140420cc7
jmp 0x14042131f
test eax, eax
js 0x1404202f6
mov ecx, dword [rsp + 0x24]
test r10w, 0x60b9
cmc
test spl, r9b
cmp ecx, 0xf
jmp 0x140420cea
jb 0x14042195a
cmp qword [rsp + 0xc8], 0
je 0x1404218ca
add r14, qword [rsp + 0x90]
add r8, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x98]
cmc
test r15, r12
xor ecx, ecx
jmp 0x140420d22
nop word [rax + rax]
jmp 0x140420d2d
movq xmm2, qword [r8 + rcx - 0x18]
jmp 0x140420d39
movq xmm5, qword [r8 + rcx - 0x10]
punpcklbw xmm2, xmm0
movdqu xmmword [r14 + rcx*2 - 0x30], xmm2
punpcklbw xmm5, xmm0
movdqu xmmword [r14 + rcx*2 - 0x20], xmm5
jmp 0x140420d5b
movq xmm2, qword [r8 + rcx - 8]
jmp 0x140420d67
movq xmm5, qword [r8 + rcx]
jmp 0x140420d72
punpcklbw xmm2, xmm0
movdqu xmmword [r14 + rcx*2 - 0x10], xmm2
jmp 0x140420d82
punpcklbw xmm5, xmm0
movdqu xmmword [r14 + rcx*2], xmm5
add rcx, 0x20
add rdi, 0xfffffffffffffffe
jne 0x140420d2d
jmp 0x1404218d0
test eax, eax
js 0x1404202f6
test byte [rsp + 0x28], 1
jmp 0x140420db1
jne 0x140421452
mov eax, dword [rsp + 0x24]
mov cx, 0x465f
movsx rcx, r15w
movsxd rcx, r12d
mov ecx, eax
jmp 0x1404214a5
movzx ebx, byte [r9 + 2]
movzx ecx, byte [r9 + 1]
setl dil
sub ah, 0x81
movzx edi, byte [r9]
movsx rax, cx
imul r8d, edi, 0x4d
clc
cbw
sub ax, 0xed4
imul edi, ecx, 0x96
or cl, ah
xor rcx, 0x332c1717
test bpl, r10b
lea ecx, [rbx + rbx*8]
lea ecx, [rcx + rcx*2]
rcr ah, 0x69
xor al, r12b
add ecx, ebx
add ecx, ebx
shrd eax, edx, 0xac
mov al, 0x46
add ecx, edi
cmovg eax, r13d
add ecx, r8d
test r8d, r9d
btr rax, 0xc
movsx eax, r8w
mov byte [rbp], ch
add cx, 0x34d
cmp rbx, rcx
not cx
movzx ecx, byte [r9 + 3]
mov byte [rbp + 1], cl
neg ch
add r9, 4
shr rcx, 0x4b
rcl ch, cl
shl ecx, 0xa8
add rbp, 2
mov ecx, dword [rsp + 0x30]
mov eax, dword [rsp + 0x24]
test eax, eax
jmp 0x140420e66
je 0x1404202f6
add ecx, 2
bsr dx, r13w
sbb dx, ax
sub edi, edi
add dx, r8w
btr ax, dx
nop word cs:[rax + rax]
cbw
bts rsi, r8
xadd dl, ah
movzx eax, byte [r9 + rdi*2 + 2]
xadd rsi, rsi
ror esi, 0x17
clc
movzx edx, byte [r9 + rdi*2 + 1]
bsr si, ax
movzx ebx, byte [r9 + rdi*2]
rcr sil, 0xe4
imul esi, ebx, 0x4d
imul edx, edx, 0x96
mov rbx, r11
lea ebx, [rax + rax*8]
test r11, rsp
clc
test r10b, 0x29
lea ebx, [rbx + rbx*2]
stc
add ebx, eax
test r13w, 0x1022
clc
add ebx, eax
not ah
add ebx, edx
btr rax, rdx
rcr dx, 0x67
ror al, cl
add ebx, esi
mov byte [rbp + rdi], bh
movzx eax, byte [r9 + rdi*2 + 3]
sal rdx, 0x71
mov byte [rbp + rdi + 1], al
movzx eax, byte [r9 + rdi*2 + 6]
movzx edx, byte [r9 + rdi*2 + 5]
dec sil
movzx ebx, byte [r9 + rdi*2 + 4]
imul esi, ebx, 0x4d
btr rbx, r14
rcl bx, cl
imul edx, edx, 0x96
lea ebx, [rax + rax*8]
cmp dil, al
lea ebx, [rbx + rbx*2]
stc
cmc
add ebx, eax
test r14w, sp
add ebx, eax
cdqe
sbb al, 0xe4
add ebx, edx
bts rax, rdi
cwde
add ebx, esi
movsx eax, si
bts eax, r11d
mov byte [rbp + rdi + 2], bh
bt ax, 0xd1
movzx ax, r12b
movzx eax, byte [r9 + rdi*2 + 7]
jmp 0x140420f6b
mov byte [rbp + rdi + 3], al
cmp rsp, rax
add ecx, 0xfffffffe
test dil, 0x98
add rdi, 4
cmp al, r12b
clc
cmp ecx, 1
jg 0x140420e98
jmp 0x1404202f6
movzx eax, byte [r9 + 2]
cmovg ecx, r10d
or bx, r12w
ror ch, cl
movzx ecx, byte [r9 + 1]
jmp 0x140420fac
movzx edx, byte [r9]
adc bl, 0xe4
or bl, sil
imul edx, edx, 0x4d
imul ebx, ecx, 0x96
rcr ecx, 0x36
rol ecx, 0xd
lea ecx, [rax + rax*8]
jmp 0x140420fcd
lea ecx, [rcx + rcx*2]
add ecx, eax
cmc
test r12d, r10d
add ecx, eax
or ax, 0x4829
add ecx, ebx
stc
add ecx, edx
cbw
movzx ax, r10b
mov byte [rbp], ch
neg rcx
add cx, 0xcca
add r9, 3
movzx ax, r8b
movsxd rcx, esi
inc rbp
and rcx, r13
add ax, 0xd1c
adc eax, edi
mov ecx, dword [rsp + 0x30]
mov eax, dword [rsp + 0x24]
cmp sil, 0x7d
jmp 0x14042101c
test eax, eax
jmp 0x140421023
je 0x1404202f6
add ecx, 2
sub dil, 0x62
rcl dh, cl
movsxd rbx, eax
add r9, 5
rcl al, cl
cbw
neg dil
nop word cs:[rax + rax]
rcr dx, 0x7e
movzx eax, byte [r9 - 3]
movzx edx, byte [r9 - 4]
movzx ebx, byte [r9 - 5]
btr rdi, 0x9c
shld edi, r15d, 0xbd
imul edi, ebx, 0x4d
dec bh
imul edx, edx, 0x96
lea ebx, [rax + rax*8]
jmp 0x14042107c
lea ebx, [rbx + rbx*2]
add ebx, eax
jmp 0x140421086
add ebx, eax
add ebx, edx
cbw
and dh, 0x23
cdq
add ebx, edi
movzx rax, r15w
shld edx, r15d, 0x82
bsr dx, r13w
mov byte [rbp], bh
ror dh, 0x18
shrd bx, bx, 0x76
movzx eax, byte [r9]
xadd bl, dil
btc rbx, 0x81
movzx edx, byte [r9 - 1]
or bl, r11b
ror dil, cl
movzx ebx, byte [r9 - 2]
bts di, r12w
adc di, 0x4745
imul edi, ebx, 0x4d
movsx bx, r9b
rcl bx, 0xe8
imul edx, edx, 0x96
adc bl, 0x63
movzx bx, r10b
sub rbx, rsp
lea ebx, [rax + rax*8]
lea ebx, [rbx + rbx*2]
cmp r14w, 0x5a5
add ebx, eax
cmc
add ebx, eax
stc
jmp 0x140421109
add ebx, edx
add ebx, edi
cmp al, r11b
mov byte [rbp + 1], bh
add rbp, 2
test cl, r9b
test bpl, 0x95
add ecx, 0xfffffffe
stc
add r9, 6
test bl, dil
clc
stc
cmp ecx, 1
jg 0x140421050
jmp 0x1404202f6
movzx eax, byte [r9]
and cl, r14b
mov byte [rbp], al
or cl, 0xed
rcr cl, cl
test r8b, cl
movzx eax, byte [r9 + 1]
bsr ecx, r15d
rol cl, cl
bts cx, r15w
mov byte [rbp + 1], al
stc
inc cl
movzx eax, byte [r9 + 2]
mov byte [rbp + 2], al
bswap rcx
sbb cx, 0x69c8
mov byte [rbp + 3], 0xff
adc ax, 0x59e4
shr ah, 0xe
add r9, 3
movzx cx, ch
cmp dil, r8b
add rbp, 4
cmp r14b, sil
neg rcx
mov ecx, dword [rsp + 0x30]
movzx ax, r8b
mov ax, di
movsxd rax, edi
mov eax, dword [rsp + 0x24]
cmp r14b, r11b
stc
test eax, eax
jmp 0x1404211af
je 0x1404202f6
add ecx, 2
lahf
nop dword [rax]
rcr ax, 0xa3
xadd ah, al
add ax, 0x379
movzx eax, byte [r9]
test r13w, 0x1227
cmp r12w, 0x5f98
mov byte [rbp], al
xor al, 0x73
movzx eax, byte [r9 + 1]
cmp bx, 0x2c71
cmp sil, r12b
mov byte [rbp + 1], al
bt ax, 0xf2
stc
btr rax, 0x79
movzx eax, byte [r9 + 2]
jmp 0x140421206
mov byte [rbp + 2], al
xor ah, al
mov byte [rbp + 3], 0xff
rcr rax, cl
movzx eax, byte [r9 + 3]
cmp r8w, 0x160d
clc
mov byte [rbp + 4], al
movzx eax, byte [r9 + 4]
cmp r13w, 0x6b4a
cmc
test rcx, 0x715f6596
mov byte [rbp + 5], al
seta al
rol ah, 0xc
add ah, 0x3b
movzx eax, byte [r9 + 5]
cmp bpl, bpl
mov byte [rbp + 6], al
stc
jmp 0x140421254
mov byte [rbp + 7], 0xff
clc
add r9, 6
cmp r14d, 0x7d141085
add rbp, 8
add ecx, 0xfffffffe
test r10, 0x2e32218b
clc
cmp ecx, 1
jmp 0x14042127b
jg 0x1404211c8
jmp 0x1404202f6
movzx ebx, byte [r9 + 2]
bt r8, 0xb3
shrd ax, r13w, 0xd1
inc dil
movzx ecx, byte [r9 + 1]
cwde
dec dil
bsf edi, r8d
movzx edi, byte [r9]
shl r8b, 0xc3
ror r8b, 8
dec r8b
imul r8d, edi, 0x4d
imul edi, ecx, 0x96
xor cl, r8b
cmovo ax, ax
lea ecx, [rbx + rbx*8]
sal eax, 0x90
or al, bl
lea ecx, [rcx + rcx*2]
add ecx, ebx
movsx rax, r9w
add ecx, ebx
sub eax, 0x1ca13dca
cbw
add ecx, edi
clc
rcl al, cl
shld ax, ax, 0x57
add ecx, r8d
movzx rax, r11w
nop
sbb rax, 0x21fd7a5a
mov byte [rbp], ch
bts rax, rsp
dec ch
inc rcx
add r9, 4
inc rbp
shrd rcx, rcx, 0x2b
mov ecx, dword [rsp + 0x30]
add ah, 0xc
bt eax, edx
mov eax, dword [rsp + 0x24]
test eax, eax
jmp 0x140421326
je 0x1404202f6
add ecx, 2
xor edi, edi
bts bx, di
cdq
nop word cs:[rax + rax]
movzx eax, byte [r9 + rdi*4 + 2]
movsx si, bpl
movzx edx, byte [r9 + rdi*4 + 1]
shld ebx, r10d, 0x29
xor ebx, r9d
movzx ebx, byte [r9 + rdi*4]
neg si
btr si, 0xdd
add si, 0x440f
imul esi, ebx, 0x4d
and bh, cl
btr bx, ax
sar bh, cl
imul edx, edx, 0x96
sets bh
cmovs bx, r9w
movzx rbx, r14w
lea ebx, [rax + rax*8]
cmp r8b, r15b
lea ebx, [rbx + rbx*2]
cmc
add ebx, eax
cmp bpl, 0xd7
cmp r11b, dl
test bpl, 0xdd
add ebx, eax
sbb al, 1
rol ah, 0xae
add ebx, edx
lahf
add ebx, esi
cmc
mov byte [rbp + rdi], bh
movzx eax, byte [r9 + rdi*4 + 6]
xor dl, dil
sbb bl, 0xfd
movzx edx, byte [r9 + rdi*4 + 5]
dec bx
bt ebx, r12d
movzx ebx, byte [r9 + rdi*4 + 4]
xor esi, 0x38b260d3
imul esi, ebx, 0x4d
setl bl
rcl bx, 0x5b
cmovp bx, r8w
imul edx, edx, 0x96
shld ebx, r13d, 0x15
stc
bt bx, r12w
lea ebx, [rax + rax*8]
test r15b, 0x67
lea ebx, [rbx + rbx*2]
add ebx, eax
clc
cmc
cmp r9w, 0x5190
add ebx, eax
cmc
cmp r15b, r10b
add ebx, edx
clc
cmc
test r13, 0x308571c4
add ebx, esi
test dl, bh
cmp r11, 0x7787449b
clc
mov byte [rbp + rdi + 1], bh
add ecx, 0xfffffffe
cmp r11w, cx
add rdi, 2
test r11w, 0x759
cmp ecx, 1
jmp 0x140421447
jg 0x140421344
jmp 0x1404202f6
movzx ecx, byte [r9]
movsxd rax, r8d
shl eax, cl
mov byte [rbp], cl
rol ax, 0x57
movzx ecx, byte [r9 + 1]
mov eax, 0x78c03bc9
movsxd rax, r14d
mov byte [rbp + 1], cl
sub cl, dil
movzx ecx, byte [r9 + 2]
shr ax, 6
mov byte [rbp + 2], cl
bts rax, r12
and ecx, edx
add r9, 4
add ecx, eax
add rbp, 3
mov ecx, dword [rsp + 0x30]
rcl ax, cl
movsx ax, r8b
mov eax, dword [rsp + 0x24]
test dil, bl
cmc
test eax, eax
jmp 0x1404214ac
je 0x1404202f6
add ecx, 2
movsx ax, cl
xor ax, 0x4aa9
cmc
nop dword [rax]
mov eax, r15d
sar eax, cl
movzx eax, byte [r9]
mov byte [rbp], al
cdqe
shr al, cl
movzx eax, byte [r9 + 1]
test r11, rdx
jmp 0x1404214df
mov byte [rbp + 1], al
movzx eax, r13w
movzx eax, byte [r9 + 2]
cmp r13b, dl
mov byte [rbp + 2], al
movzx eax, byte [r9 + 4]
clc
mov byte [rbp + 3], al
movzx eax, byte [r9 + 5]
test r12d, 0xf4b3f9e
mov byte [rbp + 4], al
movzx eax, byte [r9 + 6]
mov byte [rbp + 5], al
add r9, 8
stc
add rbp, 6
clc
add ecx, 0xfffffffe
cmp ecx, 1
jg 0x1404214c7
jmp 0x1404202f6
mov edx, dword [rsp + 0x24]
sbb cx, 0x2fa
mov ecx, edx
test rsi, rax
cmp edx, 3
jmp 0x140421542
jb 0x1404202f6
add ecx, 4
rol ax, cl
add rbp, 0xb
mov rax, 0x440f6b41
btc ax, 0xd9
shl al, cl
nop word [rax + rax]
movzx eax, byte [r9]
cmc
mov byte [rbp - 9], al
mov byte [rbp - 0xa], al
cmc
stc
mov byte [rbp - 0xb], al
movzx eax, byte [r9 + 2]
mov byte [rbp - 6], al
stc
mov byte [rbp - 7], al
cmp r14b, bl
test dx, 0x38f9
mov byte [rbp - 8], al
sub ah, 0xcb
or eax, 0x16e935b3
movzx eax, byte [r9 + 4]
cmp esi, r15d
mov byte [rbp - 3], al
test r15b, spl
stc
cmc
mov byte [rbp - 4], al
test edi, 0x65d87b35
cmp ebx, 0x59197537
mov byte [rbp - 5], al
sal al, cl
shr ax, 3
movzx eax, byte [r9 + 6]
cmc
clc
cmp r8, 0x728d2209
mov byte [rbp], al
clc
mov byte [rbp - 1], al
test r13b, cl
cmp dl, sil
mov byte [rbp - 2], al
jmp 0x1404215e7
add r9, 8
test bx, 0x586f
cmp ax, 0x7d36
add ecx, 0xfffffffc
add rbp, 0xc
test dil, r14b
cmp ecx, 3
jmp 0x140421606
jg 0x140421566
jmp 0x1404202f6
mov edx, dword [rsp + 0x24]
btr di, r15w
cmp r13b, dil
mov edi, edx
jmp 0x140421627
cmp edx, 3
jmp 0x14042162f
jb 0x1404202f6
add edi, 4
add rbp, 0xb
neg al
bt eax, r11d
movsx rax, r10w
nop word cs:[rax + rax]
movzx ax, bpl
bt eax, edx
movzx eax, byte [r9]
mov byte [rbp - 9], al
cmp r10, r11
cmp r11w, 0x2bda
mov byte [rbp - 0xa], al
mov byte [rbp - 0xb], al
sal al, 0xac
movzx eax, byte [r9 + 1]
jmp 0x140421684
mov byte [rbp - 6], al
cmp dx, 0x43bb
cmp ecx, esp
mov byte [rbp - 7], al
test r9, 0x5a9c24e6
clc
mov byte [rbp - 8], al
inc ah
bswap ax
add al, r14b
movzx eax, byte [r9 + 2]
mov byte [rbp - 3], al
mov byte [rbp - 4], al
mov byte [rbp - 5], al
sar ah, cl
jmp 0x1404216bc
movzx eax, byte [r9 + 3]
mov byte [rbp], al
cmp dil, r10b
test r14b, sil
mov byte [rbp - 1], al
cmc
cmp sp, 0x1518
mov byte [rbp - 2], al
jmp 0x1404216db
add r9, 4
add edi, 0xfffffffc
cmp r13b, 0xf9
cmc
stc
add rbp, 0xc
cmp bp, 0x544
cmp edi, 3
jmp 0x1404216f9
jg 0x14042165c
jmp 0x1404202f6
mov edx, dword [rsp + 0x24]
movsx rcx, si
mov ecx, edx
clc
cmp ebp, 0x21c87363
cmp edx, 3
jmp 0x14042171d
jb 0x1404202f6
add ecx, 4
sub edi, edi
movsx rax, cx
movzx eax, ax
not al
movzx eax, word [r9 + rdi]
jmp 0x14042173b
movd xmm2, eax
punpcklbw xmm2, xmm1
pshuflw xmm2, xmm2, 0x40
packuswb xmm2, xmm2
movd dword [rbp + rdi*2], xmm2
movzx eax, word [r9 + rdi + 2]
jmp 0x14042175d
movd xmm2, eax
punpcklbw xmm2, xmm1
pshuflw xmm2, xmm2, 0x40
packuswb xmm2, xmm2
movd dword [rbp + rdi*2 + 4], xmm2
movzx eax, word [r9 + rdi + 4]
movd xmm2, eax
punpcklbw xmm2, xmm1
pshuflw xmm2, xmm2, 0x40
packuswb xmm2, xmm2
movd dword [rbp + rdi*2 + 8], xmm2
movzx eax, word [r9 + rdi + 6]
jmp 0x14042179c
movd xmm2, eax
punpcklbw xmm2, xmm1
pshuflw xmm2, xmm2, 0x40
packuswb xmm2, xmm2
movd dword [rbp + rdi*2 + 0xc], xmm2
add ecx, 0xfffffffc
jmp 0x1404217bd
add rdi, 8
cmp ecx, 3
jmp 0x1404217c9
jg 0x140421731
jmp 0x1404202f6
mov edx, dword [rsp + 0x24]
sbb cl, r13b
btc ecx, 6
mov ecx, edx
test spl, cl
clc
cmp edx, 7
jmp 0x1404217ed
jb 0x1404202f6
add ecx, 8
shl al, 0x3d
mov ah, 0x35
movsx rax, di
xor edi, edi
test r8w, 0x1038
nop dword [rax + rax]
movzx eax, byte [r9 + rdi*2]
mov byte [rbp + rdi], al
stc
movzx eax, byte [r9 + rdi*2 + 2]
cmc
jmp 0x140421826
mov byte [rbp + rdi + 1], al
movzx ax, r12b
bts ax, r8w
btr ax, cx
movzx eax, byte [r9 + rdi*2 + 4]
clc
mov byte [rbp + rdi + 2], al
sar eax, 0x10
dec al
movzx eax, byte [r9 + rdi*2 + 6]
clc
cmp rsp, rdx
mov byte [rbp + rdi + 3], al
setle ah
movzx eax, byte [r9 + rdi*2 + 8]
jmp 0x140421864
mov byte [rbp + rdi + 4], al
movzx eax, byte [r9 + rdi*2 + 0xa]
cmp spl, r8b
mov byte [rbp + rdi + 5], al
shld rax, r13, 0xa5
clc
movzx eax, byte [r9 + rdi*2 + 0xc]
mov byte [rbp + rdi + 6], al
sub al, bpl
btc ax, 0x2c
movsx ax, spl
movzx eax, byte [r9 + rdi*2 + 0xe]
test r11d, ebp
test cx, 0x72d6
mov byte [rbp + rdi + 7], al
test bx, 0x49da
cmp r8b, sil
test cl, sil
add ecx, 0xfffffff8
add rdi, 8
stc
cmp ecx, 7
jmp 0x1404218bf
jg 0x140421810
jmp 0x1404202f6
xor ecx, ecx
cmp bp, r11w
test byte [rsp + 0xc0], 1
je 0x140421916
lea rax, [rcx + rcx]
or rax, 0x10
movq xmm2, qword [r9 + rcx]
jmp 0x1404218f1
movq xmm5, qword [r9 + rcx + 8]
jmp 0x1404218fd
punpcklbw xmm2, xmm0
movdqu xmmword [rbp + rcx*2], xmm2
jmp 0x14042190c
punpcklbw xmm5, xmm0
movdqu xmmword [rbp + rax], xmm5
mov rax, qword [rsp + 0x60]
cmp r12d, 0x24e5195b
cmp qword [rsp + 0x68], rax
jmp 0x14042192c
je 0x1404202f6
add rbp, qword [rsp + 0x80]
bsr rax, rdi
add r9, qword [rsp + 0x60]
movsxd rcx, r14d
movzx eax, r14w
mov ecx, dword [rsp + 0x54]
not rax
cmove ax, r9w
movsx ax, bl
inc ecx
rol rax, 0xd3
rol al, cl
xor ebx, ebx
movsx eax, di
dec ah
cdqe
nop word [rax + rax]
cmovg eax, esi
movzx eax, byte [r9 + rbx]
jmp 0x14042197e
mov byte [rbp + rbx*2], al
jmp 0x140421987
mov byte [rbp + rbx*2 + 1], 0xff
jmp 0x140421991
dec ecx
jmp 0x140421998
inc rbx
cmp r11b, 0x73
test r12b, 0x1b
test ecx, ecx
jg 0x140421974
jmp 0x1404202f6
mov rcx, rsi
jmp 0x1404219b8
call fcn.14025faa8
mov rax, qword [rsp + 0x78]
jmp 0x1404219c7
jmp 0x1404219f9
mov rcx, rsi
mov sil, r15b
mov esi, 0x3ba5665c
mov rsi, rdx
jmp 0x1404219df
call fcn.14025faa8
mov rcx, rsi
jmp 0x1404219ec
call fcn.14025faa8
sub eax, eax
bswap r12
bts ebx, eax
movaps xmm6, xmmword [rsp + 0xf0]
movaps xmm7, xmmword [rsp + 0x100]
movaps xmm8, xmmword [rsp + 0x110]
movzx rbp, sp
add rsp, 0x128
jmp 0x140421a26
pop rbx
bswap rsi
jmp 0x140421a2f
pop rbp
movzx r13d, r10w
movzx r12, sp
xchg r12b, dil
pop rdi
movsx r12d, si
movzx r13w, sil
pop rsi
movzx r14d, r9w
movsx r14w, r15b
pop r12
movsx r15d, sp
movzx r15, si
pop r13
pop r14
movzx r15d, si
movsx r15, dx
movsxd r15, esp
pop r15
ret