Function at 0x140421a27
Capabilities:
Encrypt data using speck

Disassembly:
push r15
jmp 0x140421a56
push r14
push r13
clc
cmp r8, 0xa813258
push r12
push rsi
test bpl, 0xba
push rdi
test r8, r13
cmc
push rbp
push rbx
clc
jmp 0x140421a76
sub rsp, 0x128
jmp 0x140421a85
movdqa xmmword [rsp + 0x110], xmm8
movdqa xmmword [rsp + 0x100], xmm7
movdqa xmmword [rsp + 0xf0], xmm6
mov rsi, rcx
neg ah
shl ah, 0xf7
movzx eax, cx
mov rax, rdx
test sil, 0xd2
cmc
mov qword [rsp + 0x48], rdx
cmc
cmp r8w, di
cmp r8d, edx
jmp 0x140421ac6
jne 0x140421ad9
mov rax, rsi
jmp 0x140421ad4
jmp 0x140423468
mov ebx, r9d
cwde
mov ebp, r8d
sub al, r10b
btc eax, r11d
mov eax, r9d
test r12w, 0x484d
or eax, r8d
jmp 0x140421af8
js 0x14042344a
test ebx, ebx
jmp 0x140421b05
je 0x140421b2e
mov eax, 0x7fffffff
cmc
test rbx, 0x217f136f
sub edx, edx
cmp dil, 0x5a
cmp cx, si
idiv ebx
test r9b, r13b
cmp eax, ebp
jl 0x14042344a
mov edi, dword [rsp + 0x190]
movsxd rax, r10d
btr rax, 0x4f
xor al, 0x25
mov eax, ebx
cmc
imul eax, ebp
mov dword [rsp + 0x34], eax
cmp cx, 0x77af
or eax, edi
jmp 0x140421b55
js 0x14042344a
test edi, edi
je 0x140421b87
mov eax, 0x7fffffff
stc
test r11d, 0x259c59eb
xor edx, edx
clc
test cl, 0x7c
idiv edi
cmp eax, dword [rsp + 0x34]
jmp 0x140421b81
jl 0x14042344a
mov eax, dword [rsp + 0x34]
test bpl, spl
ror ch, cl
imul eax, edi
bswap cx
movsxd rcx, eax
jmp 0x140421b9e
call fcn.14026b7ad
test rax, rax
jmp 0x140421bab
je 0x14042344a
mov rdx, rax
clc
mov qword [rsp + 0x70], rbp
test edi, edi
jmp 0x140421bc1
mov qword [rsp + 0x78], rax
jmp 0x140421bcb
jle 0x14042341e
mov rax, qword [rsp + 0x70]
bswap r15w
neg r15b
and cx, 0x4dc8
mov rcx, qword [rsp + 0x48]
cmc
lea r15d, [rax + rcx*8]
cmp r15d, 0x23
jmp 0x140421bf5
ja 0x14042343a
movabs rcx, 0xe161a1c00
clc
jmp 0x140421c0b
bt rcx, r15
jmp 0x140421c14
jae 0x14042343a
lea eax, [rbx - 1]
jmp 0x140421c2a
mov ecx, edi
inc r8b
cmovb bp, r9w
mov qword [rsp + 0xe0], rcx
xchg rbp, r8
movsxd rbp, esp
setns cl
mov ecx, eax
mov qword [rsp + 0x38], rcx
inc bp
movsx rdi, di
inc rcx
mov r8, rcx
btc bp, di
clc
xor bp, 0x764e
and r8, 0xfffffffffffffff0
lea rdi, [r8 - 0x10]
movsx bp, r15b
rcl rbp, 0xf3
bts bp, ax
mov qword [rsp + 0xc8], rdi
shr rdi, 4
movsx rbp, sp
movzx ebp, di
bswap bp
inc rdi
sbb bpl, 0x25
bsf rbp, rbp
xor bpl, r15b
lea ebp, [rbx - 2]
clc
test r10b, r12b
mov dword [rsp + 0x30], ebp
movabs rbp, 0x1fffffff0
or rbp, 8
mov qword [rsp + 0x68], rcx
test spl, r15b
and rbp, rcx
sar ch, cl
sbb ch, 0x99
mov cl, r12b
mov ecx, eax
test ax, dx
cmp sil, cl
sub ecx, ebp
clc
mov dword [rsp + 0x58], ecx
mov dword [rsp + 0x24], eax
sal cx, cl
sub eax, r8d
test r14w, 0x37ab
movsx cx, dl
add ch, dl
mov dword [rsp + 0x54], eax
mov rax, rdi
sbb rax, r15
mov qword [rsp + 0xc0], rdi
xor ax, r9w
rcl ecx, cl
movsx cx, spl
and rdi, 0xfffffffffffffffe
test r10, 0x6af37973
mov qword [rsp + 0x98], rdi
mov eax, ebx
btr cx, 0x10
neg cl
seto cl
imul eax, dword [rsp + 0x48]
sbb ch, bh
movsx ecx, sp
or cl, ch
mov dword [rsp + 0x5c], eax
bsf cx, r12w
sal rcx, 0x6b
mov eax, ebx
inc cl
shl cl, 0xe6
stc
and eax, 3
inc ch
mov ecx, ebx
test dl, spl
and ecx, 7
jmp 0x140421d5c
mov qword [rsp + 0xd8], rcx
jmp 0x140421d69
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
mov qword [rsp + 0xb8], rbp
stc
mov cl, 0x22
lea rcx, [rbp + rbp*2]
mov qword [rsp + 0xa8], rcx
or ch, dh
test rdi, r14
mov qword [rsp + 0x60], r8
lea rcx, [r8 + r8]
test dh, 0x28
cmc
mov qword [rsp + 0x80], rcx
bt ecx, 0x5e
rcl cl, cl
bt cx, dx
lea rcx, [rsi + 0x17]
mov qword [rsp + 0xa0], rcx
jmp 0x140421de4
mov qword [rsp + 0x40], rax
lea rax, [rax + rax*2]
stc
mov qword [rsp + 0xd0], rax
inc rax
lea rax, [rdx + 0x30]
mov qword [rsp + 0x90], rax
movzx rax, r9w
dec ah
lea rax, [rsi + 0x18]
mov qword [rsp + 0x88], rax
sub r10d, r10d
cmp r14b, 0xec
clc
xor r13d, r13d
test esp, 0x623a5b5c
sub r12d, r12d
jmp 0x140421e30
mov qword [rsp + 0xe8], rsi
mov qword [rsp + 0x28], rbx
jmp 0x140421e42
jmp 0x140421e90
inc r12
add r13d, dword [rsp + 0x5c]
rol si, cl
cmp cx, r10w
bsr bx, ax
add r10d, dword [rsp + 0x34]
cmp r10b, 0x3a
cmp r12, qword [rsp + 0xe0]
mov dl, r11b
mov rsi, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0x28]
movzx dx, spl
mov rdx, qword [rsp + 0x78]
jmp 0x140421e8a
je 0x14042341e
mov r14d, r10d
mov r8d, r13d
shrd rbp, r15, 0x67
lea r11, [rdx + r14]
bts r9d, r11d
mov ebp, r12d
shr r9b, cl
add r9b, r15b
imul ebp, ebx
bswap r9d
mov r9d, ebp
imul r9d, dword [rsp + 0x48]
test r10b, dil
cmp sil, r13b
lea r9, [r9 + rsi]
test r13w, 0x781f
imul ebp, dword [rsp + 0x70]
lea rbp, [rbp + rdx]
cmp dl, spl
cmp r15d, 0x13
jmp 0x140421ee1
jle 0x14042224b
cmp r15d, 0x1b
movzx rax, r14w
mov eax, dword [rsp + 0x24]
jmp 0x140421ef8
jg 0x140422349
cmp r15d, 0x14
je 0x140422459
cmp r15d, 0x19
jmp 0x140421f11
je 0x140422507
cmp r15d, 0x1a
jmp 0x140421f20
jne 0x1404228eb
test eax, eax
jmp 0x140421f2d
js 0x140421e47
mov ecx, dword [rsp + 0x24]
cmp ecx, 7
jmp 0x140421f3f
jb 0x1404221c7
add r8, qword [rsp + 0xa0]
add rbp, qword [rsp + 0xb0]
bsr dx, r10w
and rsi, 0x651d17c8
cmp r8, 0x1add0aee
add r9, qword [rsp + 0xa8]
not edx
cmp r12b, 0xce
xor ecx, ecx
ror esi, cl
mov dh, 0xfb
mov r14, qword [rsp + 0xb8]
nop
rcl bl, 0x42
movzx edi, byte [r8 - 0x15]
xchg dl, bl
movzx ebx, byte [r8 - 0xf]
and dx, di
cwde
movzx esi, byte [r8 - 9]
movzx eax, byte [r8 - 3]
btc edx, 0x68
bsr dx, di
adc dl, dil
movzx edx, byte [r8 - 0xc]
cmp edx, 0x47803dc3
test ebp, 0x3cda55b1
shl edx, 8
clc
or edx, ebx
stc
movsx rbx, di
movzx ebx, byte [r8 - 0x12]
jmp 0x140421fd5
shl ebx, 8
clc
or ebx, edi
jmp 0x140421fe0
movd xmm7, ebx
pinsrw xmm7, edx, 1
movzx edx, byte [r8]
stc
clc
shl edx, 8
clc
or edx, eax
movzx eax, byte [r8 - 6]
cmc
shl eax, 8
cmp rax, 0x28a47e80
cmp r14d, eax
stc
or eax, esi
movd xmm2, eax
pinsrw xmm2, edx, 1
punpcklbw xmm2, xmm1
movzx eax, byte [r8 - 0x16]
add bx, cx
btc rbx, 0xc2
btc ebx, r13d
movzx edx, byte [r8 - 0x10]
rol bx, cl
movzx esi, byte [r8 - 0xa]
sar dil, cl
movzx edi, byte [r8 - 4]
rcl ebx, cl
or bl, cl
movzx ebx, byte [r8 - 0xd]
shl ebx, 8
test r8b, spl
cmc
or ebx, edx
stc
movzx edx, byte [r8 - 0x13]
cmp al, 0xfe
shl edx, 8
stc
jmp 0x140422061
or edx, eax
movd xmm5, edx
pinsrw xmm5, ebx, 1
movzx eax, byte [r8 - 1]
shl eax, 8
neg dl
or dl, 0x74
cdq
or eax, edi
movzx edx, r12w
movzx edx, byte [r8 - 7]
test r14b, r15b
shl edx, 8
test r13, 0xf504d8d
cmp dil, 0xb
or edx, esi
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]
sbb rbx, 0x1cd009e8
movzx dx, r14b
inc edi
movzx edx, byte [r8 - 0x11]
rcr si, 0xfe
movzx esi, byte [r8 - 0xb]
movzx edi, byte [r8 - 5]
btc bx, r13w
movsx rbx, sp
rol ebx, 0xeb
movzx ebx, byte [r8 - 0xe]
cmp bl, r13b
shl ebx, 8
or ebx, edx
movzx edx, byte [r8 - 0x14]
cmp r8d, 0x1eaf66fa
cmp r12b, bpl
shl edx, 8
clc
cmp ebx, r15d
or edx, eax
movd xmm2, edx
pinsrw xmm2, ebx, 1
movzx eax, byte [r8 - 2]
test dl, cl
sal dl, 0x30
shl eax, 8
or eax, edi
movzx edx, byte [r8 - 8]
stc
cmc
shl edx, 8
jmp 0x140422138
or edx, esi
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
cmp cl, cl
add rcx, 8
jmp 0x14042219c
add r8, 0x18
cmc
cmp bx, r9w
cmp r14, rcx
jmp 0x1404221ad
jne 0x140421f8a
mov ecx, dword [rsp + 0x58]
cmp qword [rsp + 0x68], r14
jmp 0x1404221c1
je 0x140421e47
inc ecx
add r9, 2
nop word cs:[rax + rax]
xor dil, r8b
movzx eax, byte [r9]
movzx edx, byte [r9 - 1]
bts ebx, ebp
movzx ebx, byte [r9 - 2]
imul edi, ebx, 0x4d
imul edx, edx, 0x96
movzx rbx, r12w
and rbx, rcx
sub bx, r11w
lea ebx, [rax + rax*8]
cmc
lea ebx, [rbx + rbx*2]
add ebx, eax
cmp r15d, 0x4fd6454f
cmp spl, r8b
add ebx, eax
add ebx, edx
cmp bh, 0x3e
test r11b, 0xfc
add ebx, edi
mov byte [rbp], bh
stc
mov byte [rbp + 1], 0xff
clc
add rbp, 2
dec ecx
cmc
add r9, 3
test cx, 0x5ead
test ecx, ecx
jmp 0x140422240
jg 0x1404221db
jmp 0x140421e47
lea rcx, [rsi + r8]
cbw
bsr ax, bp
movsx ax, cl
cmp r15d, 0xb
movsx eax, di
cbw
lahf
mov eax, dword [rsp + 0x24]
jmp 0x14042226c
jle 0x1404223a2
cmp r15d, 0xc
jmp 0x14042227b
je 0x14042252f
cmp r15d, 0x11
jmp 0x14042228a
je 0x1404226e3
cmp r15d, 0x13
jmp 0x140422299
jne 0x1404228eb
test eax, eax
jmp 0x1404222a6
js 0x140421e47
test byte [rsp + 0x28], 3
je 0x140422fb6
xor ebp, ebp
xor ah, 0xc4
cwd
xor cl, r9b
mov edx, dword [rsp + 0x24]
xor al, 0x21
mov ecx, edx
movsxd rbx, r11d
sal ah, cl
mov rbx, qword [rsp + 0xd0]
nop word cs:[rax + rax]
shld ax, sp, 0x9b
movzx eax, byte [r9]
test r9, rcx
mov byte [r11 + rbp + 2], al
cmc
test r13w, r9w
mov byte [r11 + rbp + 1], al
clc
stc
jmp 0x140422305
mov byte [r11 + rbp], al
test r14d, r15d
add r9, 2
jmp 0x140422315
dec ecx
stc
add rbp, 3
clc
cmp ebx, ebp
jmp 0x140422324
jne 0x1404222e8
add r11, rbp
mov rbp, r11
cmp r10w, sp
clc
stc
cmp edx, 3
jmp 0x14042233e
jb 0x140421e47
jmp 0x140422fcf
cmp r15d, 0x1c
je 0x140422791
cmp r15d, 0x21
je 0x1404227c7
cmp r15d, 0x22
jne 0x1404228eb
test eax, eax
jmp 0x14042236e
js 0x140421e47
test byte [rsp + 0x28], 1
jmp 0x14042237e
jne 0x14042290e
mov eax, dword [rsp + 0x24]
movzx ecx, cx
mov rcx, 0x368342b1
movsx cx, ah
mov ecx, eax
jmp 0x14042239d
jmp 0x1404229ac
cmp r15d, 0xa
je 0x1404227fd
cmp r15d, 0xb
jne 0x1404228eb
test eax, eax
jmp 0x1404223bd
js 0x140421e47
test byte [rsp + 0x28], 3
jmp 0x1404223cd
je 0x14042308f
xor ebx, ebx
mov edx, dword [rsp + 0x24]
xadd edi, edi
rcl dil, cl
shl dil, cl
mov rdi, qword [rsp + 0x40]
bswap ax
nop
movsx rax, r13w
movzx eax, byte [rcx + rbx]
cmc
mov byte [rbp + 2], al
mov byte [rbp + 1], al
mov byte [rbp], al
add rbp, 3
jmp 0x140422407
inc rbx
jmp 0x14042240f
cmp edi, ebx
jne 0x1404223f0
mov rax, qword [rsp + 0x38]
mov edi, eax
bsr r9w, bp
sbb r9w, si
movsx r9w, r11b
sub edi, ebx
shl r9w, cl
btr r9, rax
lea rcx, [rcx + rbx]
bt r9, 0x94
bts r9d, eax
mov r9, rcx
cmp edx, 3
jmp 0x14042244e
jb 0x140421e47
jmp 0x1404230a8
test eax, eax
jmp 0x140422460
js 0x140421e47
test byte [rsp + 0x28], 3
je 0x14042317b
sub edi, edi
mov edx, dword [rsp + 0x24]
setp ah
cwde
cbw
mov rcx, qword [rsp + 0x40]
movsx ax, r12b
not ax
nop word cs:[rax + rax]
movsx ax, dil
cbw
movzx eax, word [r9]
jmp 0x1404224a7
movd xmm2, eax
punpcklbw xmm2, xmm1
pshuflw xmm2, xmm2, 0x40
packuswb xmm2, xmm2
movd dword [rbp], xmm2
add r9, 2
clc
jmp 0x1404224c7
add rbp, 4
jmp 0x1404224d0
inc rdi
cmp ecx, edi
jmp 0x1404224da
jne 0x14042249e
mov rax, qword [rsp + 0x38]
bsf rcx, rsp
mov ecx, eax
cmc
sub ecx, edi
test r9w, 0x6eb1
cmp edx, 3
jmp 0x1404224fc
jb 0x140421e47
jmp 0x140423196
test eax, eax
jmp 0x14042250e
js 0x140421e47
test byte [rsp + 0x28], 1
jmp 0x14042251e
jne 0x140422af3
mov eax, dword [rsp + 0x24]
mov ecx, eax
jmp 0x140422b68
test eax, eax
jmp 0x140422536
js 0x140421e47
mov edx, dword [rsp + 0x24]
sub rdi, rdi
mov edi, edx
clc
cmp bl, r11b
test byte [rsp + 0x28], 3
je 0x1404225ff
sub ebx, ebx
adc dil, 0xcd
cdqe
sub ebp, ebp
cdqe
mov dil, r15b
movsx ax, ah
mov rdi, qword [rsp + 0x40]
movsx ax, r10b
nop dword [rax]
movsx eax, sp
mov al, r14b
jmp 0x140422580
movzx eax, byte [rcx + rbp]
jmp 0x140422589
mov byte [r11 + rbp*4 + 2], al
jmp 0x140422593
mov byte [r11 + rbp*4 + 1], al
jmp 0x14042259d
mov byte [r11 + rbp*4], al
jmp 0x1404225a6
mov byte [r11 + rbp*4 + 3], 0xff
jmp 0x1404225b1
inc rbp
cmc
cmp spl, cl
add rbx, 0xfffffffffffffffc
test r9b, al
test cx, 0x3a72
cmp edi, ebp
jmp 0x1404225cb
jne 0x140422580
mov rax, qword [rsp + 0x38]
dec r9d
rcr di, cl
mov edi, eax
stc
sar r9b, 0xf1
shl r9, cl
sub edi, ebp
sub r11, rbx
cmp r9b, sil
add rcx, rbp
mov rbp, r11
mov r9, rcx
stc
clc
test ecx, 0x35906d55
cmp edx, 3
jmp 0x140422607
jb 0x140421e47
add edi, 4
xor ecx, ecx
sal ah, cl
or al, 0x80
nop word cs:[rax + rax]
movzx eax, byte [r9 + rcx]
mov byte [rbp + rcx*4 + 2], al
cmp r10, rax
clc
cmc
mov byte [rbp + rcx*4 + 1], al
mov byte [rbp + rcx*4], al
mov byte [rbp + rcx*4 + 3], 0xff
rcr ah, 0x43
rcr ah, cl
movzx eax, byte [r9 + rcx + 1]
cmc
cmp r8w, si
mov byte [rbp + rcx*4 + 6], al
stc
clc
mov byte [rbp + rcx*4 + 5], al
stc
cmp r15b, 0x8b
test r8b, 0x3f
mov byte [rbp + rcx*4 + 4], al
cmovs rax, r8
dec al
rcl ah, 0xbc
mov byte [rbp + rcx*4 + 7], 0xff
clc
sar eax, cl
movzx eax, byte [r9 + rcx + 2]
mov byte [rbp + rcx*4 + 0xa], al
cmp r8b, r11b
mov byte [rbp + rcx*4 + 9], al
mov byte [rbp + rcx*4 + 8], al
rol eax, 0x91
mov byte [rbp + rcx*4 + 0xb], 0xff
nop
adc ah, 0x31
bt rax, 0x83
movzx eax, byte [r9 + rcx + 3]
cmp r9b, 0xbb
test r13w, si
mov byte [rbp + rcx*4 + 0xe], al
mov byte [rbp + rcx*4 + 0xd], al
stc
mov byte [rbp + rcx*4 + 0xc], al
cmp rdi, rdx
mov byte [rbp + rcx*4 + 0xf], 0xff
test dil, r14b
clc
add edi, 0xfffffffc
jmp 0x1404226c9
add rcx, 4
test cl, r8b
cmp edi, 3
jmp 0x1404226d8
jg 0x140422620
jmp 0x140421e47
test eax, eax
jmp 0x1404226ea
js 0x140421e47
test byte [rsp + 0x28], 7
jmp 0x1404226fa
je 0x140423246
sub ebp, ebp
rdtsc
movsx dx, bpl
mov edx, dword [rsp + 0x24]
shrd eax, esi, 0x9e
mov rcx, qword [rsp + 0xd8]
shld rax, r11, 0x76
not ah
nop dword [rax]
cmc
bt eax, 0xd
sal ax, 0x6f
movzx eax, byte [r9]
clc
test dil, r13b
mov byte [r11 + rbp], al
cmp r8b, 0xb7
add r9, 2
jmp 0x140422745
inc rbp
clc
stc
test dil, 0x49
cmp ecx, ebp
jmp 0x140422755
jne 0x14042272c
mov rax, qword [rsp + 0x38]
mov ecx, eax
cmp r10w, cx
test dil, r12b
sub ecx, ebp
test r14d, 0x72ed0302
lea r11, [r11 + rbp]
btr bp, 0x95
mov rbp, r11
cmp edx, 7
jmp 0x140422786
jb 0x140421e47
jmp 0x140423269
test eax, eax
jmp 0x140422798
js 0x140421e47
test byte [rsp + 0x28], 1
jmp 0x1404227a8
jne 0x140422c62
mov eax, dword [rsp + 0x24]
movzx rcx, ax
mov ecx, 0x3f324e70
mov ecx, eax
jmp 0x1404227c2
jmp 0x140422ca2
test eax, eax
jmp 0x1404227ce
js 0x140421e47
test byte [rsp + 0x28], 1
jmp 0x1404227de
jne 0x140422d4e
mov eax, dword [rsp + 0x24]
movsxd rcx, r13d
movzx ecx, r13w
not cl
mov ecx, eax
jmp 0x1404227f8
jmp 0x140422ddf
test eax, eax
jmp 0x140422804
js 0x140421e47
mov ecx, dword [rsp + 0x24]
test spl, spl
cmp r12w, r11w
clc
cmp ecx, 0xf
jb 0x1404233c5
cmp qword [rsp + 0xc8], 0
jmp 0x14042282d
je 0x140423335
add r14, qword [rsp + 0x90]
or edi, 0x156054
movsxd rdi, r14d
add r8, qword [rsp + 0x88]
mov dil, 0x4f
mov rdi, qword [rsp + 0x98]
stc
test r15b, sil
jmp 0x140422860
sub ecx, ecx
jmp 0x140422867
nop word [rax + rax]
jmp 0x140422872
movq xmm2, qword [r8 + rcx - 0x18]
jmp 0x14042287e
movq xmm5, qword [r8 + rcx - 0x10]
jmp 0x14042288a
punpcklbw xmm2, xmm0
movdqu xmmword [r14 + rcx*2 - 0x30], xmm2
punpcklbw xmm5, xmm0
movdqu xmmword [r14 + rcx*2 - 0x20], xmm5
jmp 0x1404228a5
movq xmm2, qword [r8 + rcx - 8]
movq xmm5, qword [r8 + rcx]
punpcklbw xmm2, xmm0
movdqu xmmword [r14 + rcx*2 - 0x10], xmm2
jmp 0x1404228c2
punpcklbw xmm5, xmm0
movdqu xmmword [r14 + rcx*2], xmm5
cmp r11, 0x45b9127c
add rcx, 0x20
add rdi, 0xfffffffffffffffe
jmp 0x1404228e0
jne 0x140422872
jmp 0x140423338
test eax, eax
js 0x140421e47
test byte [rsp + 0x28], 1
jmp 0x1404228fd
jne 0x140422ed5
mov eax, dword [rsp + 0x24]
mov ecx, eax
jmp 0x140422f22
movzx ebx, byte [r9 + 2]
neg di
bts ecx, eax
sar ch, cl
movzx ecx, byte [r9 + 1]
movzx edi, byte [r9]
sal r8w, cl
imul r8d, edi, 0x4d
movzx ax, bl
shr ax, cl
imul edi, ecx, 0x96
rol eax, 0xe6
sbb cl, r12b
xchg cl, cl
lea ecx, [rbx + rbx*8]
sar al, cl
shld rax, rax, 0x1e
lea ecx, [rcx + rcx*2]
ror ax, 0xb8
btc eax, 0x40
add ecx, ebx
add ecx, ebx
sar al, 0xec
add ecx, edi
add ecx, r8d
cbw
rcr al, 0xb7
test r14b, 0x35
mov byte [rbp], ch
or al, r14b
xor al, r15b
mov rax, r11
movzx ecx, byte [r9 + 3]
mov byte [rbp + 1], cl
bsr cx, r9w
xchg al, cl
cdqe
add r9, 4
rcr ax, cl
and cx, r9w
stc
add rbp, 2
shld ecx, r15d, 0xee
bswap ax
mov ecx, dword [rsp + 0x30]
bswap rax
mov eax, dword [rsp + 0x24]
cmc
test eax, eax
jmp 0x1404229b3
je 0x140421e47
add ecx, 2
xor edi, edi
nop word cs:[rax + rax]
adc bh, 0xfd
cwd
add bl, 0xdd
movzx eax, byte [r9 + rdi*2 + 2]
sal dx, 0xc3
adc rbx, r8
movzx edx, byte [r9 + rdi*2 + 1]
movzx esi, r12w
movzx ebx, byte [r9 + rdi*2]
adc sil, 0xa3
ror sil, 0x36
imul esi, ebx, 0x4d
and bx, ax
sub ebx, 0x4a890f2c
imul edx, edx, 0x96
lea ebx, [rax + rax*8]
lea ebx, [rbx + rbx*2]
cmp r15b, r14b
test r8b, 0x6b
add ebx, eax
test r8w, 0x1f69
cmc
add ebx, eax
add ebx, edx
or dl, r8b
add ebx, esi
bt dx, 0x70
movzx dx, dil
mov byte [rbp + rdi], bh
or dl, 0xf0
cwd
movzx eax, byte [r9 + rdi*2 + 3]
add esi, 0x2bd23807
adc dl, 6
rcl sil, 0xa4
mov byte [rbp + rdi + 1], al
cmc
movzx eax, byte [r9 + rdi*2 + 6]
movsx rdx, dx
movzx edx, byte [r9 + rdi*2 + 5]
xor rsi, 0x2c3309fa
and sil, 0xaf
or rbx, r11
movzx ebx, byte [r9 + rdi*2 + 4]
movzx rsi, dx
imul esi, ebx, 0x4d
imul edx, edx, 0x96
movsxd rbx, esi
or rbx, 0x153573a2
adc bx, sp
lea ebx, [rax + rax*8]
lea ebx, [rbx + rbx*2]
test dl, dil
add ebx, eax
cmc
stc
add ebx, eax
add ebx, edx
movsxd rax, r10d
bts ax, r12w
add ebx, esi
sub rax, 0xd840ae4
mov byte [rbp + rdi + 2], bh
cwde
xadd al, al
bt ax, r10w
movzx eax, byte [r9 + rdi*2 + 7]
cmc
mov byte [rbp + rdi + 3], al
cmc
add ecx, 0xfffffffe
cmp ax, 0xee2
add rdi, 4
jmp 0x140422ae0
cmp ecx, 1
jmp 0x140422ae8
jg 0x1404229d4
jmp 0x140421e47
movzx eax, byte [r9 + 2]
clc
movzx ecx, byte [r9 + 1]
stc
movzx edx, byte [r9]
bsf rbx, r11
add bx, sp
and rbx, r8
imul edx, edx, 0x4d
imul ebx, ecx, 0x96
ror cx, 0xda
rcl cl, cl
lea ecx, [rax + rax*8]
cmp bpl, 0x15
lea ecx, [rcx + rcx*2]
add ecx, eax
test r11b, 0x5d
jmp 0x140422b32
add ecx, eax
bsr eax, edx
cmc
add ecx, ebx
stc
and al, 0x31
xor eax, eax
add ecx, edx
mov al, r12b
neg ax
ror al, 0xf6
mov byte [rbp], ch
neg ecx
add r9, 3
nop
movsx cx, spl
inc rbp
cmovg ecx, esp
mov ecx, dword [rsp + 0x30]
mov eax, dword [rsp + 0x24]
test eax, eax
jmp 0x140422b6f
je 0x140421e47
add ecx, 2
movzx ebx, bx
cwde
cmp dl, 0xdd
add r9, 5
sub rbx, 0x763f250e
nop word cs:[rax + rax]
shl di, cl
movzx eax, byte [r9 - 3]
sar dx, cl
cmc
xor bl, 0xb5
movzx edx, byte [r9 - 4]
movsxd rdi, r15d
sbb bl, dil
adc bx, 0x56a0
movzx ebx, byte [r9 - 5]
jmp 0x140422bc3
imul edi, ebx, 0x4d
imul edx, edx, 0x96
movzx ebx, r9w
mov bx, r15w
lea ebx, [rax + rax*8]
stc
lea ebx, [rbx + rbx*2]
jmp 0x140422be0
add ebx, eax
test r13b, 0x84
test bl, bl
stc
add ebx, eax
shl rax, cl
add ebx, edx
rcr ax, 0x7e
movzx edx, r8w
add ebx, edi
shl ax, cl
mov byte [rbp], bh
movzx eax, byte [r9]
movzx edx, byte [r9 - 1]
add dil, 0x60
rol dil, 0x41
movzx ebx, byte [r9 - 2]
imul edi, ebx, 0x4d
shr ebx, cl
imul edx, edx, 0x96
lea ebx, [rax + rax*8]
lea ebx, [rbx + rbx*2]
test r14b, 0x36
add ebx, eax
stc
add ebx, eax
add ebx, edx
test r10, rdx
add ebx, edi
mov byte [rbp + 1], bh
jmp 0x140422c3f
add rbp, 2
add ecx, 0xfffffffe
clc
test r11b, spl
stc
add r9, 6
cmp ecx, 1
jmp 0x140422c57
jg 0x140422b99
jmp 0x140421e47
movzx eax, byte [r9]
or cx, 0x3f0d
mov byte [rbp], al
movzx eax, byte [r9 + 1]
mov byte [rbp + 1], al
sbb al, r10b
movzx eax, byte [r9 + 2]
xor cx, cx
sal cx, cl
and cl, 0x19
mov byte [rbp + 2], al
mov byte [rbp + 3], 0xff
add r9, 3
add rbp, 4
movsx eax, r12w
mov ecx, dword [rsp + 0x30]
mov eax, dword [rsp + 0x24]
test eax, eax
je 0x140421e47
add ecx, 2
or ah, 0x79
nop dword [rax]
test si, r14w
rol ah, 0xed
movzx eax, byte [r9]
jmp 0x140422cc7
mov byte [rbp], al
sbb eax, r14d
mov ah, 0xc0
xor al, r12b
movzx eax, byte [r9 + 1]
mov byte [rbp + 1], al
movzx eax, byte [r9 + 2]
mov byte [rbp + 2], al
btr eax, 0x9a
dec al
mov byte [rbp + 3], 0xff
shl eax, 0xcf
stc
cmc
movzx eax, byte [r9 + 3]
mov byte [rbp + 4], al
movzx eax, byte [r9 + 4]
mov byte [rbp + 5], al
rcl al, cl
adc ah, 0xc8
dec ax
movzx eax, byte [r9 + 5]
jmp 0x140422d14
mov byte [rbp + 6], al
cmc
mov byte [rbp + 7], 0xff
cmp dil, 0xf7
add r9, 6
add rbp, 8
stc
cmp r10w, 0x721f
add ecx, 0xfffffffe
test r15b, 0x23
jmp 0x140422d3b
cmp ecx, 1
jmp 0x140422d43
jg 0x140422cbb
jmp 0x140421e47
movzx ebx, byte [r9 + 2]
sbb dil, 0xf
movzx ecx, byte [r9 + 1]
mov r8d, 0x67cf1150
movzx edi, byte [r9]
movsxd r8, esi
bsr r8d, r13d
cmc
imul r8d, edi, 0x4d
rcr eax, 0x18
imul edi, ecx, 0x96
and cx, r14w
rol rax, 0x8a
sal al, cl
lea ecx, [rbx + rbx*8]
nop
cmp rax, r11
lea ecx, [rcx + rcx*2]
cmc
or al, r15b
movsx rax, r9w
add ecx, ebx
add ax, 0x38e6
shr ax, 0xa2
cmc
add ecx, ebx
bts ax, r9w
add ecx, edi
btr rax, rcx
not al
add ecx, r8d
mov byte [rbp], ch
add ch, 0x51
movsx ecx, r11w
add r9, 4
cbw
inc rcx
inc rbp
mov ecx, dword [rsp + 0x30]
jmp 0x140422dd6
mov eax, dword [rsp + 0x24]
test bp, 0x4e59
test eax, eax
je 0x140421e47
add ecx, 2
adc bh, bl
not ax
rcl bx, cl
sub edi, edi
sub dx, r11w
xadd bl, dl
mov si, cx
nop word cs:[rax + rax]
movsx edx, si
movzx eax, byte [r9 + rdi*4 + 2]
bts rbx, r12
movzx edx, byte [r9 + rdi*4 + 1]
movzx ebx, byte [r9 + rdi*4]
adc sil, 0x4a
sal sil, cl
shr rsi, cl
imul esi, ebx, 0x4d
cmc
neg ebx
imul edx, edx, 0x96
xchg bh, bl
lea ebx, [rax + rax*8]
cmc
lea ebx, [rbx + rbx*2]
jmp 0x140422e4f
add ebx, eax
add ebx, eax
btc rax, 0x68
shl ah, cl
rol ax, 4
add ebx, edx
add ebx, esi
mov byte [rbp + rdi], bh
bts rax, r8
rcr sil, cl
bt dx, ax
movzx eax, byte [r9 + rdi*4 + 6]
movzx edx, byte [r9 + rdi*4 + 5]
movzx ebx, byte [r9 + rdi*4 + 4]
imul esi, ebx, 0x4d
mov rbx, rsi
sal bl, 0xc5
and bx, 0x3350
imul edx, edx, 0x96
lea ebx, [rax + rax*8]
test cl, 0x10
lea ebx, [rbx + rbx*2]
stc
add ebx, eax
add ebx, eax
clc
stc
add ebx, edx
add ebx, esi
mov byte [rbp + rdi + 1], bh
jmp 0x140422eb5
add ecx, 0xfffffffe
jmp 0x140422ebd
add rdi, 2
stc
cmp ecx, 1
jmp 0x140422eca
jg 0x140422e0f
jmp 0x140421e47
movzx ecx, byte [r9]
cdqe
mov byte [rbp], cl
setb cl
movsx cx, dil
movzx ecx, byte [r9 + 1]
mov byte [rbp + 1], cl
sub cx, di
cmovs cx, dx
movsx rax, ax
movzx ecx, byte [r9 + 2]
bt eax, r10d
cwde
rcl ah, 0x84
mov byte [rbp + 2], cl
add r9, 4
or ax, r13w
sar ch, 0xee
add rbp, 3
mov ecx, dword [rsp + 0x30]
xor al, 0x60
mov eax, dword [rsp + 0x24]
test eax, eax
je 0x140421e47
add ecx, 2
xadd al, al
ror al, 2
nop dword [rax]
test r9b, r14b
clc
movzx eax, byte [r9]
mov byte [rbp], al
inc rax
movsx ax, r11b
mov al, r11b
movzx eax, byte [r9 + 1]
mov byte [rbp + 1], al
dec al
cbw
jmp 0x140422f5e
movzx eax, byte [r9 + 2]
cmp r13d, 0x6b0b732a
mov byte [rbp + 2], al
jmp 0x140422f76
movzx eax, byte [r9 + 4]
mov byte [rbp + 3], al
bts rax, rcx
movzx eax, byte [r9 + 5]
cmc
mov byte [rbp + 4], al
movzx eax, byte [r9 + 6]
cmp r11b, 0xcb
clc
mov byte [rbp + 5], al
add r9, 8
add rbp, 6
test rbx, rsi
stc
add ecx, 0xfffffffe
stc
cmp ecx, 1
jg 0x140422f3b
jmp 0x140421e47
mov edx, dword [rsp + 0x24]
mov ecx, edx
jmp 0x140422fc1
cmp edx, 3
jmp 0x140422fc9
jb 0x140421e47
add ecx, 4
mov ax, r15w
btc eax, r8d
add rbp, 0xb
lahf
nop word [rax + rax]
cbw
movzx eax, byte [r9]
stc
cmp r14w, bp
mov byte [rbp - 9], al
cmp sil, 0xf
stc
mov byte [rbp - 0xa], al
mov byte [rbp - 0xb], al
btr eax, r11d
movzx eax, byte [r9 + 2]
mov byte [rbp - 6], al
cmp r12, rsi
mov byte [rbp - 7], al
test r9, rsi
mov byte [rbp - 8], al
lahf
dec rax
movzx eax, byte [r9 + 4]
cmp sp, r10w
test r9b, bpl
jmp 0x14042302b
mov byte [rbp - 3], al
jmp 0x140423037
mov byte [rbp - 4], al
mov byte [rbp - 5], al
dec ah
cdqe
rcl ah, cl
movzx eax, byte [r9 + 6]
test sp, 0x7b59
mov byte [rbp], al
cmc
cmp dil, 0x75
mov byte [rbp - 1], al
cmp r8b, 0x1f
mov byte [rbp - 2], al
clc
test cx, r8w
cmc
add r9, 8
cmp r15b, 0x2e
stc
add ecx, 0xfffffffc
jmp 0x140423077
add rbp, 0xc
cmc
cmp ecx, 3
jmp 0x140423084
jg 0x140422fe7
jmp 0x140421e47
mov edx, dword [rsp + 0x24]
jmp 0x140423098
mov edi, edx
cmp edx, 3
jmp 0x1404230a2
jb 0x140421e47
add edi, 4
cbw
add rbp, 0xb
shld rax, r9, 0xa0
nop word cs:[rax + rax]
cwde
shl ah, cl
movzx eax, byte [r9]
stc
mov byte [rbp - 9], al
cmp sil, 0x3b
mov byte [rbp - 0xa], al
jmp 0x1404230db
mov byte [rbp - 0xb], al
adc al, spl
sbb eax, 0x2cb32df6
or al, r14b
movzx eax, byte [r9 + 1]
test r9w, 0xc11
mov byte [rbp - 6], al
clc
stc
mov byte [rbp - 7], al
cmp r12b, spl
test r11w, r12w
clc
mov byte [rbp - 8], al
bt ax, 0xa3
inc al
shr al, 0xac
movzx eax, byte [r9 + 2]
cmc
mov byte [rbp - 3], al
mov byte [rbp - 4], al
cmc
cmp r12, r14
test r15, 0x2980826
mov byte [rbp - 5], al
movzx eax, byte [r9 + 3]
cmp r14, 0x5c00f05
test bpl, al
mov byte [rbp], al
mov byte [rbp - 1], al
cmc
test sil, sil
cmp dil, r10b
mov byte [rbp - 2], al
add r9, 4
clc
test r15, r8
add edi, 0xfffffffc
jmp 0x14042315d
add rbp, 0xc
jmp 0x140423168
cmp edi, 3
jmp 0x140423170
jg 0x1404230c7
jmp 0x140421e47
mov edx, dword [rsp + 0x24]
bt cx, 0x29
inc cl
adc cx, 0x7a8b
mov ecx, edx
cmp edx, 3
jb 0x140421e47
add ecx, 4
bsf ax, r13w
cmovge ax, ax
sub edi, edi
cmovae eax, r9d
movzx eax, word [r9 + rdi]
jmp 0x1404231b2
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]
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 0x14042320e
movd xmm2, eax
punpcklbw xmm2, xmm1
pshuflw xmm2, xmm2, 0x40
packuswb xmm2, xmm2
movd dword [rbp + rdi*2 + 0xc], xmm2
add ecx, 0xfffffffc
add rdi, 8
cmp r14b, 0x17
test r10b, r12b
cmp ecx, 3
jmp 0x14042323b
jg 0x1404231a8
jmp 0x140421e47
mov edx, dword [rsp + 0x24]
xor cx, 0x76d3
movsx cx, spl
mov ecx, edx
jmp 0x14042325b
cmp edx, 7
jmp 0x140423263
jb 0x140421e47
add ecx, 8
movsx rax, r13w
cdqe
sub edi, edi
shr rax, cl
nop dword [rax + rax]
movzx eax, byte [r9 + rdi*2]
test di, 0x7099
cmp r12b, r9b
clc
mov byte [rbp + rdi], al
movzx eax, byte [r9 + rdi*2 + 2]
cmp esi, r8d
mov byte [rbp + rdi + 1], al
ror ax, 0xc4
sar ax, cl
movzx eax, byte [r9 + rdi*2 + 4]
clc
cmc
mov byte [rbp + rdi + 2], al
test r8d, r12d
movzx eax, byte [r9 + rdi*2 + 6]
cmp r11w, 0x7621
test ecx, 0xb914d51
mov byte [rbp + rdi + 3], al
jmp 0x1404232d0
movzx eax, byte [r9 + rdi*2 + 8]
mov byte [rbp + rdi + 4], al
xadd ax, ax
cbw
bsr ax, r15w
movzx eax, byte [r9 + rdi*2 + 0xa]
cmc
mov byte [rbp + rdi + 5], al
bsr ax, r9w
movzx eax, byte [r9 + rdi*2 + 0xc]
test cx, 0x7cd8
clc
mov byte [rbp + rdi + 6], al
movzx eax, byte [r9 + rdi*2 + 0xe]
cmc
mov byte [rbp + rdi + 7], al
cmc
add ecx, 0xfffffff8
cmp r12b, 0x86
cmp r15w, r14w
add rdi, 8
cmc
stc
cmp ecx, 7
jmp 0x14042332a
jg 0x14042327f
jmp 0x140421e47
xor ecx, ecx
stc
test byte [rsp + 0xc0], 1
je 0x140423387
lea rax, [rcx + rcx]
stc
or rax, 0x10
jmp 0x140423354
movq xmm2, qword [r9 + rcx]
jmp 0x14042335f
movq xmm5, qword [r9 + rcx + 8]
jmp 0x14042336b
punpcklbw xmm2, xmm0
movdqu xmmword [rbp + rcx*2], xmm2
jmp 0x14042337a
punpcklbw xmm5, xmm0
movdqu xmmword [rbp + rax], xmm5
stc
cdqe
mov rax, qword [rsp + 0x60]
clc
test r14d, r12d
cmp r12b, 3
cmp qword [rsp + 0x68], rax
jmp 0x14042339e
je 0x140421e47
add rbp, qword [rsp + 0x80]
add r9, qword [rsp + 0x60]
not ah
cmovb ecx, r8d
mov ecx, dword [rsp + 0x54]
movsx eax, r12w
bswap rax
not ax
inc ecx
sub ebx, ebx
jmp 0x1404233d2
nop word [rax + rax]
movsxd rax, ebp
movsx ax, r14b
movzx eax, byte [r9 + rbx]
jmp 0x1404233ea
mov byte [rbp + rbx*2], al
jmp 0x1404233f3
mov byte [rbp + rbx*2 + 1], 0xff
dec ecx
jmp 0x1404233ff
inc rbx
test r9, rcx
test r11d, 0x3cad119a
jmp 0x140423411
test ecx, ecx
jg 0x1404233e0
jmp 0x140421e47
mov rcx, rsi
jmp 0x140423426
call fcn.1401e54a4
mov rax, qword [rsp + 0x78]
jmp 0x140423435
jmp 0x140423468
mov rcx, rsi
mov rsi, rdx
jmp 0x140423445
call fcn.1401e54a4
mov rcx, rsi
jmp 0x140423452
call fcn.1401e54a4
sub eax, eax
or rbx, 0x4bec0e1c
rcl r14d, 0x3e
movzx r15, r14w
movaps xmm6, xmmword [rsp + 0xf0]
test r14d, r8d
rcl bx, cl
bts r13, rax
movaps xmm7, xmmword [rsp + 0x100]
bswap r15w
movaps xmm8, xmmword [rsp + 0x110]
jmp 0x140423499
add rsp, 0x128
mov sil, r14b
pop rbx
bswap r15w
cmovns r12, r13
pop rbp
setg r14b
jmp 0x1404234ba
pop rdi
movsxd r12, r14d
movsx r12, bp
movzx r12w, dil
pop rsi
pop r12
setge r13b
mov r15b, 0xf4
pop r13
movzx r14d, r9w
pop r14
movsxd r15, edi
jmp 0x1404234e1
pop r15
jmp 0x1404234e8
ret